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.

JMP Wish List

We want to hear your ideas for improving JMP. Share them here.
Choose Language Hide Translation Bar
0 Kudos

delete column: safe mode

☑ cool new feature
☑ could help many users!

☑ removes something that feels like a „bug“

☐ nice to have

☐ nobody needs it



What inspired this wish list request? 

When a user renames a column, Table Scripts get automatically updated.

When a user deletes a column which is used in a table script, JMP warns the user if the column is used in column formulas.
But a table script will die without notice.

 

a) it takes a long time for the user to find out why the table script is dead.

b) it takes some effort to create the column again (worst case: not possible to create the column again)

 

What is the improvement you would like to see? 

Before deleting a column, please check if the column is used in a table script - and show a warning.

 

Names Default To Here( 1 );

Current Data Table() << copy table script( "no data" );
tableScript = Eval( Eval Expr( Parse( Expr( Get Clipboard() ) ) ) );

col_names = Current Data Table() << Get Selected Columns();

tableScriptList = Substitute( Name Expr( tableScript ), Expr( New Table() ), Expr( List() ) );
tableScriptList = Filter Each( {part}, tableScriptList, Head( Part ) == Expr( New Script() ) );
	
found = 0;
For Each( {col}, col_names,
	For Each( {myScript}, tableScriptList, 

		If( Not( Is Empty( Eval( Eval Expr( Extract Expr( myScript, Expr( Name Expr( col ) ) ) ) ) ) ),
			Caption( {100, 200}, "column \!"" || (col << get name()) || "\!" found in script: \!n" || Arg( myScript, 1 ) );
			found = 1;
			print("found!!!");
			Wait( 1 );
		)
	)
);

If( Not( found ),
	Caption( {100, 200}, "no column found.\!N ->cols can be deleted" );
	Wait( 1 );
);
Caption( remove )

 

Why is this idea important? 

Just imagine how many JMP users killed a table script by "accidentally" deleting a column.
switching to "safe mode" will safe many users from the same issue.

 

 

other wishes from hogi_0-1726130690639.png

 

 

1 Comment
Sarah-Sylvestre
Level V
Status changed to: Acknowledged