Ich möchte, dass ein Add-In Folgendes ausführt:
1. Suchen Sie ein bestimmtes JSL-Skript auf dem Computer des Benutzers
2. Führen Sie diese JSL aus.
Der Grund für diese Anfrage:
Wenn ich Skripte für meine Gruppe entwickle, möchte ich, dass sie Add-Ins anstelle von Skripten verwenden. Ich habe festgestellt, dass dies die Benutzerfreundlichkeit und Akzeptanzrate erhöht. Jedes Mal, wenn ich jedoch ein Skript aktualisiere, das in einem Add-In verwendet wird:
A. Ich muss das aktualisierte Skript speichern und es dann erneut im Add-In speichern (mit der Option „JSL in dieser Datei ausführen:“). Beachten Sie, dass dadurch eine statische Kopie des Skripts im Add-In gespeichert wird. Nachfolgende Änderungen am JSL werden im Add-in nicht berücksichtigt.
B. Schieben Sie das Add-in in unser Git-Repo.
C. Benachrichtigen Sie alle Benutzer darüber, dass eine neue Version des Add-Ins erstellt wurde und dass sie das Add-In neu installieren müssen, um es verwenden zu können.
Ich möchte meine Gruppe nicht mit ständigen Update-Benachrichtigungen belästigen müssen, die ihre Aktion erfordern.
Stattdessen möchte ich mein Add-in zu einem einfachen „Include“-Befehl machen, der auf die JSL-Datei auf ihrem Computer verweist (stattdessen die Option „Run this JSL:“ verwenden). Die JSL-Datei wird jedes Mal aktualisiert, wenn sie aus dem Repo abrufen, und das auf ihrem Computer installierte Add-In ruft dies einfach jedes Mal auf. Somit wären für das Add-in keine Änderungen auf den Computern der Benutzer erforderlich.
Das Problem besteht darin, dass der Befehl „Include“ im Add-In irgendwie wissen muss, wo sich die JSL auf dem Computer des Benutzers befindet. Ich kann nicht davon ausgehen, dass jeder Benutzer auf seinem Computer die gleiche Verzeichnisstruktur hat, und kann dies auch nicht zur Voraussetzung machen.
Es wäre schön, wenn das Add-in eine Funktion hätte, mit der man ihm einfach einen *.jsl-Dateinamen geben könnte und es den Computer des Benutzers danach durchsuchen würde. Noch schöner wäre es, wenn dieser Speicherort irgendwo gespeichert werden könnte, sodass nachfolgende Aufrufe des Add-Ins einfach diesen Speicherort verwenden könnten und nicht den gesamten Computer durchsuchen müssten.
Eine möglicherweise etwas einfacher zu implementierende Option wäre, das Add-In ein Dateisuchfenster öffnen zu lassen, wenn es die angegebene JSL-Datei im Standardsuchpfad nicht finden kann, und den Benutzer zum Namen navigieren zu lassen. Ich möchte jedoch auch hier, dass das Add-In diesen Speicherort irgendwo speichert, sodass der Benutzer dies nur einmal tun muss.
Ich hoffe, das macht Sinn. Danke!
Möglicherweise möchten Sie in der Community nach Beispielen für das Hinzufügen von Code zu Ihren Skripten suchen, die prüfen, ob eine aktualisierte Version des Skripts vorhanden ist und auch prüft, ob die neuere Version mit der Benutzerversion von JMP kompatibel ist. In großen Unternehmen kann es vorkommen, dass verschiedene Gruppen oder Personen eine Version nicht aktualisiert haben. Ich glaube, dass die meisten JSL-Entwickler Codeaktualisierungen so verwalten.