home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a031 / samples.exe / BACK_RES.PRG < prev    next >
Encoding:
Text File  |  1992-03-10  |  4.0 KB  |  129 lines

  1. ******************************************************************************
  2. *  PROGRAM NAME: BACK_RES.PRG
  3. *                BACKUP & RESTORE PROGRAM
  4. *                SAMPLE BUSINESS APPLICATION PROGRAM
  5. *  LAST CHANGED: 09/25/89 09:26AM
  6. *  WRITTEN BY:   Borland International Inc.
  7. ******************************************************************************
  8.  
  9. * Main procedure
  10. PROCEDURE Back_res
  11.    CLOSE DATABASES
  12.    PUBLIC mpath
  13.    STORE "" TO choice, answer
  14.    * Define popup
  15.    DO M_popdef
  16.    SET COLOR TO &c_normal.
  17.    CLEAR
  18.    SET COLOR TO &c_pop.
  19.    ACTIVATE POPUP backmenu
  20. RETURN TO Business
  21. *** END MAIN PROCEDURE *******************************************************
  22.  
  23. * UTILITY PROCEDURES
  24. PROCEDURE Bbackup
  25.    * Back up database and index files to floppy disk(s)
  26.    ACTIVATE WINDOW backup
  27.       @ 0,0  SAY "----------------- BACK UP DATA ------------------"
  28.       @ 1,2  SAY "Insert a formatted floppy disk in drive A:"
  29.       WAIT       "  Then press any key to begin backup..."
  30.       RUN BACKUP &mpath.*.DB? A:
  31.       RUN BACKUP &mpath.*.MDX A: /A
  32.       ?? CHR(7)
  33.       CLEAR
  34.       ? "************  BACKUP PROCESS FINISHED  **********"
  35.       WAIT
  36.    DEACTIVATE WINDOW backup
  37.    SET COLOR TO &c_normal.
  38.    CLEAR
  39.    SET COLOR TO &c_pop.
  40. RETURN
  41.  
  42. PROCEDURE Back
  43.    * Execute case depending on user's choice
  44.    DO CASE
  45.       CASE BAR() =  2
  46.          DO Sure
  47.          IF choice = "Y"
  48.             DO Bbackup
  49.          ENDIF
  50.       CASE BAR() =  3
  51.          DO Sure
  52.          IF choice = "Y"
  53.             DO Rrestore
  54.          ENDIF
  55.       CASE BAR() =  4
  56.          RETURN TO Business
  57.    ENDCASE
  58. RETURN
  59.  
  60. PROCEDURE M_popdef
  61.    * Defines the main popup menu
  62.    DEFINE POPUP backmenu FROM 7,20 TO 12,59 ;
  63.      MESSAGE "Press first letter of menu choice, " + ;
  64.              "or highlight then press <Enter>"
  65.    DEFINE BAR 1 OF backmenu ;
  66.           PROMPT "======== BACKUP - RESTORE MENU =======" SKIP
  67.    DEFINE BAR 2 OF backmenu ;
  68.           PROMPT " Back up your data to floppy disks"
  69.    DEFINE BAR 3 OF backmenu ;
  70.           PROMPT " Restore your data from floppy disks"
  71.    DEFINE BAR 4 OF backmenu ;
  72.           PROMPT " Exit to the Main Menu"
  73.    ON SELECTION POPUP backmenu DO Back
  74.    DEFINE WINDOW backup FROM 14,15 TO 20,65 COLOR &c_pop.
  75. RETURN
  76.  
  77. PROCEDURE Rrestore
  78.    * Restore database and index files from floppy disk(s)
  79.    ACTIVATE WINDOW backup
  80.       @ 0,0  SAY "---------------- RESTORE DATA ------------------"
  81.       @ 1,0  SAY "Insert first backup floppy disk in drive A:"
  82.       WAIT       "  Then press any key to begin restoring..."
  83.       ! RESTORE A: &mpath.*.DB?
  84.       ! RESTORE A: &mpath.*.MDX
  85.       ?? CHR(7)
  86.       CLEAR
  87.       ? "*********  RESTORE PROCESS FINISHED  **********"
  88.       WAIT
  89.    DEACTIVATE WINDOW backup
  90.    SET COLOR TO &c_normal.
  91.    CLEAR
  92.    SET COLOR TO &c_pop.
  93. RETURN
  94.  
  95. PROCEDURE Sure
  96.    * Display confirming message
  97.    SET COLOR TO &c_normal.
  98.    CLEAR
  99.    choice = "N"
  100.    ACTIVATE WINDOW backup
  101.       @ 0, 0  SAY "------------------- WARNING ---------------------"
  102.       @ 1, 0  SAY " Are you sure you want to BACK UP or RESTORE ?"
  103.       @ 2, 0  SAY "  Press Y to continue or N to stop."
  104.       @ 3,10  SAY "CHOICE:" GET choice PICTURE "Y"
  105.       ?? CHR(7)
  106.       READ
  107.       IF choice = "N"
  108.          SET COLOR TO &c_pop.
  109.          DEACTIVATE WINDOW backup
  110.          RETURN
  111.       ENDIF
  112.       * Get DOS path for BACKUP or RESTORE programs
  113.       IF UPPER(choice) = "Y"
  114.          ?? CHR(7)
  115.          mpath = "C:\dBASE\SAMPLES\" + SPACE(10)
  116.          CLEAR
  117.          @ 0, 0  SAY "---------- ENTER SAMPLE FILES PATH --------------"
  118.          @ 1, 0  SAY " Enter disk drive and full DOS path"
  119.          @ 2, 0  SAY "  (the drive and path your databases are on)"
  120.          @ 3, 2  GET mpath VALID "" <> TRIM(mpath) ;
  121.             MESSAGE "Enter a disk drive letter and full path"
  122.          READ
  123.          mpath = TRIM(mpath)
  124.       ENDIF
  125.    DEACTIVATE WINDOW backup
  126. RETURN
  127.  
  128. *** END BACK_RES.PRG *********************************************************
  129.