Come passare argomenti a diversi script jsl?Ciao,
Ho un database SQL in cui registriamo i dati per diversi clienti (e ogni cliente ha molti strumenti).
Sono in procinto di creare report automatici per monitorare le prestazioni degli strumenti dal database SQL.
Per un cliente, ho un lungo script funzionante (un lungo JSL) che si collega a SQL, esegue una query, salva la tabella dalla query, quindi modifica/filtra la tabella per ottenere i dati di cui ho bisogno, quindi disegna alcuni grafici e salvare i risultati in posizioni specifiche.
Per renderlo più semplice da usare, per la manutenzione e l'aggiornamento, vorrei creare diversi script JSL e utilizzare il file Customer_Tool_Info.txt (vedi esempio allegato nello Zip) come file di configurazione.
Poiché abbiamo molti clienti, potrei semplicemente utilizzare un ciclo For utilizzando questo file di configurazione per creare tutti i report di cui abbiamo bisogno.
Il file Customer_Tool_Info.txt contiene le informazioni per il cliente, gli strumenti e le informazioni per la connessione ODBC.
Quello che vorrei è avere lo script principale per aprire Customer_Tool_Info.txt ed estrarre le informazioni necessarie e passarle come argomenti per gli altri sub-script.
- Main_script.jsl (Ottiene gli argomenti da passare ai Sub-script)
- Pedici :
- Get_Data_from SQL.jmpquery
- FIlter_the_Table.jsl
- Get_Charts.jsl
È possibile passare argomenti in diversi script jsl? Come? Ho provato nel Main_Script.jsl per spiegare tutto quello che voglio fare.
Per favore fatemi sapere se avete domande e grazie per il vostro aiuto.
Saluti
Geof
Ri: Come passare argomenti a diversi script jsl?Funziona bene con le variabili globali! GrazieRi: Come passare argomenti a diversi script jsl?Se non vuoi usare variabili globali, usa i file di inclusione per definire le funzioni e includi i file solo una volta, probabilmente all'inizio del tuo file principale. Quindi puoi chiamare le funzioni definite dall'utente con i parametri. Qualcosa come questo:
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));
)
Ri: Come passare argomenti a diversi script jsl?È possibile passare le informazioni ad altri script JSL tramite variabili globali.Questi hanno il prefisso "::"; Aggiungo ag per indicare che sono globali.Per esempio:
::g_my_var = "Hello";
include("my_script.jsl");