home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / workdb.zip / MAINTAIN.PRG < prev    next >
Text File  |  1988-08-15  |  5KB  |  124 lines

  1. *!!* dBASE CONVERT - dBASE III File Conversion Aid  v2.01  1/10/86
  2. *
  3. SET HEADING OFF
  4. SET SAFETY OFF
  5. * maintain.sig 08/18/83
  6.  
  7. STORE .T. TO MORE
  8. DO WHILE MORE
  9.    STORE CHR(PEEK(063)) TO dr
  10.    CLEAR
  11.    STORE '?' TO COMMAND
  12.    @ 02,00 SAY '---------------------'
  13.    @ 02,20 SAY '---------------------'
  14.    @ 02,40 SAY '---------------------'
  15.    @ 02,60 SAY '--------------------'
  16.    @ 02,19 SAY '> > > F I L E  M A I N T E N A N C E < < <'
  17.    @ 04,22 SAY '1. FIND DUPLICATE RECORDS'
  18.    @ 06,22 SAY '2. VERIFY AND MERGE NEW ENTRIES'
  19.    @ 08,22 SAY '3. VERIFY DELETED ENTRIES'
  20.    @ 10,22 SAY '4. PURGE DELETED ENTRIES FROM FILE'
  21.    @ 12,22 SAY '5. BACKUP DATA FILE'
  22.    @ 14,22 SAY '6. RE-INDEX THE RECORDS'
  23.    @ 16,22 SAY '7. USE BROWSE COMMAND'
  24.    @ 18,22 SAY '8. RETURN TO MAIN MENU'
  25.    @ 21,00 SAY '--------------------'
  26.    @ 21,20 SAY '--------------------'
  27.    @ 21,40 SAY '--------------------'
  28.    @ 21,60 SAY '--------------------'
  29.    @ 22,22 SAY 'WHAT NEXT'
  30.    @ 22,33 GET COMMAND PICTURE '!'
  31.    READ
  32.    DO CASE
  33.       CASE COMMAND = '1'
  34.            CLEAR
  35.            DO DUPCHECK.PRG
  36.       CASE COMMAND = '2'
  37.            CLEAR
  38.            DO VERIFNEW.PRG
  39.       CASE COMMAND = '3'
  40.            CLEAR
  41.            DO VERIFDEL.PRG
  42.       CASE COMMAND = '4'
  43.            DO PURGE.PRG
  44.       CASE COMMAND = '5'
  45.            STORE 'Y' TO DOIT
  46.            CLEAR
  47.            @ 01,05 SAY 'THIS MODULE MAKES A BACKUP OF THE DATA FILE TO ANOTHER DISK'
  48.            @ 03,05 SAY 'Do you want to do a backup of the DATA File (Y/N) ?'
  49.            @ 03,59 GET DOIT PICTURE '!'
  50.            READ
  51.            IF DOIT = 'Y'
  52.               @ 03,00
  53.               @ 07,05 SAY 'THE DATA FILE IS ON DRIVE '+DR+' AND YOU NORMALLY BACKUP TO DRIVE B'
  54.               @ 09,05 SAY 'MAKE SURE THE BACKUP DISK IS IN THE DRIVE SELECTED FOR BACKUP'
  55.               
  56.               *!!  no longer valid  RESET
  57.               STORE 'B' TO BDR
  58.               @ 13,05 SAY 'WHICH DRIVE SELECTED FOR BACKUP DATA FILE ? ' GET BDR PICTURE '!'
  59.               READ
  60.               DO  WHILE AT(bdr,'ABCD') = 0
  61.               @ 13,05 SAY 'WHICH DRIVE SELECTED FOR BACKUP DATA FILE ? ' GET BDR PICTURE '!'
  62.               READ
  63.            ENDDO WHILE @
  64.            IF BDR <> DR
  65.               @ 17,05 SAY 'NOW COPYING DATA FILE FROM DRIVE '+DR+' TO DRIVE '+BDR+ ' '
  66.               COPY TO &BDR.:SIG/MBAK
  67.            ELSE
  68.               @ 17,05 SAY 'CANT BACKUP TO SAME DRIVE - ABORTING'
  69.               @ 23,00 SAY 'HIT RETURN TO CONTINUE'
  70.               SET CONSOLE OFF
  71.               WAIT
  72.               SET CONSOLE ON
  73.            ENDIF NOT SAME DRIVE
  74.         ENDIF DO BACKUP
  75.    CASE COMMAND = '6'
  76.         * re-initialize index files
  77.         CLEAR
  78.         @ 7,10 SAY 'RECORDS ARE NOW BEING RE-INDEXED'
  79.         @ 9,10 SAY 'PLEASE BE PATIENT AS THIS TAKES A LITTLE TIME...'
  80.         INDEX ON UPPER(lname) TO &dr.:orders
  81.    CASE COMMAND = '7'
  82.         * browse thru records
  83.         CLEAR
  84.         @ 01,12 SAY '***WARNING***  ***WARNING***  ***WARNING***'
  85.         @ 03,13 SAY 'CHANGES MADE WILL BE WRITTEN TO THE FILE'
  86.         @ 06,12 SAY 'CTRL-C WRITE CURRENT RECORD & GO DOWN'
  87.         @ 07,12 SAY 'CTRL-R WRITE CURRENT RECORD & GO UP'
  88.         @ 08,12 SAY 'CTRL-Z/B PANS SCREEN LEFT OR RIGHT'
  89.         @ 09,12 SAY 'CTRL-V TOGGLES INSERT ON OR OFF'
  90.         @ 10,12 SAY 'CTRL-G DELETE CHARACTER UNDER CURSOR'
  91.         @ 11,12 SAY 'CTRL-U DELETE OR RECALL CURRENT RECORD'
  92.         @ 12,12 SAY 'CTRL-Q EXIT DONT WRITE CURRENT RECORD'
  93.         @ 13,12 SAY 'CTRL-W EXIT AND SAVE ALL CHANGES'
  94.         * get a starting point in file
  95.         STORE 'A' TO STLETTER
  96.         @ 22,00
  97.         @ 22,12 SAY 'AT WHAT LETTER OF ALPHABET TO START BROWSING'
  98.         @ 22,57 GET STLETTER PICTURE '!'
  99.         READ
  100.         * goto starting point or next if no find
  101.         *!! EOF() will be true if NO FIND, and RECNO() will equal BOTTOM, not 0.
  102.         FIND &STLETTER
  103.         DO WHILE (EOF() .OR. BOF())
  104.            STORE 'ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ' TO ALPHABET
  105.            STORE AT(stletter,ALPHABET) + 1 TO NEXL
  106.            STORE SUBSTR(ALPHABET,NEXL,1) TO stletter
  107.            *!! EOF() will be true if NO FIND, and RECNO() will equal BOTTOM, not 0.
  108.            FIND &STLETTER
  109.            RELEASE ALPHABET
  110.         ENDDO WHILE #
  111.         * browse thru file
  112.         SET ESCAPE OFF
  113.         BROWSE
  114.         SET ESCAPE ON
  115.    CASE (command = '8' .OR. command = 'Q')
  116.         
  117.         STORE .F. TO MORE
  118. ENDCASE
  119. ENDDO WHILE MORE
  120. RELEASE ALL
  121.  
  122. STORE .T. TO FIRST
  123.  
  124.