Refactored verify barcode logic to work for WM_IN lots. Fixed a bug in CLEAN_INSP_ACTIONS causing all WM_OUT tencor scans to have a failed ROTR result.
This commit is contained in:
@ -200,7 +200,7 @@ return
|
||||
|
||||
|
||||
WRITE_RECORD_PRE:
|
||||
|
||||
|
||||
OrigRecCopy = OrigRecord
|
||||
RecCopy = Record
|
||||
Convert @VM to '' in OrigRecCopy
|
||||
@ -321,7 +321,13 @@ WRITE_RECORD_PRE:
|
||||
end else
|
||||
|
||||
Stage = Record<CLEAN_INSP_STAGE$>
|
||||
IsEpiPro = Rds_Services('IsEpiPro', RDSKeyID)
|
||||
If RDSKeyID NE '' then
|
||||
IsEpiPro = Rds_Services('IsEpiPro', RDSKeyID)
|
||||
IsWmOut = False$
|
||||
end else
|
||||
IsEpiPro = True$
|
||||
IsWmOut = True$
|
||||
end
|
||||
// This ROTR logic is only applicable to LWI clean & inspection rows.
|
||||
CleanInspKeyID = Name
|
||||
|
||||
@ -436,14 +442,16 @@ WRITE_RECORD_PRE:
|
||||
If (UCL EQ '') or (UCL EQ 0) then
|
||||
// The UCL has not yet been retrieved from SPC or an error could have
|
||||
// occurred when the last attempt to retrieve it, so try to get it now.
|
||||
UCL = QA_Services('PostUCLRequest', RDSKey, ScanRecipeName)
|
||||
If (UCL NE '') and (UCL NE 0) then
|
||||
Record<CLEAN_INSP_SPEC_SUM_OF_DEF_AVG$, SpecRecipeIndex> = UCL
|
||||
end else
|
||||
ErrorMessage = 'Error retrieving UCL value from QA_Services in CLEAN_INSP_ACTIONS'
|
||||
Error_Services('Add', ErrorMessage)
|
||||
If (RDSKey NE '') then
|
||||
UCL = QA_Services('PostUCLRequest', RDSKey, ScanRecipeName)
|
||||
If (UCL NE '') and (UCL NE 0) then
|
||||
Record<CLEAN_INSP_SPEC_SUM_OF_DEF_AVG$, SpecRecipeIndex> = UCL
|
||||
end else
|
||||
ErrorMessage = 'Error retrieving UCL value from QA_Services in CLEAN_INSP_ACTIONS'
|
||||
Error_Services('Add', ErrorMessage)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
SpecDefect = Oconv(SpecDefects<0, SpecRecipeIndex>, 'MD0')
|
||||
SpecHaze = Oconv(SpecHazes<0, SpecRecipeIndex>, 'MD2')
|
||||
SpecQty = SpecQuantities<0, SpecRecipeIndex>
|
||||
@ -692,7 +700,10 @@ WRITE_RECORD_PRE:
|
||||
Case (SigRequired EQ True$) AND (ScanSig EQ '')
|
||||
ROTRAction = 'F'
|
||||
ROTRActionReason = 'SurfScan signature is missing.'
|
||||
Case (ScanDefect GT SpecDefect) or (NumFailedWafers GE ROTRFailLimit)
|
||||
Case (ScanDefect GT SpecDefect)
|
||||
ROTRAction = 'F'
|
||||
ROTRActionReason = 'SurfScan data out of bounds.'
|
||||
Case ROTREnabled and (NumFailedWafers GE ROTRFailLimit)
|
||||
ROTRAction = 'F'
|
||||
ROTRActionReason = 'SurfScan data out of bounds.'
|
||||
Case (ScanHaze GT SpecHaze)
|
||||
|
||||
Reference in New Issue
Block a user