home *** CD-ROM | disk | FTP | other *** search
/ Hall of Fame / HallofFameCDROM.cdr / misc3 / easymail.lzh / LABSELEC.BAS (.txt) < prev    next >
Encoding:
GW-BASIC  |  1982-03-17  |  2.4 KB  |  103 lines

  1. 10  COMMON PGRDATA(),LINPTR%(),NLINES%,MAXLEN,LINBUF$(),TOPROG$,TOFILE$
  2. 20  MAXLEN=11
  3. 30  TOPROG$="b:labprint"
  4. 40  TOFILE$=""
  5. 50  DIM PGRDATA(5)
  6. 60  SCREEN 0,1
  7. 70  PGRDATA(1)=UP
  8. 80  PGRDATA(2)=ENVEL
  9. 90  DIM LINBUF$(1000)
  10. 100  DIM LINPTR%(1000)
  11. 110  COLOR 15,9,4
  12. 120  RECNUM = 4
  13. 130  OPEN "B:maillist.REE" AS #1 LEN=128
  14. 140  FIELD #1,9 AS ZIPCODE$, 30 AS NAM$,30 AS ADD1$,30 AS ADD2$, 29 AS CITYST$
  15. 150  ON ERROR GOTO 460
  16. 160  CLS
  17. 170  PRINT " "
  18. 180  PRINT "        SELECT LABELS TO BE PRINTED"
  19. 190  PRINT " "
  20. 200  PRINT " "
  21. 210  INPUT "   SEARCH FOR ==>";SEARCH$
  22. 220  GOSUB 540
  23. 230  RECNUM% = RECNUM% + 1
  24. 240  IF RECNUM% < 5 THEN RECNUM% = 5
  25. 250  GET #1, RECNUM%
  26. 260  ZIP# = CVD(ZIPCODE$)
  27. 270  IF ZIP# = 0 THEN 460
  28. 280  IF ZIP# = 1E+09 THEN 230
  29. 290  X=INSTR(NAM$,SEARCH$)
  30. 300  IF X = 0 THEN 310 ELSE 410
  31. 310  X=INSTR(ADD1$,SEARCH$)
  32. 320  IF X = 0 THEN 330 ELSE 410
  33. 330  X=INSTR(ADD2$,SEARCH$)
  34. 340  IF X = 0 THEN 350 ELSE 410
  35. 350  X=INSTR(CITYST$,SEARCH$)
  36. 360  IF X = 0 THEN 370 ELSE 410
  37. 370  X=INSTR(STR$(ZIP#),SEARCH$)
  38. 380  IF ZIP# = 1E+09 THEN 230
  39. 390  IF ZIP# = 0 THEN 460
  40. 400  IF X = 0 THEN 230
  41. 410  LPTRSUB%=LPTRSUB%+1
  42. 420  NLINES%=NLINES%+1
  43. 430  ON SORTSWITCH GOSUB 830,870,890,910
  44. 440  LINPTR%(LPTRSUB%)=NLINES%
  45. 450  GOTO 230
  46. 460  CLOSE #1
  47. 470  IF SORTSWITCH <> 4 GOTO 500
  48. 480  PRINT "      SORTING BYPASSED"
  49. 490  CHAIN "b:labprint"
  50. 500  PRINT "    Place SORT diskette in drive a"
  51. 510  INPUT "    Press RETURN when ready";RESPONSE$
  52. 520  IF RESPONSE$ = "bypass" THEN 480
  53. 530  CHAIN "a:qsort"
  54. 540  CLS
  55. 550  PRINT " "
  56. 560  PRINT "           SELECT SORT OPTIONS"
  57. 570  PRINT " "
  58. 580  PRINT " "
  59. 590  PRINT "         A - LAST NAME"
  60. 600  PRINT "         B - CITY/ST"
  61. 610  PRINT "         C - ZIP CODE"
  62. 620  PRINT "         D - NO SORT DESIRED"
  63. 630  PRINT "       Esc - EXIT"
  64. 640  PRINT "  "
  65. 650  PRINT "  "
  66. 660  PRINT "   Enter letter of desired option"
  67. 670  K$=INKEY$:IF K$="" THEN 670
  68. 680  IF K$="A" OR K$="a" THEN 740
  69. 690  IF K$="B" OR K$="b" THEN 760
  70. 700  IF K$="C" OR K$="c" THEN 780
  71. 710  IF K$="D" OR K$="d" THEN 800
  72. 720  IF K$=CHR$(27)     THEN 820
  73. 730  GOTO 670
  74. 740  SORTSWITCH=1
  75. 750  RETURN
  76. 760  SORTSWITCH=2
  77. 770  RETURN
  78. 780  SORTSWITCH=3
  79. 790  RETURN
  80. 800  SORTSWITCH=4
  81. 810  RETURN
  82. 820  CHAIN "b:labmail
  83. 830  LNW$=NAM$
  84. 831  FOND%=0
  85. 832  FOR SCAN% = 1 TO 30:IF FOND% = 1 THEN 835
  86. 833  LC$ = MID$(LNW$,SCAN%,2)
  87. 834  IF LC$ = "  " THEN FOND% = 1: LNAME$ = LEFT$(LNW$,SCAN%-1)
  88. 835  NEXT
  89. 837  FOND%=0
  90. 838  FOR SCAN%=LEN(LNAME$) TO 1 STEP -1
  91. 839  IF FOND% = 1 THEN 843
  92. 840  LC$=MID$(LNAME$,SCAN%,1)
  93. 841  IF LC$ = " " THEN FOND%=1: LNAMOUT$ = MID$(LNAME$,SCAN%+1)
  94. 843  NEXT
  95. 850  LINBUF$(LPTRSUB%) = LNAMOUT$+MKI$(RECNUM%)
  96. 860  RETURN
  97. 870  LNW$=CITYST$
  98. 880  GOTO 831
  99. 890  LINBUF$(LPTRSUB%) = STR$(ZIP#)+" "+MKI$(RECNUM%)
  100. 900  RETURN
  101. 910  LINBUF$(LPTRSUB%)="         "+MKI$(RECNUM%)
  102. 920  RETURN
  103.