Removed error messages on lost focus events and instead just display the error on write operation.

This commit is contained in:
Infineon\StieberD
2025-10-22 12:39:26 -07:00
parent 374e5c2b51
commit 79cde8e098
2 changed files with 249 additions and 298 deletions

View File

@ -100,32 +100,30 @@ RETURN Result
Create: Create:
* * * * * * * * * * * * * *
obj_Appwindow('Create',@WINDOW) obj_Appwindow('Create',@WINDOW)
RETURN RETURN
* * * * * * * * * * * * * *
New: New:
* * * * * * * * * * * * * *
RINo = Get_Property(@WINDOW:'.REACT_ITEM','DEFPROP') RINo = Get_Property(@WINDOW:'.REACT_ITEM','DEFPROP')
IF RINo = '' THEN IF RINo = '' THEN
NextRINo = NextKey('REACT_ITEM') NextRINo = NextKey('REACT_ITEM')
obj_Appwindow('LoadFormKeys',@WINDOW:@RM:NextRINo) obj_Appwindow('LoadFormKeys',@WINDOW:@RM:NextRINo)
END END
EnterBy = Get_Property(@WINDOW:'.ENTER_BY','DEFPROP') EnterBy = Get_Property(@WINDOW:'.ENTER_BY','DEFPROP')
IF EnterBy = '' THEN IF EnterBy = '' THEN
Set_Property(@WINDOW:'.ENTER_BY','INVALUE',@USER4) Set_Property(@WINDOW:'.ENTER_BY','INVALUE',@USER4)
Set_Property(@WINDOW:'.ENTER_DTM','DEFPROP',obj_Calendar('CurrDTM')) Set_Property(@WINDOW:'.ENTER_DTM','DEFPROP',obj_Calendar('CurrDTM'))
END END
GOSUB Refresh GOSUB Refresh
RETURN RETURN
@ -134,19 +132,16 @@ RETURN
Close: Close:
* * * * * * * * * * * * * *
*DEBUG obj_Appwindow('CardReturn',@WINDOW)
obj_Appwindow('CardReturn',@WINDOW)
RETURN RETURN
* * * * * * * * * * * * * *
Read: Read:
* * * * * * * * * * * * * *
GOSUB Refresh GOSUB Refresh
RETURN RETURN
@ -155,11 +150,11 @@ RETURN
Write: Write:
* * * * * * * * * * * * * *
Parent = Get_Property(@WINDOW,'PARENT') Parent = Get_Property(@WINDOW,'PARENT')
IF Parent = 'REACTOR_LOG' OR Parent = 'REACT_STATE' THEN IF Parent = 'REACTOR_LOG' OR Parent = 'REACT_STATE' THEN
Post_Event(@WINDOW,'CLOSE') Post_Event(@WINDOW,'CLOSE')
END END
RETURN RETURN
@ -168,78 +163,49 @@ RETURN
Clear: Clear:
* * * * * * * * * * * * * *
*Send_Event(@WINDOW,'PAGE',1)
* * * * * * * * * * * * * *
Refresh: Refresh:
* * * * * * * * * * * * * *
Ctrls = @WINDOW:'.ENTER_BY':@RM ; Props = 'TEXT':@RM Ctrls = @WINDOW:'.ENTER_BY':@RM ; Props = 'TEXT':@RM
Ctrls := @WINDOW:'.ENTER_DTM' ; Props := 'TEXT' Ctrls := @WINDOW:'.ENTER_DTM' ; Props := 'TEXT'
Vals = Get_Property(Ctrls,Props) Vals = Get_Property(Ctrls,Props)
EnterBy = Vals[1,@RM] EnterBy = Vals[1,@RM]
EnterDTM = Vals[COL2()+1,@RM] EnterDTM = Vals[COL2()+1,@RM]
IF EnterBy = '' THEN Vals = 1:@RM ELSE Vals = 0:@RM IF EnterBy = '' THEN Vals = 1:@RM ELSE Vals = 0:@RM
IF EnterDTM = '' THEN Vals := 1 ELSE Vals := 0 IF EnterDTM = '' THEN Vals := 1 ELSE Vals := 0
Props = 'ENABLED':@RM:'ENABLED' Props = 'ENABLED':@RM:'ENABLED'
Set_Property(Ctrls,Props,Vals) Set_Property(Ctrls,Props,Vals)
* QBF buttons * QBF buttons
Ctrls = @WINDOW:'.QBF_FIRST_FIX':@RM ; Props = 'ENABLED':@RM Ctrls = @WINDOW:'.QBF_FIRST_FIX':@RM ; Props = 'ENABLED':@RM
Ctrls := @WINDOW:'.QBF_PREV_FIX':@RM ; Props := 'ENABLED':@RM Ctrls := @WINDOW:'.QBF_PREV_FIX':@RM ; Props := 'ENABLED':@RM
Ctrls := @WINDOW:'.QBF_ABS_FIX':@RM ; Props := 'ENABLED':@RM Ctrls := @WINDOW:'.QBF_ABS_FIX':@RM ; Props := 'ENABLED':@RM
Ctrls := @WINDOW:'.QBF_NEXT_FIX':@RM ; Props := 'ENABLED':@RM Ctrls := @WINDOW:'.QBF_NEXT_FIX':@RM ; Props := 'ENABLED':@RM
Ctrls := @WINDOW:'.QBF_LAST_FIX':@RM ; Props := 'ENABLED':@RM Ctrls := @WINDOW:'.QBF_LAST_FIX':@RM ; Props := 'ENABLED':@RM
Ctrls := @WINDOW:'.QBF_STOP_FIX' ; Props := 'ENABLED' Ctrls := @WINDOW:'.QBF_STOP_FIX' ; Props := 'ENABLED'
IF Get_Property(@WINDOW,'QBFLIST') = '' THEN IF Get_Property(@WINDOW,'QBFLIST') = '' THEN
Vals = 0:@RM:0:@RM:0:@RM:0:@RM:0:@RM:0 Vals = 0:@RM:0:@RM:0:@RM:0:@RM:0:@RM:0
END ELSE END ELSE
Vals = 1:@RM:1:@RM:1:@RM:1:@RM:1:@RM:1 Vals = 1:@RM:1:@RM:1:@RM:1:@RM:1:@RM:1
END
Set_Property(Ctrls,Props,Vals)
* Turn edit table symbolic column backgrounds to green **************************************************
/*
ETSymbolics = Get_Property(@WINDOW,'@ET_SYMBOLICS') ;* Loaded during 'Create' in obj_Appwindow
ETCtrls = ETSymbolics<1>
ETCols = ETSymbolics<2>
FOR I = 1 TO COUNT(ETCtrls,@VM) + (ETCtrls NE '')
ETCtrl = ETCtrls<1,I>
ETList = Get_Property(ETCtrl,'LIST')
FOR Line = 1 TO COUNT(ETList,@FM) + (ETList NE '')
IF ETList<Line,1> NE '' THEN
FOR N = 1 TO COUNT(ETCols<1,I>,@SVM) + (ETCols<1,I> NE '')
stat = Send_Message(ETCtrl,'COLOR_BY_POS',ETCols<1,I,N>,Line,GREEN$)
NEXT N
END END
NEXT I
NEXT I
*/ Set_Property(Ctrls,Props,Vals)
ETCtrl = @WINDOW:'.REACT_NO'
ETList = Get_Property(ETCtrl,'LIST')
ListCnt = COUNT(ETList,@FM) + (ETList NE '')
FOR Line = 1 TO ListCnt
ETCtrl = @WINDOW:'.REACT_NO'
ETList = Get_Property(ETCtrl,'LIST')
ListCnt = COUNT(ETList,@FM) + (ETList NE '')
FOR Line = 1 TO ListCnt
IF MOD(Line,2) THEN IF MOD(Line,2) THEN
stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$REACT_NO,Line,SPECIAL_BLUE$) stat = Send_Message(ETCtrl,'COLOR_BY_POS',COL$REACT_NO,Line,SPECIAL_BLUE$)
@ -261,9 +227,9 @@ FOR Line = 1 TO ListCnt
stat = Send_Message(ETCtrl,'COLOR_BY_POS',N,Line,WHITE$) stat = Send_Message(ETCtrl,'COLOR_BY_POS',N,Line,WHITE$)
NEXT N NEXT N
END END
NEXT Line NEXT Line
RIType = Get_Property(@Window:'.RI_TYPE', 'TEXT') RIType = Get_Property(@Window:'.RI_TYPE', 'TEXT')
If RIType EQ 'S' then If RIType EQ 'S' then
Set_Property(@Window:'.SUSC_GROUP', 'ENABLED', True$) Set_Property(@Window:'.SUSC_GROUP', 'ENABLED', True$)
Set_Property(@Window:'.PKT_SIZE_LABEL', 'ENABLED', True$) Set_Property(@Window:'.PKT_SIZE_LABEL', 'ENABLED', True$)
Set_Property(@Window:'.PKT_SIZE', 'ENABLED', True$) Set_Property(@Window:'.PKT_SIZE', 'ENABLED', True$)
@ -273,7 +239,7 @@ If RIType EQ 'S' then
Set_Property(@Window:'.LU_PKT_QTY', 'ENABLED', True$) Set_Property(@Window:'.LU_PKT_QTY', 'ENABLED', True$)
Set_Property(@Window:'.PPLUS_RDS_NO_LABEL', 'ENABLED', True$) Set_Property(@Window:'.PPLUS_RDS_NO_LABEL', 'ENABLED', True$)
Set_Property(@Window:'.PPLUS_RDS_NO', 'ENABLED', True$) Set_Property(@Window:'.PPLUS_RDS_NO', 'ENABLED', True$)
end else end else
Set_Property(@Window:'.SUSC_GROUP', 'ENABLED', False$) Set_Property(@Window:'.SUSC_GROUP', 'ENABLED', False$)
Set_Property(@Window:'.PKT_SIZE_LABEL', 'ENABLED', False$) Set_Property(@Window:'.PKT_SIZE_LABEL', 'ENABLED', False$)
Set_Property(@Window:'.PKT_SIZE', 'ENABLED', False$) Set_Property(@Window:'.PKT_SIZE', 'ENABLED', False$)
@ -287,16 +253,17 @@ end else
Set_Property(@Window:'.PPLUS_RDS_NO_LABEL', 'ENABLED', False$) Set_Property(@Window:'.PPLUS_RDS_NO_LABEL', 'ENABLED', False$)
Set_Property(@Window:'.PPLUS_RDS_NO', 'ENABLED', False$) Set_Property(@Window:'.PPLUS_RDS_NO', 'ENABLED', False$)
Set_Property(@Window:'.PPLUS_RDS_NO', 'TEXT', '') Set_Property(@Window:'.PPLUS_RDS_NO', 'TEXT', '')
end end
RETURN RETURN
* * * * * * * * * * * * * *
RITypeChange: RITypeChange:
* * * * * * * * * * * * * *
RIType = Get_Property(@Window:'.RI_TYPE', 'TEXT') RIType = Get_Property(@Window:'.RI_TYPE', 'TEXT')
If RIType EQ 'S' then If RIType EQ 'S' then
Set_Property(@Window:'.SUSC_GROUP', 'ENABLED', True$) Set_Property(@Window:'.SUSC_GROUP', 'ENABLED', True$)
Set_Property(@Window:'.PKT_SIZE_LABEL', 'ENABLED', True$) Set_Property(@Window:'.PKT_SIZE_LABEL', 'ENABLED', True$)
Set_Property(@Window:'.PKT_SIZE', 'ENABLED', True$) Set_Property(@Window:'.PKT_SIZE', 'ENABLED', True$)
@ -306,7 +273,7 @@ If RIType EQ 'S' then
Set_Property(@Window:'.LU_PKT_QTY', 'ENABLED', True$) Set_Property(@Window:'.LU_PKT_QTY', 'ENABLED', True$)
Set_Property(@Window:'.PPLUS_RDS_NO_LABEL', 'ENABLED', True$) Set_Property(@Window:'.PPLUS_RDS_NO_LABEL', 'ENABLED', True$)
Set_Property(@Window:'.PPLUS_RDS_NO', 'ENABLED', True$) Set_Property(@Window:'.PPLUS_RDS_NO', 'ENABLED', True$)
end else end else
Set_Property(@Window:'.SUSC_GROUP', 'ENABLED', False$) Set_Property(@Window:'.SUSC_GROUP', 'ENABLED', False$)
Set_Property(@Window:'.PKT_SIZE_LABEL', 'ENABLED', False$) Set_Property(@Window:'.PKT_SIZE_LABEL', 'ENABLED', False$)
Set_Property(@Window:'.PKT_SIZE', 'ENABLED', False$) Set_Property(@Window:'.PKT_SIZE', 'ENABLED', False$)
@ -320,7 +287,7 @@ end else
Set_Property(@Window:'.PPLUS_RDS_NO_LABEL', 'ENABLED', False$) Set_Property(@Window:'.PPLUS_RDS_NO_LABEL', 'ENABLED', False$)
Set_Property(@Window:'.PPLUS_RDS_NO', 'ENABLED', False$) Set_Property(@Window:'.PPLUS_RDS_NO', 'ENABLED', False$)
Set_Property(@Window:'.PPLUS_RDS_NO', 'TEXT', '') Set_Property(@Window:'.PPLUS_RDS_NO', 'TEXT', '')
end end
return return
@ -329,26 +296,26 @@ return
RetireItem: RetireItem:
* * * * * * * * * * * * * *
Ctrls = @WINDOW:'.RETIRE_DT':@RM ; Props = 'DEFPROP':@RM Ctrls = @WINDOW:'.RETIRE_DT':@RM ; Props = 'DEFPROP':@RM
Ctrls := @WINDOW:'.RETIRE_BY' ; Props := 'INVALUE' Ctrls := @WINDOW:'.RETIRE_BY' ; Props := 'INVALUE'
Vals = Get_Property(Ctrls,Props) Vals = Get_Property(Ctrls,Props)
RetDt = Vals[1,@RM] RetDt = Vals[1,@RM]
RetBy = Vals[COL2()+1,@RM] RetBy = Vals[COL2()+1,@RM]
IF RetBy NE '' THEN RETURN ;* Nothing to do IF RetBy NE '' THEN RETURN ;* Nothing to do
Vals = OCONV(Date(),'D4/'):@RM Vals = OCONV(Date(),'D4/'):@RM
Vals := @USER4 Vals := @USER4
Set_Property(Ctrls,Props,Vals) Set_Property(Ctrls,Props,Vals)
GraphNo = Get_Property(@WINDOW:'.GR_NO','DEFPROP') GraphNo = Get_Property(@WINDOW:'.GR_NO','DEFPROP')
Send_Event(@WINDOW,'WRITE') Send_Event(@WINDOW,'WRITE')
obj_AppWindow('LoadFormKeys',@WINDOW:@RM:GraphNo) obj_AppWindow('LoadFormKeys',@WINDOW:@RM:GraphNo)
RETURN RETURN
@ -357,28 +324,28 @@ RETURN
ReactDC: ReactDC:
* * * * * * * * * * * * * *
CurrPos = Get_Property(EntID,'SELPOS') CurrPos = Get_Property(EntID,'SELPOS')
CurrCol = CurrPos<1> CurrCol = CurrPos<1>
CurrRow = CurrPos<2> CurrRow = CurrPos<2>
GRNo = Get_Property(@WINDOW:'.GR_NO','DEFPROP') GRNo = Get_Property(@WINDOW:'.GR_NO','DEFPROP')
IF GRNo = '' THEN RETURN IF GRNo = '' THEN RETURN
BEGIN CASE BEGIN CASE
CASE CurrCol = COL$INST_RL_ID CASE CurrCol = COL$INST_RL_ID
RLId = CurrRow<COL$INST_RL_ID> RLId = CurrRow<COL$INST_RL_ID>
CASE CurrCol = COL$REM_RL_ID CASE CurrCol = COL$REM_RL_ID
RLId = CurrRow<COL$INST_RL_ID> RLId = CurrRow<COL$INST_RL_ID>
END CASE END CASE
RLId = Get_Property(EntID,'CELLPOS',CurrCol:@FM:CurrRow) RLId = Get_Property(EntID,'CELLPOS',CurrCol:@FM:CurrRow)
IF RLId NE '' THEN IF RLId NE '' THEN
Dummy = Start_Window( 'REACTOR_LOG', @WINDOW, RLId:'*CENTER', '', '' ) Dummy = Start_Window( 'REACTOR_LOG', @WINDOW, RLId:'*CENTER', '', '' )
END END
RETURN RETURN
@ -387,12 +354,12 @@ RETURN
LURIType: LURIType:
* * * * * * * * * * * * * *
RetVal = Popup(@WINDOW,'','REACT_ITEM_TYPE') RetVal = Popup(@WINDOW,'','REACT_ITEM_TYPE')
IF RetVal NE '' THEN IF RetVal NE '' THEN
oaParms = RetVal:@RM:@WINDOW:'.RI_TYPE' oaParms = RetVal:@RM:@WINDOW:'.RI_TYPE'
obj_Appwindow('LUValReturn',oaParms) obj_Appwindow('LUValReturn',oaParms)
END END
RETURN RETURN
@ -401,40 +368,37 @@ RETURN
LUReactItem: LUReactItem:
* * * * * * * * * * * * * *
RetVal = Dialog_Box('DIALOG_REACT_ITEM_QUERY', @WINDOW) RetVal = Dialog_Box('DIALOG_REACT_ITEM_QUERY', @WINDOW)
Display = '' Display = ''
Display<PDISPLAY$> = RetVal Display<PDISPLAY$> = RetVal
Display<PMODE$> = 'K' Display<PMODE$> = 'K'
RetVal = Popup(@WINDOW,Display,'REACT_ITEM') RetVal = Popup(@WINDOW,Display,'REACT_ITEM')
IF Get_Status(errCode) THEN IF Get_Status(errCode) THEN
ErrMsg(errCode) ErrMsg(errCode)
END END
IF INDEX(RetVal,@VM,1) THEN IF INDEX(RetVal,@VM,1) THEN
Set_Property(@WINDOW,'QBFLIST',RetVal) Set_Property(@WINDOW,'QBFLIST',RetVal)
END ELSE END ELSE
obj_AppWindow('LoadFormKeys',@WINDOW:@RM:RetVal) obj_AppWindow('LoadFormKeys',@WINDOW:@RM:RetVal)
END END
RETURN RETURN
* * * * * * * * * * * * * *
LUPartType: LUPartType:
* * * * * * * * * * * * * *
RetVal = Popup(@WINDOW,'','RI_PART_TYPE')
RetVal = Popup(@WINDOW,'','RI_PART_TYPE') IF RetVal NE '' THEN
IF RetVal NE '' THEN
oaParms = RetVal:@RM:@WINDOW:'.PART_TYPE' oaParms = RetVal:@RM:@WINDOW:'.PART_TYPE'
obj_Appwindow('LUValReturn',oaParms) obj_Appwindow('LUValReturn',oaParms)
END END
RETURN RETURN
@ -443,29 +407,26 @@ RETURN
LUTubeStyle: ;* Added by dkk 12/1/14 LUTubeStyle: ;* Added by dkk 12/1/14
* * * * * * * * * * * * * *
RetVal = Popup(@WINDOW,'','TUBE_STYLE')
RetVal = Popup(@WINDOW,'','TUBE_STYLE') IF RetVal NE '' THEN
IF RetVal NE '' THEN
oaParms = RetVal:@RM:@WINDOW:'.TUBE_STYLE' oaParms = RetVal:@RM:@WINDOW:'.TUBE_STYLE'
obj_Appwindow('LUValReturn',oaParms) obj_Appwindow('LUValReturn',oaParms)
END END
RETURN RETURN
* * * * * * * * * * * * * *
LUMfrCd: LUMfrCd:
* * * * * * * * * * * * * *
MfrCd = Popup(@WINDOW,'','REACT_VENDOR') MfrCd = Popup(@WINDOW,'','REACT_VENDOR')
IF MfrCd NE '' THEN IF MfrCd NE '' THEN
oaParms = MfrCd:@RM:@WINDOW:'.MFR_CD' oaParms = MfrCd:@RM:@WINDOW:'.MFR_CD'
obj_Appwindow('LUValReturn',oaParms) obj_Appwindow('LUValReturn',oaParms)
END END
RETURN RETURN
@ -474,27 +435,25 @@ RETURN
LUReactType: LUReactType:
* * * * * * * * * * * * * *
RetVal = Popup(@WINDOW,'','REACTOR_TYPE') RetVal = Popup(@WINDOW,'','REACTOR_TYPE')
IF RetVal NE '' THEN IF RetVal NE '' THEN
oaParms = RetVal:@RM:@WINDOW:'.REACT_TYPE' oaParms = RetVal:@RM:@WINDOW:'.REACT_TYPE'
obj_Appwindow('LUValReturn',oaParms) obj_Appwindow('LUValReturn',oaParms)
END END
RETURN RETURN
* * * * * * * * * * * * * *
LUSuscSize: LUSuscSize:
* * * * * * * * * * * * * *
RetVal = Popup(@WINDOW,'','WAFER_SIZES')
IF RetVal NE '' THEN RetVal = Popup(@WINDOW,'','WAFER_SIZES')
IF RetVal NE '' THEN
oaParms = RetVal:@RM:@WINDOW:'.SUSC_SIZE' oaParms = RetVal:@RM:@WINDOW:'.SUSC_SIZE'
obj_Appwindow('LUValReturn',oaParms) obj_Appwindow('LUValReturn',oaParms)
END END
RETURN RETURN
@ -503,13 +462,12 @@ RETURN
LUPktSize: LUPktSize:
* * * * * * * * * * * * * *
Retired = Get_Property(@Window: '.RETIRE_DT', 'TEXT') Retired = Get_Property(@Window: '.RETIRE_DT', 'TEXT')
RIType = Get_Property(@Window:'.RI_TYPE', 'TEXT') RIType = Get_Property(@Window:'.RI_TYPE', 'TEXT')
If RIType EQ 'S' then If RIType EQ 'S' then
PocketQty = '' PocketQty = ''
Set_Property(@Window:'.PKT_QTY', 'TEXT', '') Set_Property(@Window:'.PKT_QTY', 'TEXT', '')
PartType = Get_Property(@Window: '.PART_TYPE', 'TEXT') PartType = Get_Property(@Window: '.PART_TYPE', 'TEXT')
If (PartType EQ 'HTR') OR (PartType EQ 'EPP') OR (PartType EQ 'ASM') then
RetVal = Popup(@WINDOW,TypeOver,'WAFER_SIZES') RetVal = Popup(@WINDOW,TypeOver,'WAFER_SIZES')
IF RetVal NE '' THEN IF RetVal NE '' THEN
oaParms = RetVal:@RM:@WINDOW:'.PKT_SIZE' oaParms = RetVal:@RM:@WINDOW:'.PKT_SIZE'
@ -532,11 +490,8 @@ If RIType EQ 'S' then
End Case End Case
Set_Property(@Window:'.PKT_QTY', 'TEXT', PocketQty) Set_Property(@Window:'.PKT_QTY', 'TEXT', PocketQty)
END
end else
If Retired EQ '' then ErrMsg('A valid Part Type (EPP, ASM, HTR) must be selected before selecting Pocket Size.')
end end
end end
RETURN RETURN
@ -545,9 +500,9 @@ RETURN
LUPktQty: LUPktQty:
* * * * * * * * * * * *
ReactType = Get_Property(@WINDOW:'.REACT_TYPE','INVALUE') ReactType = Get_Property(@WINDOW:'.REACT_TYPE','INVALUE')
IF ReactType NE '' THEN IF ReactType NE '' THEN
AllDisplayData = XLATE('SYSREPOSPOPUPS','LSL2**SUSCEPTOR_POCKETS',PDISPLAY$,'X') AllDisplayData = XLATE('SYSREPOSPOPUPS','LSL2**SUSCEPTOR_POCKETS',PDISPLAY$,'X')
DisplayData = '' DisplayData = ''
@ -566,15 +521,15 @@ IF ReactType NE '' THEN
RetVal = Popup(@WINDOW,TypeOver,'SUSCEPTOR_POCKETS') RetVal = Popup(@WINDOW,TypeOver,'SUSCEPTOR_POCKETS')
END ELSE END ELSE
RetVal = Popup(@WINDOW,'','SUSCEPTOR_POCKETS') RetVal = Popup(@WINDOW,'','SUSCEPTOR_POCKETS')
END END
IF RetVal NE '' THEN IF RetVal NE '' THEN
oaParms = RetVal:@RM:@WINDOW:'.PKT_QTY' oaParms = RetVal:@RM:@WINDOW:'.PKT_QTY'
obj_Appwindow('LUValReturn',oaParms) obj_Appwindow('LUValReturn',oaParms)
END END
RETURN RETURN
@ -583,15 +538,15 @@ RETURN
PrintLabel: PrintLabel:
* * * * * * * * * * * * * *
Ctrls = @WINDOW:'.RI_NO':@RM ; Props = 'DEFPROP':@RM Ctrls = @WINDOW:'.RI_NO':@RM ; Props = 'DEFPROP':@RM
Ctrls := @WINDOW ; Props := 'ATRECORD' Ctrls := @WINDOW ; Props := 'ATRECORD'
Vals = Get_Property(Ctrls,Props) Vals = Get_Property(Ctrls,Props)
RINo = Vals[1,@RM] RINo = Vals[1,@RM]
CurrRec = Vals[COL2()+1,@RM] CurrRec = Vals[COL2()+1,@RM]
obj_React_Item('PrintLabel',RINo:@RM:CurrRec) obj_React_Item('PrintLabel',RINo:@RM:CurrRec)
RETURN RETURN
@ -625,14 +580,9 @@ PktSizeChange:
End Case End Case
Set_Property(@Window:'.PKT_QTY', 'TEXT', PocketQty) Set_Property(@Window:'.PKT_QTY', 'TEXT', PocketQty)
end else
If Retired EQ '' then ErrMsg('A valid Pocket Size (6 or 8 in.) is required.')
end
end else
If Retired EQ '' then ErrMsg('A valid Part Type (EPP, ASM, HTR) must be selected before selecting Pocket Size.')
end end
end end
end
return return

