Merged PR 12618: Moved TW Reqd check after check for RDS supplier lot no
Moved TW Reqd check after check for RDS supplier lot no
This commit is contained in:
parent
1996ea1919
commit
86595476d5
@ -287,7 +287,14 @@ Service ProcessScanData(ScanID, ScanJSON)
|
||||
If LotCurrentOperation NE 'TW_CREATE' AND LotCurrentOperation NE 'TW_CLOSE' then
|
||||
LotCurrWfrQty = Database_Services('ReadDataColumn', 'LOT', LotId, LOT_WAFER_QTY$, True$, 0, False$)
|
||||
If LotCurrWfrQty GT 0 then
|
||||
If ScansRow<SCANS.TW_LOT_ID$> EQ '' AND ScansRow<SCANS.CASSETTE_IDS$> NE '' then
|
||||
ScansRow<SCANS.TEST_RUN_TYPE_ID$> = 4;//Standard Sampling
|
||||
end
|
||||
ScansRow<SCANS.TW_LOT_ID$, -1> = LotID
|
||||
ThisScanTWLots = ScansRow<SCANS.TW_LOT_ID$>
|
||||
Locate LotID in ThisScanTWLots using @VM setting twPOS then
|
||||
ScansRow<SCANS.TW_LOT_QTY$, twPos> = 1
|
||||
end
|
||||
end else
|
||||
Error_Services('Add', LotID : ' does not have enough wafers to be used.')
|
||||
end
|
||||
@ -538,7 +545,6 @@ Service ProcessScanData(ScanID, ScanJSON)
|
||||
Case ScanData[1, 17] EQ 'TESTRUNTYPEUPDATE'
|
||||
TestRunTypeId = Field(ScanData, '|', 2)
|
||||
ScansRow<SCANS.TEST_RUN_TYPE_ID$> = TestRunTypeId
|
||||
//ScansRow<SCANS.TEST_RUN_TYPE_NAME$> = TestRunTypeName
|
||||
|
||||
Case Len(ScanData) GE 22 and ScanData[1, 22] EQ 'LAST_CASSETTE_TEST_ACK'
|
||||
RDSNo = {CASSETTE_IDS}
|
||||
@ -674,7 +680,7 @@ Service ProcessScanData(ScanID, ScanJSON)
|
||||
end
|
||||
end else
|
||||
Abort = True$
|
||||
Scan_Services('AddNotAcceptableReason', 'Lot ':TWLot:' must have a quantity associated with it.')
|
||||
Scan_Services('AddNotAcceptableReason', 'Test Wafer Lot ':TWLot:' must have a quantity associated with it.')
|
||||
end
|
||||
Until Abort
|
||||
Next TWLot
|
||||
@ -923,14 +929,15 @@ Service ProcessScanData(ScanID, ScanJSON)
|
||||
FirstParmsComp = LSParmsComp<1,1>
|
||||
If (FirstParmsComp EQ False$) then RDS_Services('CopyRDSLayerParameters', RDSNo)
|
||||
//Test Wafer logging verification
|
||||
IsTWLoggingReqd = RDS_Services('IsTWLoggingReqd', RDSNo)
|
||||
If IsTWLoggingReqd NE True$ OR TestWaferLotData NE '' then
|
||||
|
||||
|
||||
// Supplier lot verification
|
||||
ScannedSuppLot = ScansRow<SCANS.SUPPLIER_LOT$>
|
||||
RDSSuppLot = RDSRec<RDS_LOT_NUM$>
|
||||
If (ScannedSuppLot NE '') then
|
||||
If (ScannedSuppLot _EQC RDSSuppLot) then
|
||||
IsTWLoggingReqd = RDS_Services('IsTWLoggingReqd', RDSNo)
|
||||
If IsTWLoggingReqd NE True$ OR TestWaferLotData NE '' then
|
||||
WaferCountAckReq = Xlate('RDS', RDSNo, 'WAFER_COUNT_ACK_REQ', 'X')
|
||||
If WaferCountAckReq EQ False$ then
|
||||
PreStageReady = ''
|
||||
@ -976,6 +983,9 @@ Service ProcessScanData(ScanID, ScanJSON)
|
||||
end else
|
||||
Scan_Services('AddNotAcceptableReason', 'The cassette wafer count must be verified against the scheduled wafer count to proceed.')
|
||||
end
|
||||
end else
|
||||
Scan_Services('AddNotAcceptableReason', 'Test wafers are required to be logged with this run.')
|
||||
end
|
||||
end else
|
||||
ScansRow<SCANS.SUPPLIER_LOT$> = ''
|
||||
Error_Services('Add', '(':CassetteID:') Supplier lot mismatch.')
|
||||
@ -983,9 +993,7 @@ Service ProcessScanData(ScanID, ScanJSON)
|
||||
end else
|
||||
Scan_Services('AddNotAcceptableReason', 'Supplier lot scan required in order to complete a tool scan.')
|
||||
end
|
||||
end else
|
||||
Scan_Services('AddNotAcceptableReason', 'Test wafers are required to be logged with this run.')
|
||||
end
|
||||
|
||||
end else
|
||||
Error_Services('Add', '(':CassetteID:') The first run must be completed using the OpenInsight user interface.')
|
||||
end
|
||||
@ -994,12 +1002,12 @@ Service ProcessScanData(ScanID, ScanJSON)
|
||||
end
|
||||
Case CurrStage _EQC 'LOAD'
|
||||
Action = 'LOAD'
|
||||
IsTWLoggingReqd = RDS_Services('IsTWLoggingReqd', RDSNo)
|
||||
If IsTWLoggingReqd NE True$ OR TestWaferLotData NE '' then
|
||||
ScannedSuppLot = ScansRow<SCANS.SUPPLIER_LOT$>
|
||||
RDSSuppLot = RDSRec<RDS_LOT_NUM$>
|
||||
If (ScannedSuppLot NE '') then
|
||||
If (ScannedSuppLot _EQC RDSSuppLot) then
|
||||
IsTWLoggingReqd = RDS_Services('IsTWLoggingReqd', RDSNo)
|
||||
If IsTWLoggingReqd NE True$ OR TestWaferLotData NE '' then
|
||||
// Scheduled tool verification (only supports reactors at the moment)
|
||||
ClearSelect
|
||||
SchedTool = Xlate('RDS', RDSNo, 'SCHED_REACTOR', 'X')
|
||||
@ -1053,15 +1061,16 @@ Service ProcessScanData(ScanID, ScanJSON)
|
||||
Error_Services('Add', 'Scanned tool ':ScanTool:' does not match the scheduled tool ':SchedTool:'. (':RDSNo:')')
|
||||
end
|
||||
end else
|
||||
Scan_Services('AddNotAcceptableReason', 'Test wafers are required to be logged with this run.')
|
||||
end
|
||||
end else
|
||||
|
||||
ScansRow<SCANS.SUPPLIER_LOT$> = ''
|
||||
Error_Services('Add', '(':CassetteID:') Supplier lot mismatch.')
|
||||
end
|
||||
end else
|
||||
Scan_Services('AddNotAcceptableReason', 'Supplier lot scan required in order to complete a tool scan.')
|
||||
end
|
||||
end else
|
||||
Scan_Services('AddNotAcceptableReason', 'Test wafers are required to be logged with this run.')
|
||||
end
|
||||
|
||||
Case CurrStage _EQC 'UNLOAD'
|
||||
Action = 'UNLOAD'
|
||||
@ -2342,3 +2351,4 @@ return
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user