home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload / ShartewareOverload.cdr / database / pbase.zip / MAILLIST.PRG < prev    next >
Text File  |  1985-10-07  |  5KB  |  140 lines

  1. * MAILLIST.PRG (10-07.a)
  2.  
  3. SWITCH TALK OFF
  4. RESET DATABASE
  5. RESET FORM
  6. DROP VARIABLE ALL
  7.  
  8. FORM TEXT 'First-Initial-Last:' AT  3  3
  9. FORM TEXT 'Mr/s:'        AT  3 53
  10. FORM TEXT 'Title:'        AT  5 16
  11. FORM TEXT 'Company:'        AT  6 14
  12. FORM TEXT 'Address Line 1:'    AT  8  7
  13. FORM TEXT 'Address Line 2:'    AT  9  7
  14. FORM TEXT 'City-State-Zip:'    AT 10  7
  15. FORM TEXT 'Phone:'        AT 12 16
  16. FORM TEXT 'Date:'        AT 12 38
  17. FORM TEXT 'User 1:'        AT 14 15
  18. FORM TEXT 'User 2:'        AT 15 15
  19. FORM FIELD mlname1 PICTURE 'A^^^^^^^^^^'    AT  3 23
  20. FORM FIELD mlname2 PICTURE 'A.>'        AT  3 35
  21. FORM FIELD mlname3 PICTURE 'A^^^^^^^^^^^^^'    AT  3 38
  22. FORM FIELD mlmrms  WIDTH 5            AT  3 59
  23. FORM FIELD mltitle WIDTH 30            AT  5 23
  24. FORM FIELD mlcomp  WIDTH 30            AT  6 23
  25. FORM FIELD mladdr1 WIDTH 30            AT  8 23
  26. FORM FIELD mladdr2 WIDTH 30            AT  9 23
  27. FORM FIELD mlcity  WIDTH 15            AT 10 23
  28. FORM FIELD mlstate PICTURE 'AA>'        AT 10 39
  29. FORM FIELD mlzip   WIDTH 10            AT 10 42
  30. FORM FIELD mlphone PICTURE '(###)###-####>'    AT 12 23
  31. FORM FIELD mldate  PICTURE '##/##/##>'        AT 12 44
  32. FORM FIELD mluser1 WIDTH 15            AT 14 23
  33. FORM FIELD mluser2 WIDTH 15            AT 15 23
  34.  
  35. DOWHILE true
  36.   CLEAR SCREEN
  37.   DOMENU
  38.     MENUTITLE '[ Mailing List Main Menu ]'
  39.     MENUOPTION 'Edit Records'
  40.     MENUOPTION 'Print Mailing Labels'
  41.     MENUOPTION 'Print Reports'
  42.     MENUOPTION 'Initialize Data Base'
  43.     MENUOPTION 'Backup "PUBS" table'
  44.     MENUOPTION 'Quit'
  45.     MENUCHOICE choice
  46.     ENDMENU
  47. ********** <edit> **********
  48.   DOCASE
  49.     CASE choice=1
  50.       CREATE CURSOR 1 FOR mail
  51.       USE CURSOR 1
  52.       editform pubs
  53.       DROP CURSOR 1
  54. ********** <print mailing labels> **********
  55.     CASE choice=2
  56.       POSITION AT 10 10
  57.       ENTER _comp PICTURE '^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^' PROMPT 'Company: '
  58.       CREATE CURSOR 1 FOR mail
  59.       USE CURSOR 1
  60.       SET PRINT TO PRINTER
  61.       SELECT mlname1,mlname3,mlmrms,mltitle,mlcomp,mladdr1,mladdr2,;
  62.     mlcity,mlstate,mlzip FROM pubs WHERE mlcomp=':_comp'
  63.       TEMPLATE PRINT TOLBL
  64.       SELECT mluser1 FROM pubs WHERE mlcomp=':_comp'
  65.       TEMPLATE PRINT FROMLBL
  66.       SELECT mlname1,mlname3,mlcomp,mluser1 FROM pubs WHERE mlcomp=':_comp'
  67.       TEMPLATE PRINT FLOPLBL
  68.       DROP CURSOR 1
  69. ********** <print reports> **********
  70.     CASE choice=3
  71.       RESET REPORT
  72.       DOMENU
  73.     MENUTITLE '[ Report ORDER Specification ]'
  74.     MENUOPTION 'By NAME'
  75.     MENUOPTION 'BY ZIPCODE'
  76.     MENUOPTION 'By COMPANY'
  77.     MENUOPTION 'Return to Main Menu'
  78.     MENUCHOICE choice
  79.     ENDMENU
  80.       DOCASE
  81.     CASE choice=1
  82.       ASSIGN 'mlname3,mlname1,mlname2,mlzip' TO mlorder
  83.     CASE choice=2
  84.       ASSIGN 'mlzip,mlname3,mlname1,mlname2' TO mlorder
  85.     CASE choice=3
  86.       ASSIGN 'mlcomp,mlname3,mlname1,mlname2' TO mlorder
  87.     CASE choice=4
  88.       LOOP
  89.     ENDCASE
  90.       CREATE CURSOR 1 FOR mail
  91.       USE CURSOR 1
  92.       SELECT mlname1,mlname2,mlname3,mlmrms,mltitle,mlcomp,mladdr1,mladdr2,;
  93.     mlcity,mlstate,mlzip,mlphone,mldate,mluser1,mluser2 FROM pubs;
  94.     ORDER BY &mlorder
  95.       DOREPORT
  96.     REPORT OUTPUT
  97.       TO PRINTER
  98.       END
  99.     REPORT PAGE HEADING
  100.       PRINT SYSDATE SYSTIME TAB 25 'List of Contacts' TAB 50 'Page ' SYSPAGE SKIP 2
  101.       END
  102.     REPORT PAGE DETAIL
  103.       PRINT TAB 5 mlname3 ', ' mlname1 ' 'mlname2 TAB 40 mladdr1 SKIP
  104.       PRINT TAB 5 mltitle TAB 40 mladdr2 SKIP
  105.       PRINT TAB 5 mlcomp TAB 40 mlcity TAB 50 mlstate ' ' mlzip SKIP
  106.       PRINT TAB 5 mlphone PICTURE '(^^^)^^^-^^^^' TAB 20 mldate PICTURE '^^/^^/^^' SKIP
  107.       PRINT TAB 5 mluser1 TAB 25 mluser2 SKIP 2
  108.       END
  109.     ENDREPORT
  110.       DROP VARIABLE LIKE 'ml??????'
  111.       DROP CURSOR 1
  112. ********** <initialize> **********
  113.     CASE choice=4
  114.       IF ISYES('[ Are you sure? ]')
  115.     SHOW MESSAGE 'Creating data base "MAIL"'
  116.     CREATE DATABASE mail
  117.     SHOW MESSAGE 'Creating table "PUBS"'
  118.     CREATE CURSOR 1 FOR mail
  119.     USE CURSOR 1
  120.     CREATE TABLE pubs (mlname1 char(11),mlname2 char(1),mlname3 char(14),;
  121.       mlmrms char(5),mltitle char(30),mlcomp char(30),mladdr1 char(30),;
  122.       mladdr2 char(30),mlcity char(15),mlstate char(2),mlzip char(10),;
  123.       mlphone char(11),mldate char(6),mluser1 char(15),mluser2 char(15))
  124.     DROP CURSOR 1
  125.     ENDIF
  126. ********** <backup PUBS> **********
  127.     CASE choice=5
  128.       CREATE CURSOR 1 FOR mail
  129.       USE CURSOR 1
  130.       SELECT mlname1,mlname2,mlname3,mlmrms,mltitle,mlcomp,mladdr1,mladdr2,;
  131.     mlcity,mlstate,mlzip,mlphone,mldate,mluser1,mluser2 FROM pubs
  132.       EXPORT TO temp
  133.       DROP CURSOR 1
  134. ********** <fini> **********
  135.     CASE choice=6
  136.       DROP VARIABLE LIKE 'ml??????'
  137.       RETURN
  138.     ENDCASE
  139.   ENDWHILE
  140.