home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / members.zip / MDMAIN.PRG < prev    next >
Text File  |  1986-10-20  |  3KB  |  176 lines

  1. *----------------------------------------------------------------------
  2. * Program : Membership Database Package
  3. * File    : MDMAIN
  4. * Function: Master Control Program
  5. * Author  : J. North        
  6. * Version : (AT contest)
  7. * Date    : 10/15/86
  8. *----------------------------------------------------------------------
  9. *
  10. clear all
  11. set talk off
  12.  
  13. *  -- Open global procedures file --
  14. set procedure to mdproc
  15.  
  16. on error do errchk
  17.  
  18. *  -- Establish environment --
  19. set bell    off
  20. set status off
  21. set deleted on
  22. set safety  off
  23. set intensity on 
  24. set delimiter on
  25. set delimiter to "[]"
  26. set confirm on
  27. set exact off
  28. set escape off
  29.  
  30. do set_dim
  31.  
  32. clear
  33. @  6,  6  TO 12, 72    DOUBLE
  34. @  7, 21  SAY "Mid Atlantic Solar Energy Association"
  35. @  8, 21  TO  8, 57  
  36. @  9, 21  SAY "MEMBERS - Membership Database Package"
  37. @ 10,  7  TO 10, 71  
  38. @ 11,  8  SAY "Version: (AT contest)                           Jim North, 1986"
  39. @ 24,  0  say "Initializing program . . ."
  40.  
  41. *  -- Check files --
  42. do mdgen
  43.  
  44. *  -- Get saved memory variables --
  45. restore from mdvars
  46.  
  47. *  -- Declare transient publics --
  48. public lock,yn,mn_key,mk_min,query
  49.  
  50. *  -- Binary modules to turn cursor on and off
  51. load curson
  52. load cursoff
  53. call cursoff
  54. call curson
  55. call cursoff
  56.  
  57. *  -- Set Function Keys --
  58. do mdkeyint
  59.  
  60. * -- main menu --
  61. mn_draw=.T.
  62. do while .T.
  63.     if mn_draw 
  64.         do put_main
  65.         do put_mgrp
  66.         mn_draw=.F.
  67.         clear typeahead
  68.     endif
  69.     do while .T. 
  70.         set console off
  71.         mn_key=0
  72.         do while mn_key=0
  73.             mn_key=inkey()
  74.         enddo
  75.         set console on
  76.         do clr_imp
  77.         do case
  78.             case mn_key >= mk_min .AND. mn_key <= -1 
  79.                 exit
  80.             case mn_key=28 .or. mn_key=23
  81.                 exit
  82.             case mn_key>0
  83.                 do set_mgrp
  84.         endcase
  85.     enddo
  86.     if mn_key=23
  87.         clear
  88.         do dialog with 10,'Press "Y" to end program.'
  89.         set console off
  90.         clear typeahead
  91.         wait "" to yn
  92.         set console on
  93.         if upper(yn) # "Y"
  94.             mn_draw=.T.
  95.             loop
  96.         endif
  97.         exit
  98.     endif
  99.     select 1
  100.     do case
  101.         case m_grp=2
  102.             mn_draw=.T.
  103.             do case
  104.                 case mn_key=-1 
  105.                     do mdmod
  106.                 case mn_key=-2 
  107.                     do mdrecall
  108.                 case mn_key=-3 
  109.                     do mdpack
  110.                 case mn_key=-4 
  111.                     do mdindex
  112.                 case mn_key=28 
  113.                     do am-2
  114.                 otherwise
  115.                     mn_draw=.F.
  116.             endcase
  117.         case m_grp=4
  118.             mn_draw=.T.
  119.             do case
  120.                 case mn_key=-1 
  121.                     do mdreport
  122.                 case mn_key=-2 
  123.                     do mdlabel
  124.                 case mn_key=28 
  125.                     do am-4
  126.                 otherwise
  127.                     mn_draw=.F.
  128.             endcase
  129.         case m_grp=3
  130.             mn_draw=.T.
  131.             do case
  132.                 case mn_key=-1 
  133.                     do mdmodqry
  134.                 case mn_key=-2
  135.                     do mdmodfrm
  136.                 case mn_key=-3
  137.                     do mdmodlbl
  138.                 case mn_key=28 
  139.                     do am-3
  140.                 otherwise
  141.                     mn_draw=.F.
  142.             endcase
  143.         case m_grp=1
  144.             mn_draw=.T.
  145.             do case
  146.                 case mn_key=-1 
  147.                     do mdkeyset
  148.                 case mn_key=-2 
  149.                     do mdfields
  150.                 case mn_key=28 
  151.                     do am-1
  152.                 otherwise
  153.                     mn_draw=.F.
  154.             endcase
  155.         case m_grp=5
  156.             mn_draw=.T.
  157.             do case
  158.                 case mn_key=-1 
  159.                     do mdshodoc with .F.
  160.                 case mn_key=-2 
  161.                     do mdshodoc with .T.
  162.                 case mn_key=28 
  163.                     do am-5
  164.                 otherwise
  165.                     mn_draw=.F.
  166.             endcase
  167.     endcase
  168. enddo
  169. close databases
  170. call curson
  171. release module curson
  172. release module cursoff
  173. save all like m_* to mdvars
  174. clear
  175. quit        
  176.