211 lines
5.8 KiB
Plaintext
211 lines
5.8 KiB
Plaintext
COMPILE FUNCTION obj_React_LL(Method,Parms)
|
|
/*
|
|
Methods for the Reactor Load Lock (REACT_LL) table
|
|
|
|
08/13/2015 JCH - Initial Coding
|
|
|
|
Properties:
|
|
|
|
Methods:
|
|
|
|
Create() ;* Create new React Mode record
|
|
Close() ;* Close existing React Mode record
|
|
|
|
*/
|
|
|
|
|
|
DECLARE FUNCTION Get_Status, Msg, Utility, obj_Tables, Dialog_Box,NextKey, Popup, Get_Property
|
|
DECLARE SUBROUTINE Set_Status, Msg, obj_Tables, Send_Dyn, Btree.Extract, ErrMsg, obj_React_Event, Database_Services
|
|
|
|
$INSERT MSG_EQUATES
|
|
$INSERT REACT_LL_EQUATES
|
|
|
|
|
|
ErrTitle = 'Error in Stored Procedure "obj_React_LL"'
|
|
ErrorMsg = ''
|
|
|
|
IF NOT(ASSIGNED(Method)) THEN ErrorMsg = 'Unassigned parameter "Method" passed to subroutine'
|
|
IF NOT(ASSIGNED(Parms)) THEN Parms = ''
|
|
|
|
IF ErrorMsg NE '' THEN
|
|
Set_Status(-1,ErrTitle:@SVM:ErrorMsg)
|
|
RETURN ''
|
|
END
|
|
|
|
Result = ''
|
|
|
|
BEGIN CASE
|
|
CASE Method = 'Create' ; GOSUB Create
|
|
CASE Method = 'Close' ; GOSUB Close
|
|
Case Method = 'SetQual' ; GOSUB SetQual
|
|
|
|
CASE 1
|
|
ErrorMsg = 'Unknown Method ':QUOTE(Method):' passed to routine.'
|
|
|
|
END CASE
|
|
|
|
IF ErrorMsg NE '' THEN
|
|
Set_Status(-1,ErrTitle:@SVM:ErrorMsg)
|
|
RETURN ''
|
|
END
|
|
|
|
RETURN Result
|
|
|
|
|
|
* * * * * * *
|
|
Create:
|
|
* * * * * * *
|
|
|
|
ReactNo = Parms[1,@RM]
|
|
StartDTM = Parms[COL2()+1,@RM]
|
|
UserID = Parms[COL2()+1,@RM]
|
|
LLDisabled = Parms[COL2()+1,@RM]
|
|
Note = Parms[COL2()+1,@RM]
|
|
|
|
|
|
IF ReactNo = '' THEN ErrorMsg = 'Null parameter ReactNo passed to routine (':Method:').'
|
|
IF StartDTM = '' THEN ErrorMsg = 'Null parameter StartDTM passed to routine (':Method:').'
|
|
IF UserID = '' THEN ErrorMsg = 'Null parameter UserID passed to routine (':Method:').'
|
|
IF LLDisabled = '' THEN ErrorMsg = 'Null parameter Mode passed to routine (':Method:').'
|
|
|
|
IF ErrorMsg NE '' THEN RETURN
|
|
|
|
|
|
IF LLDisabled NE 'L' AND LLDisabled NE 'R' THEN
|
|
ErrorMsg = 'Invalid value ':QUOTE(LLDisabled):' passed for parameter LLDisabled (':Method:').'
|
|
Return
|
|
END
|
|
|
|
thisStartDTM = ICONV(StartDTM,'DT')
|
|
IF thisStartDTM = '' THEN
|
|
ErrorMsg = 'Invalid value ':QUOTE(StartDTM):' passed for parameter StartDTM (':Method:').'
|
|
RETURN
|
|
END
|
|
|
|
ReactLLKey = ReactNo:'*':thisStartDTM
|
|
|
|
ReactLLRec = ''
|
|
ReactLLRec<REACT_LL_START_USER$> = UserID
|
|
ReactLLRec<REACT_LL_START_NOTE$> = Note
|
|
ReactLLRec<REACT_LL_DISABLED$> = LLDisabled
|
|
|
|
TableVar = ''
|
|
|
|
OtParms = 'REACT_LL':@RM:ReactLLKey:@RM:TableVar:@RM:ReactLLRec
|
|
|
|
obj_Tables('WriteRec',OtParms) ;* Writes and unlocks the record
|
|
|
|
***** Added 10/2/1013 JCH - Log Mode change in the REACT_EVENT table.
|
|
|
|
CurrMode = XLATE('REACTOR',ReactNo,'CURR_MODE','X')
|
|
|
|
oREParms = ReactNo:@RM
|
|
oREParms := StartDTM:@RM
|
|
oREParms := 'LLD':@RM ;* React Event - Load Lock Disabled
|
|
oREParms := UserID:@RM
|
|
oREParms := Note:@RM
|
|
oREParms := '' ;* New Mode - not used here
|
|
oREParms := CurrMode
|
|
|
|
obj_React_Event('Create',oREParms)
|
|
|
|
RETURN
|
|
|
|
|
|
* * * * * * *
|
|
Close:
|
|
* * * * * * *
|
|
|
|
ReactNo = Parms[1,@RM]
|
|
StartDTM = Parms[COL2()+1,@RM]
|
|
StopDTM = Parms[COL2()+1,@RM]
|
|
UserID = Parms[COL2()+1,@RM]
|
|
Note = Parms[COL2()+1,@RM]
|
|
|
|
|
|
IF ReactNo = '' THEN ErrorMsg = 'Null parameter ReactNo passed to routine (':Method:').'
|
|
IF StartDTM = '' THEN ErrorMsg = 'Null parameter StartDTM passed to routine (':Method:').'
|
|
IF StopDTM = '' THEN ErrorMsg = 'Null parameter StopDTM passed to routine (':Method:').'
|
|
IF UserID = '' THEN ErrorMsg = 'Null parameter UserID passed to routine (':Method:').'
|
|
|
|
IF ErrorMsg NE '' THEN RETURN
|
|
|
|
thisStartDTM = ICONV(StartDTM,'DT')
|
|
IF thisStartDTM = '' THEN
|
|
ErrorMsg = 'Invalid value ':QUOTE(StartDTM):' passed for parameter StartDTM (':Method:').'
|
|
RETURN
|
|
END
|
|
|
|
|
|
thisStopDTM = ICONV(StopDTM,'DT')
|
|
IF thisStopDTM = '' THEN
|
|
ErrorMsg = 'Invalid value ':QUOTE(StopDTM):' passed for parameter StopDTM (':Method:').'
|
|
RETURN
|
|
END
|
|
|
|
ReactLLKey = ReactNo:'*':thisStartDTM
|
|
|
|
|
|
OtParms = 'REACT_LL':@RM:ReactLLKey
|
|
ReactLLRec = obj_Tables('ReadRec',OtParms)
|
|
|
|
ReactLLRec<REACT_LL_STOP_DTM$> = thisStopDTM
|
|
ReactLLRec<REACT_LL_STOP_USER$> = UserID
|
|
ReactLLRec<REACT_LL_STOP_NOTE$> = Note
|
|
|
|
|
|
OtParms = FieldStore(OtParms,@RM,4,1,ReactLLRec)
|
|
|
|
obj_Tables('WriteRec',OtParms) ;* Writes and unlocks the record
|
|
|
|
***** Added 10/2/1013 JCH - Log Mode change in the REACT_EVENT table.
|
|
|
|
CurrMode = XLATE('REACTOR',ReactNo,'CURR_MODE','X')
|
|
|
|
oREParms = ReactNo:@RM
|
|
oREParms := StopDTM:@RM
|
|
oREParms := 'LLE':@RM ;* React Event - Load Lock Enabled
|
|
oREParms := UserID:@RM
|
|
oREParms := Note:@RM
|
|
oREParms := '' ;* New Mode - not used here
|
|
oREParms := CurrMode
|
|
|
|
obj_React_Event('Create',oREParms)
|
|
|
|
|
|
RETURN
|
|
|
|
* * * * * * *
|
|
SetQual:
|
|
* * * * * * *
|
|
ReactNo = Parms[1,@RM]
|
|
ReactLLKey = Parms[COL2()+1,@RM]
|
|
UserID = Parms[COL2()+1,@RM]
|
|
DownLL = Parms[COL2()+1,@RM]
|
|
CurrTime = Parms[COL2()+1,@RM]
|
|
|
|
IF ReactNo = '' THEN ErrorMsg = 'Null parameter ReactNo passed to routine (':Method:').'
|
|
IF ReactLLKey = '' THEN ErrorMsg = 'Null parameter ReactLLKey passed to routine (':Method:').'
|
|
IF UserID = '' THEN ErrorMsg = 'Null parameter UserID passed to routine (':Method:').'
|
|
IF DownLL = '' THEN ErrorMsg = 'Null parameter DownLL passed to routine (':Method:').'
|
|
IF CurrTime = '' THEN ErrorMsg = 'Null parameter CurrTime passed to routine (':Method:').'
|
|
|
|
|
|
IF ErrorMsg NE '' THEN RETURN
|
|
|
|
thisStopDTM = ICONV(CurrTime,'DT')
|
|
IF thisStopDTM = '' THEN
|
|
ErrorMsg = 'Invalid value ':QUOTE(StartDTM):' passed for parameter CurrTime (':Method:').'
|
|
RETURN
|
|
END
|
|
ReactLLRec = XLATE('REACT_LL', ReactLLKey, '','X')
|
|
|
|
IF ReactLLRec<REACT_LL_QUAL_MODE$> EQ 1 then
|
|
ReactLLRec<REACT_LL_QUAL_MODE$> = 0
|
|
end else
|
|
ReactLLRec<REACT_LL_QUAL_MODE$> = 1
|
|
end
|
|
Database_Services('WriteDataRow','REACT_LL',ReactLLKey, ReactLLRec,1,0,1)
|
|
|
|
return
|