home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / members.zip / MDMOD.PRG < prev    next >
Text File  |  1986-10-21  |  5KB  |  218 lines

  1. *----------------------------------------------------------------------
  2. * Program : Membership Database Package
  3. * File    : MDMOD
  4. * Function: Add/Delete/Browse Program for Members Database
  5. * Author  : J. North        
  6. * Version : (AT contest)
  7. * Date    : 10/15/86
  8. *----------------------------------------------------------------------
  9. *
  10. clear
  11. @  1,  0  TO  9, 79    DOUBLE
  12. @  2,  2  say "DATABASE EDIT SETUP                        Press Ctrl-End to return to menu."
  13. @  4, 30  say "Browse Order          Query File            .QRY"
  14. @  5, 29  say "- - - - - - - - - - -"
  15. @  6, 30  say "0- Record # Order"
  16. @  7, 30  say "1- Last/First Name"
  17. @  8, 30  say "2- Zip Code"
  18. do set_brt
  19. @  4,  2  say "F2 - Set Browse Order"
  20. @  5,  2  say "F3 - Select Query File"
  21. @  6,  2  say "F4 -"
  22. @  7,  2  say "F5 -"
  23. @  8,  2  say "F6 - Edit Database"
  24. do set_dim
  25. @  3,  1  to  3, 78    DOUBLE
  26. @  4, 28  to  8, 28    DOUBLE
  27. @  4, 50  to  8, 50  
  28. @  5, 51  to  5, 78  
  29. @  7, 51  to  7, 78  
  30. call curson
  31. @ 10, 0  say ""
  32. dir *.qry
  33. q_ord=1
  34. q_qry=space(8)
  35. do while .T.
  36.     @ 4, 43 get q_ord picture "9"
  37.     @ 4, 64 get q_qry picture "!!!!!!!!"
  38.     clear gets
  39.     set console off
  40.     key=0
  41.     do while key=0
  42.         key=inkey()
  43.     enddo
  44.     set console on
  45.     do case
  46.         case key=23 
  47.             call cursoff
  48.             return
  49.         case key=-1 
  50.             @ 4, 43 get q_ord picture "9" range 0,2
  51.             read
  52.         case key=-2
  53.             @ 4, 64 get q_qry picture "!!!!!!!!"
  54.             read
  55.             if q_qry#space(8).and. .not. file(trim(q_qry)+".qry")
  56.                 q_qry=space(8)
  57.             endif    
  58.         case key=-5
  59.             exit
  60.     endcase
  61. enddo
  62. do clwait
  63. set deleted off
  64. select 1
  65. use members index name,zip
  66. goto top
  67. if eof()
  68.     append blank
  69.     replace distribute with .T.
  70. endif
  71. set order to q_ord
  72. if q_qry#space(8)
  73.     qry=trim(q_qry)
  74.     q_qry=qry+".qry"
  75.     set filter to file &q_qry
  76. else
  77.     qry="(all)"
  78. endif
  79. goto top
  80. if eof()
  81.     clear
  82.     do dialog with 10,"None of the records match the query specifications. - Press any key."
  83.     wait ""
  84.     use
  85.     return
  86. endif
  87. do case
  88.     case q_ord=0
  89.         ord="Rec #"
  90.     case q_ord=1
  91.         ord="Name"
  92.     case q_ord=2
  93.         ord="Zip"
  94. endcase
  95. clear
  96. @  1,  0  TO 22, 79    DOUBLE
  97. @  3,  1  TO  3, 78    DOUBLE
  98. @ 11,  1  TO 11, 78  
  99. @  0,  0  say "Query: "+qry
  100. @  0, 17  say "Order: "+ord
  101. @  2,  2  say "Record #                                                  MEMBER INFORMATION"
  102. @  4,  2  say "First Name"
  103. @  4, 32  say "Last Name"
  104. @  6,  4  say "Company"
  105. @  6, 50  say "Home Phone"
  106. @  7,  4  say "Address"
  107. @  8, 50  say "Work Phone"
  108. @  9,  7  say "City"
  109. @ 10,  6  say "State"
  110. @ 10, 20  say "Zip Code"
  111. @ 10, 45  say "Expiration Date"
  112. @ 12,  2  say "Membership Type"
  113. @ 12, 25  say "Chapter Code"
  114. @ 12, 45  say "Occupation Codes"
  115. @ 13,  1  say "---------------------- ------------------- -----------------------------------"
  116. @ 14,  2  say "RG - Regular           PH - Philadelphia   01-Architect     09-Manufacturer"
  117. @ 15,  2  say "CM - Corporate         NE - North East     02-Builder       10-Lawyer"
  118. @ 16,  2  say "ST - Staff             NJ - New Jersey     03-Consultant    11-Policy Maker"
  119. @ 17,  2  say "HM - Honorary          DE - Delaware       04-Distributor   12-Researcher"
  120. @ 18, 45  say "05-Educator      13-Retailer"
  121. @ 19, 45  say "06-Engineer      14-Student"
  122. @ 20, 45  say "07-Government    15-Writer/Editor"
  123. @ 21,  2  say "Include on distributed lists (Y/N)?"
  124. @ 21, 45  say "08-Installer"
  125. @ 12, 23  TO 19, 23  
  126. @ 12, 43  TO 21, 43  
  127. @ 20,  1  TO 20, 42  
  128. do set_brt
  129. @ 23,  2  say "Prev-Rec: PgUp   New-Rec  : ^Home   Del/Recall: F1"  
  130. do case 
  131.     case q_ord=1
  132.         @ 23, 58 say "Find Last Name: ^PgUp"
  133.     case q_ord=2
  134.         @ 23, 58 say "Find Zip Code: ^PgUp"
  135. endcase
  136. @ 24,  2  say "Next-Rec: PgDn   Goto Menu: ^End"
  137. do set_dim
  138. draw_d=.T.
  139. do while .T.
  140.     if draw_d
  141.         do d_mbr
  142.         draw_d=.F.
  143.     endif
  144.     if deleted()
  145.         do set_rv
  146.         @ 2,40 say "Deleted"
  147.         do set_dim
  148.     else
  149.         @ 2,40 say space(7)
  150.     endif
  151.     read save
  152.     rk=mod(readkey(),256)
  153.     do case
  154.         case rk=14
  155.             exit
  156.         case rk=7
  157.             draw_d=.T.
  158.             skip 1
  159.             if eof()
  160.                 goto top
  161.             endif
  162.         case rk=6
  163.             draw_d=.T.
  164.             if .not. bof()
  165.                 skip -1
  166.             endif
  167.         case rk=34 .and. q_ord>0
  168.             clear gets
  169.             do case
  170.                 case q_ord=1
  171.                     target=space(16)
  172.                     @ 24, 58 get target picture "XXXXXXXXXXXXXXXX"
  173.                 case q_ord=2
  174.                     target=space(5)
  175.                     @ 24, 58 get target picture "99999"
  176.             endcase
  177.                 read
  178.             if mod(readkey(),256)=14
  179.                 exit
  180.             endif
  181.             recsav=recno()
  182.             target=trim(target)
  183.             if len(target)#0  
  184.                 seek target
  185.                 if eof()
  186.                     @ 24, 58 say "Record Not Found  "
  187.                 else
  188.                     recsav=recno()
  189.                 endif
  190.             endif    
  191.             goto recsav
  192.             draw_d=.T.    
  193.         case rk=36
  194.             if deleted()
  195.                 recall
  196.             else
  197.                 delete
  198.             endif
  199.         case rk=33
  200.             append blank
  201.             replace distribute with .T.
  202.             draw_d=.T.
  203.     endcase    
  204. enddo
  205. call cursoff
  206.  
  207. * - Need to rebuild index files if user selected Rec # order
  208. if q_ord=0
  209.     do clwait
  210.     do dialog with 10,"Updating index files ..."
  211.     set order to 1
  212.     reindex
  213. endif
  214. set deleted on
  215. set filter to
  216. use
  217. return
  218.