home *** CD-ROM | disk | FTP | other *** search
/ Hall of Fame / HallofFameCDROM.cdr / misc1 / dprog12.lzh / STATES.PRG < prev    next >
Encoding:
Text File  |  1987-11-01  |  5.7 KB  |  192 lines

  1. ********************************************************************************
  2. *
  3. * System             : STATES  
  4. *
  5. *
  6. * System Description : US States database                                         
  7. *
  8. *
  9. * Module             : STATES.PRG
  10. *
  11. *
  12. * Module Description : Main Program
  13. *
  14. *
  15. * Written by         : A. Michael Hearn                                  
  16. *
  17. *
  18. * Copyright (c) 1987 by A. Michael Hearn                                  
  19. *
  20. ********************************************************************************
  21. * database: STATES
  22. SET STATUS OFF
  23. SET TALK OFF
  24. SET ECHO OFF
  25. SET BELL OFF
  26. SET HEADING OFF
  27. SET SAFETY OFF
  28. SET DEVICE TO SCREEN
  29. SET PROCEDURE TO STATES.PRC
  30. LOAD STATES
  31. LOAD DPMM    
  32. LOAD DPOUT
  33. LOAD DPSORT
  34. LOAD DPMMSORT
  35. SELECT A
  36. IF .NOT. FILE("STATES.NDX")
  37.     DO IND
  38. ENDIF
  39. USE STATE    INDEX STATE   
  40. SET FILTER TO
  41. DO PUB
  42. STORE "A - Add new states" TO MH_Menu1
  43. STORE "U - Update, Edit, Scan, Find states" TO MH_Menu2
  44. STORE "R - Run Reports from you list of states" TO MH_Menu3
  45. STORE "L - Print Labels from you list of states" TO MH_Menu4
  46. STORE "M - Generate a Mail Merge file from your list of states" TO MH_Menu5
  47. STORE "I - Rebuild the index to your list of states" TO MH_Menu6
  48. STORE "P - Remove Deleted records from your list of states" TO MH_Menu7
  49. STORE "S - Define Report/Label/Mailmerge sort/select" TO MH_Menu8
  50. STORE "Q - Quit to DOS" TO MH_Menu9
  51. STORE "D - Exit to Dbase" TO MH_Menu10
  52. STORE 10 TO MH_Options
  53. STORE 1 TO MH_I
  54. STORE "1" TO MH_Sub
  55. STORE 0 TO MH_Col
  56. STORE 55 TO MH_Col
  57. CALL DPMM    
  58. CLEAR GETS
  59. DO WHILE .T.
  60.    @ 5,12 SAY "A - Add new states"
  61.    @ 6,12 SAY "U - Update, Edit, Scan, Find states"
  62.    @ 7,12 SAY "R - Run Reports from you list of states"
  63.    @ 8,12 SAY "L - Print Labels from you list of states"
  64.    @ 9,12 SAY "M - Generate a Mail Merge file from your list of states"
  65.    @ 10,12 SAY "I - Rebuild the index to your list of states"
  66.    @ 11,12 SAY "P - Remove Deleted records from your list of states"
  67.    @ 12,12 SAY "S - Define Report/Label/Mailmerge sort/select"
  68.    @ 13,12 SAY "Q - Quit to DOS"
  69.    @ 14,12 SAY "D - Exit to Dbase"
  70.    STORE " " TO MH_Function
  71.    @ 24,0 SAY SPACE(78)
  72.    @ 2,3 SAY DTOC(DATE())
  73.    @ 2,30 SAY "list of states main menu"
  74.    @ 2,69 SAY Time()
  75.    STORE "1" TO MH_Sub
  76.    STORE 0 TO MH_Sel
  77.    STORE 1 TO MH_Mline
  78.    @5,12 GET MH_Menu1
  79.    CLEAR GETS
  80.    STORE " " TO MH_Function
  81.    DO WHILE MH_Function = " "
  82.       STORE 0 TO MH_Sel
  83.       DO WHILE MH_Sel=0
  84.          STORE INKEY() TO MH_Sel
  85.       ENDDO
  86.       IF MH_Sel = 24 .OR. MH_Sel=5 .OR. MH_Sel=32
  87.          @MH_MLine+4,12 SAY MH_Menu&MH_Sub
  88.          IF MH_Sel = 24 .OR. MH_Sel = 32
  89.             STORE MH_MLine+1 TO MH_MLine
  90.          ELSE
  91.             STORE MH_MLine-1 TO MH_MLine
  92.          ENDIF
  93.          IF MH_MLine>MH_Options
  94.             STORE 1 TO MH_MLine
  95.          ENDIF
  96.          IF MH_MLine<1
  97.              STORE MH_Options TO MH_MLine
  98.          ENDIF
  99.          DO St2 WITH MH_Mline, MH_Sub
  100.          @MH_MLine+4,12 GET MH_Menu&MH_Sub
  101.          CLEAR GETS
  102.          LOOP
  103.       ENDIF
  104.       IF At(UPPER(CHR(MH_Sel)),"AURLMIPSQD") # 0
  105.          @MH_MLine+4,13 SAY MH_Menu&MH_Sub
  106.          STORE  At(UPPER(CHR(MH_Sel)),"AURLMIPSQD") TO MH_MLine
  107.          DO St2 WITH MH_Mline, MH_Sub
  108.          @MH_MLine+4,13 GET MH_Menu&MH_Sub
  109.          CLEAR GETS
  110.          STORE UPPER(CHR(MH_Sel)) TO MH_Function
  111.       ENDIF
  112.       IF MH_Sel = 13
  113.          DO St2 WITH MH_MLine, MH_Sub
  114.          STORE LEFT(MH_Menu&MH_Sub,1) TO MH_Function
  115.       ENDIF
  116.    ENDDO
  117.    DO CASE
  118.       CASE UPPER(MH_Function)="A"
  119.            DO ADD
  120.           CALL DPMM    
  121.            LOOP
  122.       CASE UPPER(MH_Function)="U"
  123.            DO UPD
  124.           CALL DPMM    
  125.            LOOP
  126.       CASE UPPER(MH_Function)="R"
  127.            DO RPT
  128.           CALL DPMM    
  129.            LOOP
  130.       CASE UPPER(MH_Function)="M"
  131.            DO MM
  132.           CALL DPMM    
  133.            LOOP
  134.       CASE UPPER(MH_Function)="L"
  135.            DO LAB
  136.           CALL DPMM    
  137.            LOOP
  138.       CASE UPPER(MH_Function)="I"
  139.            DO IND
  140.            LOOP
  141.       CASE UPPER(MH_Function)="H"
  142.            DO HLP WITH 1
  143.           CALL DPMM    
  144.            LOOP
  145.       CASE UPPER(MH_Function)="P"
  146.          @24,0 SAY SPACE(78)
  147.          @24,0 SAY "Delete all marked records"
  148.          STORE "N" TO MH_Ans
  149.          @24,30 GET MH_Ans
  150.          READ
  151.          IF  UPPER(MH_Ans) = "Y"
  152.              PACK
  153.          ENDIF
  154.          RELEASE MH_Ans
  155.          LOOP
  156.       CASE UPPER(MH_Function)="Q"
  157.            RELEASE MH_Function
  158.            DO REL
  159.            CLOSE DATABASES
  160.            QUIT
  161.       CASE UPPER(MH_Function)="S"
  162.          DO DPSORT
  163.          STORE "A - Add new states" TO MH_Menu1
  164.          STORE "U - Update, Edit, Scan, Find states" TO MH_Menu2
  165.          STORE "R - Run Reports from you list of states" TO MH_Menu3
  166.          STORE "L - Print Labels from you list of states" TO MH_Menu4
  167.          STORE "M - Generate a Mail Merge file from your list of states" TO MH_Menu5
  168.          STORE "I - Rebuild the index to your list of states" TO MH_Menu6
  169.          STORE "P - Remove Deleted records from your list of states" TO MH_Menu7
  170.          STORE "S - Define Report/Label/Mailmerge sort/select" TO MH_Menu8
  171.          STORE "Q - Quit to DOS" TO MH_Menu9
  172.          STORE "D - Exit to Dbase" TO MH_Menu10
  173.          STORE 10 TO MH_Options
  174.          STORE 1 TO MH_I
  175.          STORE "1" TO MH_Sub
  176.          STORE 0 TO MH_Col
  177.          STORE 55 TO MH_Col
  178.          CALL DPMM    
  179.          CLEAR GETS
  180.          SET PROCEDURE TO STATES.PRC
  181.          USE STATE    INDEX STATE   
  182.          LOOP
  183.       CASE UPPER(MH_Function)="D"
  184.          RELEASE MH_Function
  185.          DO REL
  186.          CLOSE DATABASES
  187.          CLEAR
  188.          RETURN
  189.    ENDCASE
  190. ENDDO
  191. RETURN
  192.