Bloccato su modaleCiao a tutti,
speravo che qualcuno potesse aiutarmi con Modal, in precedenza stavo calcolando FV nel mio script JMP come segue:
Finalivc2 << New Column( "Runs", Numeric, Continuous );
:Runs<<SET each="" value=""></SET>
che ha funzionato bene, anche se in occasioni mi sarei dimenticato di aggiornare i parametri :Runs e :Replicates per run che mi hanno dato un po' di dolore, ho deciso di automatizzare questo processo usando modale come segue
FV_param = New Window ("Format Variability Parameters", << Modal, << Return Result,
Text Box ("Select Format Variability Parameters"),//Create the display box
HListBox(
LineupBox (NCol (2),
Text Box ("Runs NOT REPLICATES"), Runs = numberEditBox(2),
Text Box ("Replicates NOT RUNS"), Replicates per Run = numberEditBox(1),
), // end of lineupbox
LineupBox ( NCol (1), ButtonBox ("OK"), ButtonBox ("Cancel"))
) // end HListBox
);
show (FV_param, FV_param ["Runs"], FV_param ["Replicates per Run"],
FV_param ["Button"] );
If (FV_param ["Button"] == -1,
Caption (" Wait...Aborting..."); Wait (3) ; Caption(Remove); Throw());
StatusMsg ("Processing next steps");
RemoveFrom (FV_param, NItems(FV_param)); // Removes the last item "Button 1" from the assignment list
Eval List(FV_param); // the assignment from the display box
Eval(
Substitute(
Expr( Finalivc2 = New Column( "Runs", Numeric, "Continuous", Format( "Best", 12 ),
Expr( Finalivc2 = New Column( "Replicates per Run", Numeric, "Continuous", Format( "Best", 12 ),
)
),
Expr( __FV_param__ ), Runs, Replicates per Run
)
)));
Finalivc2 << New Column( "Format Variability %GCV", Numeric, Continuous, Formula( ((2^root(((:IR)/(:Runs)+(:Residual)/(:Replicates per Run*:Runs)),2))-1)*100 ), Format( "fixed dec", 4, 1 ) );non ho dubbi sul fatto che sto valutando e sostituendo in modo errato, non sto ottenendo le variabili esecuzioni e Relicates per corsa nella tabella, e quindi non sta facendo il calcolo, qualcuno può per favore offrire un aiuto
Grazie
Re: bloccato su modaleCiao pmroz,
Grazie mille per la tua risposta, ho accettato il post di Craige di ieri come soluzione, mi ero perso il codice di ieri.
Saluti,
Mickyboy.
Re: bloccato su modaleCiao Graige,
La tua soluzione di ieri era corretta, mi manca il codice, ho usato
dt<< nuova colonna invece di finalivc2<
| Corre | Repliche per corsa | Variabilità del formato %GCV |
| 2 | 1 | 26.1 |
| 2 | 1 | 25.9 |
| 2 | 1 | 29 |
| 2 | 1 | 28.4 |
| 2 | 1 | 29 |
| 2 | 1 | 29.6 |
| 2 | 1 | 28.4 |
| 2 | 1 | 28.4 |
| 2 | 1 | 20.7 |
Mi scuso sinceramente, funziona alla grande, grazie mille per la pazienza e l'aiuto, è molto apprezzato.
Cordiali saluti
Mickyboy
Re: bloccato su modaleNon sono sicuro da dove provenga il diario o perché dovrebbe dirlo. Eseguo il tuo codice, con dt aperto, e ottengo questo:
columns added with values setcolonne aggiunte con valori impostati
Penso @pmroz la risposta non sta restituendo i valori tramite <
La tua tabella viene creata con le colonne e i valori ora? Forse c'è un altro problema dopo.
Re: bloccato su modaleSi sta tentando di utilizzare le variabili della casella di modifica del numero come valori immessi.Non puoi farlo; invece è necessario estrarre i valori dalle caselle di modifica del numero utilizzando << prendi .Nel codice qui sotto ho aggiunto _neb alle variabili:
FV_param = New Window( "Format Variability Parameters",
<<MODAL></MODAL>
Re: bloccato su modaleCiao Craig,
Sto eseguendo la stessa versione 14, quindi ora il mio codice è simile a questo
FV_param = New Window ("Format Variability Parameters", << Modal, << Return Result,
Text Box ("Select Format Variability Parameters"),//Create the display box
HListBox(
LineupBox (NCol (2),
Text Box ("Runs NOT REPLICATES"), Runs = numberEditBox(2),
Text Box ("Replicates NOT RUNS"), Replicates per Run = numberEditBox(1),
), // end of lineupbox
LineupBox ( NCol (1), ButtonBox ("OK"), ButtonBox ("Cancel"))
) // end HListBox
);
show (FV_param, FV_param ["Runs"], FV_param ["Replicates per Run"],
FV_param ["Button"] );
If (FV_param ["Button"] == -1,
Caption (" Wait...Aborting..."); Wait (3) ; Caption(Remove); Throw());
StatusMsg ("Processing next steps");
RemoveFrom (FV_param, NItems(FV_param)); // Removes the last item "Button 1" from the assignment list
Eval List(FV_param); // the assignment from the display box
dt<<NEW column=""></NEW>ma non imposterà comunque il valore su ciò che è stato inserito nelle caselle modali, ottengo questo nel Journal:
Variabilità del formato %GCV
.
.
.
.
.
.
.
.
.
Nessun valore è pubblicato nei Diari.
Qualche idea??
Grazie per l'aiuto
Re: bloccato su modale(Che versione di JMP stai utilizzando? ho 14 anni...)
Non è necessario utilizzare sostituto(...). Prova a sostituire il tuo eval( ... sostituto(... (expr(... codice con qualcosa di simile
dt<<NEW column=""></NEW>
Nel tuo esempio, l'annidamento delle parentesi ha lasciato replacement(eval(...)) con un singolo argomento da sostituire. Il sostituto richiede (modifica due-> tre) tre argomenti.
Re: bloccato su modaleCiao Craig,
Ho provato a eseguire lo script con il tuo suggerimento, ma non è stato ancora eseguito, ho ottenuto lo stesso errore nel debug, argomenti non sufficienti nell'accesso alla valutazione del sostituto.
Saluti
Mickyboy
Re: bloccato su modaleCiao Craig,
ho esaurito il tempo oggi, ma lo proverò domattina e ti farò sapere, il problema che stavo riscontrando era la valutazione e la sostituzione dei valori dalle finestre di dialogo all'equazione.
Grazie
Re: bloccato su modalel'ultimo pezzo del tuo script dovrebbe assomigliare a questo. Potresti anche riscontrare problemi di denominazione con nomi di variabili JSL e nomi di colonne che sono gli stessi; l'uso di dt:Runs o global:Runs può aiutare a ottenere quello giusto.
dt=currentDataTable(); // you should already have a variable for your data table
dt<<NEW column=""></NEW>