cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Choose Language Hide Translation Bar
hogi
Level XIII

Tables/Update changed!

Please note, there is a significant change of the Tables/Update functionality in JMP19.

dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );


// Update data table
Data Table( "Big Class" ) << Update(
	With( Data Table( "Big Class Families" ) ),
	Match Columns( :name = :name, :age = :age ),
	Replace Columns in Main Table( None )
);

 

Available columns after executing the script 1x, 2x  and 3x in JMP18 *):

hogi_0-1758194509286.png  hogi_0-1758194509286.png    hogi_0-1758194509286.png 
*) after adding new columns in the first step, no new columns are added. JMP informs the user:
     hogi_1-1758194530906.png

 

 

Available columns after executing the script 1x, 2x  and 3x with JMP19:

hogi_2-1758194584719.png  hogi_3-1758194609797.png  hogi_4-1758194913065.png

 

 

The new feature seems to be triggered by this post in the Wish List:

Allow Update platform to create new columns if they already exist in the table to be updated 

This wish is great, as an option - but it might collide with how other users used Tables/Update up to now.
Especially dangerous if scripts are affected.

Can the new functionality be disabled?

4 REPLIES 4

Re: Tables/Update changed!

Hi @hogi ,

 

Best place to pose this question would be to support@jmp.com - they'll better handle this issue.

 

Thanks!

Ben

“All models are wrong, but some are useful”
hogi
Level XIII

Re: Tables/Update changed!

hi @Ben_BarrIngh , communication with JMP support is running in parallel: TS-00236061
up to now, no solution available how to get rid of the issue.

 

Seems that Tables/Update cannot be used anymore for "add all additional columns from the other table".

hogi
Level XIII

Re: Tables/Update changed!

Added as a proposal to the wish list: 
automatic tables/update 

hogi
Level XIII

Re: Tables/Update changed!

The above example might look artificial.

Here is an example that is closer to real life:

dtall=new table("data collection",<< add rows(1),New column("identifier", set value(1)));
for(i=1, i<20, i++,
	
	dt= new table("tmp", add rows(1),
		New column("identifier", set value(1)), Private
	);
	wait(0);
	
	if(or(i==1,  random integer(10)>2),
	
		dt << New column ("date") << New column ("time") <<	New column ("site") << New column ("vendor") <<	New column ("country") <<	New column ("status")
	);
	
	New column ("value_"|| Char(Random integer(1000)));
	
	
	dtall << Update(
	With( dt ),
	Match Columns( :identifier = :identifier ),
	Replace Columns in Main Table( None )
);

close(dt, noSave)

);

In every data table, there are measurement values value_xyz and sometimes there is redundant (or unnecessary) data.

 

 

Data collection in JMP18: just the measurement values are added

hogi_0-1758786106398.png

 

Data Collection in JMP19: significant growth of the data table due to added redundant/duplicate or unnecessary data.

hogi_1-1758786478435.png

 

One might argue that it is better to add status (tmp2) 5 to the data collection than to lose this information.
Yes, there are definitely many cases where the new functionality is an improvement on the old.


However, it is undeniable that the new functionality significantly interferes with how the old platform could be used.
and with many thousand users worldwide such a change is dangerous.

Recommended Articles