- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Turning Private data tables on and off
In keeping many of my scripts clean, I use 'private' quite a lot. However, if I am troubleshooting a script, having tables as private gets in the way and I need to comment out and hopefully remember to uncomment as I make changes to see if the changes work.
Is there a way, or does JMP already have a global way to turn private tables on or off? In my head I could take the time to make duplicates of my code with and without the private and tie it to a test variable, but that doesn't seem like the best answer.
Wasn't sure if there were any ideas out there on how to do that. Thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Turning Private data tables on and off
Yes! That's definitely on my radar. I have a library of functions/utilities I keep a lot of that stuff on hand (and distribute), and shifting to the custom function aspect is one plan long term for many of the more dynamic functions.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Turning Private data tables on and off
Nathan, is this helpful at all?
Names default to here( 1 );
dt = open("$SAMPLE_DATA\Big Class.jmp");
privateTable = Function({bool,dt},{default local},
table_name = dt << Get Name;
If(!bool & !(dt << HasDataView), // no table but you want one
print("making "||table_name||" public");
dt << New Data View;
Return(dt);
, // elif
bool & dt << HasDataView, // you have a table but want it private
print("making "||table_name||" private");
dt_sub = dt << Subset( All rows, Selected columns only( 0 ), "private" );
close(dt, no save);
dt_sub << Set Name(table_name);
return(dt_sub);
, // else just return what's given
print("passthrough");
return(dt);
)
);
dt = privateTable(1, dt); // should make it private
wait(2);
dt = privateTable(1, dt); // should do nothing
wait(2);
dt = privateTable(0, dt); // should do make it visible
wait(2);
dt = privateTable(1, dt); // should do make it private again
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Turning Private data tables on and off
That's excellent, Vince! It's similar to what I ended up doing, but it's much more elegant in allowing the dataview to go both ways.
- « Previous
-
- 1
- 2
- Next »