CFOG's PIP, September 1986, Volume 4 No. 11, Whole No. 47, page 2

Keeping Tabs on a Media Fair With dBase II

by Gary Addison

Have you ever been chairman of a contest and been expected to perform many functions including the tabulations? If so, you might benefit from seeing something I developed using dBase II. Even though this was a specific application, some of the methods might be useful to someone. Similarly, your feedback could prove useful to me.

Medfair stands for Media Fair. Simply put, a Media Fair is a contest for student produced audiovisual materials open to all Indiana students in grades K through 12. This past year I was chairman of the State Contest in Indiana. Other states have similar contests.

All of the functions implemented are called from a menu. The menu program (MENU.CMD) calls

  1. a routine to add new records to the database. (Addrec.cmd)

  2. a routine to print all of both types of ballots for the contest. (Evalform.cmd and Computer.cmd)

  3. a routine to select the sponsors from the various schools and print labels for mailing confirmations. (Maillist.cmd)

  4. a routine to select the entries from an individual school for the confirmation letter. (School.cmd)

  5. a routine to print the various entrants in each category and section so a competition schedule can be developed. (Grplist.cmd)

  6. a routine to tabulate the judges ballots and compute scores. (Tally.cmd)

  7. a routine to print results for the various competition categories and sections. (Results.cmd)

The Media Fair is organized into eight competition areas, each with four levels based on the student's grade. To the degree possible, most data entry does not require the use of the enter key. Scoring is on a scale of 1 to 7. Some categories on the ballot occasionally do not apply. The tabulation routine accepts 0 (the number) as representing a non-applicable category and is not considered in the total possible. Users must use the same database continuously once entries are closed because the dBase record number is used as the entry number for the contestants.

One significant problem annoyed me as I developed the tabulation routine, when using the following command with dBase Version 2.3 b:

@ SAY r,c number variable picture '#'

It appeared in a different column on the screen than the identical row/column combination used with @ GET. Using dBase Version 2.4 on an IBM PC (MS-DOS) and on a DEC Rainbow (CP/M-86) the @ SAY and @ GET are printed at the same location for the same row/ column combination. For the Osborne version I got around the problem by SAYing the data at a different column than the GET.

I have submitted to the CFOG library a file called Medfair.lbr. The library file contains all the components of the Media Fair package. I have also included the actual 1985 database used (Medfair.dbf). If you want to start fresh or experiment, just delete this file so things will work faster. The program will create it new using Structur.dbf. Not called from the menu is Compile.cmd which allowed me to accumulate the score data from several files identical except for scores into a single DBF file (Using several computers was easy as long as we limited specific categories to specific machines -- the results were still all there).

After removing all the files from the library and unsqueezing, load dBase and "Set default to [b] and then give the command "Do menu". It's really pretty quick with my Drive C:. That's all there is to it. Print Medfair.doc with WordStar for more detail than this brief description. If anyone wants the version of Tally.cmd for Version 2.4, let me know and I'll leave it on the RCPM.