home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 3 / hamradioversion3.0examsandprograms1992.iso / log / log3_52a / logmiscf.prg < prev    next >
Text File  |  1990-06-25  |  6KB  |  208 lines

  1. *:*********************************************************************
  2. *:
  3. *:        Program: LOGMISCF.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:08
  9. *:
  10. *:      Called by: LOGBOOK.PRG                   
  11. *:
  12. *:          Calls: LOGUPDAT.PRG
  13. *:               : DXPDNQSL.PRG
  14. *:               : LOG2DBF.PRG
  15. *:
  16. *:           Uses: &LOGBOOK.DBF   
  17. *:               : &JLOG          
  18. *:               : &NEWLOG.DBF    
  19. *:
  20. *:        Indexes: &LOGNDX
  21. *:               : TEMP.NDX
  22. *:
  23. *:      Documented 05/04/90 at 13:49                SNAP!  version 3.12f
  24. *:*********************************************************************
  25. DO WHILE task <> '*'
  26.    CLEAR
  27.    SET COLOR TO W+/R,W+/RB,BG+
  28.    @ 2,10 SAY 'MISCELLANEOUS FUNCTIONS VERSION 3.5'
  29.    SET COLOR TO GR+/B,W+/RB,BG+
  30.    @ 5,1 SAY 'Default LOG database is'
  31.    SET COLOR TO W+/R,W+/RB,BG+
  32.    @ 5,30 SAY TRIM(logbook)
  33.    SET COLOR TO GR+/B,W+/RB,BG+
  34.    @  8,1 SAY 'CHANGE LOG FILE                                   L'
  35.    @  9,1 SAY 'MANUAL TRANSFER OF DATA TO  CONTEST LOGS          U'
  36.    @ 10,1 SAY 'APPEND FROM BASIC "LOG" FILE TO "DBF" FILE        V'
  37.    @ 11,1 SAY 'DISPLAY FILES ON DISK DRIVE                       F'
  38.    @ 12,1 SAY 'DXPEDITION/CONTEST BATCH QSL FUNCTION             Q'
  39.    @ 13,1 SAY '(RE) INDEX A LOGBOOK DATABASE FILE                I'
  40.    @ 14,1 SAY 'SORT LOG BY DATE+TIME                             S'
  41.    @ 15,1 SAY 'CHANGE OFFSET TO UTC                              T'
  42.    @ 16,1 SAY 'CHANGE STATION OPERATOR CALL SIGN                 C'
  43.    @ 17,1 SAY 'APPEND FROM A SECOND LOG DATA BASE                J'
  44.    @ 18,1 SAY 'Quit this menu                                    *'
  45.    @ 20,1 SAY 'QRU'
  46.    @ 20,5 GET task
  47.    task = UPPER(task)
  48.    READ
  49.    
  50.    DO CASE
  51.       
  52.    CASE task = 'J'
  53.       IF logbook = '      '
  54.          @ 23,1  SAY 'OPEN A LOGBOOK FIRST'
  55.          STORE 'L' TO task
  56.          WAIT
  57.       ELSE
  58.          IF FILE(logbook +'.DBF')
  59.             ACCEPT 'What is the database to be joined ? ' TO jlog
  60.             IF FILE(jlog+'.DBF')
  61.                USE &logbook INDEX &logndx
  62.                SET TALK ON
  63.                APPEND FROM &jlog
  64.                SET TALK OFF
  65.                ? 'STANDBY - UPDATING INDEX'
  66.                USE
  67.             ELSE
  68.                ? 'ERROR- ',jlog,' does not exist'
  69.                WAIT
  70.             ENDIF
  71.          ELSE
  72.             ? 'ERROR- LOGBOOK IS NOT ON DEFAULT DRIVE'
  73.             WAIT
  74.          ENDIF
  75.       ENDIF
  76.       
  77.  
  78.    CASE task = 'U'
  79.       IF logbook = '      '
  80.          @ 23,1  SAY 'OPEN A LOGBOOK FIRST'
  81.          STORE 'L' TO task
  82.          WAIT
  83.       ELSE
  84.          IF FILE(logbook +'.DBF')
  85.             DO logupdat
  86.          ELSE
  87.             ? 'ERROR- LOGBOOK IS NOT ON DEFAULT DRIVE'
  88.             WAIT
  89.          ENDIF
  90.       ENDIF
  91.       
  92.    CASE task = 'I'
  93.       IF logbook = '      '
  94.          @ 23,1  SAY 'OPEN A LOGBOOK FIRST'
  95.          STORE 'L' TO task
  96.          WAIT
  97.       ELSE
  98.          IF FILE(logbook + '.DBF')
  99.             USE &logbook
  100.             SET TALK ON
  101.             INDEX ON CALL+band TO &logndx
  102.             SET TALK OFF
  103.             USE
  104.          ELSE
  105.             ? 'ERROR- LOGBOOK IS NOT ON DEFAULT DRIVE'
  106.             WAIT
  107.          ENDIF
  108.       ENDIF
  109.       
  110.    CASE task = 'Q'
  111.       IF logbook = '      '
  112.          @ 23,1  SAY 'OPEN A LOGBOOK FIRST'
  113.          STORE 'L' TO task
  114.          WAIT
  115.       ELSE
  116.          IF FILE(logbook + '.DBF')
  117.             DO dxpdnqsl
  118.          ELSE
  119.             ? 'ERROR- LOGBOOK IS NOT ON DEFAULT DRIVE'
  120.             WAIT
  121.          ENDIF
  122.       ENDIF
  123.       
  124.    CASE task = 'V'
  125.       IF logbook = '      '
  126.          @ 23,1  SAY 'OPEN A LOGBOOK FIRST'
  127.          STORE 'L' TO task
  128.          WAIT
  129.       ELSE
  130.          DO log2dbf
  131.       ENDIF
  132.       
  133.    CASE task = 'F'
  134.       CLEAR
  135.       ACCEPT 'WHICH DRIVE ? ' TO diskdrive
  136.       diskdrive = SUBSTR(diskdrive,1,1)
  137.       STORE diskdrive + ':' TO diskdrive
  138.       DISPLAY Files ON &diskdrive
  139.       RELEASE diskdrive
  140.       WAIT
  141.       
  142.    CASE task = 'C'
  143.       CLEAR
  144.       @ 10,1 SAY "CALL SIGN IS "
  145.       @ 10,25 GET callsign
  146.       READ
  147.       
  148.    CASE task = 'L'
  149.       @ 22,1 SAY 'Which Log file ?'
  150.       STORE SUBSTR(logbook+'        ',1,10) TO logbook
  151.       @ 22,18 GET logbook
  152.       STORE SUBSTR(logndx+'        ',1,10) TO logndx
  153.       @ 22,30 SAY 'Which Index file ?'
  154.       @ 22,49 GET logndx
  155.       READ
  156.       IF FILE (logbook + '.DBF')
  157.          @ 22,1 SAY '                          '
  158.       ELSE
  159.          @ 22,1 SAY ' '
  160.          ? 'ERROR, ',logbook, 'IS NOT PRESENT ON DRIVE'
  161.          WAIT
  162.       ENDIF
  163.       
  164.    CASE task = 'T'
  165.       ACCEPT 'What is your offset to UTC (HH) ? ' TO cgmt
  166.       STORE VAL(cgmt) TO gmt
  167.       RELEASE cgmt
  168.       
  169.    CASE task = 'S'
  170.       IF logbook = '      '
  171.          @ 23,1  SAY 'OPEN A LOGBOOK FIRST'
  172.          STORE 'L' TO task
  173.          WAIT
  174.       ELSE
  175.          IF FILE(logbook +'.DBF')
  176.             ACCEPT ('WHAT IS THE NAME OF THE SORTED LOG FILE ? ') TO newlog
  177.             USE &logbook
  178.             ? 'INDEXING LOGBOOK NOW'
  179.             SET TALK ON
  180.             INDEX ON DATE+TIME TO temp
  181.             SET TALK OFF
  182.             ? 'COPYING LOGBOOK NOW'
  183.             SET TALK ON
  184.             COPY TO &newlog
  185.             SET TALK OFF
  186.             ERASE &temp+'NDX'
  187.             USE &newlog
  188.             ? 'RE-INDEXING NEW LOG FILE NOW'
  189.             STORE newlog TO logbook
  190.             SET TALK ON
  191.             INDEX ON CALL+band TO &logndx
  192.             SET TALK OFF
  193.             RELEASE newlog
  194.             USE
  195.          ELSE
  196.             ? 'ERROR- LOGBOOK IS NOT ON DEFAULT DRIVE'
  197.             WAIT
  198.          ENDIF
  199.       ENDIF
  200.       
  201.       
  202.    ENDCASE
  203. ENDDO
  204. STORE ' '  TO task
  205. RELEASE jlog
  206. RETURN
  207. *: EOF: LOGMISCF.PRG
  208.