Cómo saber si la tabla de datos es privadaHola todos,
Me gustaría usar el
subscribe to data table list()
función para manejar todas las tablas que el usuario abre durante la ejecución de un script mío. Dado que el script también está creando sus propias tablas de datos privados, necesito una forma de detectar si una tabla de datos es privada para tratarla de manera diferente a las tablas de datos abiertas por el usuario. He buscado una función "es privada" pero no pude encontrarla.
los
<<HAS data="https://community.jmp.com/" view=""></HAS>
El mensaje no funciona como me gustaría. Creo que esto podría estar relacionado con el hecho de que la vista de datos se crea después de que se activa la función "abrir" de la suscripción a la tabla de datos.
¡gracias por tu ayuda!
Matteo
ScriptingRe: Cómo saber si la tabla de datos es privadaProbé el ejemplo del índice de secuencias de comandos en JMP 15 y cambié Big Class a privado. No se ve abierto o cerrado, que es lo que esperaría. ¿Puedes compartir un ejemplo?
Re: Cómo saber si la tabla de datos es privadaSi es su script el que genera las tablas privadas, entonces quizás la forma más fácil de saber si una tabla es privada es mantener una lista de las tablas que está creando; entonces puedes hacer una referencia cruzada de esa lista.
Re: Cómo saber si la tabla de datos es privadaGracias @Craige_Hales ,
Aquí hay un ejemplo de lo que estoy viendo. Realmente parece que la función fopen se activa en la creación inicial del objeto de la tabla de datos.
names default to here(1);
fopen = Function( {dt},
print(dt<<HAS data="https://community.jmp.com/" view=""></HAS>Re: Cómo saber si la tabla de datos es privadaHola @David_Burnham ,
de hecho, me gustaría detectar todas las tablas de datos creadas durante la ejecución de mi script, pero tratar de manera diferente las privadas (básicamente no hacer nada en ellas), de las visibles creadas por el usuario. Esto no puede ser manejado por una lista, creo. Ver también mi respuesta a @Craige_Hales .
¡Gracias!
Matteo
Re: Cómo saber si la tabla de datos es privadaEstoy bastante seguro de que cerrar la mesa durante la apertura deja JMP 15 en un estado ligeramente roto @audrey_shull . No hagas eso; los nombres de las tablas, como mínimo, parecen confundirse después. Estoy bastante seguro de que el comportamiento será diferente en JMP 16.
También estoy perplejo; No se hace ninguna devolución de llamada aquí:
no imprime "apertura" o "cierre"
Mi opinión es que las devoluciones de llamada deberían Nunca hacerse para tablas de datos privados. Eso es parte de lo que significa privado ... deberían ser difíciles de observar y jugar. @chungwei
Re: Cómo saber si la tabla de datos es privadaHola @Craige_Hales ,
tiene razón, uno no debe cerrar la tabla dentro de la función de devolución de llamada "abierta". Esto no es lo que realmente necesito hacer, lo pongo en mi ejemplo solo como una forma de explorar lo que estaba sucediendo, pero no es el tema clave.
También tiene razón en que al usar "Abrir (..., privado)", la función de devolución de llamada "abrir" no está activada. Este es exactamente el comportamiento que necesitaría.
Pero, en mi ejemplo, estaba usando "New Table (..., private)". En este caso, la función de devolución de llamada "abierta" está activada. Aquí es donde necesito una manera de saber que la tabla es privada y administrarla de manera diferente.
¡gracias de nuevo!
Matteo