implemented support for BatchConv SAP interface

This commit is contained in:
Infineon\StieberD
2024-09-30 13:10:50 -07:00
parent fdb12f206a
commit 95be15df83
16 changed files with 12030 additions and 3698 deletions

View File

@ -265,9 +265,6 @@ Refresh:
IF WMOKey NE '' THEN
Set_Property(@WINDOW:'.EPO_GROUP','ENABLED',1)
IF SAPTXDtm NE '' OR sapBatchId NE '' OR WONo EQ 172758 OR WONo EQ 172739 OR WONo EQ 172767 then
Set_Property(@Window : '.EPO_MAKEUP', 'ENABLED', 0)
end
END ELSE
Set_Property(@WINDOW:'.EPO_GROUP','ENABLED',0)
END
@ -277,9 +274,6 @@ Refresh:
Set_Property(@WINDOW:'.ASM_GROUP','ENABLED',1)
Set_Property(@WINDOW:'.EPO_GROUP','ENABLED',0)
Set_Property(@WINDOW:'.EPI_GROUP','ENABLED',0)
IF SAPTXDtm NE '' OR sapBatchId NE '' then
Set_Property(@Window : '.MAKEUP_BOX', 'ENABLED', 0)
end
END
* QBF buttons
@ -595,8 +589,8 @@ MakeUpClick:
FieldNo = Get_Property(CtrlEnt,'POS')
Send_Event(CtrlEnt,'GOTFOCUS')
CheckValue = Get_Property(CtrlEnt,'DEFPROP')
InvalidRequest = 0
CheckValue = Get_Property(CtrlEnt,'DEFPROP')
InvalidRequest = False$
IF ((WONo NE '') AND (CassNo NE '')) THEN
@ -608,36 +602,79 @@ MakeUpClick:
OR (MemberOf(@USER4,'ENGINEERING')) |
OR (MemberOf(@USER4,'LEAD')) |
OR (MemberOf(@USER4,'OI_ADMIN')) THEN
Set_Property(@WINDOW,'SAVEWARN','0')
Send_Event(@WINDOW,'CLEAR')
obj_WO_Mat('ChangeFlag',WOMatKey:@RM:FieldNo:@RM:CheckValue)
IF Get_Status(errCode) THEN
ErrMsg(errCode)
END
WOMatRec = Database_Services("ReadDataRow", 'WO_MAT', WOMatKey)
If Error_Services('NoError') then
SAPBatchNo = WOMatRec<WO_MAT_SAP_BATCH_NO$>
SAPTXDtm = WOMatRec<WO_MAT_SAP_TX_DTM$>
AwaitingBatchNo = ( (SAPTXDtm NE '') and (SAPBatchNo EQ '') )
FullBoxReject = (SAPBatchNo[-1, 1] = 'R')
Begin Case
Case AwaitingBatchNo
InvalidRequest = True$
ErrMsg('WARNING: Cassette ineligible to be converted as it is awaiting a batch number from SAP.')
Case FullBoxReject
InvalidRequest = True$
ErrMsg('WARNING: Cassette ineligible to be converted as it is a full box reject.')
Case Otherwise$
Null
End Case
If Not(InvalidRequest) then
ReactorType = Xlate('WO_MAT', WOMatKey, 'REACTOR_TYPE_NO_CONV', 'X')
EpiPro = (ReactorType EQ 'EPP')
If EpiPro then
LotId = Xlate('WO_MAT', WOMatKey, 'WMO_KEY', 'X')
end else
LotId = Xlate('WO_MAT', WOMatKey, 'RDS_NO', 'X')
end
If LotId NE '' then
Parms = ''
Parms<1> = LotId ; // Cassette to verify wafer count of.
Parms<2> = 0 ; // Wafer count adjustment - 0 because converting box.
Parms<3> = 'MU' ; // Wafer counter tool location
Proceed = Dialog_Box('NDW_WAFER_COUNTER', @Window, Parms)
If Proceed EQ True$ then
Set_Property(@WINDOW,'SAVEWARN', False$)
Send_Event(@WINDOW,'CLEAR')
obj_WO_Mat('ChangeFlag',WOMatKey:@RM:FieldNo:@RM:CheckValue)
IF Get_Status(errCode) THEN
ErrMsg(errCode)
END
end else
InvalidRequest = True$
end
end else
InvalidRequest = True$
ErrMsg('WARNING: Error starting wafer counter check. RDS No is missing.')
end
end
end else
InvalidRequest = True$
ErrMsg('ERROR: Error reading WO_MAT record.')
end
END ELSE
InvalidRequest = 1
InvalidRequest = True$
ErrMsg('INFO: This function is limited to authorized users only.')
END
end else
InvalidRequest = 1
InvalidRequest = True$
ErrMsg('INFO: You cannot make changes to the lot while it is on hold.')
end
END ELSE
InvalidRequest = 1
InvalidRequest = True$
ErrMsg('WARNING: Work Order and Cassette information is missing.')
END
IF (InvalidRequest = 1) then
IF (InvalidRequest EQ True$) then
/* Toggle back the checkbox flag */
IF (CheckValue = 0) THEN
Set_Property(CtrlEnt, 'DEFPROP', 1)
IF (CheckValue EQ False$) THEN
Set_Property(CtrlEnt, 'DEFPROP', True$)
END ELSE
Set_Property(CtrlEnt, 'DEFPROP', 0)
Set_Property(CtrlEnt, 'DEFPROP', False$)
END
END
@ -767,10 +804,3 @@ BatchFixit:
RETURN