COMPILE FUNCTION obj_React_State(Method,Parms) /* Methods for REACT_STATE (Reactor State) table 10/9/2013 JCH - Initial Coding Properties: Methods: SetSpecParms(DataStruct) ;* Create new record */ DECLARE SUBROUTINE Set_Status, Msg, obj_Tables, Send_Dyn, ErrMsg, Database_Services DECLARE FUNCTION Get_Status, Msg, Utility, obj_Tables, NextKey, Send_Dyn, Database_Services, Error_Services $INSERT REACT_STATE_EQUATES $INSERT PROD_SPEC_EQUATES $INSERT LOGICAL EQU CRLF$ TO \0D0A\ EQU TAB$ TO \09\ ErrTitle = 'Error in Stored Procedure "obj_React_State"' 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 = 'ReactRunUnload' ; GOSUB ReactRunUnload CASE 1 END CASE IF ErrorMsg NE '' THEN Set_Status(-1,ErrTitle:@SVM:ErrorMsg) END RETURN Result * * * * * * * ReactRunUnload: * * * * * * * * Upadate all parameters set at Reactor Unload signature * ReactNo = Parms[1,@RM] PSNo = Parms[COL2()+1,@RM] RDSNo = Parms[COL2()+1,@RM] UnloadDTM = Parms[COL2()+1,@RM] IF ReactNo = '' THEN ErrorMsg = 'Null Parameter "ReactNo" passed to routine. (':Method:')' IF PSNo = '' THEN ErrorMsg = 'Null Parameter "PSNo" passed to routine. (':Method:')' IF RDSNo = '' THEN ErrorMsg = 'Null Parameter "RDSNo" passed to routine. (':Method:')' IF UnloadDTM = '' THEN ErrorMsg = 'Null Parameter "UnloadDTM" passed to routine. (':Method:')' thisUnloadDTM = ICONV(UnloadDTM,'DT') IF thisUnloadDTM = '' THEN ErrorMsg = 'Invalid "UnloadDTM" value ':QUOTE(UnloadDTM):' passed to routine. (':Method:')' END IF ErrorMsg NE '' THEN RETURN PSRec = XLATE('PROD_SPEC',PSNo,'','X') IF PSRec = '' THEN ErrorMsg = 'Prod Spec record ':QUOTE(PSNo):' is empty! (':Method:')' RETURN END * otParms = 'REACT_STATE':@RM:ReactNo * RSRec = obj_Tables('ReadRec',otParms) RSRec = Database_Services('ReadDataRow', 'REACT_STATE', ReactNo) * IF Get_Status(errCode) THEN RETURN If Error_Services('NoError') then RSRec = PSRec RSRec = PSRec RSRec = PSRec RSRec = PSRec RSRec = XLATE('PROD_SPEC',PSNo,'DOPANT_L1','X') RSRec = RDSNo RSRec = thisUnloadDTM Database_Services('WriteDataRow', 'REACT_STATE', ReactNo, RSRec, True$, False$, True$) end * otParms = FieldStore(otParms,@RM,4,0,RSRec) * obj_Tables('WriteRec',otParms) RETURN