I am working on developing a number of scripts for a JMP Addin....
At this time, we have 2 packages versions of the same addin.... One for DEV and one for Production..
Most users would only have the PRO version installed...
But us developers, and our testers may have both the PRO version and DEV Addins installed...
Obviously, the scripts contained in the addins have the same name... but the variable are different, like AddinName and/or DSN Name.... and obviously the DEV version would likely have newer code than the PRO version even though the script names are different....
What I noticed finally today was that JMP (both 9 and 12) seems to cache the script??
It SEEMS to be running the script of the most recently installed ADDIN file... so if I install the DEV Addin, then the PRO addin... it doesn't seem to ever run the DEV scripts.. it seems to always load the scripts from the PRO Addin directory, no mater which MENU I call the script from.... The opposite occurs when I install PRO first then DEV... :S
1) The Addin ID and Names are different and unique
2) The Added directory is different...... so even though the script names in the different directories are the same, each addin has a different INSTANCE of the script in it's own directory...
2a) this becomes even more evident, when I launch a PRO Script from the PRO Menu... and look at the LOG file and see it ran the DEV script not the pro script, and it's using the DEV folder for the includes!
2b) the jmpcust Menu definition is using $ADDIN_HOME("ADDIN-NAME") vs $ADDIN_HOME("ADDIN-NAMEDev"), yet still seems to execute the script from the most recently installed addin version (PRO vs DEV)
Ex: I just ran this script from the PRO MENU Item... Yet I can see it is running the DEV CODE.. and seems to have the DEV NameSpace..??
strDefaultDir=Get Default Directory();
print ("Including: " || strDefaultDir || "MFG360-Common.jsl");
Include(strDefaultDir || "MFG360-Common.jsl",Parse Only);
Log Output...
/*:
Add-In successfully loaded: MFG360
Add-In successfully loaded: MFG360_Dev
"Including: /C:/Users/klockk.AUTH/AppData/Local/SAS/JMP/Addins/MFG360Dev/MFG360-Common.jsl"
I didn't call the DEV CODE!! I selected the Menu Item from the MFG360 Menu... not the MFG360_Dev Menu...
Is JMP Caching the script names and not properly following what is in the .jmpcust file for each registered addin??