Sé que en JSL puedo cambiar la opción Suprimir evaluación en columnas individuales para evitar que se evalúe la fórmula de esa columna. Esto es útil para fórmulas complejas que tardan un tiempo en evaluarse. Puedo realizar una evaluación una vez y suprimirla, pero mantener la fórmula intacta para poder volver a evaluarla más tarde si es necesario.
En algunas situaciones, cuando realizo operaciones que iteran sobre varias columnas, me gustaría saber el estado actual del indicador Suprimir evaluación sin cambiarlo realmente. No he podido encontrar ninguna forma de extraer esta información. Puedo establecer el valor en 1 o 0, pero no puedo alternarlo y no puedo obtener el valor actual. ¿Es esto posible?
Names Default To Here(1);
dt = Current Data Table();
col = Column(dt, "myColumn");
col << Suppress Eval(1); //suppresses formula eval
col << Suppress Eval(0); //un-suppresses formula eval
suppress_state = col << Suppress Eval; //does not work as expected. sets suppress eval to 1.
Show(suppress_state); //prints "suppress_state = Scriptable[]" in the log. current state not returned.
También noté que si Supress Eval ya está configurado en 1 y se ejecuta la línea "col << Supress Eval", se muestra la siguiente advertencia:
Un mensaje con un argumento booleano vacío habilitó una opción que ya estaba habilitada. Esa opción permanece habilitada. En versiones anteriores de JMP, esto hubiera deshabilitado la opción.
En versiones anteriores de JMP esta opción se podía activar y desactivar, pero esta funcionalidad se ha eliminado.
También miré la salida de Show Properties(col) y encontré solo una referencia a Supress Eval:
Suprimir Eval [Booleano] [Solo secuencias de comandos]
Entonces, ¿esto significa que es una función que acepta un argumento booleano, no devuelve un valor y solo se puede acceder a ella desde un script? ¿Hay alguna forma de obtener el valor?
No conozco una forma directa de obtenerlo, sin embargo, este código tonto funcionará;
suppresseval = contains(char(:<YOURCOLUMNNAME> <<GET script=""></GET></YOURCOLUMNNAME>