Wie übergebe ich Argumente an verschiedene JSL-Skripte?Hallo,
Ich habe eine SQL-Datenbank, in der wir Daten für verschiedene Kunden registrieren (und jeder Kunde verfügt über viele Tools).
Ich bin gerade dabei, automatische Berichte zu erstellen, um die Leistung der Tools aus der SQL-Datenbank zu überwachen.
Für einen Kunden habe ich ein langes Skript (ein langes JSL) im Einsatz, das eine Verbindung zu SQL herstellt, eine Abfrage ausführt, die Tabelle aus der Abfrage speichert, dann die Tabelle ändert/filtert, um die benötigten Daten zu erhalten, und dann ein paar Diagramme zeichnet und speichern Sie die Ergebnisse an einem bestimmten Ort.
Um die Verwendung für Wartung und Upgrades zu vereinfachen, möchte ich verschiedene JSL-Skripte erstellen und die Datei „Customer_Tool_Info.txt“ (siehe Beispiel im Zip-Archiv) als Konfigurationsdatei verwenden.
Da wir viele Kunden haben, könnte ich mit dieser Konfigurationsdatei einfach eine For-Schleife verwenden, um alle benötigten Berichte zu erstellen.
Die Customer_Tool_Info.txt enthält Informationen zu Kunden, Tools und die Infos zur ODBC-Verbindung.
Ich möchte, dass das Hauptskript die Datei „Customer_Tool_Info.txt“ öffnet, die benötigten Informationen extrahiert und sie als Argumente für die anderen Unterskripte übergibt.
- Main_script.jsl (Ruft die Argumente ab, die an die Unterskripte übergeben werden sollen)
- Unterskripte:
- Get_Data_from SQL.jmpquery
- FIlter_the_Table.jsl
- Get_Charts.jsl
Ist es möglich, Argumente an verschiedene JSL-Skripte zu übergeben? Wie? Ich habe versucht, in Main_Script.jsl alles zu erklären, was ich tun möchte.
Bitte lassen Sie mich wissen, wenn Sie Fragen haben, und danken Ihnen für Ihre Hilfe.
Grüße
Geof
Betreff: Wie übergebe ich Argumente an verschiedene JSL-Skripte?Es funktioniert gut mit globalen Variablen! DankeBetreff: Wie übergebe ich Argumente an verschiedene JSL-Skripte?Wenn Sie keine globalen Variablen verwenden möchten, verwenden Sie die Include-Dateien zum Definieren von Funktionen und schließen Sie die Dateien nur einmal ein, wahrscheinlich am Anfang Ihrer Hauptdatei. Anschließend können Sie die benutzerdefinierten Funktionen mit Parametern aufrufen. Etwas wie das:
Main.jsl
--------
include("sub1.jsl");
include("sub2.jsl");
calculator(42);
reportWriter("report title");
sub1.jsl
-------
reportWriter = function({title},{i,j,k}, // i,j,k are local variable examples
write(title,"this is my report")
);
sub2.jsl
----
calculator = function({thresholdNumber},{x,y,z},
return(sqrt(thresholdNumber));
)
Betreff: Wie übergebe ich Argumente an verschiedene JSL-Skripte?Sie können die Informationen über globale Variablen an andere JSL-Skripte übergeben.Diese haben das Präfix „::“; Ich füge „ag“ hinzu, um anzuzeigen, dass sie global sind.Zum Beispiel:
::g_my_var = "Hello";
include("my_script.jsl");