310 lines
6.4 KiB
Plaintext
310 lines
6.4 KiB
Plaintext
COMPILE ROUTINE FIX_COC(Dummy)
|
|
ROWDEF (CHARSTR)
|
|
|
|
* Use to add shipment record numbers to WOMatKey based on WO or ship date + reactor type
|
|
|
|
DECLARE SUBROUTINE obj_Schedule,Send_Dyn,Send_Info, obj_Shipment,RList, Btree.Extract, obj_WM_Out, obj_WO_Mat, Set_Status, Send_Dyn
|
|
DECLARE SUBROUTINE obj_WO_Mat_Log, Set_Property, ErrMsg
|
|
DECLARE FUNCTION Get_Status, Set_Printer
|
|
|
|
$INSERT COC_EQUATES
|
|
$INSERT WO_LOG_EQUATES
|
|
$INSERT RDS_EQUATES
|
|
$INSERT WO_MAT_EQUATES
|
|
$INSERT WM_OUT_EQUATES
|
|
|
|
|
|
|
|
equ TARGET_ACTIVELIST$ to 5
|
|
EQU TAB$ TO \09\
|
|
|
|
|
|
OPEN 'COC' TO ShipFile ELSE
|
|
DEBUG
|
|
GOTO Bail
|
|
END
|
|
|
|
OPEN 'DICT.COC' TO DictVar ELSE
|
|
DEBUG
|
|
GOTO Bail
|
|
END
|
|
|
|
OPEN 'WO_MAT' TO WOMatTable ELSE
|
|
DEBUG
|
|
GOTO Bail
|
|
END
|
|
|
|
OPEN 'FTP_QUEUE' TO QFile ELSE
|
|
DEBUG
|
|
GOTO Bail
|
|
END
|
|
|
|
|
|
DEBUG
|
|
|
|
|
|
|
|
SelectStatement = 'SELECT FTP_QUEUE WITH SHIP_NO FROM 136094 TO 136119 BY SHIP_NO'
|
|
|
|
|
|
RList(SelectStatement,TARGET_ACTIVELIST$, "", "", "")
|
|
|
|
IF Get_Status(errCode) THEN DEBUG
|
|
|
|
ShipKeys = ''
|
|
Done = 0
|
|
LOOP
|
|
READNEXT ShipKey ELSE Done = 1
|
|
UNTIL Done
|
|
|
|
*DELETE QFile,ShipKey THEN
|
|
|
|
*DELETE ShipFile,ShipKey THEN
|
|
Send_Dyn(ShipKey:' - deleted')
|
|
*END
|
|
*END
|
|
|
|
ShipKeys := ShipKey:@VM
|
|
|
|
*Send_Dyn(ShipKey)
|
|
REPEAT
|
|
|
|
|
|
|
|
|
|
GOTO Bail
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Done = 0
|
|
RecCnt = 0
|
|
FixCnt = 0
|
|
|
|
FOR Ship = 1 TO ShipCnt
|
|
|
|
ShipNo = ShipKeys<1,Ship>
|
|
|
|
READ ShipRec FROM ShipFile,ShipNo THEN
|
|
|
|
RecCnt += 1
|
|
|
|
WONo = ShipRec<COC_WO_NO$>
|
|
StepNos = ShipRec<COC_WO_STEP$>
|
|
CassNos = ShipRec<COC_CASS_NO$>
|
|
|
|
wmlWONos = '' ;* parameters for obj_WO_Mat_Log('Create' call
|
|
wmlCassNos = ''
|
|
wmlCassIDs = ''
|
|
|
|
CassCnt = COUNT(CassNos,@VM) + (CassNos NE '')
|
|
|
|
FOR I = 1 TO CassCnt
|
|
StepNo = StepNos<1,I>
|
|
CassNo = CassNos<1,I>
|
|
|
|
WOMatKey = WONo:'*':CassNo
|
|
|
|
|
|
READ WOMatRec FROM WOMatTable,WOMatKey THEN
|
|
|
|
IF WOMatRec<WO_MAT_SHIP_NO$> = '' OR WOMatRec<WO_MAT_SHIP_NO$> NE ShipNo THEN
|
|
obj_WO_Mat('AddShip',WOMatKey:@RM:ShipNo)
|
|
IF Get_Status(errCode) THEN
|
|
DEBUG
|
|
END
|
|
END
|
|
|
|
WMOutKey = WOMatRec<WO_MAT_WMO_KEY$>
|
|
ShipDTM = OCONV(ShipRec<COC_PICK_DTM$>,'DT4/^S')
|
|
|
|
LOCATE 'SHIP' IN WOMatRec<WO_MAT_INV_ACTION$> USING @VM SETTING Pos ELSE
|
|
wmlWONos<1,-1> = WONo
|
|
wmlCassNos<1,-1> = CassNo
|
|
|
|
IF WMOutKey NE '' THEN
|
|
obj_WM_Out('AddShip',WMOutKey:@RM:ShipNo)
|
|
wmlCassIDs<1,-1> = 'O':WONo:'.':StepNo:'.':CassNo
|
|
END ELSE
|
|
wmlCassIDs<1,-1> = WOMatRec<WO_MAT_RDS_NO$>[-1,'B':@VM] ;* Ship RDS No
|
|
END
|
|
|
|
END ;* End of check for SHIP inventory log entry
|
|
|
|
END ;* End of WOMatRec READ
|
|
|
|
*Set_Property('TEST.STATUS_LINE','TEXT','Shipments: ':RecCnt:' Fixed: ':FixCnt:' ':I:' of ':'Cassettes: ':CassCnt)
|
|
|
|
NEXT I
|
|
|
|
|
|
IF WmlCassNos NE '' THEN
|
|
|
|
oWMLParms = 'WO_MAT':@RM ;* LogFile
|
|
oWMLParms := ShipDTM:@RM ;* Use PickDTM from shipment record
|
|
oWMLParms := 'SHIP':@RM ;* Action
|
|
oWMLParms := 'SR':@RM ;* WhCd = Shipping / Receiving
|
|
oWMLParms := 'SB':@RM ;* LocCd = Shipping Bench
|
|
|
|
oWMLParms := wmlWONos:@RM ;* WONo(s)
|
|
oWMLParms := wmlCassNos:@RM ;* CassNos(s)
|
|
oWMLParms := 'SAP':@RM ;* User ID
|
|
oWMLParms := wmlCassIDs ;* CassIDs (whats on the label in the bar code!)
|
|
|
|
obj_WO_Mat_Log('Create',oWMLParms)
|
|
|
|
IF Get_Status(errCode) THEN ErrMsg(errCode)
|
|
|
|
FixCnt += 1
|
|
|
|
END ;* End of check for wmlCassNos not null
|
|
|
|
|
|
|
|
END ;* End of ShipRec READ
|
|
|
|
Set_Property('TEST.STATUS_LINE','TEXT','Shipments: ':Ship:' Cassettes Fixed: ':FixCnt)
|
|
|
|
NEXT Ship
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GOTO Bail
|
|
|
|
|
|
|
|
|
|
* * * * * * * Existing routine on 10/1/2014 * * * * * * * *
|
|
|
|
*SelectStatement = 'SELECT COC WITH SHIP_DT > "6/19/2014" AND WITH REACTOR_TYPE = "EPP" ' ; * Change the SHIP_DT and REACTOR_TYPE as needed to fix by Date and Reactor type
|
|
|
|
*SelectStatement = 'SELECT COC WITH WO_NO = "158121" ' ; * Change the WO_NO as needed to fix by single WO
|
|
|
|
*SelectStatement = 'SELECT COC WITH WO_NO 157745 157805 157819 ' ; * Change the WO_NO as needed to fix by multiple WO's
|
|
|
|
|
|
|
|
RList(SelectStatement,TARGET_ACTIVELIST$, "", "", "") ; * This RList statement performs the actual listing based on the SelectStatements above (which one is active)
|
|
|
|
DEBUG
|
|
|
|
Done = 0
|
|
RecCnt = 0
|
|
LOOP
|
|
READNEXT ShipNo ELSE Done = 1
|
|
UNTIL DONE
|
|
READ ShipRec FROM ShipFile,ShipNo THEN
|
|
RecCnt += 1
|
|
WONo = ShipRec<COC_WO_NO$>
|
|
|
|
|
|
CassNos = ShipRec<COC_CASS_NO$>
|
|
StepNos = ShipRec<COC_WO_STEP$>
|
|
|
|
cassCnt = COUNT(CassNos,@VM) + (CassNos NE '')
|
|
|
|
FOR I = 1 TO cassCnt
|
|
CassNo = CassNos<1,I>
|
|
WOMatKey = WONo:'*':CassNo
|
|
WOMatRec = XLATE('WO_MAT',WOMatKey,'','X')
|
|
|
|
WOMatShipNo = WOMatRec<WO_MAT_SHIP_NO$>
|
|
|
|
IF WOMatShipNo = '' Then ;* If no ship_no then write ship_no to WO_MAT record from the COC record
|
|
*obj_WO_Mat('AddShip',WOMatKey:@RM:ShipNo) ;* Remove * to make hot for WO_MAT fix -dkk 7/31/14
|
|
Send_Dyn(ShipNo:' Added to WO_MAT ':WOMatKey)
|
|
END
|
|
|
|
WMOKey = WOMatRec<WO_MAT_WMO_KEY$>
|
|
|
|
IF WMOKey NE '' THEN ;* EpiPro - If no ship_no in WMO key, then write ship_no to WM_OUT record from the COC record
|
|
|
|
WMOutRec = XLATE('WM_OUT',WMOKey,'','X')
|
|
IF WMOutRec<WM_OUT_SHIP_NO$> = '' THEN
|
|
*obj_WM_Out('AddShip',WMOKey:@RM:ShipNo) ;* Remove * to make hot for EpiPro fix -dkk 7/31/14
|
|
Send_Dyn(ShipNo:' Added to WM_OUT ':WMOKey)
|
|
END
|
|
END
|
|
|
|
NEXT I
|
|
|
|
END
|
|
REPEAT
|
|
|
|
GOTO Bail
|
|
|
|
* * * * * * * * * * *
|
|
DEBuG
|
|
|
|
SELECT ShipFile
|
|
|
|
Done = 0
|
|
RecCnt = 0
|
|
FixCnt = 0
|
|
|
|
LOOP
|
|
READNEXT ShipNo ELSE Done = 1
|
|
UNTIL Done
|
|
|
|
READ ShipRec FROM ShipFile,ShipNo THEN
|
|
RecCnt += 1
|
|
|
|
ReactType = ShipRec<COC_REACTOR_TYPE$>
|
|
|
|
ReactCode = ''
|
|
|
|
BEGIN CASE
|
|
CASE ReactType = 'A' ; ReactCode = 'ASM+'
|
|
CASE ReactType = 'P' ; ReactCode = 'EPP'
|
|
CASE ReactType = 'E' ; ReactCode = 'ASM'
|
|
CASE ReactType = 'H' ; ReactCode = 'HTR'
|
|
CASE ReactType = 'C' ; ReactCode = 'SIG'
|
|
|
|
CASE 1 ; NULL
|
|
|
|
|
|
END CASE
|
|
|
|
IF ReactCode NE '' THEN
|
|
ShipRec<COC_REACTOR_TYPE$> = ReactCode
|
|
|
|
*WRITE ShipRec ON ShipFile,ShipNo THEN
|
|
|
|
FixCnt += 1
|
|
|
|
Send_Info(FixCnt:TAB$:ShipNo:' ':ReactType:' -> ':ReactCode)
|
|
|
|
*END
|
|
|
|
END ;* End of check for WriteFlag
|
|
|
|
END ;* End of record read
|
|
|
|
REPEAT
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GOTO Bail
|
|
|
|
|
|
|
|
* * * * * * *
|
|
Bail:
|
|
* * * * * * *
|
|
|
|
|
|
END
|
|
|
|
|
|
|