fixed a locking bug preventing work order quantities from updating when cassette quantities are modified
This commit is contained in:
parent
7f309c87d4
commit
bad03f6abe
@ -1527,42 +1527,34 @@ ChangeCassQty:
|
||||
|
||||
WOMatRec = XLATE('WO_MAT',WONo:'*':CassNo,'','X')
|
||||
|
||||
otParms = 'WO_LOG':@RM:WONo
|
||||
WOLogRec = obj_Tables('ReadRec',otParms)
|
||||
|
||||
IF Get_Status(errCode) THEN RETURN
|
||||
|
||||
FirstRDS = WOMatRec<WO_MAT_RDS_NO$,1>
|
||||
|
||||
If FirstRDS NE '' then
|
||||
// There will only be an RDS if the cassette has been released already, otherwise this will fail.
|
||||
obj_RDS('SetSchedWfrQty',FirstRDS:@RM:NewCassQty)
|
||||
IF Get_Status(errCode) THEN
|
||||
obj_Tables('UnlockRec',otParms) ;* Unlock WO Record
|
||||
RETURN
|
||||
END
|
||||
end
|
||||
IF Get_Status(errCode) THEN RETURN
|
||||
end
|
||||
|
||||
CurrWfrCnt = WOMatRec<WO_MAT_WAFER_QTY$>
|
||||
PrevWfrCnt = obj_WO_Mat('SetWfrQty',WONo:'*':CassNo:@RM:NewCassQty)
|
||||
|
||||
IF Get_Status(errCode) THEN
|
||||
|
||||
obj_RDS('SetSchedWfrQty',FirstRDS:@RM:CurrWfrCnt) ;* Reset RDS Sched Qty to original
|
||||
obj_Tables('UnlockRec',otParms) ;* Unlock WO Record
|
||||
|
||||
RETURN
|
||||
END
|
||||
|
||||
WOQtyDelta = PrevWfrCnt - NewCassQty
|
||||
|
||||
IF WOQtyDelta NE 0 THEN
|
||||
WOLogRec = Database_Services('ReadDataRow', 'WO_LOG', WONo)
|
||||
If Error_Services('HasError') then
|
||||
Set_Status(Error_Services('GetMessage'))
|
||||
return
|
||||
end
|
||||
WOLogRec<WO_LOG_WO_QTY$> = WOLogRec<WO_LOG_WO_QTY$> + WOQtyDelta
|
||||
Database_Services('WriteDataRow', 'WO_LOG', WONo, WOLogRec, True$, False$, False$)
|
||||
END
|
||||
|
||||
otParms = FieldStore(otParms,@RM,4,1,WOLogRec)
|
||||
obj_Tables('WriteRec',otParms)
|
||||
|
||||
RETURN
|
||||
|
||||
|
||||
@ -2049,10 +2041,6 @@ RemoveCassettes:
|
||||
|
||||
AllRDSNos = XLATE('WO_MAT',AllCassIDs,WO_MAT_RDS_NO$,'X')
|
||||
|
||||
! Deprecated code 01/04/2022 - DJS
|
||||
* WTParms = 'WO_LOG':@RM:WONo
|
||||
* WORec = obj_Tables('ReadRec',WTParms)
|
||||
|
||||
WORec = Database_Services('ReadDataRow', 'WO_LOG', WONo)
|
||||
If Error_Services('NoError') then
|
||||
|
||||
@ -2088,10 +2076,6 @@ RemoveCassettes:
|
||||
Logging_Services('AppendLog', objLog, LogData, @RM, @FM)
|
||||
end
|
||||
|
||||
! Deprecated code 01/04/2022 - DJS
|
||||
* WTParms = FieldStore(WTParms,@RM,4,1,WORec)
|
||||
* obj_Tables('WriteRec',WTParms)
|
||||
|
||||
RETURN
|
||||
|
||||
|
||||
|
@ -934,7 +934,7 @@ Service UpdateReleasedQty(WONo)
|
||||
UnRelQty = WOQty - RelQty
|
||||
end
|
||||
WORec<WO_LOG_UNREL_QTY_STATIC$> = UnRelQty
|
||||
Database_Services('WriteDataRow', 'WO_LOG', WONo, WORec)
|
||||
Database_Services('WriteDataRow', 'WO_LOG', WONo, WORec, True$, False$, False$)
|
||||
end
|
||||
|
||||
end service
|
||||
@ -946,7 +946,7 @@ Service UpdateReceivedQty(WONo)
|
||||
If Error_Services('NoError') then
|
||||
RXQty = obj_WO_Log('RxQty', WONo:@RM:WORec)
|
||||
WORec<WO_LOG_RX_QTY_STATIC$> = RXQty
|
||||
Database_Services('WriteDataRow', 'WO_LOG', WONo, WORec)
|
||||
Database_Services('WriteDataRow', 'WO_LOG', WONo, WORec, True$, False$, False$)
|
||||
end
|
||||
|
||||
end service
|
||||
|
@ -205,9 +205,11 @@ return
|
||||
|
||||
WRITE_RECORD_PRE:
|
||||
|
||||
OrigQty = OrigRecord<WO_LOG_QTY$>
|
||||
NewQty = Record<WO_LOG_QTY$>
|
||||
If OrigQty NE NewQty then
|
||||
OrigQty = OrigRecord<WO_LOG_QTY$>
|
||||
NewQty = Record<WO_LOG_QTY$>
|
||||
OrigCassList = OrigRecord<WO_LOG_WO_MAT_KEY$>
|
||||
NewCassList = Record<WO_LOG_WO_MAT_KEY$>
|
||||
If ( (OrigQty NE NewQty) or (OrigCassList NE NewCassList) ) then
|
||||
// Update released, unreleased, and received quantities
|
||||
RelQty = obj_WO_Log('RelQty', Name:@RM:Record)
|
||||
Record<WO_LOG_REL_QTY_STATIC$> = RelQty
|
||||
|
@ -641,6 +641,7 @@ WRITE_RECORD:
|
||||
OrigSlotMovedTo = OrigRecord<WO_MAT_SLOT_MOVED_TO$>
|
||||
OrigSlotRepWaferID = OrigRecord<WO_MAT_SLOT_REP_WAFER_ID$>
|
||||
OrigSAPBatchNo = OrigRecord<WO_MAT_SAP_BATCH_NO$>
|
||||
OrigQty = OrigRecord<WO_MAT_WAFER_QTY$>
|
||||
|
||||
NewSlotNos = Record<WO_MAT_SLOT_NO$>
|
||||
NewSlotNCRs = Record<WO_MAT_SLOT_NCR$>
|
||||
@ -667,6 +668,7 @@ WRITE_RECORD:
|
||||
NewSlotMovedTo = Record<WO_MAT_SLOT_MOVED_TO$>
|
||||
NewSlotRepWaferID = Record<WO_MAT_SLOT_REP_WAFER_ID$>
|
||||
NewSAPBatchNo = Record<WO_MAT_SAP_BATCH_NO$>
|
||||
NewQty = Record<WO_MAT_WAFER_QTY$>
|
||||
|
||||
** NCR log for troubleshooting ****************************
|
||||
LogData = ''
|
||||
|
Loading…
x
Reference in New Issue
Block a user