cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Browse apps to extend the software in the new JMP Marketplace
Choose Language Hide Translation Bar
SDF1
Super User

JSL: How to add the red hot-button options to an Outline Box? Or can you?

Hi All,

 

  I'm interested in learning how (if possible) to add the red hot-button menu to your own defined Outline Box. For example, with the Graph Builder platform, there's a red-hot button that allows for things like "Save Script to Data Table" and other options.

SDF1_0-1699544973143.png

 

  I have other scripts I wrote where I'd like to have this option. The Outline Box comes with the small grey triangle for some options, but it doesn't offer the red hot-button options. For example:

SDF1_1-1699545097307.png

 

  I've searched the Scripting Index and the Scripting Guide, and can't find any documentation on this.

 

  Does anyone know if it's possible? And if so, how?

 

Thanks!,

DS

12 REPLIES 12
hogi
Level XII

Re: JSL: How to add the red hot-button options to an Outline Box? Or can you?

Application/Dashboard Builder is amazingly useful - it's worth to try it

 

Building Dashboards and Applications With JMP® (US 2018 408) 

Youtube video (Jmp 10)
https://www.youtube.com/watch?v=XyiQqUELc2A 

 

here is a longer video with a lot of details:
 
short version:

Create a Parameterized Application with Application Builder 

jthi
Super User

Re: JSL: How to add the red hot-button options to an Outline Box? Or can you?

It is basically something you should design for from the beginning to make it "easily" doable.

 

Here is one example I have, the add-in is fairly simple in that sense, that it only contains graph builders (and partition/bootstrap forest).

jthi_0-1699595046968.png

But trying to save the script that builds that would be a nightmare. There are many hidden things that couldn't be captured by JMP's Get Script or save script to data table (or any of the methods) and the add-in is divided into 10+ different .jsl files. Even if I was able to save the UI to the datatable, it wouldn't work when user re-runs the script due to my tight management of namespaces (UI wouldn't have access to all of the different functions for example). So in this case I only provide user an option to save the column selections and the order (they can save multiple). They can then load different inputs when they have the same table open and re-run the addin.

jthi_1-1699595287874.png

I could most likely refactor this add-in to work in such a way, that I could save (most of it) to table script or script window, but I would have to rewrite it from the start.

 

Other add-in (I cannot show pictures of that) I have which queries data based on user inputs, performs some calculations and then displays the results with few graph builders and some extra column switchers/data filters, does save that "platform" /UI/visualization immediately to the data table after the query and calculations have finished. Then I run that table script to show the results to the user. This is fairly simple add-in so I could fairly easily do this with some expressions (initial version I had didn't save the visualization, but it was a request from the users so I did implement it).

 

And third one which I'm currently working on (again cannot show it), does similar thing. It gets data based on user inputs, performs calculations on it, shows the analysis results and visualizes them. Again, I cannot save the whole UI to datatable due to it being too big of a hassle with all the options I provide users with BUT I will add a button which is basically "pop-out dashboard" which will then only create dashboard of only some parts of the UI and within this "popout dashboard" I can add few extra functionalities as I will design for it from the start. And this popout dashboard can be then saved (hopefully) to data table.

 

Edit: I also fairly rarely add recall buttons to my scripts as it can also be hassle and take a long time to get working properly. I know there is one script which can help with this, but it cannot perform the task (always) good enough for me to use. If users start requesting recall buttons to most of the tools I have written, I might consider writing script for that which hopefully would work in most of the cases.

-Jarmo
hogi
Level XII

Re: JSL: How to add the red hot-button options to an Outline Box? Or can you?

With a GUI that is generated via Application Builder, all this is super easy - you can work on the GUI, optimize it and save the latest version of the full functionality as a new Table Script. Noticing an implicit "better don't use application builder to do this" - is there a functionality which is not possible via Application Builder?

 

One drawback I noticed:

For dashboards that go beyond a simple collection of platform objects, some JSL code has to be added to automate the GUI.

Debugging this JSL code feels much more complicated than in a JSL editor.

 

Maybe I just don't know how to do it right.
Are there any suggestions from Application Builder users on how to debug part of the code, e.g. start the application from Application Builder and in parallel run snippets of the code in JSL editor to check what they do? Is there a framework how to get access to the namespace of the application so that I can use snippets of the code in JSL editor without any changes?