COMPILE FUNCTION obj_Recipe(Method,Parms) /* Methods for Recipe table Used to wrap messy original file in something cleaner while working on a transistion 02/09/2006 JCH - Initial Coding Properties: Methods: GetSpecs(RecipeNo,LayerSet) ;* Returns MinMax values */ DECLARE FUNCTION Get_Status, Msg, Utility, obj_Tables, Dialog_Box DECLARE SUBROUTINE Set_Status, Msg, obj_Tables, Make.List, Btree.Extract $INSERT MSG_EQUATES $INSERT RECIPE_EQUATES $INSERT RECIPE_PARMS_EQU $INSERT RECIPE_LAYER_INFO_EQU ErrTitle = 'Error in Stored Procedure "obj_Recipe"' 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 = 'GetLimits' ; GOSUB GetLimits CASE 1 END CASE IF ErrorMsg NE '' THEN Set_Status(-1,ErrTitle:@SVM:ErrorMsg) RETURN '' END RETURN Result * * * * * * * GetLimits: * * * * * * * * This is NON-STANDARD - Data is returned in internal format RecipeNo = Parms[1,@RM] PsnID = Parms[COL2()+1,@RM] LayerSet = Parms[COL2()+1,@RM] IF RecipeNo = '' THEN RETURN IF PsnID = '' THEN RETURN IF LayerSet = '' THEN RETURN LayerNo = LayerSet<1,1> ;* Start out here IF INDEX(LayerNo,'L',1) THEN CONVERT 'L' TO '' IN LayerNo END ELSE LayerNo += 1 END RecipeRec = XLATE( 'RECIPE', RecipeNo, '', 'X' ) IF LayerNo = 1 THEN LOCATE PSNId IN RecipeRec USING @VM SETTING RPos ELSE RPos = 1 END Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec Result = RecipeRec END ELSE RecipeLayerInfo = RecipeRec CONVERT CHAR(248) TO @FM IN RecipeLayerInfo Dopant = RecipeLayerInfo DepTimeMin = RecipeLayerInfo DepTimeMax = RecipeLayerInfo Diluent = RecipeLayerInfo DopantFlowMin = RecipeLayerInfo DopantFlowMax = RecipeLayerInfo FrontOffsetMin = RecipeLayerInfo FrontOffsetMax = RecipeLayerInfo SideOffsetMin = RecipeLayerInfo SideOffsetMax = RecipeLayerInfo RearOffsetMin = RecipeLayerInfo RearOffsetMax = RecipeLayerInfo H2FlowMin = RecipeLayerInfo H2FlowMax = RecipeLayerInfo TCSFlowMin = RecipeLayerInfo TCSFlowMax = RecipeLayerInfo Result = DepTimeMin Result = DepTimeMax Result = DopantFlowMin Result = DopantFlowMax Result = Dopant Result = Diluent Result = FrontOffsetMin Result = FrontOffsetMax Result = SideOffsetMin Result = SideOffsetMax Result = RearOffsetMin Result = RearOffsetMax Result = H2FlowMin Result = H2FlowMax Result = TCSFlowMin Result = TCSFlowMax END RETURN