home *** CD-ROM | disk | FTP | other *** search
/ Oakland CPM Archive / oakcpm.iso / sigm / vol155 / mail / lab.cmd
Encoding:
Text File  |  1985-02-10  |  3.0 KB  |  80 lines

  1. * MAIL/LAB.CMD ------------------- VERSION 1.0 ---------------- OCTOBER 30, 1982
  2. *
  3. * This command file is "called" by ADBUG.CMD.
  4. *
  5. * A program to print out mailing labels for the form letters as printed using
  6. * the FORM/LTR.CMD. This program assumes the use of "ONE-UP" pin feed,
  7. * continuous type labels which are at least 15/16 " high by 3.5" wide.
  8. *
  9. * A label is printed ONLY for those records in the data base which have the
  10. * "DATE:SENT" field blank (filled with spaces). As each label is printed, the
  11. * blank is replaced with the current (sign-on) date .
  12. *
  13. * This .CMD file uses ADBUG/1.DBF which is assumed to be on disk drive A,
  14. * (default logged-on drive).
  15. *
  16. *  Get the sign-on date and format for insertion into record.
  17. STORE DATE() TO WDATE
  18. STORE $(WDATE,7,2) + $(WDATE,1,2) + $(WDATE,4,2) TO INDATE
  19. *  Prompt operator for printer set-up.
  20. @ 17,12 SAY "SET UP PRINTER AND LABELS FOR PRINTING           "
  21. @ 18,12 SAY "WHEN READY HIT 'RETURN' (ESC TO ABORT)           "
  22. WAIT
  23. *  Clear previous prompt.
  24. @ 17,12 SAY "                                                 "
  25. @ 18,12 SAY "                                                 "
  26. *  Get data base and set to 1st record.
  27. USE ADBUG/1
  28. GOTO TOP
  29. *                          * BEGIN MAIN PROCEDURE *
  30. *  Ckeck DATE:SENT field, if not blank then no form printed, hence no label.
  31. DO WHILE .NOT. EOF
  32.      IF DATE:SENT <> "      "
  33.           SKIP
  34.           LOOP
  35.      ENDIF
  36.      STORE # TO REC:NUM
  37. *       Format name and address fields for printing.
  38.      STORE TRIM(FIRST:NAME) TO NAME:1
  39.      STORE TRIM(CITY) TO CITY:T
  40.      STORE CITY:T + ", " + STATE + ". " + ZIP TO CITYLINE
  41.      IF MID:NAME = " "
  42.           STORE NAME:1 + " " + LAST:NAME TO NAMELINE
  43.      ELSE
  44.           STORE NAME:1 + " " + MID:NAME + ". " + LAST:NAME TO NAMELINE
  45.      ENDIF
  46.      STORE TRIM (ADDRESS:1) TO ADDLINE:1
  47.      IF ADDRESS:2 = "                              "
  48.           STORE CITYLINE TO ADDLINE:2
  49.           STORE "                              " TO CITYLINE
  50.      ELSE
  51.           STORE TRIM(ADDRESS:2) TO ADDLINE:2
  52.      ENDIF
  53.      @ 16,12 SAY "PRINTING A LABEL FOR RECORD " + STR(REC:NUM,3,0)
  54.      @ 17,12 SAY "    (" + NAMELINE + ")"
  55. *       Configure dBASE for printing operations.
  56.      SET FORMAT TO PRINT
  57.      SET CONSOLE OFF
  58.      SET PRINT ON
  59. *       Actual printing here.
  60.      ?? "                        " + SELEC:CODE + "-" + STR(REC:NUM,2,0)
  61.      ? NAMELINE
  62.      ? ADDLINE:1
  63.      ? ADDLINE:2
  64.      ? CITYLINE
  65.      ?
  66.      ?
  67. *       Update the record to show that label printed and when,
  68. *       Then move to next record  and continue proceedure.
  69.      REPLACE DATE:SENT WITH INDATE
  70.      SKIP
  71.      SET FORMAT TO SCREEN
  72.      SET PRINT OFF
  73. ENDDO                     * END MAIN PROCEDURE *
  74. * Configure dBASE for return to calling program.
  75. SET SCREEN ON
  76. SET CONSOLE ON
  77. *        Returns to ADBUG.CMD (MENU)
  78. RETURN
  79.  
  80.