Remove override requirement for makeup lots with

wafers out not matching scheduled qty. to fulfill
ADO 225463.
This commit is contained in:
Infineon\Mitchem 2025-02-13 15:00:27 -07:00 committed by Stieber Daniel (CSC FI SPS MESLEO)
parent c53542c746
commit 31d66da7d2

View File

@ -37,6 +37,7 @@ Function RDS_Post_Epi_Events(CtrlEntId, Event, @PARAMS)
01/22/19 djs Added a simple check to verify that metrology data exists in order to allow FQA signature.
See "Verify RDS_TEST record has measurement data" section.
06/13/24 djm Add new stage-specific supplement system.
02/13/25 djm Removed override requirement for makeup boxes to resolve ADO item 255463.
***********************************************************************************************************************/
@ -278,61 +279,60 @@ Event SIGN_BUTTON.CLICK()
*************************
* Verify Wafer Quantity *
*************************
CassSchedWafers = Get_Property(@Window : '.WAFERS_SCHEDULED', 'TEXT')
WafersOut = Get_Property(@Window : '.WAFERS_OUT', 'TEXT')
MakeupBox = Xlate('RDS', RDSNo, 'MAKEUP_BOX', 'X')
SpecType = Xlate('RDS', RDSNo, 'SPEC_TYPE', 'X')
OverrideAllowed = ( (SpecType EQ 'Q') or MakeupBox )
OverrideAllowed = (SpecType EQ 'Q')
If ( (CassSchedWafers NE WafersOut) and (OverrideAllowed EQ True$) ) then
Message = 'Unable to sign FQA because the Scheduled' : CRLF$ : 'Qty does not equal the '
Message := 'Wafers Out Qty.' : CRLF$ : 'Lead or supervisor must override.'
LeadMessage = 'Scheduled Wafers Quantity does not equal the Wafers Out Quantity.'
If NOT( MemberOf(@USER4, 'LEAD') OR MemberOf(@USER4, 'SUPERVISOR') ) then
Response = Msg(@Window, '', 'POST_EPI_WAFER_OUT', '', Message)
end else
Response = Msg(@Window, '', 'POST_EPI_WAFER_OUT', '', LeadMessage)
end
Begin Case
Case Response EQ 1
Response = True$ ; // User Clicked Override
Case Response EQ 2
Response = False$ ; // User Clicked Cancel
Case Response EQ char(27)
Response = False$ ; // User Pressed Escape Key
End Case
If Response EQ True$ then
Response = Dialog_Box('NDW_VERIFY_USER', @WINDOW, @USER4 : @FM : 'LEAD' : @VM : 'SUPERVISOR')
Valid = Response<1>
Username = Response<2>
If NOT(Valid) then
Return
end else
Set_Property(@Window : '.FINAL_QA_WAFER_OUT_SIG', 'DEFPROP', Username)
Set_Property(@Window : '.FINAL_QA_WAFER_OUT_NAME', 'TEXT', OConv(Username, '[XLATE_CONV,LSL_USERS*FIRST_LAST]'))
Set_Property(@Window : '.FINAL_QA_WAFER_OUT_DATE', 'DEFPROP', Oconv(Date(), 'D2/'))
Set_Property(@Window : '.FINAL_QA_WAFER_OUT_TIME', 'DEFPROP', Oconv(Time(), 'MTS'))
end
end else
Return
end
end else if (CassSchedWafers NE WafersOut) then
// Inform user
Title = 'Process Error'
ErrorMsg = 'Scheduled Wafers Quantity does not equal the Wafers Out Quantity.':CRLF$
ErrorMsg := 'Override not allowed due to spec type.'
Response = Msg(@Window, '', 'OK', '', Title:@FM:ErrorMsg)
return
If MakeupBox NE True$ then
If ( (CassSchedWafers NE WafersOut) and (OverrideAllowed EQ True$) ) then
Message = 'Unable to sign FQA because the Scheduled' : CRLF$ : 'Qty does not equal the '
Message := 'Wafers Out Qty.' : CRLF$ : 'Lead or supervisor must override.'
LeadMessage = 'Scheduled Wafers Quantity does not equal the Wafers Out Quantity.'
If NOT( MemberOf(@USER4, 'LEAD') OR MemberOf(@USER4, 'SUPERVISOR') ) then
Response = Msg(@Window, '', 'POST_EPI_WAFER_OUT', '', Message)
end else
Response = Msg(@Window, '', 'POST_EPI_WAFER_OUT', '', LeadMessage)
end
Begin Case
Case Response EQ 1
Response = True$ ; // User Clicked Override
Case Response EQ 2
Response = False$ ; // User Clicked Cancel
Case Response EQ char(27)
Response = False$ ; // User Pressed Escape Key
End Case
If Response EQ True$ then
Response = Dialog_Box('NDW_VERIFY_USER', @WINDOW, @USER4 : @FM : 'LEAD' : @VM : 'SUPERVISOR')
Valid = Response<1>
Username = Response<2>
If NOT(Valid) then
Return
end else
Set_Property(@Window : '.FINAL_QA_WAFER_OUT_SIG', 'DEFPROP', Username)
Set_Property(@Window : '.FINAL_QA_WAFER_OUT_NAME', 'TEXT', OConv(Username, '[XLATE_CONV,LSL_USERS*FIRST_LAST]'))
Set_Property(@Window : '.FINAL_QA_WAFER_OUT_DATE', 'DEFPROP', Oconv(Date(), 'D2/'))
Set_Property(@Window : '.FINAL_QA_WAFER_OUT_TIME', 'DEFPROP', Oconv(Time(), 'MTS'))
end
end else
Return
end
end else if (CassSchedWafers NE WafersOut) then
// Inform user
Title = 'Process Error'
ErrorMsg = 'Scheduled Wafers Quantity does not equal the Wafers Out Quantity.':CRLF$
ErrorMsg := 'Override not allowed due to spec type.'
Response = Msg(@Window, '', 'OK', '', Title:@FM:ErrorMsg)
return
end
end
*********************************
* Verify NCR total >= USL Fails *
*********************************