cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • Don’t miss your chance to experience Discovery Summit Europe at our best available rate! Early bird registration through 31 Oct.
  • Graph Builder Toolbar streamlines interactive graphing. Creates shortcuts on Report and GraphBuilder Helpers toolbars. Download and install the extension.
  • JMP will suspend normal business operations for our Rest and Recharge Day on Friday, October 2, 2026.
    Regular business hours will resume on Monday, October 5, 2026.

Discussions

Solve problems, and share tips and tricks with other JMP users.
Choose Language Hide Translation Bar
mylifemyrule
Level II

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 II

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

Recommended Articles