cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Try the Materials Informatics Toolkit, which is designed to easily handle SMILES data. This and other helpful add-ins are available in the JMP® Marketplace
Choose Language Hide Translation Bar
mylifemyrule
Level I

Process Capability by group

hi,

May I know where is wrong in the scrip I would like to generate the process capability report by lot_id as below. 

 

mylifemyrule_0-1689348013229.png

 

 

 

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\semiconductor capability.jmp" );

// Create a complex name for a column to make sure it will be
// processed correctly
dt:NPN1 << set name( "NPN1-7/Best" );

// Get a list of columns to be used
colList = dt << get column names( continuous, string );

ProcessFunc = Function( {TheList}, 
	// Move them into a single literal string of the format required
	// for the Process Variables element in the Process Capability
	// platform
	TheVars = ":Name(\!"" || TheList[1] || "\!")";
	For( i = 2, i <= 10, i++,
		TheVars = TheVars || "," || ":Name(\!"" || TheList[i] || "\!")"
	);

	// Run the Process Capability platform, using the literal
	// string "TheVars" 
      pcVar=Eval(Parse("dt << Process Capability(
      SendToByGroup( Bygroup Default ),
	Process Variables( "|| TheVars|| ")
	{:TheVars << Process Capability Analysis},
	By( :lot_id )
		
	 ) ,,
	
	Goal Plot( 0 ), Capability Index Plot( 0 ) ),
	
	 );"));
	 pcVar <<Order By( "Within Sigma Cpk Ascending" );
	 pcVar <<Order By( "Overall Sigma Ppk Ascending" );
	 pcVar <<Overall Sigma Summary Report( 1 ),
	 pcVar << Within Sigma Summary Report( 1 )

); 

Return = ProcessFunc( colList );

 

3 REPLIES 3
WebDesignesCrow
Super User

Re: Process Capability by group

you have double comma.

	By( :lot_id )
		
	 ) ,,
	
	Goal Plot( 0 ), Capability Index Plot( 0 ) ),

 

mylifemyrule
Level I

Re: Process Capability by group

it's doesn't work.

jthi
Super User

Re: Process Capability by group

Which version of JMP are you using? Is there a specific reason for building the message using strings instead of expression (Eval(Parse()) vs Eval(Substitute()) vs Eval(EvalExpr())? Have you checked that the string you are building is correct?

-Jarmo