home *** CD-ROM | disk | FTP | other *** search
/ The Best of the Best / _.img / 02192 / logbook.arc / OBLAST.PRG < prev    next >
Text File  |  1987-12-24  |  5KB  |  172 lines

  1. *OBLAST.PRG CALLED FROM LOGBOOK/LOGAWARD VERSION 851203
  2. STORE 192 TO oblastm
  3.  
  4. DO WHILE task <> '*'
  5.    CLEAR
  6.    @ 5,11 SAY  'G3ZCZ OBLAST AWARD PACKAGE VERSION 1.4'
  7.    @ 7,1 SAY  'Default OBLAST database is'
  8.    @ 7,30 SAY oblast
  9.    @ 8,1 SAY 'Default LOGBOOK is'
  10.    @ 8,30 SAY logbook
  11.    @ 10,1 SAY 'UPDATE OBLAST RECORDS                         U'
  12.    @ 11,1 SAY 'CREATE A NEW OBLAST DATABASE                  C'
  13.    @ 12,1 SAY 'PRINT OBLAST RECORDS                          P'
  14.    @ 20,1 SAY 'QUIT THIS MENU                                *'
  15.    @ 13,1 SAY 'CHANGE OBLAST DATABASE                        D'
  16.    @ 14,1 SAY 'CHANGE LOGBOOK                                L'
  17.    @ 15,1 SAY 'DISPLAY FILES ON DISK DRIVE                   F'
  18.    @ 22,1 SAY 'QRU'
  19.  
  20.    @ 22,5 GET task
  21.    READ
  22.  
  23.    DO CASE
  24.  
  25.       CASE task ='F'
  26.            CLEAR
  27.            ACCEPT 'WHICH DRIVE ? ' TO diskdrive
  28.            diskdrive  = LEFT(diskdrive,1)
  29.            STORE diskdrive + ':' TO diskdrive
  30.            DISPLAY FILES ON &diskdrive
  31.            RELEASE diskdrive
  32.            WAIT
  33.  
  34.       CASE task = 'L'
  35.            @ 22,1 SAY 'Which Log file '
  36.            @ 22,15 GET logbook
  37.            READ
  38.            STORE logbook TO logndx
  39.            IF FILE (logbook + '.DBF')
  40.               @ 22,1 SAY '                          '
  41.            ELSE
  42.               @ 22,1 SAY ' '
  43.               ? 'ERROR, ',logbook, 'IS NOT PRESENT ON DRIVE'
  44.               WAIT
  45.            ENDIF
  46.  
  47.       CASE task = 'C'
  48.            STORE 'OBLAST' TO boblast
  49.            IF FILE (boblast + '.DBF')
  50.               USE OBLAST
  51.               ACCEPT 'What is the name of the new OBLAST file ? ' TO oblast
  52.               IF FILE (oblast + '.DBF')
  53.                  ? 'ERROR, OBLAST FILE ',oblast,' EXISTS ON DEFAULT DRIVE'
  54.               ELSE
  55.                  COPY STRUCTURE TO &oblast
  56.                  USE &oblast
  57.                  STORE '          ' TO blank
  58.                  STORE 1 TO iteration
  59.                  DO WHILE iteration < oblastm
  60.                     APPEND blank
  61.                     STORE iteration + 1 to iteration
  62.                  ENDDO
  63.                  RELEASE blank,iteration
  64.                  USE
  65.               ENDIF
  66.            ELSE
  67.                  ? 'ERROR BLANK OBLAST FILE IS NOT ON DEFAULT DRIVE'
  68.                  WAIT
  69.            ENDIF
  70.            RELEASE boblast
  71.  
  72.       CASE task = 'D'
  73.          @ 22,1 SAY "Which OBLAST file "
  74.          @ 22,25 GET oblast
  75.          READ
  76.          IF FILE (oblast + '.DBF')
  77.          ELSE
  78.             ? 'ERROR OBLAST FILE IS NOT ON DEFAULT DRIVE'
  79.             WAIT
  80.          ENDIF
  81.  
  82.       CASE task = 'U'
  83.          IF logbook = '      '
  84.             @ 23,1  SAY 'OPEN A LOGBOOK FIRST'
  85.          ELSE
  86.             IF FILE (oblast + '.DBF')
  87.                DO OBLASTENT
  88.             ELSE
  89.                ? 'ERROR OBLAST FILE IS NOT ON DEFAULT DRIVE'
  90.                WAIT
  91.             ENDIF
  92.          ENDIF
  93.  
  94.       CASE task = 'P'
  95.          IF FILE (oblast + '.DBF')
  96.             CLEAR
  97.             STORE ' ' TO choice
  98.             @ 5,1 SAY ' '
  99.             ACCEPT 'Whole thing, worked/QSL-d, or QSL-d (T,W,Q) ? ' TO choice
  100.             @ 10,1 SAY ' '
  101.             STORE ' ' TO df
  102.             ACCEPT 'DO you want hard copy (Y/N) ? ' TO df
  103.             IF df = 'Y'
  104.                SET PRINT ON
  105.             ENDIF
  106.  
  107.             STORE 99 TO linecount
  108.             STORE  1 TO pagecount
  109.             STORE  0 TO qsled
  110.             STORE  0 TO worked
  111.  
  112.             USE  &oblast
  113.             DO WHILE .NOT.EOF()
  114.                IF linecount > 60
  115.                   IF df = 'Y'
  116.                      EJECT
  117.                   endif
  118.                   ? 'OBLAST  PRINTOUT',callsign,' PAGE',pagecount
  119.                   IF choice = 'Q'
  120.                      ?? ' QSL STATUS'
  121.                   ENDIF
  122.                   STORE pagecount + 1 TO pagecount
  123.                   ?
  124.                   ? '              CALL       DATE  TIME BND MODE STATUS'
  125.                   ? '---------------------------------------------------'
  126.                   STORE  5 TO linecount
  127.                ENDIF
  128.  
  129.                IF choice <> 'T' .AND. dstate = ' '
  130.                   *
  131.                ELSE
  132.                   IF dstate = ' ' .AND. choice = 'Q'
  133.                      *
  134.                   ELSE
  135.                      ? RECNO(),dcall,ddate,dtime,dband,dmode
  136.                      STORE linecount + 1 TO linecount
  137.                   ENDIF
  138.                ENDIF
  139.                IF dstate = 'R'
  140.                   IF choice = 'Q'
  141.                   ELSE
  142.                      ?? dstate
  143.                   ENDIF
  144.                   STORE qsled + 1 TO qsled
  145.                   STORE worked + 1 TO worked
  146.                ENDIF
  147.                IF dstate = '-'
  148.                   STORE worked + 1 TO worked
  149.                ENDIF
  150.                SKIP
  151.             ENDDO
  152.             ?
  153.             ?
  154.             ? worked,' WORKED     ',qsled,'QSL-D'
  155.             ?
  156.             IF df = 'Y'
  157.                EJECT
  158.                SET PRINT OFF
  159.             endif
  160.             WAIT
  161.             RELEASE choice,df,linecount,pagecount,worked,qsled
  162.             USE
  163.          ELSE
  164.             ? 'ERROR OBLAST FILE IS NOT ON DEFAULT DRIVE'
  165.             WAIT
  166.          ENDIF
  167.    ENDCASE
  168. ENDDO
  169. STORE ' ' TO task
  170. RELEASE oblastm
  171. RETURN
  172.