/*""" Descrizione della funzione in una frase. Autore: jthi Data di creazione: 16/11/2023 Versione JMP di creazione: JMP Pro 17.2.0 Descrizione (generalmente questa parte è una spiegazione più lunga sull'app): fa parte del modello che utilizzo generalmente. Ho diverse funzioni di utilità che aggiungo tramite il controllo della versione secondo necessità e memorizzo i miei file di configurazione separati da questo script. La struttura di base per i miei componenti aggiuntivi/strumenti più grandi è: /my_app /config ma_config.jsl /bin /externals ma_utilies.jsl /doc my_app.jsl my_app -> ma prefix. Utilizzo questo tipo di prefissi per alcuni dei nomi dei miei script perché i file recenti di JMP mostrano solo il nome del file, niente di più. In questo modo posso almeno avere un'idea di quale file di configurazione aprirò mentre sviluppo molti strumenti diversi. /config contiene tutti i tipi di file di configurazione, potrebbero essere modelli di query SQL, immagini, file di impostazioni, tabelle delle specifiche... /bin contiene gli script inclusi per far funzionare my_app /bin/externals sono script/file comuni che copio come esterni (sto usando svn per il controllo della versione) secondo necessità (ad esempio funzioni di utilità generiche, funzioni di controllo della versione) / doc conterrebbe documentazione ma solitamente è vuoto. Istruzioni per l'utente e simili scrivo al sistema di gestione dei contenuti e il mio codice si documenta (principalmente). A volte questa cartella contiene diagrammi di flusso o una sorta di file Leggimi se ritengo che siano necessari. Alcuni esempi che potrebbero (o meno) seguire questo tipo di modello possono essere trovati dalla community: -
https://community.jmp.com/t5/Discovery-Summit-Europe-2023/Pythonless-Python-Integration-for-JMP -2023-EU-30MP-1265/ta-p/572674 -
https://community.jmp.com/t5/JMP-Add-Ins/Analyse-Columns/ta-p/460329 -
https://community.jmp .com/t5/JMP-Add-Ins/Enhanced-Sankey-Plot-ESP/ta-p/549745 (layout diverso) Cose da fare: * * """*/ Nomi predefiniti qui(1); app_name = "La mia app Template"; version_str = "1.0.0"; window_name = app_name || " - versione: " || version_str; help_url = "
https://community.jmp.com/"; window_icon = "Distrib"; // Costruito- in JMP Icons è molto utile per le icone // Mantengo il logo nella mia cartella di configurazione o memorizzo l'espressione creata da // JMP quando lo apro (di solito memorizzo l'espressione), ad esempio: // company_logo = Open(" $SAMPLE_IMAGES/tile.jpg", "jpg"); logo_azienda = Casella icona("JMPLogo") << ottieni immagine; run_app = Expr( nw = Nuova finestra(nome_finestra, Mostra menu(0), Mostra barre degli strumenti(0), Casella di elenco V (allinea ("centro"), Casella di elenco H (Prova (casella immagine (logo_azienda)), Casella spaziatore (dimensione (5,0)), Casella di elenco H (allinea (in alto), casella di testo (nome_app, < < Imposta dimensione carattere(22), << Colore carattere ("Rosso"), << Imposta stile carattere ("Grassetto"), << Imposta A capo (500)), Casella di testo (version_str, << Imposta dimensione carattere (11 ), << Colore carattere("Nero"), << Imposta stile carattere("Semplice")) ) ), Casella di scheda(Box di pagina di linguetta("Inputs", // Di solito non forzo le dimensioni della casella di pagina di linguetta , ma se lo faccio, utilizzo Spacer Box come questo V List Box(Spacer Box(Size(600, 0)), // Forza la larghezza utilizzando V List Box + Spacer Box H List Box(Spacer Box(Size(0, 300 )), // Casella di elenco H + Casella spaziatrice per altezza Lineup Box(N Col(1), Casella di testo("Alcuni input qui"), // E contenuto all'interno di questa casella di elenco H + Casella spaziatrice ) ) ), , < < Imposta carattere base("Titolo")), Casella pagina scheda("Azioni", Casella scaletta(N Col(1), Casella pulsanti("OK", << Imposta icona("RunTableScript")), Casella pulsanti(" Annulla", << Imposta funzione(funzione({questo}, (questo << genitore superiore) << chiudi finestra) ), << Imposta icona("DebuggerAddBreakpoint") ), Spacer Box(Size(0, 10)), Casella dei pulsanti("Aiuto", Web(help_url), << Imposta icona("WinHelpAbout")), ), << Imposta carattere base("Titolo") ), << Imposta stile("Diffusione orizzontale") ) ), << Imposta l'icona della finestra (icona_finestra)); ); esegui_app; Scrivere(); // Utilizzo Write(); per evitare di "restituire" l'ultima riga di esecuzione principalmente per mantenere il registro più pulito