first commit
This commit is contained in:
+160
@@ -0,0 +1,160 @@
|
||||
* MIKE LEWIS - UPDATE CUSTMAST FROM GREAT PLAINS DBF - CGW1170 04-26-94
|
||||
|
||||
#INCLUDE 'F:\CLIP52\RASQLB\52\RQB.CH'
|
||||
#include "F:\CLIP52\RASQLB\52\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
|
||||
*****************************************************
|
||||
FUNCTION CGW1170
|
||||
// UPDATE CUSTOMER DBF WITH GREAT PLAINS INFO
|
||||
|
||||
LOCAL MSTRUCT, MFLD_NAMES
|
||||
LOCAL FLDS_TO_GET := {}, GP_FLD, CGW_FLD, MVAL
|
||||
LOCAL BARM_FACTOR, XXX, OPT, MWORK_AREA
|
||||
|
||||
|
||||
CLS
|
||||
@ 10,15 SAY 'About to UPDATE the CUSTOMER File from the'
|
||||
@ 11,15 SAY 'Great Plains File. This process may take '
|
||||
@ 12,15 SAY 'several minutes to complete.'
|
||||
OPT = ' '
|
||||
@ 14,20 SAY 'Do you wish to continue? (Y/N)' GET OPT PICTURE '!' VALID OPT$'YN'
|
||||
READ()
|
||||
IF LASTKEY() = 27 .OR. OPT$'N'
|
||||
RETURN
|
||||
ENDIF
|
||||
|
||||
CLS
|
||||
WAIT_BOX(' *** UPDATING CUSTOMER FILE *** ',;
|
||||
' *** PLEASE WAIT *** ')
|
||||
|
||||
N_XLOGIN()
|
||||
N_XERRLVL(3)
|
||||
|
||||
MSTRUCT := {}
|
||||
MFLD_NAMES := {}
|
||||
SELECT 0
|
||||
USE CUSTMAST ALIAS DEFINITIONS
|
||||
NET_USE('CUSTMAST', .F., 5, 'DEFINITIONS') && CUSTOMER CHANGE FLAG
|
||||
DO WHILE !EOF()
|
||||
AADD(MSTRUCT, FNAME + TYPE + LENGTH + DECIMAL_PT + NUM_DECS + FILLER + SEMI_COLON)
|
||||
AADD(MFLD_NAMES, FNAME)
|
||||
SKIP 1
|
||||
ENDDO
|
||||
USE
|
||||
|
||||
|
||||
DBOPEN('CUST_MAST')
|
||||
DONSETORD(4) // INDEXED ON GP_CUST
|
||||
DBOPEN('CONTROL', .F.)
|
||||
*-NET_USE('&CONTROL', .F., 5, 'CONTROL') && CUSTOMER CHANGE FLAG
|
||||
MPATH = ALLTRIM(CONTROL->BTR_PATH)
|
||||
MTABLE = MPATH + 'CUSMAS.DAT'
|
||||
USE
|
||||
|
||||
SET DEFAULT FILETYPE TO '.DAT'
|
||||
SET RDD TO 'RQBRDD'
|
||||
NEW_STRUCT := RQBSTRUCT('CUSMAS')
|
||||
|
||||
N_XSELECT(0) // SELECT NEXT EMPTY BTRIEVE WORK AREA
|
||||
N_XUSE(MTABLE, MSTRUCT)
|
||||
MWORK_AREA = N_XSELECT()
|
||||
|
||||
*-N_XORDER(MORDER) // SET TO CORRECT INDEX ORDER
|
||||
|
||||
N_XSRECSIZ()
|
||||
N_XRECSIZ()
|
||||
SET DEFAULT FILETYPE TO
|
||||
SET RDD TO
|
||||
|
||||
// BUILD LIST OF FIELDS TO GET INFO FROM
|
||||
*-AADD(FLDS_TO_GET, {'CUSNO', 'GP_CUST'})
|
||||
AADD(FLDS_TO_GET, {'NAME', 'COMP_NAME'})
|
||||
AADD(FLDS_TO_GET, {'SLSMAN', 'SLSMAN'})
|
||||
AADD(FLDS_TO_GET, {'DSHP', 'SHP_METHOD'})
|
||||
AADD(FLDS_TO_GET, {'DTRM', 'TERMS'})
|
||||
AADD(FLDS_TO_GET, {'CUSDSC', 'DISCOUNT'})
|
||||
AADD(FLDS_TO_GET, {'DAYSTOPAY', 'DAYSTOPAY'})
|
||||
AADD(FLDS_TO_GET, {'ADD1', 'CUST_ADDR'})
|
||||
AADD(FLDS_TO_GET, {'ADD2', 'CUST_ADDR2'})
|
||||
AADD(FLDS_TO_GET, {'CONTACT', 'CONT_LNAME'})
|
||||
AADD(FLDS_TO_GET, {'COMMENT', 'COMMENT'})
|
||||
AADD(FLDS_TO_GET, {'TAXNUM', 'TAXNUM'})
|
||||
AADD(FLDS_TO_GET, {'CITY', 'CUST_CITY'})
|
||||
AADD(FLDS_TO_GET, {'CUSTYP', 'CUSTYP'})
|
||||
AADD(FLDS_TO_GET, {'STATE', 'CUST_STATE'})
|
||||
AADD(FLDS_TO_GET, {'UPSZONE', 'UPSZONE'})
|
||||
AADD(FLDS_TO_GET, {'ZIP', 'CUST_ZIP'})
|
||||
AADD(FLDS_TO_GET, {'PHONE', 'PHONE'})
|
||||
AADD(FLDS_TO_GET, {'TAXSCH', 'TAXSCH'})
|
||||
AADD(FLDS_TO_GET, {'SHIPNAME', 'SHIPNAME'})
|
||||
AADD(FLDS_TO_GET, {'SHIPADD1', 'SHIPADD1'})
|
||||
AADD(FLDS_TO_GET, {'SHIPADD2', 'SHIPADD2'})
|
||||
AADD(FLDS_TO_GET, {'SHIPST', 'SHIPST'})
|
||||
AADD(FLDS_TO_GET, {'SHIPZIP', 'SHIPZIP'})
|
||||
AADD(FLDS_TO_GET, {'SHIPPHN', 'SHIPPHN'})
|
||||
AADD(FLDS_TO_GET, {'SHIPFAX', 'SHIPFAX'})
|
||||
AADD(FLDS_TO_GET, {'FAX', 'FAX'})
|
||||
AADD(FLDS_TO_GET, {'TAXRGST', 'TAXRGST'})
|
||||
AADD(FLDS_TO_GET, {'CURRID', 'CURRID'})
|
||||
|
||||
|
||||
|
||||
|
||||
*-QBROWSE(2,2,20,79)
|
||||
|
||||
|
||||
BARM_FACTOR = SETBARM(,, 20, N_XLASTREC() )
|
||||
|
||||
XXX = 0
|
||||
N_XGOTOTOP() // TOP OF BTRIVE FILE
|
||||
DO WHILE !N_XEOF()
|
||||
XXX++
|
||||
BARM_UPDATE(,,XXX, BARM_FACTOR)
|
||||
MCUSNO = N_XFETCH(A_CUSNO) // GET CURRENT CUSTOMER ID
|
||||
|
||||
SELECT CUST_MAST
|
||||
SEEK MCUSNO
|
||||
IF !FOUND()
|
||||
ADD_REC(1)
|
||||
REPLACE GP_CUST WITH MCUSNO
|
||||
|
||||
///////////////////////////////////////////////////
|
||||
// TEMPORARY FOR NOW
|
||||
REPLACE CUST_ID WITH MCUSNO
|
||||
|
||||
|
||||
|
||||
ELSE
|
||||
REC_LOCK(1)
|
||||
ENDIF
|
||||
N_XSELECT(MWORK_AREA) // SELECT BTRIEVE FILE
|
||||
|
||||
FOR L = 1 TO LEN(FLDS_TO_GET)
|
||||
GP_FLD = FLDS_TO_GET[L,1]
|
||||
CGW_FLD = FLDS_TO_GET[L,2]
|
||||
|
||||
IF GP_FLD == 'DTRM'
|
||||
MVAL = STR(N_XFETCH(GP_FLD),12)
|
||||
ELSE
|
||||
MVAL = N_XFETCH(GP_FLD)
|
||||
ENDIF
|
||||
|
||||
REPLACE CUST_MAST->&CGW_FLD WITH MVAL
|
||||
|
||||
NEXT
|
||||
|
||||
|
||||
N_XSKIP(1)
|
||||
ENDDO
|
||||
CLOSE DATABASES
|
||||
RETURN
|
||||
|
||||
Reference in New Issue
Block a user