Atascado en modalHola a todos,
esperaba que alguien pudiera ayudarme con Modal, anteriormente estaba calculando FV en mi script JMP de la siguiente manera:
Finalivc2 << New Column( "Runs", Numeric, Continuous );
:Runs<<SET each="" value=""></SET>
que funcionó bien, aunque en ocasiones me olvidaba de actualizar los parámetros :Runs y :Replicates per run, lo que me dio un poco de dolor, decidí automatizar este proceso usando modal de la siguiente manera
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 ) );No tengo dudas de que estoy evaluando y sustituyendo incorrectamente, no obtengo las variables corridas y Relicates por corrida en la tabla, y luego no está haciendo el cálculo, ¿alguien puede ayudarme?
Gracias
Re: Atascado en ModalHola pmroz,
Muchas gracias por su respuesta, acepté la publicación de Craige de ayer como la solución, tuve una falla codificada de ayer.
Saludos,
Mickyboy.
Re: Atascado en ModalHola Graige,
Su solución de ayer fue correcta, extraño codificar, usé
dt<< nueva columna en lugar de finalivc2<
| Carreras | Réplicas por ejecución | Formato Variabilidad %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 |
Mis más sinceras disculpas, funciona muy bien, muchas gracias por su paciencia y ayuda, se agradece mucho.
Sinceros saludos
mikyboy
Re: Atascado en ModalNo estoy seguro de dónde viene el diario o por qué diría eso. Ejecuto su código, con un dt abierto, y obtengo esto:
columns added with values setcolumnas agregadas con valores establecidos
pienso @pmroz La respuesta no está devolviendo los valores a través de <
¿Se está creando su tabla con las columnas y los valores ahora? Tal vez haya otro problema después de eso.
Re: Atascado en ModalEstá tratando de usar las variables del cuadro de edición de números como valores que se ingresaron.No puedes hacer eso; en su lugar, debe extraer los valores de los cuadros de edición de números usando << obtener .En el código de abajo he añadido _Nebraska a las variables:
FV_param = New Window( "Format Variability Parameters",
<<MODAL></MODAL>
Re: Atascado en ModalHola Craige,
Estoy ejecutando la misma versión 14, así que ahora mi código se ve así
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>pero aún no establecerá el valor a lo que se ingresó en los cuadros modales, obtengo esto en el Diario:
Formato Variabilidad %GCV
.
.
.
.
.
.
.
.
.
No se contabilizan valores en los diarios.
¿¿Algunas ideas??
Gracias por tu ayuda
Re: Atascado en Modal(¿Qué versión de JMP está ejecutando? estoy en 14...)
No necesita usar sustituto (...). Intente reemplazar su eval(... sustituir(... (expr(... código con algo como
dt<<NEW column=""></NEW>
En su ejemplo, el anidamiento de paréntesis ha dejado sustituto (eval (...)) con un solo argumento para sustituir. El sustituto necesita (editar dos-> tres) tres argumentos.
Re: Atascado en ModalHola Craige,
Tuve algo de tiempo, así que intenté ejecutar el script con su sugerencia, todavía no se ejecutó, obtuve el mismo error en la depuración, no hubo suficientes argumentos en el acceso a la evaluación del sustituto.
Saludos
mikyboy
Re: Atascado en ModalHola Craige,
se me acabó el tiempo hoy, pero lo intentaré por la mañana y te avisaré, el problema que estaba teniendo era evaluar y sustituir los valores de los cuadros de diálogo en la ecuación.
Gracias
Re: Atascado en Modalla última parte de su secuencia de comandos debería verse así. También puede encontrarse con algunos problemas de nombres con nombres de variables y nombres de columnas de JSL que son iguales; usar dt:Runs o global:Runs puede ayudar a obtener la correcta.
dt=currentDataTable(); // you should already have a variable for your data table
dt<<NEW column=""></NEW>