Ri: Come posso ottenere un'istruzione if funzionante nella funzione Allocate dello script creator di Dashboard?Penso che avremo bisogno di un po 'più di contesto su esattamente cosa stai facendo. Dobbiamo vedere il contesto in cui viene utilizzato If ()? Si trova in una nuova finestra () o in un'app JMP ()?
Puoi pubblicare uno script più completo che dimostra il problema?
Ri: Come posso ottenere un'istruzione if funzionante nella funzione Allocate dello script creator di Dashboard?Si hai ragione. Ecco una versione semplificata dello script su cui sto lavorando che si concentra solo sulla creazione dei pulsanti. I pulsanti sono sulle linee 37-45. L'uso dell'istruzione If crea una dashboard senza pulsanti.
Ri: Come posso ottenere un'istruzione if funzionante nella funzione Allocate dello script creator di Dashboard?Ciao Kelly - Vorrei mettere in guardia contro la modifica del contenuto all'interno del blocco Allocate () per una Dashboard, a meno che tu non stia semplicemente modificando il valore di una stringa. La modifica della struttura può sicuramente comportare una Dashboard (o un'applicazione) che non viene eseguita correttamente. Quando eseguo il tuo script con i blocchi If () abilitati, vedo i messaggi di errore nel registro:
attesa: variabile = oggetto (); 2 volte nell'accesso o nella valutazione del "Piano" [...]
Non sono sicuro di cosa stai tentando di fare con le caselle condizionali, ma Application Builder funzionerà meglio se inserisci qualsiasi logica aggiuntiva di cui hai bisogno negli script dell'applicazione e del modulo: questi script vengono eseguiti come JSL normale (o 99% così), mentre l'altro codice all'interno di un JMPApp () ha una sintassi molto specifica.
Ri: Come posso ottenere un'istruzione if funzionante nella funzione Allocate dello script creator di Dashboard?È possibile determinare in modo condizionale l'espressione valutata quando si fa clic sul pulsante prima della creazione del pulsante chiamando Button Box ().
bb expr = If( 1, Expr( ... ), 2, Expr( ... ) );
Button Box( "name", bb expr )
Ri: Come posso ottenere un'istruzione if funzionante nella funzione Allocate dello script creator di Dashboard?Non ho visto il messaggio di errore nel registro probabilmente a causa di versioni diverse. A proposito, sto usando JMP 14.1.0.
Forse mi manca qualcosa, ma non sono sicuro del motivo per cui suggerisci di utilizzare l'applicazione e lo script del modulo anziché il dashboard perché sono gli stessi, ad eccezione di questa riga di codice:
Dashboard Mode (1),
Ho trovato un problema inserendo l'istruzione condition nella funzione Initialize () della funzione App () di JMP. Devo creare un pulsante, ma in seguito potrò determinare se lo lascerò o meno sulla dashboard.
Button1 << Visibilità (If (1, "Visible", "Hidden"));
Grazie!
Ri: Come posso ottenere un'istruzione if funzionante nella funzione Allocate dello script creator di Dashboard?Per chiarire il mio commento sugli script dell'applicazione e del modulo - Application Builder espone gli script collegati all'applicazione di livello superiore e a ciascun modulo. Questi sono accessibili tramite la scheda Script quando si disattiva la modalità Dashboard (il testo dice ancora "Dashboard" perché il documento è stato avviato in modalità Dashboard):

Questo script viene salvato alla lettera e conserverà tutte le modifiche apportate. Nel tuo esempio di modifica dello script Initialize (), noterai che mentre la visibilità del pulsante potrebbe apparire corretta la prima volta che esegui lo script, se salvi di nuovo lo script dal Dashboard Builder, la riga sarà cambiata in:
Button1 << Visibility("Visible");
Questo probabilmente perderà il comportamento previsto se si desidera utilizzare espressioni più complesse di If (1). Tutto il contenuto nelle sezioni Allocate (), Organize () e Initialize () viene generato da zero ogni volta che lo script viene salvato e non manterrà le personalizzazioni se si utilizza l'interfaccia del builder per modificare e quindi salvare lo script.
Come posso ottenere un'istruzione if funzionante nella funzione Allocate dello script del creatore di Dashboard?La mia dashboard crea pulsanti usando box () proprio bene. Ma quando uso un'istruzione if non funziona più. Ecco l'istruzione If:
If (1, Button1 = Button Box ()); If (1, Button2 = Button Box ());
Tutto si compila bene e la mia dashboard si alza ma mancano questi pulsanti.
Grazie per l'aiuto