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
samir
Level IV

How to embed application, scripts and data tables in a package

Hello,

I am writing an application that is supposed to be distributed to users...

For several reasons, I need the application to centralize all the scripts and data tables needed to run (no need to call a script or a reference-datatable outside the application).

I succeeded to centralize all my scripts in functions embedded in the application, but I do not know how to embed the data tables (which means I still need to keep some reference data tables in a public location and call them from the application)...

Someone knows how to embed everything in a single App to be able to disctribute it ?

 

Many thanks.

13 REPLIES 13
samir
Level IV

Re: How to embed application, scripts and data tables in a package

Thanks for the info :)

Thanks to all...

pmroz
Super User

Re: How to embed application, scripts and data tables in a package

If your addin lives on a shared drive you can store datasets in the addin location, rather than create them dynamically.  For example here's an addin.def:

 

id="com.abccorp.mydept.myapp"
name="My Application"
autoload=1
home="M:\jmpapps\myapp\Addin"

You would store all of your JSL files and datasets in the folder M:\jmpapps\myapp\Addin.

In your code you can reference datasets using the addin prefix:

open("$ADDIN_HOME(com.abccorp.mydept.myapp)\mydataset.xlsx");

HTH

 

 

 

 

samir
Level IV

Re: How to embed application, scripts and data tables in a package

That is also an elegant way :) but I prefer to centralize all files inside the App.
Thanks.

DopeAgonist
Level III

Re: How to embed application, scripts and data tables in a package

I realize this is marked solved, but I wanted to add on:

 

In the object explorer you'll find your data tables. If you click on them, the properties will open underneath. From here you can control the location. It sounds like you may want to set it to embedded script.