¿Obtienes el script "Al cerrar"?Hola. En JMP hay una forma de crear un script que se ejecuta automáticamente cuando se cierra la ventana o la tabla mediante el comando "Al cerrar()". ¿Hay alguna forma de devolver el script sin ejecutarlo? Es decir, estoy buscando un comando como "dt << Get On Close".
Mis detalles:
JMP Pro 16.2.0
macOS Monterrey 12.5
Gracias.
Tabla de datossecuencias de comandosRe: ¿Obtener el script "Al cerrar"?En su función On Close() para la tabla de datos dada, puede usar un include() para traer un script y ejecutarlo.Si solo desea obtener el script, puede usar Cargar archivo de texto ().
Re: ¿Obtener el script "Al cerrar"?Después de probar algunas cosas, creo que el script de cierre es solo escritura y la solución de Jim es la mejor opción.
Re: ¿Obtener el script "Al cerrar"?Otra opción sería evaluar el script en On Close, luego podría acceder a él con la expresión guardada que tiene
Names Default To Here(1);
//This message applies to all display box objects
dt = Open("$SAMPLE_DATA/Big Class.jmp");
on_close_expr = Expr(Show(1));
Eval(EvalExpr(dt << On Close(
Expr(on_close_expr)
)));
Show(Name Expr(on_close_expr));Re: ¿Obtener el script "Al cerrar"?Gracias por las sugerencias a todos, pero permítanme aclarar. Tengo un script que asigna una expresión << On Close a una tabla, entre otras cosas. Mi problema es que cuando cierro la mesa a mano, la expresión de cierre no se ejecuta de la manera que pretendía. Como parte de mi depuración, estoy tratando de leer el script de cierre de la tabla de forma independiente para confirmar que el script está allí.
Ya puedo inspeccionar la expresión de cierre original que estoy asignando a la tabla en mi secuencia de comandos más grande, pero ahora quiero confirmar que cuando se cierra la tabla, JMP ve la misma expresión que escribí.
Re: ¿Obtener el script "Al cerrar"?- Creo que es de solo escritura. No hay manera de volver a leerlo.
- No creo que JMP esté cambiando tu guión.
- podrías usar @jthi idea de hacer una expresión e del cuerpo principal, luego use <
- Si su secuencia de comandos depende de valores globales, es posible que deba utilizar la técnica evalexpr(...expr(...) ) para capturarlos.
Re: ¿Obtener el script "Al cerrar"?Tal vez podría intentar establecer una expresión << On Close muy simple solo para probarla o usar la expresión << On Close que evitará el cierre de la ventana, como el ejemplo de Scripting Index:
Names Default To Here(1);
//This message applies to all display box objects
w = Open("$SAMPLE_DATA/Big Class.jmp");
w << On Close(
// Modal dialogs return Button(1) if OK is pressed, Button(-1) if canceled
New Window("Are you sure?",
<<MODAL></MODAL>Re: ¿Obtener el script "Al cerrar"?Hola, gracias por la idea. Puedo confirmar que su sugerencia de un dt << Get On Close estará disponible en una versión futura de JMP. (JMP 18 es probable).