156 lines
3.1 KiB
Plaintext
156 lines
3.1 KiB
Plaintext
#INCLUDE 'RQB.CH'
|
|
#include "RASQLB.CH"
|
|
#INCLUDE 'INKEY.CH'
|
|
|
|
// CONSTANTS
|
|
#define T_CM_CUSNO 1 // 1ST Index order for CUSMAS.DAT (customer #)
|
|
#define T_CM_NAME 2 // 2nd Index order for CUSMAS.DAT (customer name)
|
|
#define A_CUSNO 2 // 2nd Element in CUSMAS Field Array (customer #)
|
|
#define A_NAME 4 // 4TH Element in CUSMAS Field Array (customer name)
|
|
|
|
|
|
EXTERNAL N_XVIA
|
|
|
|
// BTRIEVE
|
|
|
|
///////////////////////////
|
|
FUNCTION BROWSE_TABLE(MFILE, MFIELD_ARR, MHEADER)
|
|
// BROWSE THE MFILE
|
|
|
|
LOCAL NTOP, NLEFT, NBOTT, NRIGHT
|
|
LOCAL MPROC, MPIC, SAVESEL := N_XSELECT()
|
|
|
|
N_XSELECT(MFILE) // SELECT THE BROWSE FILE WORK AREA
|
|
|
|
NTOP = 3
|
|
NBOTT = 20
|
|
NLEFT = 1
|
|
NRIGHT = 79
|
|
|
|
//PARAMETER p_row1,p_col1,p_row2,p_col2,MFIELD_ARR,p_proc,p_pic,MHEADER
|
|
QBROWSE(NTOP, NLEFT, NBOTT, NRIGHT, MFIELD_ARR, MPROC, MPIC, MHEADER)
|
|
|
|
N_XSELECT(SAVESEL) // RESTORE SAVED WORK AREA
|
|
RETURN
|
|
|
|
|
|
|
|
|
|
* * * * * * * * * * * * * * * * * *
|
|
FUNCTION CGWBBROW(MFILE)
|
|
// BROWSE THE GREAT PLAINS FILE THRU BTRIEVE
|
|
|
|
LOCAL MPATH, MTABLE, MHEADER, MFIELD_ARR:= {}, MHEAD_ARR := {}
|
|
LOCAL MLEN
|
|
|
|
N_XLOGIN()
|
|
N_XERRLVL(3)
|
|
|
|
NET_USE('&CONTROL', .F., 5, 'CONTROL') && CUSTOMER CHANGE FLAG
|
|
MPATH = ALLTRIM(CONTROL->BTR_PATH)
|
|
MTABLE = MPATH + MFILE + '.DAT'
|
|
USE
|
|
|
|
|
|
MSTRUCT := {}
|
|
MFLD_NAMES := {}
|
|
SELECT 0
|
|
NET_USE('CGWBTREV', .F., 5, 'DEFINITIONS') && CUSTOMER CHANGE FLAG
|
|
DO WHILE !EOF()
|
|
IF TRIM(SYSNAME) == MFILE
|
|
AADD(MSTRUCT, FNAME + TYPE + LENGTH + DECIMAL_PT + NUM_DECS + FILLER + SEMI_COLON)
|
|
IF FNAME <> 'FILL' .AND. AT('ARCM', FNAME) = 0
|
|
AADD(MFLD_NAMES, FNAME)
|
|
MLEN = MAX( VAL(LENGTH), LEN(ALLTRIM(FNAME)) )
|
|
AADD(MHEAD_ARR, SUBS(FNAME,1,MLEN) )
|
|
ENDIF
|
|
ENDIF
|
|
SKIP 1
|
|
ENDDO
|
|
USE
|
|
|
|
|
|
SET DEFAULT FILETYPE TO '.DAT'
|
|
SET RDD TO 'RQBRDD'
|
|
NEW_STRUCT := RQBSTRUCT(MFILE)
|
|
|
|
N_XSELECT(0) // SELECT NEXT EMPTY BTRIEVE WORK AREA
|
|
N_XUSE(MTABLE, MSTRUCT)
|
|
N_XORDER(1) // SET TO CORRECT INDEX ORDER
|
|
|
|
|
|
|
|
N_XSRECSIZ()
|
|
N_XRECSIZ()
|
|
SET DEFAULT FILETYPE TO
|
|
SET RDD TO
|
|
|
|
|
|
CLS
|
|
MHEADER := {}
|
|
MFIELD_ARR := {}
|
|
|
|
AADD(MFIELD_ARR, 'CUSNO')
|
|
AADD(MHEADER, 'GP CUST#')
|
|
|
|
AADD(MFIELD_ARR, 'BANK')
|
|
AADD(MHEADER, 'CGW CUST#')
|
|
|
|
AADD(MFIELD_ARR, 'NAME')
|
|
AADD(MHEADER, 'CUST NAME')
|
|
|
|
AADD(MFIELD_ARR, 'ADD1')
|
|
AADD(MHEADER, 'ADDRESS')
|
|
|
|
AADD(MFIELD_ARR, 'CITY')
|
|
AADD(MHEADER, 'CITY')
|
|
|
|
AADD(MFIELD_ARR, 'STATE')
|
|
AADD(MHEADER, 'STATE')
|
|
|
|
AADD(MFIELD_ARR, 'ZIP')
|
|
AADD(MHEADER, 'ZIP')
|
|
|
|
AADD(MFIELD_ARR, 'PHONE')
|
|
AADD(MHEADER, 'PHONE')
|
|
|
|
AADD(MFIELD_ARR, 'FAX')
|
|
AADD(MHEADER, 'FAX')
|
|
|
|
AADD(MFIELD_ARR, 'TAXSCH')
|
|
AADD(MHEADER, 'TAX SCH.')
|
|
|
|
AADD(MFIELD_ARR, 'SHIPNAME')
|
|
AADD(MHEADER, 'SHIPPING NAME')
|
|
|
|
AADD(MFIELD_ARR, 'SHIPADD1')
|
|
AADD(MHEADER, 'SHIPPING ADDR1')
|
|
|
|
AADD(MFIELD_ARR, 'SHIPADD2')
|
|
AADD(MHEADER, 'SHIPPING ADDR2')
|
|
|
|
AADD(MFIELD_ARR, 'SHIPCITY')
|
|
AADD(MHEADER, 'SHIPPING CITY')
|
|
|
|
AADD(MFIELD_ARR, 'SHIPST')
|
|
AADD(MHEADER, 'SHIPPING STATE')
|
|
|
|
AADD(MFIELD_ARR, 'SHIPZIP')
|
|
AADD(MHEADER, 'SHIPPING ZIP')
|
|
|
|
AADD(MFIELD_ARR, 'SHP_METHOD')
|
|
AADD(MHEADER, 'SHP_METHOD')
|
|
|
|
AADD(MFIELD_ARR, 'TERMS')
|
|
AADD(MHEADER, 'TERMS')
|
|
|
|
AADD(MFIELD_ARR, 'SLSMAN')
|
|
AADD(MHEADER, 'SALESMAN')
|
|
|
|
AADD(MFIELD_ARR, 'CLIMIT')
|
|
AADD(MHEADER, 'CREDIT LIMIT')
|
|
|
|
BROWSE_TABLE(MTABLE, MFLD_NAMES, MHEAD_ARR)
|
|
N_XCLOSE(.T.) // CLOSE ALL BTRIVE FILES!
|
|
RETURN
|
|
|