Here is how I would handle the issue
names default to here(1);
dt=open("$SAMPLE_DATA/semiconductor capability.jmp");
colList = dt << get column names(continuous,string);
// For this illustration I want to use just the NPNn columns
for(i=nitems(colList), i>=1,i--,
If(substr(colList[i],1,3)!="NPN", remove from(colList,i,1))
);
// build the JSL string
theExpr =
"Dis = Distribution(
Continuous Distribution( Column( :" || colList[1] || " ),
Process Capability( Use Column Property Specs ) )";
For( i = 2, i <= N Items( colList ), i++,
theExpr = theExpr || "," || "Continuous Distribution( Column( :" || colList[i] ||
" ), Process Capability( Use Column Property Specs ) )"
);
theExpr=theExpr||");";
// run the built JSL string
eval(parse(theexpr));
// Standardize the settings
disr = Dis << report;
disr[colList[1]]["Quantiles"]<<close all like this;
disr[colList[1]]["Summary Statistics"]<<close all like this;
disr[colList[1]]["Process Capability"]<<close all like this;
For(i=1,i<=nitems(colList),i++,
disr[colList[i]][AxisBox(1)] << min(87) << max(127) << inc(5)
<< Add Ref Line( 121, "Solid","Black","",1)
<< Add Ref Line( 100, "Solid", "Black", "", 1 )
<< Add Ref Line( 90, "Solid", "Black", "", 1 )
);
Jim