Commit to switch branches.
This commit is contained in:
		
				
					committed by
					
						 Stieber Daniel (CSC FI SPS MESLEO)
						Stieber Daniel (CSC FI SPS MESLEO)
					
				
			
			
				
	
			
			
			
						parent
						
							df5b217fe7
						
					
				
				
					commit
					d021ab64b9
				
			| @ -39,6 +39,10 @@ | |||||||
|                 "<8,2>": { |                 "<8,2>": { | ||||||
|                     "<8,2,1>": "Update QA Metrology Specs", |                     "<8,2,1>": "Update QA Metrology Specs", | ||||||
|                     "<8,2,2>": "QA_MET" |                     "<8,2,2>": "QA_MET" | ||||||
|  |                 }, | ||||||
|  |                 "<8,3>": { | ||||||
|  |                     "<8,3,1>": "Update RDS Layer Parameters", | ||||||
|  |                     "<8,3,2>": "UPDATE_RDS_LAYER" | ||||||
|                 } |                 } | ||||||
|             }, |             }, | ||||||
|             "<9>": { |             "<9>": { | ||||||
| @ -46,29 +50,21 @@ | |||||||
|                     "<9,1,1>": "1", |                     "<9,1,1>": "1", | ||||||
|                     "<9,1,2>": "20", |                     "<9,1,2>": "20", | ||||||
|                     "<9,1,3>": "L", |                     "<9,1,3>": "L", | ||||||
|                     "<9,1,4>": "", |                     "<9,1,4>": "L", | ||||||
|                     "<9,1,5>": "", |                     "<9,1,5>": "", | ||||||
|                     "<9,1,6>": "Window Option" |                     "<9,1,6>": "Window Option" | ||||||
|                 }, |                 }, | ||||||
|                 "<9,2>": { |                 "<9,2>": { | ||||||
|                     "<9,2,1>": "2", |                     "<9,2,1>": "2", | ||||||
|                     "<9,2,2>": "0", |                     "<9,2,2>": "0", | ||||||
|                     "<9,2,3>": "L", |                     "<9,2,3>": "R", | ||||||
|                     "<9,2,4>": "", |                     "<9,2,4>": "R", | ||||||
|                     "<9,2,5>": "", |                     "<9,2,5>": "", | ||||||
|                     "<9,2,6>": "" |                     "<9,2,6>": "2" | ||||||
|                 }, |  | ||||||
|                 "<9,3>": { |  | ||||||
|                     "<9,3,1>": "", |  | ||||||
|                     "<9,3,2>": "", |  | ||||||
|                     "<9,3,3>": "", |  | ||||||
|                     "<9,3,4>": "", |  | ||||||
|                     "<9,3,5>": "", |  | ||||||
|                     "<9,3,6>": "" |  | ||||||
|                 } |                 } | ||||||
|             }, |             }, | ||||||
|             "<10>": "L", |             "<10>": "L", | ||||||
|             "<11>": "3", |             "<11>": "2", | ||||||
|             "<12>": "Engineering Options", |             "<12>": "Engineering Options", | ||||||
|             "<13>": "2", |             "<13>": "2", | ||||||
|             "<14>": "F", |             "<14>": "F", | ||||||
| @ -91,8 +87,18 @@ | |||||||
|             "<31>": "0", |             "<31>": "0", | ||||||
|             "<32>": "0", |             "<32>": "0", | ||||||
|             "<33>": "0", |             "<33>": "0", | ||||||
|             "<34>": "16777215", |             "<34>": "-2", | ||||||
|             "<35>": "16777215" |             "<35>": "-2", | ||||||
|  |             "<36>": "", | ||||||
|  |             "<37>": "", | ||||||
|  |             "<38>": "", | ||||||
|  |             "<39>": "", | ||||||
|  |             "<40>": "-2", | ||||||
|  |             "<41>": "1000", | ||||||
|  |             "<42>": "", | ||||||
|  |             "<43>": "", | ||||||
|  |             "<44>": "", | ||||||
|  |             "<45>": "" | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| } | } | ||||||
| @ -198,11 +198,32 @@ Event PUB_ENG_OPTIONS.CLICK() | |||||||
|                 ServiceModules = 'WO_MAT_QA_SERVICES' |                 ServiceModules = 'WO_MAT_QA_SERVICES' | ||||||
|                 Services       = 'UpdateQAMet' |                 Services       = 'UpdateQAMet' | ||||||
|                  |                  | ||||||
|  |             Case SelOpt EQ 'UPDATE_RDS_LAYER' | ||||||
|  |                  | ||||||
|  |                 Caption        = "Updating RDS Layer specs for selected RDS cassettes..." | ||||||
|  |                 ServiceModules = 'RDS_LAYER_SERVICES' | ||||||
|  |                 Services       = 'UpdateRDSLayerSpecs' | ||||||
|  |                  | ||||||
|             Case SelOpt EQ 'CLEAN_INSP':@VM:'QA_MET' |             Case SelOpt EQ 'CLEAN_INSP':@VM:'QA_MET' | ||||||
|                 Caption        = "Updating Clean & Insp and QA Metrology specs for selected RDS cassettes..." |                 Caption        = "Updating Clean & Insp and QA Metrology specs for selected RDS cassettes..." | ||||||
|                 ServiceModules = 'CLEAN_INSP_SERVICES':@VM:'WO_MAT_QA_SERVICES' |                 ServiceModules = 'CLEAN_INSP_SERVICES':@VM:'WO_MAT_QA_SERVICES' | ||||||
|                 Services       = 'UpdateAllCleanInsp':@VM:'UpdateQAMet' |                 Services       = 'UpdateAllCleanInsp':@VM:'UpdateQAMet' | ||||||
|                  |                  | ||||||
|  |             Case SelOpt EQ 'QA_MET':@VM:'UPDATE_RDS_LAYER' | ||||||
|  |                 Caption        = "Updating RDS Layer and QA Metrology specs for selected RDS cassettes..." | ||||||
|  |                 ServiceModules = 'WO_MAT_QA_SERVICES':@VM:'RDS_LAYER_SERVICES' | ||||||
|  |                 Services       = 'UpdateQAMet':@VM:'UpdateRDSLayerSpecs' | ||||||
|  |                  | ||||||
|  |              Case SelOpt EQ 'CLEAN_INSP':@VM: 'UPDATE_RDS_LAYER' | ||||||
|  |                 Caption        = "Updating RDS Layer and Clean & Insp specs for selected RDS cassettes..." | ||||||
|  |                 ServiceModules = 'WO_MAT_QA_SERVICES':@VM:'RDS_LAYER_SERVICES' | ||||||
|  |                 Services       = 'UpdateAllCleanInsp':@VM:'UpdateRDSLayerSpecs' | ||||||
|  |                  | ||||||
|  |             Case SelOpt EQ 'CLEAN_INSP':@VM:'QA_MET':@VM: 'UPDATE_RDS_LAYER' | ||||||
|  |                 Caption        = "Updating Clean & Insp, QA Metrology, and RDS Layer specs for selected RDS cassettes..." | ||||||
|  |                 ServiceModules = 'CLEAN_INSP_SERVICES':@VM:'WO_MAT_QA_SERVICES' :@VM: 'RDS_LAYER_SERVICES' | ||||||
|  |                 Services       = 'UpdateAllCleanInsp':@VM:'UpdateQAMet' :@VM: 'UpdateRDSLayerSpecs' | ||||||
|  |                  | ||||||
|         End Case |         End Case | ||||||
|          |          | ||||||
|         If ServiceModules NE '' then |         If ServiceModules NE '' then | ||||||
| @ -216,7 +237,12 @@ Event PUB_ENG_OPTIONS.CLICK() | |||||||
|                 Running = Msg(@WINDOW, MsgUp, vPos, MSGINSTUPDATE$) ;* Update gas guage |                 Running = Msg(@WINDOW, MsgUp, vPos, MSGINSTUPDATE$) ;* Update gas guage | ||||||
|                 For each ServiceModule in ServiceModules using @VM setting sPos |                 For each ServiceModule in ServiceModules using @VM setting sPos | ||||||
|                     Service = Services<0, sPos> |                     Service = Services<0, sPos> | ||||||
|  |                     If Service = 'UpdateRDSLayerSpecs' then | ||||||
|  |                         RDSKey = SelRDSList<4, vPos> | ||||||
|  |                         Ans     = Function(@ServiceModule(Service, RDSKey)) | ||||||
|  |                     end else | ||||||
|                         Ans     = Function(@ServiceModule(Service, WOMatKey)) |                         Ans     = Function(@ServiceModule(Service, WOMatKey)) | ||||||
|  |                     end | ||||||
|                     If Error_Services('HasError') then |                     If Error_Services('HasError') then | ||||||
|                         Error_Services('DisplayError') |                         Error_Services('DisplayError') | ||||||
|                     end |                     end | ||||||
| @ -652,3 +678,4 @@ CheckSelectedForHolds: | |||||||
|      |      | ||||||
| return | return | ||||||
|  |  | ||||||
|  |  | ||||||
|  | |||||||
| @ -2,9 +2,10 @@ Compile function RDS_LAYER_Services(@Service, @Params) | |||||||
| #pragma precomp SRP_PreCompiler | #pragma precomp SRP_PreCompiler | ||||||
| $insert LOGICAL | $insert LOGICAL | ||||||
| $insert RDS_LAYER_EQUATES | $insert RDS_LAYER_EQUATES | ||||||
|  | $INSERT RECIPE_PARMS_EQU | ||||||
|  |  | ||||||
| Declare function   Database_Services, Error_Services, SRP_JSONX, SRP_JSONX_END, SRP_JSON | Declare function   Database_Services, Error_Services, SRP_JSONX, SRP_JSONX_END, SRP_JSON, Obj_Tables, Obj_Recipe | ||||||
| Declare subroutine Error_Services, SRP_JSONX, SRP_JSONX_BEGIN, SRP_JSON | Declare subroutine Error_Services, SRP_JSONX, SRP_JSONX_BEGIN, SRP_JSON, Obj_Tables, Set_Status | ||||||
|  |  | ||||||
|  |  | ||||||
| GoToService | GoToService | ||||||
| @ -78,3 +79,102 @@ Service ConvertRecordToJSON(KeyID, Record, itemURL) | |||||||
| end service | end service | ||||||
|  |  | ||||||
|  |  | ||||||
|  | Service UpdateRDSLayerSpecs(RDSNo) | ||||||
|  |      | ||||||
|  |     IF RDSNo = ''		THEN | ||||||
|  |         Error_Services('RDSNo parameter missing from service') | ||||||
|  |         return | ||||||
|  |     end | ||||||
|  |      | ||||||
|  |     RDSLayerKeys = Xlate('RDS', RDSNo, 'RDS_LAYER_KEYS', 'X') | ||||||
|  |  | ||||||
|  |     LayerCount = DCount(RDSLayerKeys, @FM) | ||||||
|  |     For I = 1 to LayerCount | ||||||
|  |          | ||||||
|  |         RLKey = RDSLayerKeys<I> | ||||||
|  |         LayerSet = Field(RLKey, '*', 2) | ||||||
|  |  | ||||||
|  |         Set_Status(0) | ||||||
|  |         RLParms = 'RDS_LAYER':@RM:RLKey | ||||||
|  |         RDSLayerRec = obj_Tables('ReadOnlyRec',RLParms) | ||||||
|  |  | ||||||
|  |         IF Get_Status(errCode) THEN | ||||||
|  |             Error_Services('Add', errCode) | ||||||
|  |             RETURN | ||||||
|  |         END | ||||||
|  |              | ||||||
|  |  | ||||||
|  |         RecipeNo	= RDSLayerRec<RDS_LAYER_RECIPE_NO$> | ||||||
|  |         WOStepKey	= XLATE('RDS',RDSNo,RDS_WO_STEP_KEY$,'X') | ||||||
|  |         PSNId		= XLATE('WO_STEP',WOStepKey,1,'X') | ||||||
|  |  | ||||||
|  |         IF INDEX(LayerSet,'L',1) THEN | ||||||
|  |             LayerLimits = obj_Recipe('GetLimits',RecipeNo:@RM:PSNId:@RM:LayerSet) | ||||||
|  |  | ||||||
|  |             RDSLayerRec<RDS_LAYER_RECIPE_NO$>			= RecipeNo | ||||||
|  |             RDSLayerRec<RDS_LAYER_DOPANT$>				= LayerLimits<RP_DOPANT$> | ||||||
|  |  | ||||||
|  |             RDSLayerRec<RDS_LAYER_EPI_DILUENT$>			= LayerLimits<RP_EPI_DILUENT$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_EPI_TIME_MIN$>		= LayerLimits<RP_DEPOSIT_TIME_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_EPI_TIME_MAX$>		= LayerLimits<RP_DEPOSIT_TIME_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_DILUENT_MIN$>			= LayerLimits<RP_DILUENT_FLOW_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_DILUENT_MAX$>			= LayerLimits<RP_DILUENT_FLOW_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_DOPANT_FLOW_MIN$>		= LayerLimits<RP_DOPANT_FLOW_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_DOPANT_FLOW_MAX$>		= LayerLimits<RP_DOPANT_FLOW_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_HCL_FLOW_MIN$>		= LayerLimits<RP_HCL_FLOW_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_HCL_FLOW_MAX$>		= LayerLimits<RP_HCL_FLOW_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_BAKE_TIME_MIN$>		= LayerLimits<RP_BAKE_TIME_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_BAKE_TIME_MAX$>		= LayerLimits<RP_BAKE_TIME_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_EPI_H2_FLOW_MIN$>		= LayerLimits<RP_H2_FLOW_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_EPI_H2_FLOW_MAX$>		= LayerLimits<RP_H2_FLOW_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_TCS_FLOW_MIN$>		= LayerLimits<RP_TCS_FLOW_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_TCS_FLOW_MAX$>		= LayerLimits<RP_TCS_FLOW_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_DCS_FLOW_MIN$>		= LayerLimits<RP_DCS_FLOW_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_DCS_FLOW_MAX$>		= LayerLimits<RP_DCS_FLOW_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_AUX1_MIN$>			= LayerLimits<RP_AUX1_FLOW_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_AUX1_MAX$>			= LayerLimits<RP_AUX1_FLOW_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_AUX2_MIN$>			= LayerLimits<RP_AUX2_FLOW_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_AUX2_MAX$>			= LayerLimits<RP_AUX2_FLOW_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_F_OFFSET_MIN$>		= LayerLimits<RP_FOFFSET_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_F_OFFSET_MAX$>		= LayerLimits<RP_FOFFSET_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_S_OFFSET_MIN$>		= LayerLimits<RP_SOFFSET_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_S_OFFSET_MAX$>		= LayerLimits<RP_SOFFSET_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_R_OFFSET_MIN$>		= LayerLimits<RP_ROFFSET_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_R_OFFSET_MAX$>		= LayerLimits<RP_ROFFSET_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_SUSC_ETCH_MIN$>		= LayerLimits<RP_SUSC_ETCH_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_SUSC_ETCH_MAX$>		= LayerLimits<RP_SUSC_ETCH_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_ETCH1_MIN$>			= LayerLimits<RP_ETCH1_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_ETCH1_MAX$>			= LayerLimits<RP_ETCH1_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_ETCH2_MIN$>			= LayerLimits<RP_ETCH2_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_ETCH2_MAX$>			= LayerLimits<RP_ETCH2_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_ETCH3_MIN$> = LayerLimits<RP_ETCH3_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_ETCH3_MAX$> = LayerLimits<RP_ETCH3_MAX$> | ||||||
|  |              | ||||||
|  |             RDSLayerRec<RDS_LAYER_UL_TEMP_MIN$> = LayerLimits<RP_UL_TEMP_MIN$> | ||||||
|  |             RDSLayerRec<RDS_LAYER_UL_TEMP_MAX$> = LayerLimits<RP_UL_TEMP_MAX$> | ||||||
|  |              | ||||||
|  |         END | ||||||
|  |  | ||||||
|  |         RLParms = FieldStore(RLParms, @RM, 4, 1, RDSLayerRec) | ||||||
|  |         obj_Tables('WriteOnlyRec',RLParms)		 | ||||||
|  |              | ||||||
|  |     Next I | ||||||
|  |     | ||||||
|  | end service | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user