0 Kudos

Possible to have an add-in search for a script and run it?

I would like a way to have an add-in do the following:

1. Find a given jsl script on the user's computer

2. Run that jsl.


The reason for this request:

When I develop scripts for my group, I would like for them to use Add-ins rather than scripts.  I've found this increases ease-of-use and adoption rate.  However, each time I update to a script used in an Add-in:

a. I need save the updated script, then re-save it to the Add-in (Using the "Run JSL in this file:" option.  Note that this saves a static copy of the script to the Add-in.  Subsequent changes to the JSL are not reflected in the Add-in).

b. Push the Add-in to our git repo.

c. Notify all the users that a new version of the add-in has been created, and they will need to re-install the add-in in order to use.

I'd like to not have to bother my group with constant update notifications that require their action.


Instead, I'd like to make my add-in a simple "Include" command that points to the jsl file on their computer (Using the "Run this JSL:" option instead).  The jsl file will be updated whenever they pull from the repo, and the add-in installed on their computer simply call that each time.  Thus, the add-in would not require any changes on the users' computers.  


The problem is that the "Include" command in the add-in will somehow have to know where to find the jsl on the user's computer.  I can't assume that every user will have the same directory structure on their computers, and can't make that a requirement either.


It would be nice if the add-in had a feature where it could be given just a *.jsl file name and it would search the user's computer for it.  Even nicer would be if it could save this location somewhere, so that subsequent calls of the add-in could just use this location and wouldn't need to search the entire computer.  


Possibly a slightly easier-to-implement option would be to have the Add-In open a file search window if it can't find the specified jsl file in the default search path, and let the user navigate to the name.  Again though, I would want the addin to save this location somewhere so that the user would only need to do this once.


Hope this makes sense.  Thanks!

Tracking Number:

Defect ID:

1 Comment
Super User

You might want to search the community for examples of adding code to your scripts, that check to see if there is an updated version of the script and also checks if thta newer version is compatible with the users version of JMP. In large corporations, different groups or people might not have updated a version.  I believe that is how most JSL developers manage code updates.