View File

@ -149,51 +149,53 @@ WRITE_RECORD_PRE:
// Req'd parameter checks // Req'd parameter checks
ItemType = {RI_TYPE} ItemType = {RI_TYPE}
If ItemType EQ '' then ErrMsg := 'Item Type was not specified. ' If ItemType EQ '' then ErrMsg := 'Item Type was not specified.':CRLF$
If (ItemType NE 'LE') AND (ItemType NE 'RE') then If (ItemType NE 'LE') AND (ItemType NE 'RE') then
SerialNo = Record<REACT_ITEM_SERIAL_NO$> SerialNo = Record<REACT_ITEM_SERIAL_NO$>
If SerialNo EQ '' then If SerialNo EQ '' then
ErrMsg := 'Serial No. is required for this Reactor Item type. ' ErrMsg := 'Serial No. is required for this Reactor Item type.':CRLF$
end end
end end
If ItemType EQ 'S' then If ItemType EQ 'S' then
PartType = Record<REACT_ITEM_PART_TYPE$>
PocketQty = Record<REACT_ITEM_PKT_QTY$> PocketQty = Record<REACT_ITEM_PKT_QTY$>
PocketSize = Record<REACT_ITEM_PKT_SIZE$> PocketSize = Record<REACT_ITEM_PKT_SIZE$>
If PartType EQ '' then
ErrMsg := 'Part Type is required for Susceptor Reactor Item type.':CRLF$
end
If PocketSize EQ '' then If PocketSize EQ '' then
ErrMsg := 'Pocket size is required for Susceptor Item Type. ' ErrMsg := 'Pocket size is required for Susceptor Item Type.':CRLF$
end end
If PocketQty EQ '' then If PocketQty EQ '' then
ErrMsg := 'Pocket quantity is required for Susceptor Item Type. ' ErrMsg := 'Pocket quantity is required for Susceptor Item Type.':CRLF$
end end
If ErrMsg = '' then If ErrMsg = '' then
ExpectedQty = '' ExpectedQty = ''
Begin Case Begin Case
Case Record<REACT_ITEM_PART_TYPE$> EQ 'ASM' Case PartType EQ 'ASM'
If PocketSize EQ 6 OR PocketSize EQ 8 then If PocketSize EQ 6 OR PocketSize EQ 8 then
ExpectedQty = 1 ExpectedQty = 1
end end
Case Record<REACT_ITEM_PART_TYPE$> EQ 'HTR' Case PartType EQ 'HTR'
If PocketSize EQ 8 then If PocketSize EQ 8 then
ExpectedQty = 3 ExpectedQty = 3
end else end else
If PocketSize EQ 6 then ExpectedQty = 5 If PocketSize EQ 6 then ExpectedQty = 5
end end
Case Record<REACT_ITEM_PART_TYPE$> EQ 'EPP' Case PartType EQ 'EPP'
If PocketSize EQ 8 then If PocketSize EQ 8 then
ExpectedQty = 8 ExpectedQty = 8
end else end else
If PocketSize EQ 6 then ExpectedQty = 18 If PocketSize EQ 6 then ExpectedQty = 18
end end
Case Record<REACT_ITEM_PART_TYPE$> EQ ''
ErrMsg := 'Part Type. is required for Susceptor Reactor Item type. '
Case Otherwise$ Case Otherwise$
ErrMsg := 'Invalid Part Type for Susceptor Reactor Item Type. ' ErrMsg := 'Invalid Part Type for Susceptor Reactor Item Type.':CRLF$
End Case End Case
If ExpectedQty NE '' then If ExpectedQty NE '' then
If PocketQty NE ExpectedQty then If PocketQty NE ExpectedQty then
ErrMsg := 'Invalid Pocket Quantity for Part Type/Pocket Size combination. ' ErrMsg := 'Invalid Pocket Quantity for Part Type/Pocket Size combination.':CRLF$
end end
end end
end end
@ -201,8 +203,10 @@ WRITE_RECORD_PRE:
end end
If ErrMsg NE '' then If ErrMsg NE '' then
Error_Services('Add', 'Error Saving Reactor Item: ' : ErrMsg) // Strip off last @FM
OrigFileError = 104:': Error Saving Reactor Item: ' : ErrMsg ErrMsg[-1, 2] = ''
Error_Services('Add', 'Error Saving Reactor Item:' : CRLF$ : ErrMsg)
OrigFileError = 104:': Error Saving Reactor Item:' : CRLF$ : ErrMsg
Status = 0 Status = 0
Record = '' Record = ''
ActionFlow = ACTION_STOP$ ActionFlow = ACTION_STOP$
@ -289,6 +293,3 @@ Restore_System_Variables:
return return