Commit to switch branches.
This commit is contained in:
committed by
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>
|
||||||
Ans = Function(@ServiceModule(Service, WOMatKey))
|
If Service = 'UpdateRDSLayerSpecs' then
|
||||||
|
RDSKey = SelRDSList<4, vPos>
|
||||||
|
Ans = Function(@ServiceModule(Service, RDSKey))
|
||||||
|
end else
|
||||||
|
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