How do i create a seperate table for Variability gauge Report GRR for selective items in the report
First Report
Current JMP Script to display First Report
Clear Globals();
popup = Dialog(
"Enter specification tolerance",
selection = editnumber(),
"Select Reproducibility Factor",
selection1 = combobox("Equipment","Operator"),
Button( "Ok" ),
Button( "Cancel" ));
If( popup["Button"] == -1,
Throw( "cancel" ));
specrange = popup["Selection"];
reproducibility=popup["Selection1"];
Column( 1 ) << modeling type( nominal );
Column( 2 ) << modeling type( nominal ) << Set name(eval(if(reproducibility==1,"Equipment","Operator")));
Column( 3 ) << modeling type( continuous );
var=Variability Chart(
Y( Column (3) ),
X( Column (2) , Column (1) ),
Model( "Crossed" ),
Max Iter( 20 ),
Analysis Type( Name( "Choose best analysis (EMS REML Bayesian)" ) ),
Historical Sigma( 0 ),
Connect Cell Means( 1 ),
Show Group Means( 1 ),
Show Grand Mean( 1 ),
Std Dev Chart( 1 ),
Gauge RR( 5.15, specrange, 0, 0 ),
Gauge RR Report( 1 ),
Show Box Plots( 1 ),
Mean Plots( 1 ),
Std Dev Plots( 1 )
);
var << Set Report Title("GRR Results")
______________________________________________________________________________________________________________________________________________
Second Report
How do i create a seperate table for Variability gauge Report (linearty and Bias report) for selective items in the report
JMP Script for second report
Clear Globals();
Column( 1 ) << modeling type( nominal );
Column( 2 ) << modeling type( continuous );
Column( 3 ) << modeling type( continuous );
Column( 4 ) << modeling type( nominal );
var=Variability Chart(
Y( Column(3) ),
X( Column(2) ),
By( Column(4) ),
Analysis Type( Name( "Choose best analysis (EMS REML Bayesian)" ) ),
Standard( Column(2) ),
Connect Cell Means( 1 ),
Show Group Means( 1 ),
Show Grand Mean( 1 ),
Std Dev Chart( 1 ),
Show Box Plots( 1 ),
Bias Report,
Linearity Study( 0.05 )
);
var << Set Report Title("Linearity/Bias Results")
There may be a better way, but this produces the result you're after. The trick is to expose the Tree Structure of the report or outline box that contains the information you want. Right-click on the outline's disclosure button and select Edit->Show Tree Structure:
The resulting window will display the tree structure for the objects in the report so that you can reference them in your script. See below for the code that I appended to your script to produce the table for your first report:
repvar = var << Report;
LBL1 = repvar["Gauge R&R"][String Col Box( 1 )];
LBL2 = repvar["Gauge R&R"][String Col Box( 2 )];
VAL1 = repvar["Gauge R&R"][Number Col Box( 3 )];
VAL2 = repvar["Gauge R&R"][Number Col Box( 6 )];
win1 = New Window( "The Report",
Table Box( String Col Box( "Attribute", {LBL1[5], LBL1[1], LBL1[6], LBL1[2], "Number of Distinct Categories", "P/T %"} ),
String Col Box( "Abrev", {LBL2[5], LBL2[1], LBL2[6], LBL2[2]} ),
Number Col Box( "Value", {VAL1[5], VAL1[1], VAL1[6], VAL1[2], VAL2[4], VAL2[6]*100} )
)
);
The result:
Hope this helps.
There may be a better way, but this produces the result you're after. The trick is to expose the Tree Structure of the report or outline box that contains the information you want. Right-click on the outline's disclosure button and select Edit->Show Tree Structure:
The resulting window will display the tree structure for the objects in the report so that you can reference them in your script. See below for the code that I appended to your script to produce the table for your first report:
repvar = var << Report;
LBL1 = repvar["Gauge R&R"][String Col Box( 1 )];
LBL2 = repvar["Gauge R&R"][String Col Box( 2 )];
VAL1 = repvar["Gauge R&R"][Number Col Box( 3 )];
VAL2 = repvar["Gauge R&R"][Number Col Box( 6 )];
win1 = New Window( "The Report",
Table Box( String Col Box( "Attribute", {LBL1[5], LBL1[1], LBL1[6], LBL1[2], "Number of Distinct Categories", "P/T %"} ),
String Col Box( "Abrev", {LBL2[5], LBL2[1], LBL2[6], LBL2[2]} ),
Number Col Box( "Value", {VAL1[5], VAL1[1], VAL1[6], VAL1[2], VAL2[4], VAL2[6]*100} )
)
);
The result:
Hope this helps.
Thanks Jerry Cooper it works great!!!
The Linearity and Bias report is slightly tricky as there could be more than 1 Linearity and Bias report and we need to grab the min of the linearity% and Bias%
Glad it worked. As you work through the second report, keep in mind that when you have a By variable, you'll have a Display Box for each By group. Use an index to reference the report for each By group. If there was a By group in the example I used above, in order to access the report layer for each, my code might have looked like this:
LBL1a = repvar[1]["Gauge....] for the first "By" group, and
LBL1b = repvar[2]["Gauge....] for the second "By" group.