open-insight/LSL2/STPROC/LOAD_EPI_PN.txt
Infineon\StieberD 7762b129af pre cutover push
2024-09-04 20:33:41 -07:00

96 lines
2.0 KiB
Plaintext

COMPILE ROUTINE LOAD_EPI_PN(Dummy)
ROWDEF(CHARSTR)
DECLARE SUBROUTINE Send_Dyn,Send_Info, Send_Dyn, Set_Status, RList, ErrMsg
DECLARE FUNCTION Get_Status, Set_Printer
$INSERT RDS_EQU
$INSERT QUOTE_DET_EQU
EQU TARGET_ACTIVELIST$ to 5
debug
OPEN 'EPI_PART' TO EpiPartTable ELSE
ErrMsg('Unable to open EPI_PART')
GOTO Bail
END
OPEN 'CUST_PART' TO CustPartTable ELSE
ErrMsg('Unable to open CUST_PART')
GOTO Bail
END
OPEN 'QUOTE_DET' TO QuoteDetTable ELSE
ErrMsg('Unable to open QUOTE_DET table')
GOTO Bail
END
OPEN 'DICT.QUOTE_DET' TO @DICT ELSE
ErrMsg('Unable to open DICT.QUOTE_DET')
GOTO Bail
END
SelectSent = 'SELECT QUOTE_DET WITH QUOTE_STATUS = "O"'
RList(SelectSent,TARGET_ACTIVELIST$, "", "", "")
IF Get_Status(errCode) THEN
ErrMsg(errCode)
GOTO Bail
END
EpiPN = 1000
Done = 0
LOOP
READNEXT @ID ELSE Done = 1
UNTIL Done
READ @RECORD FROM QuoteDetTable,@ID THEN
CustNo = {CUST_NO}
QuoteDetKey = @ID
CustPartNos = {CUST_PART_NO}
IF CustPartNos = '' THEN
CustPNs = {PSN_PART_NO}
END ELSE
CustPNs = CustPartNos
END
SWAP ', ' WITH @VM IN CustPNs
CONVERT ',' TO @VM IN CustPNs
EpiPartRec = ''
EpiPartRec<1> = QuoteDetKey
FOR I = 1 TO COUNT(CustPNs,@VM) + (CustPNs NE '')
CustPN = CustPNs<1,I>
CustPN = TRIM(CustPN)
IF CustPN NE '' THEN
CustPartRec = ''
CustPartRec<1> = EpiPN
CustPartRec<2> = {PROC_PSN}
LOCATE @ID IN CustPartRec<3> USING @VM Setting Pos ELSE
CustPartRec = INSERT(CustPartRec,3,Pos,0,@ID)
END
CustPartKey = CustNo:'*':CustPN
WRITE CustPartRec ON CustPartTable,CustPartKey ELSE DEBUG
END
LOCATE CustPartKey IN EpiPartRec<3> USING @VM Setting Pos1 ELSE
EpiPartRec = INSERT(EpiPartRec,3,Pos1,0,CustPartKey)
END
NEXT I
WRITE EpiPartRec ON EpiPartTable,EpiPN ELSE DEBUG
EpiPN += 1
END ;* End of QuoteDet record read
REPEAT
* * * * * * *
Bail:
* * * * * * *
END