To: | writelog@contesting.com |
---|---|
Subject: | [WriteLog] Ugly Solution To Auto-Populate Field Day Sections InWriteLog |
From: | Eric Hilding <dx35@hilding.com> |
Date: | Fri, 02 Jul 2004 21:08:58 -0700 |
List-post: | <mailto:writelog@contesting.com> |
Tnx in part to NCCC CQP Guru Al, AD6E (who helped me understand WL's .adi stuff enough to be dangerous), I've managed to come up with a non-elegant, rather "Ugly" solution (below) to create an .adi file from a callsign/section .csv file list which will auto-populate the WL SEC field upon callsign entry. Too late for FD 2004, but it will accomplish the objective for FD 2005 in a pain-in-the-butt way. Predicted SEC accuracy is well over 90%, but any Section changes can be easily corrected mid-QSO before final logging. It will, however, require deleting a bunch of bogus 30m "QSOs" after the event is over. Perhaps one of the programming gurus who lurk here can figure out a better way. The ideal, of course, would be for a WL enhancement to use something similar to Trlog's TRMASTER.ASC which doesn't require all the final doo-doo clean up. This would be very clean & efficient. You will need "Perl" to make this work (until I get around to maybe using perl2exe to generate a standalone "runtime" version). FD "Class" can easily be added as well, although the accuracy rate won't be as high as with FD SEC. The .csv file format needed is standard ASCII comma delimited with callsign & section. If you're an ARRL member, you can download the last couple of years of FD results and import them into Excel and then delete all the other columns. Export as the following example: ### SAMPLE .CSV FILE ### K6VVA, SCV W6GGF, SCV AD6E, EB ...etc., etc. Then, use FileMaker or another database and: 1. Import the individual FD results files AND any individual .csv callsign/section file(s) created from your own past FD logs. 2. You *MUST* PURGE ANY/ALL DUPLICATE ENTRIES to get a "Virgin" callsign/section file. 3. Export or Save it in the same format as above. (Callsign, Section) 4. Then, run the Perl Script. You will be asked for the Input filename. Enter the name of the file you previously made. 5. You will be asked for the Output filename. Enter the name of your new WL FD file and add: "_jou.adi" to the name. (Example: myfd2005_jou.adi). I'd stick the file in the same folder/sub-directory as your WL file. 6. Open your WL file. 7. Click: File | Import and "Import" your (myfd2005_jou.adi or whatever name) file. Sine SEQ #'s are not needed in FD, don't freak out when you seen umpteen SEQ #'s and QSOs. Forget about easily reading an ongoing QSO count, except you can see the numbers for legit FD bands in the Band Summary Window. The "Total", however, will NOT be accurate during FD. Once FD is over and you've deleted all the (temporary) 30m QSO entries which makes all this work, you *should* be fine. Umh, I really dislike the word *should* ;-( This all does appear to work here, however...albeit "Rube Goldberg" style. Enjoy! 73... Rick, K6VVA ### THE PERL SCRIPT ### #!/usr/bin/perl # # K6VVA - Field Day # .adi workaround to # auto-populate Sections # fdpopsec.pl v1.0 7/2/04 # use strict; use warnings; my $line; my $totalrecs; #my $increment; my $filename; my $outfile; my $callsign; my $section; my $cslength; my $seclength; my $freq = "10.101"; my $band = "30m"; my $mode = "CW"; my $points = "0"; print "Enter File To Convert: "; $filename = <STDIN>; print "Enter Output File Name: "; $outfile = <STDIN>; open (INFILE, "$filename"); open (OUTFILE ,">>$outfile"); $totalrecs = 0; #$increment = 1; print OUTFILE "WriteLog\n"; print OUTFILE "<EOH>\n"; while ($line = <INFILE>) { chomp($line); $line =~ m/(.*),(.*)/; $callsign = $1; $section = $2; $cslength = length($callsign); $seclength = length($section); &write2outfile; } close (INFILE); #close input file close (OUTFILE); # close output file print "Net Records: $totalrecs\n"; ### SUBROUTINE TO PRINT TO .adi File Format sub write2outfile { print OUTFILE "<FREQ:6>$freq "; print OUTFILE "<BAND:3>$band "; print OUTFILE "<MODE:2>$mode\n"; print OUTFILE "<CALL:$cslength>$1\n"; print OUTFILE "<ARRL_SECT:$seclength>$2\n"; print OUTFILE "<P:1>$points\n"; print OUTFILE "<EOR>\n"; $totalrecs++; } # END _______________________________________________ WriteLog mailing list WriteLog@contesting.com http://lists.contesting.com/mailman/listinfo/writelog WriteLog on the web: http://www.writelog.com/ |
<Prev in Thread] | Current Thread | [Next in Thread> |
---|---|---|
|
Previous by Date: | [WriteLog] New Super Check Partial Files Available VER20040703, Randy Thompson, K5ZD |
---|---|
Next by Date: | Re: [WriteLog] New Super Check Partial Files Available VER20040703, George |
Previous by Thread: | [WriteLog] New Super Check Partial Files Available VER20040703, Randy Thompson, K5ZD |
Next by Thread: | [WriteLog] RTTY Hangup Time, Colin Jenkins |
Indexes: | [Date] [Thread] [Top] [All Lists] |