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

Set Visibility of Data Tables

What inspired this wish list request?

 

 

What is the improvement you would like to see? 

 

 

 

 

 

 

<<Visibility("private")

<<Visibility("invisible"/"hidden")

<<Visibility("visible")

 

 

 

Why is this idea important? 

 

 

8 Comments
mmarchandTSI
Level V

Another case of lost text, I see.  I'll try to remember what I put.

 

I like to use private tables to avoid table names popping in and out of the Window List or to keep people from meddling with certain data tables.  When troubleshooting a table I normally have private, I wanted to set it to private again.  I found <<Set Private in the scripting index, but it didn't work.  Even running the example didn't work.

 

I'd like to have simple messages to set data tables' visibility.  At a minimum, fix the <<Set Private message.  Ideally, I'd like to be able to use the <<Visibility display box message for data tables with a new "private" option.

 

This is just an ease of use improvement.

ErraticAttack
Level VI

Set Private does work -- it just doesn't get rid of the window or get rid of the entry from the HomeWindow's Table list, but it does make the table private and prevent it from appearing in the standard method of getting currently open data tables.

 

You could pair the Set Private command with a Show Window command, something like this?

 

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Show( Get Data Table List() );
Wait( 1 );

dt << Show Window( 0 ) << Set Private; // make table private and not visible
Show( Get Data Table List() );

It appears as invisible in the Home Window list -- but it is private and double-clicking on it will bring it into view but it will still be private.

ErraticAttack_0-1686859458828.png

 

mmarchandTSI
Level V

I just saw your comment, @ErraticAttack.  I see I was mistaken, somewhat.  <<Set Private just adds a "private" flag to keep a table from appearing in the table list, it seems?  I'd like to be able to keep it out of the window list, as well.  I am sure that would take a lot more work on the back end than I realize, but a man can dream.

hogi
Level XII

A an alternative:

All commands which create a data table (open, subset, summary, concatenate, ...) have an option (..., Private ) to hide the table when it's generated.

That's not exactly what is requested here (i.e. making a table private AFTER it's generated) - but for 99% of the cases it's even better

 

What is actually missing is an invisible/private option for MFI: 
Private option for Import Multiple Files 
but is seems it will come soon:

Private tables with Multiple File Import function 

hardner
Level VI

@mmarchandTSI , I think you are right and I have the same issue... the scripting index says <<set private will make it not visible as well as hidden from the data table list.

and it's weird that the private you get when create a private table would be different that what you get from << set private

hogi
Level XII

the issue got "fixed":
JMP17:

hogi_0-1719604026892.png

 

JMP18:

hogi_1-1719604064351.png

 

and the user who wants to set a data table private and hide it (like it was advertised in JMP17)?
... he can use:

dt << Set Private( 1 );
dt << showWindow(0)

and afterwards, maybe:

dt << Set Private( 0 );
dt << showWindow(1)



hogi
Level XII

ah, no ...

Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp", Private  );

dt << Set Private( 0 );
dt << showWindow(1)

-> dt stays private, right?

hardner
Level VI

I agree with you @hogi .

 

My list of weird things about private tables includes <<setprivate(0) doing nothing, <<setprivate(1) not doing what you'd expect and what documentation (at least previously) said it would, and also that currentdatatable() can give a reference to a private table in the case where there are no other tables open but there's at least one private table.  JMP Support said they saw that last as a bug but this post inspired me to check on it and I see it's still the case in 18.  You don't want a private table to be revealable with currentdatatable() but that it's generally not is what gave rise to this Wish List item about wanting to have a table script refer to "the table it's in":  self reference for a table script - JMP User Community

 

Also, I see a table that starts normal and is set private with  <<setprivate(1) can similarly be picked up by currentdatatable() if there is no other table.  once you have another table current it won't identify this "private" -but still visible- table.  I also see that table in my dropdown list of tables, just if I click it JMP switches immediately to another table option.  If other options are all closed I can choose this "private" one from the dropdown but it can't be found by currentdatatable() again.  It's not the same "private" as if you opened it as private.