my need is: stack a table with a dynamical (well, sort of) selection of the column to stack.
I solved with a config table in which the names of the colums to be stacked are stored as values, then I do a "get values" and
assign the result to a string. finally I feed this string to stack command.
it works, but ...
every time in my log it says
Errors found. in access or evaluation of 'columns' , Bad Argument( Eval( d ) )
, columns( Eval( d ) )"
without eval it does not run, with eval it runs perfectly but pollute my log. does anyone knows why?
here is the code:
conf3 = open ("\here is the config table");
// load config, it is a excel file to be edited by the users in order to choose what "class" they want in the final report
// these class sets are quite stable, and most of the times are untouched from the last execution, but sometimes a class has to be added or changed
// it is simply like this: column1: black white red column2: red white etc
d=Column(conf3,i)<<get values;
// i is the index
// I do it in a cycle, each run for a different table to be stacked reading a different column for a different stack set
// here I do get values from the i-th column of the config, and assing it to the string d --> it is good?
snowhite = Open( "\jmp_tables\snowhite.jmp" , invisible );
// load the table to be stacked
snowhite << Stack(
columns(eval(d)),
Source Label Column( "class" ),Stacked Data Column( "density" ), Name( "Non-stacked columns" )(Keep(:Split,:Lot ID, :Device ID,)),Output Table( s ));