210 lines
5.1 KiB
Plaintext
210 lines
5.1 KiB
Plaintext
* DON LOWENSTEIN -BUILD LABEL FILE ARRAY- CGW0400 9-5-95
|
|
|
|
PROCEDURE BUILDLBL(CALLPARM)
|
|
|
|
LOCAL CONVKEYX, FILEPARMS, LGET_KEY, FLD_INFO:={}, SAVESEL := SELECT()
|
|
LOCAL WORKVAR, SAVESCR, MARR, NEW_OLD, ONE_MANY, PRES_TREAS
|
|
|
|
|
|
PRIVATE PRNTARR := {}, PARENTFILE, CHILDFILE, MDESC, CUTOFF, PIC, FILEFILTER
|
|
PRIVATE PRNTNAME, KEYVAR, RANGETYPE, NDXEXP, RANGEARR := {}, LVLBRK, SORTARR := {}
|
|
PRIVATE PARENTFILTER := NIL, REPTHEAD, DEFINEPROC:= NIL
|
|
**PRIVATE DET_SUMM := .F., DET_LINE_EXTRA := {}, FOOTERLINES := {}
|
|
PRIVATE _TOFILE := .F., DET_LINE_EXTRA := {}, FOOTERLINES := {}
|
|
PRIVATE LBRK_FOOTER := {}
|
|
PRIVATE REPTONLY := .F., BLD_PROC // 13-15
|
|
PRIVATE DBF_FLD_INFO := {}
|
|
PRIVATE LABELFILE := NIL
|
|
PRIVATE OUTPORT := NIL
|
|
PRIVATE NUMLBLS := 1
|
|
PRIVATE NUMBATCH := 1
|
|
PRIVATE MGET_KEY
|
|
PUBLIC LBL_DATA := CALLPARM
|
|
|
|
CALLPARM = UPPER(ALLTRIM(CALLPARM))
|
|
|
|
DO CASE
|
|
|
|
*******************************************************************
|
|
|
|
CASE CALLPARM = 'CUSTOMER'
|
|
//
|
|
|
|
PRNTNAME = 'CUSTOMER LABELS'
|
|
IF CALLPARM = 'CUSTOMER-MANY'
|
|
PARENTFILE = 'CUST_MAST'
|
|
ELSE
|
|
FILEPARMS := DBOPEN('CUST_MAST')
|
|
CLS
|
|
SAYTITLE(PRNTNAME, 'LABEL')
|
|
LGET_KEY := GET_KEY(FILEPARMS)
|
|
IF LASTKEY() = 27 .OR. EMPTY(LGET_KEY)
|
|
RETURN NIL
|
|
ENDIF
|
|
IF SELECT('USERFILEX') > 0
|
|
CLOSE USERFILEX
|
|
ENDIF
|
|
COPY NEXT 1 TO &USERFILEX
|
|
PARENTFILE := 'USERFILEX'
|
|
ENDIF
|
|
IF CALLPARM == "CUSTOMER-MANY-SHIP" .OR. ;
|
|
CALLPARM == "CUSTOMER-ONE-SHIP"
|
|
DEFINEPROC := {|| SHP_CUSTLBL() }
|
|
ELSE
|
|
DEFINEPROC := {|| BLD_CUSTLBL() }
|
|
ENDIF
|
|
LABELFILE := WHICH_LABEL()
|
|
IF LABELFILE = NIL
|
|
RETURN NIL
|
|
ENDIF
|
|
|
|
|
|
IF CALLPARM = 'CUSTOMER-MANY'
|
|
|
|
MDESC = 'Cust#'
|
|
PIC = ''
|
|
KEYVAR = 'CUST_ID'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = 1
|
|
NDXEXP = 'CUST_ID'
|
|
LVLBRK = {}
|
|
AADD(SORTARR, {'Cust#', KEYVAR, NDXEXP, SYSNTX, LVLBRK})
|
|
AADD(RANGEARR, {MDESC, KEYVAR, PIC, RANGETYPE, CUTOFF})
|
|
|
|
MDESC = 'Name'
|
|
PIC = ''
|
|
KEYVAR = 'COMP_NAME'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = 2
|
|
NDXEXP = 'COMP_NAME'
|
|
LVLBRK = {}
|
|
AADD(SORTARR, {'Name', KEYVAR, NDXEXP, SYSNTX, LVLBRK})
|
|
AADD(RANGEARR, {MDESC, KEYVAR, PIC, RANGETYPE, CUTOFF})
|
|
|
|
|
|
MDESC = 'ZIP Code'
|
|
PIC = ''
|
|
KEYVAR = 'CUST_ZIP'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = NIL
|
|
NDXEXP = 'CUST_ZIP+COMP_NAME'
|
|
LVLBRK = {}
|
|
AADD(SORTARR, {'ZIP Code', KEYVAR, NDXEXP, SYSNTX, LVLBRK})
|
|
AADD(RANGEARR, {MDESC, KEYVAR, PIC, RANGETYPE, CUTOFF})
|
|
|
|
MDESC = 'State'
|
|
PIC = '!!'
|
|
KEYVAR = 'CUST_STATE'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = NIL
|
|
AADD(RANGEARR, {MDESC, KEYVAR, PIC, RANGETYPE, CUTOFF})
|
|
|
|
MDESC = 'Salesman'
|
|
PIC = ''
|
|
KEYVAR = 'SLSMAN'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = NIL
|
|
AADD(RANGEARR, {MDESC, KEYVAR, PIC, RANGETYPE, CUTOFF})
|
|
|
|
MDESC = 'Terms Code'
|
|
PIC = ''
|
|
KEYVAR = 'TERMS'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = NIL
|
|
AADD(RANGEARR, {MDESC, KEYVAR, PIC, RANGETYPE, CUTOFF})
|
|
|
|
MDESC = 'Delivery Route'
|
|
PIC = ''
|
|
KEYVAR = 'DEL_ROUTE'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = NIL
|
|
AADD(RANGEARR, {MDESC, KEYVAR, PIC, RANGETYPE, CUTOFF})
|
|
|
|
MDESC = 'Price Sheet'
|
|
PIC = ''
|
|
KEYVAR = 'PRICE_SHT'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = NIL
|
|
AADD(RANGEARR, {MDESC, KEYVAR, PIC, RANGETYPE, CUTOFF})
|
|
|
|
MDESC = 'Tax Schedule'
|
|
PIC = ''
|
|
KEYVAR = 'TAXSCH'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = NIL
|
|
AADD(RANGEARR, {MDESC, KEYVAR, PIC, RANGETYPE, CUTOFF})
|
|
|
|
ELSE
|
|
|
|
MDESC = 'One LABEL for Customer - ' + CUST_MAST->CUST_ID
|
|
PIC = ''
|
|
KEYVAR = 'CUST_ID'
|
|
RANGETYPE = 'R'
|
|
CUTOFF = .F.
|
|
SYSNTX = NIL
|
|
NDXEXP = 'CUST_ID'
|
|
LVLBRK = {}
|
|
AADD(SORTARR, {MDESC, KEYVAR, NDXEXP, SYSNTX, LVLBRK})
|
|
|
|
ENDIF
|
|
|
|
PRNTARR := LOAD_LBLARR()
|
|
|
|
************************************************************************
|
|
|
|
|
|
OTHERWISE
|
|
PRNTARR := NIL
|
|
ENDCASE
|
|
|
|
RETURN PRNTARR
|
|
|
|
**********************************************************
|
|
|
|
FUNCTION WHICH_LABEL()
|
|
|
|
// GET WHICH LABELS
|
|
LOCAL SAVESCR := SAVESCREEN()
|
|
LOCAL MARR := {}, WORKVAR, LABELFILE
|
|
|
|
@ 02,0 CLEAR
|
|
AADD(MARR,'Standard labels, 3 across, 5 Lines ( 15/16")')
|
|
AADD(MARR,'Laser labels, 3 across, 5 Lines')
|
|
AADD(MARR,'Standard labels, 1 across, 8 Lines (1 7/16")')
|
|
AADD(MARR,'Standard labels, 1 across, 5 Lines ( 15/16") ')
|
|
//
|
|
WORKVAR = PICKLIST(MARR,10,, 'Which Labels?')
|
|
IF LASTKEY() = 27
|
|
RETURN NIL
|
|
ENDIF
|
|
|
|
IF WORKVAR = 1
|
|
LABELFILE = 'LBL3X1' // { 'LBL3X1', LBL_SIZE } // LBL_TYPE 9 IS A MESSAGE '1 ACROSS, 2 X 3
|
|
ELSE
|
|
IF WORKVAR = 2
|
|
LABELFILE = 'CGWLBL7' // laser labels
|
|
ELSE // 8 lines
|
|
IF WORKVAR = 3
|
|
LABELFILE = 'CGWLBL9' // 5 lines - BIG
|
|
ELSE
|
|
IF WORKVAR = 4
|
|
LABELFILE = 'CGWLBL2' // 5 lines - LITTLE
|
|
ELSE
|
|
LABELFILE := NIL
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
ENDIF
|
|
RESTSCREEN(,,,,SAVESCR)
|
|
RETURN LABELFILE
|
|
|
|
|