home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 3 / hamradioversion3.0examsandprograms1992.iso / log / log3_52a / waz.prg < prev    next >
Text File  |  1990-05-04  |  5KB  |  188 lines

  1. *:*********************************************************************
  2. *:
  3. *:        Program: WAZ.PRG
  4. *:
  5. *:         System: PC-HAM Logbook
  6. *:         Author: Joe Kasser G3ZCZ
  7. *:      Copyright (c) 1990, Joe Kasser
  8. *:  Last modified: 05/04/90     12:18
  9. *:
  10. *:      Called by: LOGAWARD.PRG                  
  11. *:
  12. *:          Calls: LOGCHNGE.PRG
  13. *:               : WAZENTER.PRG
  14. *:
  15. *:           Uses: WAZ.DBF        
  16. *:               : &WAZ.DBF       
  17. *:
  18. *:      Documented 05/04/90 at 13:49                SNAP!  version 3.12f
  19. *:*********************************************************************
  20. * SAME AS OBLAST.PRG
  21.  
  22. STORE 41 TO wazm
  23.  
  24. DO WHILE task <> '*'
  25.    CLEAR
  26.    SET COLOR TO W+/R,W+/RB,BG+
  27.    @ 5,11 SAY  'G3ZCZ WAZ AWARD PACKAGE VERSION 1.9'
  28.    SET COLOR TO GR+/B,W+/RB,BG+
  29.    @ 7,1 SAY  'Default WAZ database is'
  30.    SET COLOR TO W+/R,W+/RB,BG+
  31.    @ 7,30 SAY TRIM(waz)
  32.    SET COLOR TO GR+/B,W+/RB,BG+
  33.    @ 8,1 SAY 'Default LOG database is'
  34.    SET COLOR TO W+/R,W+/RB,BG+
  35.    @ 8,30 SAY TRIM(logbook)
  36.    SET COLOR TO GR+/B,W+/RB,BG+
  37.    
  38.    @ 10,1 SAY 'UPDATE WAZ RECORDS                            U'
  39.    @ 11,1 SAY 'CREATE A NEW WAZ DATABASE                     C'
  40.    @ 12,1 SAY 'CHANGE WAZ DATABASE                           D'
  41.    @ 13,1 SAY 'CHANGE LOGBOOK                                L'
  42.    @ 14,1 SAY 'PRINT WAZ RECORDS                             P'
  43.    @ 15,1 SAY 'DISPLAY FILES ON DISK DRIVE                   F'
  44.    @ 20,1 SAY 'QUIT THIS MENU                                *'
  45.    @ 22,1 SAY 'QRU'
  46.    
  47.    @ 22,5 GET task
  48.    READ
  49.    
  50.    DO CASE
  51.       
  52.    CASE task = 'F'
  53.       CLEAR
  54.       ACCEPT 'WHICH DRIVE ? ' TO diskdrive
  55.       diskdrive = SUBSTR(diskdrive,1,1)
  56.       STORE diskdrive + ':' TO diskdrive
  57.       DISPLAY Files ON &diskdrive
  58.       RELEASE diskdrive
  59.       WAIT
  60.       
  61.    CASE task = 'L'
  62.       DO logchnge
  63.       
  64.    CASE task = 'C'
  65.       STORE 'WAZ' TO bwaz
  66.       IF FILE (bwaz+'.DBF')
  67.          USE waz
  68.          ACCEPT 'What is the name of the new WAZ file ? ' TO waz
  69.          IF FILE (waz+'.DBF')
  70.             ? 'ERROR, WAZ FILE ',waz,' EXISTS ON DEFAULT DRIVE'
  71.          ELSE
  72.             COPY STRUCTURE TO &waz
  73.             USE &waz
  74.             STORE '          ' TO BLANK
  75.             STORE 1 TO iteration
  76.             DO WHILE iteration < wazm
  77.                APPEND BLANK
  78.                STORE iteration + 1 TO iteration
  79.             ENDDO
  80.             RELEASE BLANK,iteration
  81.             USE
  82.          ENDIF
  83.       ELSE
  84.          ? 'ERROR BLANK WAZ FILE IS NOT ON DEFAULT DRIVE'
  85.       ENDIF
  86.       RELEASE bwaz
  87.       
  88.    CASE task = 'D'
  89.       @ 22,1 SAY 'Which WAZ file ? '
  90.       @ 22,25 GET waz
  91.       READ
  92.       IF FILE (waz+'.DBF')
  93.       ELSE
  94.          ? 'ERROR WAZ FILE IS NOT ON DEFAULT DRIVE'
  95.       ENDIF
  96.       
  97.    CASE task = 'U'
  98.       IF logbook = '      '
  99.          @ 23,1  SAY 'OPEN A LOGBOOK FIRST'
  100.       ELSE
  101.          IF FILE (waz+'.DBF')
  102.             DO wazenter
  103.          ELSE
  104.             ? 'ERROR WAZ FILE IS NOT ON DEFAULT DRIVE'
  105.          ENDIF
  106.       ENDIF
  107.       
  108.    CASE task = 'P'
  109.       IF FILE (waz+'.DBF')
  110.          * WAZPRINT VER 851003 THIS PROGRAM PRINTS AN WAZ file
  111.          CLEAR
  112.          STORE ' ' TO choice
  113.          @ 5,1 SAY ' '
  114.          ACCEPT 'Whole thing, worked/QSL-d, or QSL-d (T,W,Q) ? ' TO choice
  115.          @ 10,1 SAY ' '
  116.          
  117.          STORE ' ' TO df
  118.          ACCEPT 'DO you want hard copy (Y/N) ? ' TO df
  119.          IF df = 'Y'
  120.             SET PRINT ON
  121.          ENDIF
  122.          
  123.          STORE 99 TO linecount
  124.          STORE  1 TO pagecount
  125.          STORE  0 TO qsled
  126.          STORE  0 TO worked
  127.          
  128.          USE  &waz
  129.          DO WHILE .not.EOF()
  130.             IF linecount > 60
  131.                IF df = 'Y'
  132.                   EJECT
  133.                ENDIF
  134.                ? 'WAZ as of ',DTOC(DATE()) ,'for',callsign,' PAGE',pagecount
  135.                IF choice = 'Q'
  136.                   ?? ' QSL STATUS'
  137.                ENDIF
  138.                STORE pagecount + 1 TO pagecount
  139.                ?
  140.                ? '              CALL       DATE  TIME BND MODE STATUS'
  141.                ? '---------------------------------------------------'
  142.                STORE  5 TO linecount
  143.             ENDIF
  144.             
  145.             IF choice <> 'T' .and. dstate = ' '
  146.                *
  147.             ELSE
  148.                IF dstate = ' ' .and. choice = 'Q'
  149.                   *
  150.                ELSE
  151.                   ? RECNO(),dcall,ddate,dtime,dband,dmode
  152.                   STORE linecount + 1 TO linecount
  153.                ENDIF
  154.             ENDIF
  155.             IF dstate = 'R'
  156.                IF choice = 'Q'
  157.                ELSE
  158.                   ?? 'Q'
  159.                ENDIF
  160.                STORE qsled + 1 TO qsled
  161.                STORE worked + 1 TO worked
  162.             ENDIF
  163.             IF dstate = '-'
  164.                STORE worked + 1 TO worked
  165.             ENDIF
  166.             SKIP
  167.          ENDDO
  168.          ?
  169.          ?
  170.          ? worked,' WORKED     ',qsled,'QSL-D'
  171.          ?
  172.          IF df = 'Y'
  173.             EJECT
  174.             SET PRINT OFF
  175.          ENDIF
  176.          WAIT
  177.          RELEASE choice,df,linecount,pagecount,worked,qsled
  178.          USE
  179.       ELSE
  180.          ? 'ERROR WAZ FILE IS NOT ON DEFAULT DRIVE'
  181.       ENDIF
  182.    ENDCASE
  183. ENDDO
  184. STORE ' ' TO task
  185. RELEASE wazm
  186. RETURN
  187. *: EOF: WAZ.PRG
  188.