Added error checking to scan_services to check for null wo_mat records

This commit is contained in:
Infineon\Ouellette
2025-08-15 17:27:29 -07:00
parent 2fbf41d528
commit 6d552ab824

View File

@ -1142,6 +1142,8 @@ Service ProcessScanData(ScanID, ScanJSON)
CassNo = Xlate('RDS', RDSNo, 'RUN_ORDER_NUM', 'X') CassNo = Xlate('RDS', RDSNo, 'RUN_ORDER_NUM', 'X')
WoMatKey = WO:'*':CassNo WoMatKey = WO:'*':CassNo
WoMatRec = Database_Services('ReadDataRow', 'WO_MAT', WoMatKey) WoMatRec = Database_Services('ReadDataRow', 'WO_MAT', WoMatKey)
if Error_Services('NoError') then
If WoMatRec NE '' then
LastCassInWoTestWaferAckReq = WoMatRec<WO_MAT_LAST_CASSETTE_TEST_WAFER_ACK_REQ$> LastCassInWoTestWaferAckReq = WoMatRec<WO_MAT_LAST_CASSETTE_TEST_WAFER_ACK_REQ$>
LastCassInWoTestWaferAcked = WoMatRec<WO_MAT_LAST_CASSETTE_TEST_WAFER_ACKED$> LastCassInWoTestWaferAcked = WoMatRec<WO_MAT_LAST_CASSETTE_TEST_WAFER_ACKED$>
LastCassInWoTestWaferReqMsg = '' LastCassInWoTestWaferReqMsg = ''
@ -1187,6 +1189,14 @@ Service ProcessScanData(ScanID, ScanJSON)
end end
end end
end end
end else
ErrorMessage = 'WO_MAT record was null.'
Error_Services('Add', ErrorMessage)
end
end else
ErrorMessage = 'Failure to read cassette record. ' : Error_Services('GetMessage')
Error_Services('Add', ErrorMessage)
end
end end
end end
end else end else
@ -1487,6 +1497,7 @@ Service AcceptScan(ScanID, ScanJSON)
// Check if cassette field is populated. If so, then check the cassette's current status to // Check if cassette field is populated. If so, then check the cassette's current status to
// determine what the next action will be (i.e. Pre-Epi+Load, Unload, etc.) // determine what the next action will be (i.e. Pre-Epi+Load, Unload, etc.)
CassetteID = CassetteIDs<0, 1> CassetteID = CassetteIDs<0, 1>
*if CassetteId EQ 1005860 then debug
TestWaferLots = ScansRow<SCANS.TW_LOT_ID$> TestWaferLots = ScansRow<SCANS.TW_LOT_ID$>
Begin Case Begin Case
Case CassetteID NE '' Case CassetteID NE ''
@ -1534,6 +1545,7 @@ Service AcceptScan(ScanID, ScanJSON)
Continue = False$ Continue = False$
end end
If Continue then If Continue then
*if RDSNo EQ 1006721 then debug
PreStageSigned = QA_Services('SignPreEpiStage', RDSNo, Username, WaferQty, Reactor, 1) PreStageSigned = QA_Services('SignPreEpiStage', RDSNo, Username, WaferQty, Reactor, 1)
If PreStageSigned EQ True$ then If PreStageSigned EQ True$ then
LoadStageSigned = QA_Services('SignLoadStage', RDSNo, USername, WaferQty, LLSide, 1) LoadStageSigned = QA_Services('SignLoadStage', RDSNo, USername, WaferQty, LLSide, 1)
@ -2402,3 +2414,4 @@ ClearCursors:
return return