removed hgcv pattern from control plan
This commit is contained in:
@ -1,6 +1,5 @@
|
|||||||
COMPILE SUBROUTINE Print_Control_Plan( PSNo, WONo )
|
COMPILE SUBROUTINE Print_Control_Plan( PSNo, WONo )
|
||||||
|
|
||||||
|
|
||||||
DECLARE SUBROUTINE ErrMsg
|
DECLARE SUBROUTINE ErrMsg
|
||||||
DECLARE FUNCTION Set_Printer, Get_printer, Msg,obj_Install,Printer_Select, obj_Prod_Spec, obj_Recipe, obj_Popup
|
DECLARE FUNCTION Set_Printer, Get_printer, Msg,obj_Install,Printer_Select, obj_Prod_Spec, obj_Recipe, obj_Popup
|
||||||
DECLARE FUNCTION obj_Met_Prop, obj_PRS_Layer, obj_PRS_Prop
|
DECLARE FUNCTION obj_Met_Prop, obj_PRS_Layer, obj_PRS_Prop
|
||||||
@ -31,7 +30,6 @@ EQU PI$WIDTH TO 5
|
|||||||
EQU PI$HEIGHT TO 6
|
EQU PI$HEIGHT TO 6
|
||||||
EQU PI$SIZE TO 7
|
EQU PI$SIZE TO 7
|
||||||
|
|
||||||
|
|
||||||
EQU FONT_NAME$ TO 1
|
EQU FONT_NAME$ TO 1
|
||||||
EQU FONT_SIZE$ TO 2
|
EQU FONT_SIZE$ TO 2
|
||||||
EQU FONT_JUST$ TO 3
|
EQU FONT_JUST$ TO 3
|
||||||
@ -63,8 +61,9 @@ EQU COL$REACT_PLAN TO 5
|
|||||||
IF NOT(ASSIGNED(PSNo)) THEN RETURN
|
IF NOT(ASSIGNED(PSNo)) THEN RETURN
|
||||||
IF NOT(ASSIGNED(WONo)) THEN WONo = ''
|
IF NOT(ASSIGNED(WONo)) THEN WONo = ''
|
||||||
|
|
||||||
* * * PRINT SETUP * * *
|
Main:
|
||||||
|
|
||||||
|
* * * PRINT SETUP * * *
|
||||||
FileName = 'Print Control Plan'
|
FileName = 'Print Control Plan'
|
||||||
Title = 'Print Control Plan'
|
Title = 'Print Control Plan'
|
||||||
|
|
||||||
@ -116,8 +115,6 @@ RSideTextX = (MaxPrintWidth - 1.75)
|
|||||||
|
|
||||||
HeaderMidX = ((RSideTextX - RSideGraphicX)/2) + RSideGraphicX
|
HeaderMidX = ((RSideTextX - RSideGraphicX)/2) + RSideGraphicX
|
||||||
|
|
||||||
* * * * Added 10/8/2015 JCH - Updated 'CONFIG','COMPANY' * * * *
|
|
||||||
|
|
||||||
InstDat = obj_Install('Get_Prop','Company':@FM:'Division')
|
InstDat = obj_Install('Get_Prop','Company':@FM:'Division')
|
||||||
Company = InstDat<1>
|
Company = InstDat<1>
|
||||||
Division = InstDat<2>
|
Division = InstDat<2>
|
||||||
@ -139,9 +136,6 @@ stat = Set_Printer('TEXTXY',obj_Install('Get_Prop','CSZC'), RSideTextX:@fm:-0.62
|
|||||||
stat = Set_Printer('TEXTXY','Tel: ':obj_Install('Get_Prop','Phone'), RSideTextX:@fm:-0.475, font, 1)
|
stat = Set_Printer('TEXTXY','Tel: ':obj_Install('Get_Prop','Phone'), RSideTextX:@fm:-0.475, font, 1)
|
||||||
stat = Set_Printer('TEXTXY','FAX: ':obj_Install('Get_Prop','FAX'), RSideTextX:@fm:-0.325, font, 1)
|
stat = Set_Printer('TEXTXY','FAX: ':obj_Install('Get_Prop','FAX'), RSideTextX:@fm:-0.325, font, 1)
|
||||||
|
|
||||||
* * * * End of changes 10/8/2015 JCH * * * *
|
|
||||||
|
|
||||||
|
|
||||||
font = 'Arial'
|
font = 'Arial'
|
||||||
font<2> = '18' ;* Big type
|
font<2> = '18' ;* Big type
|
||||||
font<4> = 1 ;* Bold on
|
font<4> = 1 ;* Bold on
|
||||||
@ -153,7 +147,6 @@ stat = Set_Printer("CALCTEXT", 'Control Plan')
|
|||||||
titleSize = Get_Printer("CALCTEXT")
|
titleSize = Get_Printer("CALCTEXT")
|
||||||
titleWidth = titleSize<1>
|
titleWidth = titleSize<1>
|
||||||
titleHeight = titleSize<2>
|
titleHeight = titleSize<2>
|
||||||
|
|
||||||
titleStartX = HeaderMidX - (titleWidth/2)
|
titleStartX = HeaderMidX - (titleWidth/2)
|
||||||
|
|
||||||
stat = Set_Printer('TEXTXY','Control Plan',titleStartX:@FM:-1.0,font,1)
|
stat = Set_Printer('TEXTXY','Control Plan',titleStartX:@FM:-1.0,font,1)
|
||||||
@ -165,22 +158,16 @@ stat = Set_Printer('FONT',font)
|
|||||||
|
|
||||||
IF WONo NE '' THEN
|
IF WONo NE '' THEN
|
||||||
WORec = XLATE('WO_LOG',WONo,'','X')
|
WORec = XLATE('WO_LOG',WONo,'','X')
|
||||||
|
|
||||||
ProdOrdNo = WORec<WO_LOG_PROD_ORD_NO$>
|
ProdOrdNo = WORec<WO_LOG_PROD_ORD_NO$>
|
||||||
EpiPartNo = WORec<WO_LOG_EPI_PART_NO$>
|
EpiPartNo = WORec<WO_LOG_EPI_PART_NO$>
|
||||||
ProdVerNo = WORec<WO_LOG_PROD_VER_NO$>
|
ProdVerNo = WORec<WO_LOG_PROD_VER_NO$>
|
||||||
SubPartNo = WORec<WO_LOG_ORD_SUB_PART_NO$>
|
SubPartNo = WORec<WO_LOG_ORD_SUB_PART_NO$>
|
||||||
|
|
||||||
CustNo = WORec<WO_LOG_CUST_NO$>
|
CustNo = WORec<WO_LOG_CUST_NO$>
|
||||||
CustName = XLATE('COMPANY',CustNo,COMPANY_CO_NAME$,'X')
|
CustName = XLATE('COMPANY',CustNo,COMPANY_CO_NAME$,'X')
|
||||||
|
|
||||||
CustEpiPartRec = XLATE('CUST_EPI_PART',CustNo:'*':EpiPartNo,'','X')
|
CustEpiPartRec = XLATE('CUST_EPI_PART',CustNo:'*':EpiPartNo,'','X')
|
||||||
|
|
||||||
CustPartNos = CustEpiPartRec<CUST_EPI_PART_CUST_PART_NO$>
|
CustPartNos = CustEpiPartRec<CUST_EPI_PART_CUST_PART_NO$>
|
||||||
CustPartDescs = CustEpiPartRec<CUST_EPI_PART_CUST_PART_DESC$>
|
CustPartDescs = CustEpiPartRec<CUST_EPI_PART_CUST_PART_DESC$>
|
||||||
|
|
||||||
EpiPartRec = XLATE('EPI_PART',EpiPartNo,'','X')
|
EpiPartRec = XLATE('EPI_PART',EpiPartNo,'','X')
|
||||||
|
|
||||||
Orientation = EpiPartRec<EPI_PART_SUB_ORIENTATION$>
|
Orientation = EpiPartRec<EPI_PART_SUB_ORIENTATION$>
|
||||||
ProdType = EpiPartRec<EPI_PART_SUB_DOPE_TYPE$>
|
ProdType = EpiPartRec<EPI_PART_SUB_DOPE_TYPE$>
|
||||||
END ELSE
|
END ELSE
|
||||||
@ -222,10 +209,6 @@ font<5> = 0 ;* Italics off
|
|||||||
|
|
||||||
stat = Set_Printer('FOOTER',"Page 'P'":@VM:@VM:"'T' 'D'")
|
stat = Set_Printer('FOOTER',"Page 'P'":@VM:@VM:"'T' 'D'")
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
* * * * Added 7/27/2015 by JCH * * * * * * *
|
|
||||||
|
|
||||||
AppName = @APPID<1>
|
AppName = @APPID<1>
|
||||||
|
|
||||||
PTCPlan = XLATE('SYSREPOSPOPUPS',AppName:'**PROCESS_TOOL_CONTROL_REACT_PLAN',8,'X') ;* Get literal data defined in poup
|
PTCPlan = XLATE('SYSREPOSPOPUPS',AppName:'**PROCESS_TOOL_CONTROL_REACT_PLAN',8,'X') ;* Get literal data defined in poup
|
||||||
@ -245,24 +228,17 @@ FOR I = 1 TO pCnt
|
|||||||
PTCPData<COL$REACT_PLAN,I> = PTCPlan<I,COL$REACT_PLAN>
|
PTCPData<COL$REACT_PLAN,I> = PTCPlan<I,COL$REACT_PLAN>
|
||||||
NEXT I
|
NEXT I
|
||||||
|
|
||||||
* * * * End of new section 7/27/2015
|
|
||||||
|
|
||||||
* Extract Prod Spec data
|
* Extract Prod Spec data
|
||||||
|
|
||||||
WORec = XLATE('WO_LOG',WONo,'','X')
|
WORec = XLATE('WO_LOG',WONo,'','X')
|
||||||
PSNRec = XLATE('PROD_SPEC',PSNo,'','X')
|
PSNRec = XLATE('PROD_SPEC',PSNo,'','X')
|
||||||
|
|
||||||
SpecType = XLATE('PROD_SPEC',PSNo,'SPEC_TYPE','X') ;* Aded 8/22/2012 HC
|
SpecType = XLATE('PROD_SPEC',PSNo,'SPEC_TYPE','X') ;* Aded 8/22/2012 HC
|
||||||
|
|
||||||
SpecSubInfo = PSNRec<prod_spec_spec_substrate$>
|
SpecSubInfo = PSNRec<prod_spec_spec_substrate$>
|
||||||
|
|
||||||
ReactorType = OCONV(PSNRec<PROD_SPEC_REACTOR_TYPE$> ,'[REACT_TYPE_CONV,OPSREF]' )
|
ReactorType = OCONV(PSNRec<PROD_SPEC_REACTOR_TYPE$> ,'[REACT_TYPE_CONV,OPSREF]' )
|
||||||
SpecialInst = PSNRec<PROD_SPEC_SPEC_INST$> ;* 3/25/2013 JCH
|
SpecialInst = PSNRec<PROD_SPEC_SPEC_INST$> ;* 3/25/2013 JCH
|
||||||
ProveinInst = PSNRec<PROD_SPEC_PROVE_IN_INST$> ;* 3/25/2013 JCH
|
ProveinInst = PSNRec<PROD_SPEC_PROVE_IN_INST$> ;* 3/25/2013 JCH
|
||||||
|
|
||||||
EntryDt = OCONV(PSNRec<PROD_SPEC_ENTRY_DATE$>,'D4/')
|
EntryDt = OCONV(PSNRec<PROD_SPEC_ENTRY_DATE$>,'D4/')
|
||||||
RevDt = OCONV(PSNRec<PROD_SPEC_MOD_DATE$>,'D4/')
|
RevDt = OCONV(PSNRec<PROD_SPEC_MOD_DATE$>,'D4/')
|
||||||
|
|
||||||
KeyContact = "Onsite Quality Representative (480) 668-4000"
|
KeyContact = "Onsite Quality Representative (480) 668-4000"
|
||||||
CoreTeam = 'Executive Director, Process Engineering Manager, Maintenance Engineering Manager, Manufacturing Manager (480) 668-4000'
|
CoreTeam = 'Executive Director, Process Engineering Manager, Maintenance Engineering Manager, Manufacturing Manager (480) 668-4000'
|
||||||
|
|
||||||
@ -329,7 +305,6 @@ colHeader<1,6> = 'PSN':CRLF$:'Original Dt' ; colFormat<1,6> = '^1080'
|
|||||||
colHeader<1,7> = 'PSN':CRLF$:'Last Rev' ; colFormat<1,7> = '^1080'
|
colHeader<1,7> = 'PSN':CRLF$:'Last Rev' ; colFormat<1,7> = '^1080'
|
||||||
|
|
||||||
colData = PSNRec<PROD_SPEC_LAYER_TYPE$>
|
colData = PSNRec<PROD_SPEC_LAYER_TYPE$>
|
||||||
//colData<1,2> = OCONV(SpecType,'[SPEC_TYPE_CONV]')
|
|
||||||
colData<1,2> = SpecTypeConv
|
colData<1,2> = SpecTypeConv
|
||||||
colData<1,3> = OCONV(SigDt,'D4/')
|
colData<1,3> = OCONV(SigDt,'D4/')
|
||||||
colData<1,4> = KeyContact
|
colData<1,4> = KeyContact
|
||||||
@ -390,15 +365,11 @@ FOR I = 1 TO lCnt
|
|||||||
|
|
||||||
PRSLayerKey = PRSLayerKeys<1,I>
|
PRSLayerKey = PRSLayerKeys<1,I>
|
||||||
PRSLayerRec = XLATE('PRS_LAYER',PRSLayerKey,'','X') ;* 1st layer record
|
PRSLayerRec = XLATE('PRS_LAYER',PRSLayerKey,'','X') ;* 1st layer record
|
||||||
|
|
||||||
LayerNo = FIELD(PRSLayerKey,'*',2)
|
LayerNo = FIELD(PRSLayerKey,'*',2)
|
||||||
LSID = PRSLayerRec<PRS_LAYER_LS_ID$>
|
LSID = PRSLayerRec<PRS_LAYER_LS_ID$>
|
||||||
RecipeNo = PRSLayerRec<PRS_LAYER_RECIPE_ID$>
|
RecipeNo = PRSLayerRec<PRS_LAYER_RECIPE_ID$>
|
||||||
|
|
||||||
PropKeys = obj_PRS_Layer('SortPropKeys',PRSLayerKey:@RM:PRSLayerRec)
|
PropKeys = obj_PRS_Layer('SortPropKeys',PRSLayerKey:@RM:PRSLayerRec)
|
||||||
|
|
||||||
RecipeRec = XLATE('RECIPE',RecipeNo,'','X') ;* 1st layer receipe
|
RecipeRec = XLATE('RECIPE',RecipeNo,'','X') ;* 1st layer receipe
|
||||||
|
|
||||||
Dopant = RecipeRec<RECIPE_EPI_DOPANT$>
|
Dopant = RecipeRec<RECIPE_EPI_DOPANT$>
|
||||||
|
|
||||||
IF I = 1 THEN
|
IF I = 1 THEN
|
||||||
@ -444,7 +415,6 @@ FOR I = 1 TO lCnt
|
|||||||
colHeader<1,11> = 'Orient' ; colFormat<1,11> = '^720'
|
colHeader<1,11> = 'Orient' ; colFormat<1,11> = '^720'
|
||||||
colHeader<1,12> = 'Type' ; colFormat<1,12> = '^720'
|
colHeader<1,12> = 'Type' ; colFormat<1,12> = '^720'
|
||||||
|
|
||||||
|
|
||||||
stat = Set_Printer('ADDTABLE', colFormat,colHeader,'',LTGREY$,'',0,TB_ALL)
|
stat = Set_Printer('ADDTABLE', colFormat,colHeader,'',LTGREY$,'',0,TB_ALL)
|
||||||
stat = Set_Printer('ADDTABLE',colFormat,'',colData,LTGREY$,'',1,TB_ALL)
|
stat = Set_Printer('ADDTABLE',colFormat,'',colData,LTGREY$,'',1,TB_ALL)
|
||||||
|
|
||||||
@ -465,9 +435,7 @@ FOR I = 1 TO lCnt
|
|||||||
|
|
||||||
PropKey = PropKeys<1,P>
|
PropKey = PropKeys<1,P>
|
||||||
PropCd = FIELD(PropKey,'*',3)
|
PropCd = FIELD(PropKey,'*',3)
|
||||||
|
|
||||||
PropRec = XLATE('PRS_PROP',PropKey,'','X')
|
PropRec = XLATE('PRS_PROP',PropKey,'','X')
|
||||||
|
|
||||||
MinTarMax = obj_PRS_Prop('GetMinTarMax',PropKey:@RM:PropRec)
|
MinTarMax = obj_PRS_Prop('GetMinTarMax',PropKey:@RM:PropRec)
|
||||||
|
|
||||||
Units = obj_Popup('CodeDesc','MET_PROPERTY':@RM:PropCd:@RM:5)
|
Units = obj_Popup('CodeDesc','MET_PROPERTY':@RM:PropCd:@RM:5)
|
||||||
@ -482,7 +450,11 @@ FOR I = 1 TO lCnt
|
|||||||
lsData<I,7> = PropRec<PRS_PROP_TOOL$>
|
lsData<I,7> = PropRec<PRS_PROP_TOOL$>
|
||||||
lsData<I,8> = PropRec<PRS_PROP_MET_WFR_TYPE$>
|
lsData<I,8> = PropRec<PRS_PROP_MET_WFR_TYPE$>
|
||||||
lsData<I,9> = PropRec<PRS_PROP_MET_RECIPE$>
|
lsData<I,9> = PropRec<PRS_PROP_MET_RECIPE$>
|
||||||
|
If (PropRec<PRS_PROP_TOOL$> _NEC 'HgCV') then
|
||||||
lsData<I,10> = PropRec<PRS_PROP_MET_RECIPE_PATTERN$>
|
lsData<I,10> = PropRec<PRS_PROP_MET_RECIPE_PATTERN$>
|
||||||
|
end else
|
||||||
|
lsData<I,10> = ''
|
||||||
|
end
|
||||||
lsData<I,11> = PropRec<PRS_PROP_MET_INTERVAL$>
|
lsData<I,11> = PropRec<PRS_PROP_MET_INTERVAL$>
|
||||||
lsData<I,12> = PropRec<PRS_PROP_PROVEIN_WFR_TYPE$>
|
lsData<I,12> = PropRec<PRS_PROP_PROVEIN_WFR_TYPE$>
|
||||||
|
|
||||||
@ -496,7 +468,11 @@ FOR I = 1 TO lCnt
|
|||||||
lsData<I,7> = lsData<I,7>:CRLF$:PropRec<PRS_PROP_TOOL$>
|
lsData<I,7> = lsData<I,7>:CRLF$:PropRec<PRS_PROP_TOOL$>
|
||||||
lsData<I,8> = lsData<I,8>:CRLF$:PropRec<PRS_PROP_MET_WFR_TYPE$>
|
lsData<I,8> = lsData<I,8>:CRLF$:PropRec<PRS_PROP_MET_WFR_TYPE$>
|
||||||
lsData<I,9> = lsData<I,9>:CRLF$:PropRec<PRS_PROP_MET_RECIPE$>
|
lsData<I,9> = lsData<I,9>:CRLF$:PropRec<PRS_PROP_MET_RECIPE$>
|
||||||
|
If (PropRec<PRS_PROP_TOOL$> _NEC 'HgCV') then
|
||||||
lsData<I,10> = lsData<I,10>:CRLF$:PropRec<PRS_PROP_MET_RECIPE_PATTERN$>
|
lsData<I,10> = lsData<I,10>:CRLF$:PropRec<PRS_PROP_MET_RECIPE_PATTERN$>
|
||||||
|
end else
|
||||||
|
lsData<I,10> = lsData<I,10>:CRLF$
|
||||||
|
end
|
||||||
lsData<I,11> = lsData<I,11>:CRLF$:PropRec<PRS_PROP_MET_INTERVAL$>
|
lsData<I,11> = lsData<I,11>:CRLF$:PropRec<PRS_PROP_MET_INTERVAL$>
|
||||||
lsData<I,12> = lsData<I,12>:CRLF$:PropRec<PRS_PROP_PROVEIN_WFR_TYPE$>
|
lsData<I,12> = lsData<I,12>:CRLF$:PropRec<PRS_PROP_PROVEIN_WFR_TYPE$>
|
||||||
|
|
||||||
@ -504,8 +480,6 @@ FOR I = 1 TO lCnt
|
|||||||
|
|
||||||
IF ReactorType = 'EPP' THEN ReactorType = 'EpiPro'
|
IF ReactorType = 'EPP' THEN ReactorType = 'EpiPro'
|
||||||
|
|
||||||
* * * * * * * * * * * *******************************************************************************************
|
|
||||||
|
|
||||||
LOCATE ReactorType IN PTCPData<COL$TOOL_GROUP> USING @VM SETTING Pos THEN
|
LOCATE ReactorType IN PTCPData<COL$TOOL_GROUP> USING @VM SETTING Pos THEN
|
||||||
CtrlMethod = PTCPData<COL$CONTROL_METHOD,Pos>
|
CtrlMethod = PTCPData<COL$CONTROL_METHOD,Pos>
|
||||||
ReactPlan = PTCPData<COL$REACT_PLAN,Pos>
|
ReactPlan = PTCPData<COL$REACT_PLAN,Pos>
|
||||||
@ -513,7 +487,7 @@ FOR I = 1 TO lCnt
|
|||||||
CtrlMethod = '*Err*'
|
CtrlMethod = '*Err*'
|
||||||
ReactPlan = '*Err*'
|
ReactPlan = '*Err*'
|
||||||
END
|
END
|
||||||
//JRO
|
|
||||||
If PropRec<PRS_PROP_TOOL$> EQ 'SRP' then
|
If PropRec<PRS_PROP_TOOL$> EQ 'SRP' then
|
||||||
sdPointer = I + ( P - 1 )
|
sdPointer = I + ( P - 1 )
|
||||||
StepData<sdPointer,1> = '' ;* Step number filled in later
|
StepData<sdPointer,1> = '' ;* Step number filled in later
|
||||||
@ -545,7 +519,6 @@ FOR I = 1 TO lCnt
|
|||||||
StepData<sdPointer,12> = ReactPlan
|
StepData<sdPointer,12> = ReactPlan
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
NEXT P
|
NEXT P
|
||||||
|
|
||||||
FOR C = 1 TO 12
|
FOR C = 1 TO 12
|
||||||
@ -558,7 +531,6 @@ FOR I = 1 TO lCnt
|
|||||||
|
|
||||||
RecDepTime = OCONV(RecLimits<RP_DEPOSIT_TIME_MIN$>:@SVM:RecLimits<RP_DEPOSIT_TIME_MAX$>,'MD1')
|
RecDepTime = OCONV(RecLimits<RP_DEPOSIT_TIME_MIN$>:@SVM:RecLimits<RP_DEPOSIT_TIME_MAX$>,'MD1')
|
||||||
|
|
||||||
|
|
||||||
IF RecLimits<RP_DILUENT_FLOW_MIN$> = '' THEN
|
IF RecLimits<RP_DILUENT_FLOW_MIN$> = '' THEN
|
||||||
DiluentFlowMin = RecLimits<RP_EPI_DILUENT$>
|
DiluentFlowMin = RecLimits<RP_EPI_DILUENT$>
|
||||||
END ELSE
|
END ELSE
|
||||||
@ -571,9 +543,7 @@ FOR I = 1 TO lCnt
|
|||||||
DiluentFlowMax = RecLimits<RP_DILUENT_FLOW_MAX$>
|
DiluentFlowMax = RecLimits<RP_DILUENT_FLOW_MAX$>
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
RecDiluent = OCONV(DiluentFlowMin:@SVM:DiluentFlowMax,'MD2')
|
RecDiluent = OCONV(DiluentFlowMin:@SVM:DiluentFlowMax,'MD2')
|
||||||
|
|
||||||
RecDopantFlow = OCONV(RecLimits<RP_DOPANT_FLOW_MIN$>:@SVM:RecLimits<RP_DOPANT_FLOW_MAX$>,'MD2')
|
RecDopantFlow = OCONV(RecLimits<RP_DOPANT_FLOW_MIN$>:@SVM:RecLimits<RP_DOPANT_FLOW_MAX$>,'MD2')
|
||||||
RecBakeTime = RecLimits<RP_BAKE_TIME_MIN$>:@SVM:RecLimits<RP_BAKE_TIME_MAX$>
|
RecBakeTime = RecLimits<RP_BAKE_TIME_MIN$>:@SVM:RecLimits<RP_BAKE_TIME_MAX$>
|
||||||
RecH2Flow = OCONV(RecLimits<RP_H2_FLOW_MIN$>:@SVM:RecLimits<RP_H2_FLOW_MAX$>,'MD0')
|
RecH2Flow = OCONV(RecLimits<RP_H2_FLOW_MIN$>:@SVM:RecLimits<RP_H2_FLOW_MAX$>,'MD0')
|
||||||
@ -634,28 +604,17 @@ FOR I = 1 TO lCnt
|
|||||||
SWAP @SVM WITH ' ~ ' IN RecData
|
SWAP @SVM WITH ' ~ ' IN RecData
|
||||||
END ;* End of check for a deposit time
|
END ;* End of check for a deposit time
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
NEXT I
|
NEXT I
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
font<FONT_NAME$> = 'MS LineDraw'
|
font<FONT_NAME$> = 'MS LineDraw'
|
||||||
font<FONT_SIZE$> = 8 ;* 10 point
|
font<FONT_SIZE$> = 8 ;* 10 point
|
||||||
font<FONT_BOLD$> = 0 ;* Bold
|
font<FONT_BOLD$> = 0 ;* Bold
|
||||||
stat = Set_Printer('FONT',font)
|
stat = Set_Printer('FONT',font)
|
||||||
|
|
||||||
|
|
||||||
stat = Set_Printer('ADDTABLE', lsFormat,lsHeader,'',LTGREY$,'',0,TB_ALL)
|
stat = Set_Printer('ADDTABLE', lsFormat,lsHeader,'',LTGREY$,'',0,TB_ALL)
|
||||||
stat = Set_Printer('ADDTABLE',lsFormat,'',lsData,LTGREY$,'',1,TB_ALL)
|
stat = Set_Printer('ADDTABLE',lsFormat,'',lsData,LTGREY$,'',1,TB_ALL)
|
||||||
|
|
||||||
|
|
||||||
stat = Set_Printer('TEXT')
|
stat = Set_Printer('TEXT')
|
||||||
|
|
||||||
stat = Set_Printer('ADDTABLE', recFormat,recHeader,'',LTGREY$,'',0,TB_ALL)
|
stat = Set_Printer('ADDTABLE', recFormat,recHeader,'',LTGREY$,'',0,TB_ALL)
|
||||||
stat = Set_Printer('ADDTABLE',recFormat,'',recData,LTGREY$,'',1,TB_ALL)
|
stat = Set_Printer('ADDTABLE',recFormat,'',recData,LTGREY$,'',1,TB_ALL)
|
||||||
|
|
||||||
|
|
||||||
stat = Set_Printer('TEXT')
|
stat = Set_Printer('TEXT')
|
||||||
|
|
||||||
Sigs = ''
|
Sigs = ''
|
||||||
@ -679,8 +638,6 @@ colHeader<1,STEP_REACT_PLAN$> = 'React Plan' ; colFormat<1,STEP_REACT_PLAN
|
|||||||
|
|
||||||
StepNo = 1
|
StepNo = 1
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
* Receiving Step
|
* Receiving Step
|
||||||
|
|
||||||
ProcName = 'Receiving'
|
ProcName = 'Receiving'
|
||||||
@ -693,7 +650,6 @@ END ELSE
|
|||||||
ReactPlan = '*Err*'
|
ReactPlan = '*Err*'
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
colData = ''
|
colData = ''
|
||||||
colData<StepNo,STEP_STEP$> = StepNo
|
colData<StepNo,STEP_STEP$> = StepNo
|
||||||
colData<StepNo,STEP_PROCESS_NAME$> = ProcName
|
colData<StepNo,STEP_PROCESS_NAME$> = ProcName
|
||||||
@ -708,14 +664,11 @@ colData<StepNo,STEP_FREQ$> = 'Per Cass'
|
|||||||
colData<StepNo,STEP_CTRL_METHOD$> = CtrlMethod
|
colData<StepNo,STEP_CTRL_METHOD$> = CtrlMethod
|
||||||
colData<StepNo,STEP_REACT_PLAN$> = ReactPlan
|
colData<StepNo,STEP_REACT_PLAN$> = ReactPlan
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Stages = obj_Popup('AllCodes','STAGE')
|
Stages = obj_Popup('AllCodes','STAGE')
|
||||||
|
|
||||||
CONVERT @VM TO @FM IN Stages
|
CONVERT @VM TO @FM IN Stages
|
||||||
|
|
||||||
CIStages = Stages
|
CIStages = Stages
|
||||||
|
|
||||||
StageCnt = COUNT(CIStages,@FM) + (CIStages NE '')
|
StageCnt = COUNT(CIStages,@FM) + (CIStages NE '')
|
||||||
|
|
||||||
FOR I = 1 TO StageCnt
|
FOR I = 1 TO StageCnt
|
||||||
@ -753,7 +706,6 @@ FOR I = 1 TO StageCnt
|
|||||||
colData<StepNo,STEP_PRODUCT$> = '-' ;*StageRec<PRS_STAGE_CLEAN_TOOL$>
|
colData<StepNo,STEP_PRODUCT$> = '-' ;*StageRec<PRS_STAGE_CLEAN_TOOL$>
|
||||||
colData<StepNo,STEP_RECIPE$> = StageRec<PRS_STAGE_CLEAN_RECIPE$>
|
colData<StepNo,STEP_RECIPE$> = StageRec<PRS_STAGE_CLEAN_RECIPE$>
|
||||||
colData<StepNo,STEP_SPEC_TOL$> = '-'
|
colData<StepNo,STEP_SPEC_TOL$> = '-'
|
||||||
|
|
||||||
colData<StepNo,STEP_SIZE$> = '1 Cass'
|
colData<StepNo,STEP_SIZE$> = '1 Cass'
|
||||||
colData<StepNo,STEP_FREQ$> = ''
|
colData<StepNo,STEP_FREQ$> = ''
|
||||||
colData<StepNo,STEP_CTRL_METHOD$> = CtrlMethod
|
colData<StepNo,STEP_CTRL_METHOD$> = CtrlMethod
|
||||||
@ -840,7 +792,6 @@ FOR I = 1 TO StageCnt
|
|||||||
ReactPlan = '*Err*'
|
ReactPlan = '*Err*'
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
colData<StepNo,STEP_STEP$> = StepNo
|
colData<StepNo,STEP_STEP$> = StepNo
|
||||||
colData<StepNo,STEP_PSN$> = PSNo
|
colData<StepNo,STEP_PSN$> = PSNo
|
||||||
colData<StepNo,STEP_PROCESS_NAME$> = StageDesc
|
colData<StepNo,STEP_PROCESS_NAME$> = StageDesc
|
||||||
@ -849,7 +800,6 @@ FOR I = 1 TO StageCnt
|
|||||||
colData<StepNo,STEP_PRODUCT$> = "LPD's"
|
colData<StepNo,STEP_PRODUCT$> = "LPD's"
|
||||||
colData<StepNo,STEP_RECIPE$> = StageRec<PRS_STAGE_SURFSCAN_RECIPE$>
|
colData<StepNo,STEP_RECIPE$> = StageRec<PRS_STAGE_SURFSCAN_RECIPE$>
|
||||||
colData<StepNo,STEP_SPEC_TOL$> = 'See Hard Copy Spec'
|
colData<StepNo,STEP_SPEC_TOL$> = 'See Hard Copy Spec'
|
||||||
|
|
||||||
colData<StepNo,STEP_SIZE$> = StageRec<PRS_STAGE_SS_SAMP_QTY$>
|
colData<StepNo,STEP_SIZE$> = StageRec<PRS_STAGE_SS_SAMP_QTY$>
|
||||||
colData<StepNo,STEP_FREQ$> = 'Per Cass'
|
colData<StepNo,STEP_FREQ$> = 'Per Cass'
|
||||||
colData<StepNo,STEP_CTRL_METHOD$> = CtrlMethod
|
colData<StepNo,STEP_CTRL_METHOD$> = CtrlMethod
|
||||||
@ -857,19 +807,11 @@ FOR I = 1 TO StageCnt
|
|||||||
end
|
end
|
||||||
END ;* End of check for Surfscan Recipe
|
END ;* End of check for Surfscan Recipe
|
||||||
|
|
||||||
|
|
||||||
IF StageRec<PRS_STAGE_MET_TEST$> NE '' THEN
|
IF StageRec<PRS_STAGE_MET_TEST$> NE '' THEN
|
||||||
metCnt = COUNT(StageRec<PRS_STAGE_MET_TEST$>,@VM) + (StageRec<PRS_STAGE_MET_TEST$> NE '')
|
metCnt = COUNT(StageRec<PRS_STAGE_MET_TEST$>,@VM) + (StageRec<PRS_STAGE_MET_TEST$> NE '')
|
||||||
FOR M = 1 TO metCnt
|
FOR M = 1 TO metCnt
|
||||||
MetTest = StageRec<PRS_STAGE_MET_TEST$,M>
|
MetTest = StageRec<PRS_STAGE_MET_TEST$,M>
|
||||||
|
|
||||||
*IF StageRec<PRS_STAGE_MET_WFR_QTY$,M> NE '' THEN
|
|
||||||
* Size = StageRec<PRS_STAGE_MET_WFR_QTY$,M>
|
|
||||||
*END ELSE
|
|
||||||
* Size = StageRec<PRS_STAGE_MET_SLOT$,M>
|
|
||||||
*END
|
|
||||||
|
|
||||||
|
|
||||||
IF MetTest NE '' THEN
|
IF MetTest NE '' THEN
|
||||||
StepNo += 1
|
StepNo += 1
|
||||||
colData<StepNo,STEP_STEP$> = StepNo
|
colData<StepNo,STEP_STEP$> = StepNo
|
||||||
@ -883,7 +825,6 @@ FOR I = 1 TO StageCnt
|
|||||||
ToolGroup = 'QA_Met'
|
ToolGroup = 'QA_Met'
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
LOCATE ToolGroup IN PTCPData<COL$TOOL_GROUP> USING @VM SETTING Pos THEN
|
LOCATE ToolGroup IN PTCPData<COL$TOOL_GROUP> USING @VM SETTING Pos THEN
|
||||||
CtrlMethod = PTCPData<COL$CONTROL_METHOD,Pos>
|
CtrlMethod = PTCPData<COL$CONTROL_METHOD,Pos>
|
||||||
ReactPlan = PTCPData<COL$REACT_PLAN,Pos>
|
ReactPlan = PTCPData<COL$REACT_PLAN,Pos>
|
||||||
@ -899,7 +840,11 @@ FOR I = 1 TO StageCnt
|
|||||||
end else
|
end else
|
||||||
colData<StepNo,STEP_PRODUCT$> = CHAR(185):obj_Met_Prop('GetPropDesc',StageRec<PRS_STAGE_MET_PROP$,M>)
|
colData<StepNo,STEP_PRODUCT$> = CHAR(185):obj_Met_Prop('GetPropDesc',StageRec<PRS_STAGE_MET_PROP$,M>)
|
||||||
end
|
end
|
||||||
|
If (StageRec<PRS_STAGE_MET_TOOL_CLASS$,M> _NEC 'HgCV') then
|
||||||
colData<StepNo,STEP_RECIPE$> = StageRec<PRS_STAGE_MET_RECIPE$,M>:CRLF$:StageRec<PRS_STAGE_MET_RECIPE_PATTERN$,M>
|
colData<StepNo,STEP_RECIPE$> = StageRec<PRS_STAGE_MET_RECIPE$,M>:CRLF$:StageRec<PRS_STAGE_MET_RECIPE_PATTERN$,M>
|
||||||
|
end else
|
||||||
|
colData<StepNo,STEP_RECIPE$> = StageRec<PRS_STAGE_MET_RECIPE$,M>
|
||||||
|
end
|
||||||
colData<StepNo,STEP_SPEC_TOL$> = StageRec<PRS_STAGE_MET_MIN$,M>:' - ':StageRec<PRS_STAGE_MET_MAX$,M>:' ':obj_Met_Prop('GetUnitsDesc',StageRec<PRS_STAGE_MET_PROP$,M>)
|
colData<StepNo,STEP_SPEC_TOL$> = StageRec<PRS_STAGE_MET_MIN$,M>:' - ':StageRec<PRS_STAGE_MET_MAX$,M>:' ':obj_Met_Prop('GetUnitsDesc',StageRec<PRS_STAGE_MET_PROP$,M>)
|
||||||
colData<StepNo,STEP_SIZE$> = StageRec<PRS_STAGE_MET_WFR_QTY$,M>
|
colData<StepNo,STEP_SIZE$> = StageRec<PRS_STAGE_MET_WFR_QTY$,M>
|
||||||
colData<StepNo,STEP_FREQ$> = StageRec<PRS_STAGE_MET_INTERVAL$,M>
|
colData<StepNo,STEP_FREQ$> = StageRec<PRS_STAGE_MET_INTERVAL$,M>
|
||||||
@ -913,15 +858,11 @@ FOR I = 1 TO StageCnt
|
|||||||
END
|
END
|
||||||
NEXT M
|
NEXT M
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
END ;* End of check for null stage record
|
END ;* End of check for null stage record
|
||||||
|
|
||||||
|
|
||||||
* Insert LayerSet step data after the LOAD stage
|
* Insert LayerSet step data after the LOAD stage
|
||||||
|
|
||||||
IF Stage = 'LOAD' THEN
|
IF Stage = 'LOAD' THEN
|
||||||
|
|
||||||
FOR SDLine = 1 TO sdPointer
|
FOR SDLine = 1 TO sdPointer
|
||||||
StepNo += 1
|
StepNo += 1
|
||||||
colData<StepNo,STEP_STEP$> = StepNo
|
colData<StepNo,STEP_STEP$> = StepNo
|
||||||
@ -929,15 +870,10 @@ FOR I = 1 TO StageCnt
|
|||||||
FOR Col = STEP_PSN$ TO STEP_REACT_PLAN$
|
FOR Col = STEP_PSN$ TO STEP_REACT_PLAN$
|
||||||
colData<StepNo,Col> = StepData<SDLine,Col>
|
colData<StepNo,Col> = StepData<SDLine,Col>
|
||||||
NEXT Col
|
NEXT Col
|
||||||
|
|
||||||
NEXT SDLine
|
NEXT SDLine
|
||||||
|
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
NEXT I
|
NEXT I
|
||||||
|
|
||||||
//Added per request from Matt Treanor - 4/14/2020 JRO
|
|
||||||
ProcName = 'Packaging and Labeling '
|
ProcName = 'Packaging and Labeling '
|
||||||
|
|
||||||
StepNo += 1
|
StepNo += 1
|
||||||
@ -954,7 +890,6 @@ colData<StepNo,STEP_FREQ$> = '1'
|
|||||||
colData<StepNo,STEP_CTRL_METHOD$> = 'OI'
|
colData<StepNo,STEP_CTRL_METHOD$> = 'OI'
|
||||||
colData<StepNo,STEP_REACT_PLAN$> = 'EpiMSA WI-0113'
|
colData<StepNo,STEP_REACT_PLAN$> = 'EpiMSA WI-0113'
|
||||||
|
|
||||||
|
|
||||||
ProcName = 'Shipping'
|
ProcName = 'Shipping'
|
||||||
|
|
||||||
LOCATE ProcName IN PTCPData<COL$PROCESS> USING @VM SETTING Pos THEN
|
LOCATE ProcName IN PTCPData<COL$PROCESS> USING @VM SETTING Pos THEN
|
||||||
@ -965,7 +900,6 @@ END ELSE
|
|||||||
ReactPlan = '*Err*'
|
ReactPlan = '*Err*'
|
||||||
END
|
END
|
||||||
|
|
||||||
|
|
||||||
StepNo += 1
|
StepNo += 1
|
||||||
colData<StepNo,STEP_STEP$> = StepNo
|
colData<StepNo,STEP_STEP$> = StepNo
|
||||||
colData<StepNo,STEP_PROCESS_NAME$> = ProcName
|
colData<StepNo,STEP_PROCESS_NAME$> = ProcName
|
||||||
@ -980,11 +914,9 @@ colData<StepNo,STEP_FREQ$> = 'Per Cass'
|
|||||||
colData<StepNo,STEP_CTRL_METHOD$> = CtrlMethod
|
colData<StepNo,STEP_CTRL_METHOD$> = CtrlMethod
|
||||||
colData<StepNo,STEP_REACT_PLAN$> = ReactPlan
|
colData<StepNo,STEP_REACT_PLAN$> = ReactPlan
|
||||||
|
|
||||||
|
|
||||||
Font = 'Arial'
|
Font = 'Arial'
|
||||||
Font<FONT_JUST$> = 'L'
|
Font<FONT_JUST$> = 'L'
|
||||||
Font<FONT_SIZE$> = 8
|
Font<FONT_SIZE$> = 8
|
||||||
|
|
||||||
Font<FONT_UNDERLINE$> = 0
|
Font<FONT_UNDERLINE$> = 0
|
||||||
Font<FONT_BOLD$> = 0
|
Font<FONT_BOLD$> = 0
|
||||||
Void = Set_Printer( 'FONT', Font )
|
Void = Set_Printer( 'FONT', Font )
|
||||||
@ -992,18 +924,13 @@ Void = Set_Printer( 'FONT', Font )
|
|||||||
stat = Set_Printer('ADDTABLE', colFormat,colHeader,'',LTGREY$,'',0,TB_ALL)
|
stat = Set_Printer('ADDTABLE', colFormat,colHeader,'',LTGREY$,'',0,TB_ALL)
|
||||||
stat = Set_Printer('ADDTABLE',colFormat,'',colData,LTGREY$,'',1,TB_ALL)
|
stat = Set_Printer('ADDTABLE',colFormat,'',colData,LTGREY$,'',1,TB_ALL)
|
||||||
|
|
||||||
|
|
||||||
***************************************************
|
|
||||||
|
|
||||||
stat = Set_Printer("CALCTEXT",CHAR(185):'Note: Special Characteristics')
|
stat = Set_Printer("CALCTEXT",CHAR(185):'Note: Special Characteristics')
|
||||||
noteSize = Get_Printer("CALCTEXT")
|
noteSize = Get_Printer("CALCTEXT")
|
||||||
noteWidth = noteSize<1>
|
noteWidth = noteSize<1>
|
||||||
noteHeight = noteSize<2>
|
noteHeight = noteSize<2>
|
||||||
|
|
||||||
|
|
||||||
stat = Set_Printer('TEXT')
|
stat = Set_Printer('TEXT')
|
||||||
stat = Set_Printer('TEXT',CHAR(185):'Note: Special Characteristics')
|
stat = Set_Printer('TEXT',CHAR(185):'Note: Special Characteristics')
|
||||||
|
|
||||||
stat = Set_Printer('TEXT')
|
stat = Set_Printer('TEXT')
|
||||||
|
|
||||||
SpecialInst = PSNRec<PROD_SPEC_SPEC_INST$> ;* 3/25/2013 JCH
|
SpecialInst = PSNRec<PROD_SPEC_SPEC_INST$> ;* 3/25/2013 JCH
|
||||||
@ -1034,42 +961,22 @@ stat = Set_Printer('ADDTABLE', colFmt,colHeader,'',LTGREY$,'',0,TB_ALL)
|
|||||||
|
|
||||||
colFmt = '<14400'
|
colFmt = '<14400'
|
||||||
stat = Set_Printer('ADDTABLE',colFmt,'',colData,LTGREY$,'',1,TB_ALL)
|
stat = Set_Printer('ADDTABLE',colFmt,'',colData,LTGREY$,'',1,TB_ALL)
|
||||||
|
|
||||||
stat = Set_Printer('TEXT')
|
stat = Set_Printer('TEXT')
|
||||||
|
|
||||||
colHeader = 'Prove-In Instructions'
|
colHeader = 'Prove-In Instructions'
|
||||||
colFmt = '^14400'
|
colFmt = '^14400'
|
||||||
colData = ProveinInst
|
colData = ProveinInst
|
||||||
|
|
||||||
stat = Set_Printer('CALCTABLE',colFmt:@FM:colData)
|
stat = Set_Printer('CALCTABLE',colFmt:@FM:colData)
|
||||||
|
|
||||||
TableSize = Get_Printer('CALCTABLE')
|
TableSize = Get_Printer('CALCTABLE')
|
||||||
TableHeight = TableSize<2>
|
TableHeight = TableSize<2>
|
||||||
CurrY = Get_Printer('POS')<2>
|
CurrY = Get_Printer('POS')<2>
|
||||||
|
IF CurrY + noteHeight + TableHeight > MaxPrintHeight THEN stat = Set_Printer('PAGEBREAK')
|
||||||
IF CurrY + noteHeight + TableHeight > MaxPrintHeight THEN
|
|
||||||
stat = Set_Printer('PAGEBREAK')
|
|
||||||
END
|
|
||||||
|
|
||||||
|
|
||||||
Font<2> = 10
|
Font<2> = 10
|
||||||
Font<4> = 0
|
Font<4> = 0
|
||||||
Void = Set_Printer( 'FONT', Font )
|
Void = Set_Printer( 'FONT', Font )
|
||||||
|
|
||||||
stat = Set_Printer('ADDTABLE', colFmt,colHeader,'',LTGREY$,colData,0,TB_ALL)
|
stat = Set_Printer('ADDTABLE', colFmt,colHeader,'',LTGREY$,colData,0,TB_ALL)
|
||||||
|
|
||||||
colFmt = '<14400'
|
colFmt = '<14400'
|
||||||
stat = Set_Printer('ADDTABLE',colFmt,'',colData,LTGREY$,'',1,TB_ALL)
|
stat = Set_Printer('ADDTABLE',colFmt,'',colData,LTGREY$,'',1,TB_ALL)
|
||||||
|
|
||||||
|
|
||||||
stat = set_printer( 'TERM' )
|
stat = set_printer( 'TERM' )
|
||||||
|
|
||||||
RETURN
|
RETURN
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user