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