El usuario obtiene errores con mi script que no puedo reproducir.Terminé mi aplicación y funciona como estaba previsto en mi macihne. Lo envié a pocos usuarios para probar la aplicación. Los usuarios reciben mensajes de error donde no deberían.
Parte de la secuencia de comandos debe elegir una columna de la Lista de columnas.
Creé este cuadro de lista de columnas anteriormente en la secuencia de comandos y asigné algunas secuencias de comandos de cambio que leen prácticamente la columna seleccionada:
colListX = Col List Box (Data Table(dt<<GET name=""></GET>
Ahora, cuando los usuarios hacen clic en cualquier columna del cuadro de lista Col, reciben el siguiente mensaje de error. He puesto algunos comandos show () en el código y les he pedido que lo ejecuten:

Entonces, aquí colListX - es el cuadro de lista de colés con el que estoy trabajando. colListXselected: es la columna actualmente seleccionada con la que obtuve por Get Selected. Interesante: los usuarios lo muestran en log como
colListXselected = {"eventtime"};
Is Scriptable(colListXselected) = 1;
wihle mi registro lo muestra como
colListXselected = {:eventtime};
Is Scriptable(colListXselected) = 1;
y el código en ejecución es idéntico.
Supongo que todo el error se produce porque los usuarios no lo tienen como una columna, por lo que a pesar de que el objeto ES programable en secuencias de comandos, ¿no se puede aplicar el mensaje Obtener nombre ya que no es columna?
De todos modos, ¿alguna idea de por qué los usuarios tienen esta diferencia de mi salida? ¿Cómo solucionarlo?
Gracias,
METRO
Re: El usuario obtiene errores con mi script que no puedo reproducir.Este fue un problema en JMP 13.0.0. Por favor vea JMP Nota del problema 59737 para detalles. Puede descargar la actualización gratuita a JMP 13.2.1 desde el Actualizaciones de software JMP página.
¡Espero que ayude!
Re: El usuario obtiene errores con mi script que no puedo reproducir.Solo tengo tiempo para volver a esto.
Muchas gracias por la solución de problemas, tiene sentido ahora, ya que sé por qué mis usuarios reciben este error.
Lo que no entiendo es por qué mi JMP devuelve la lista de referencias de columna, mientras que se supone (y lo hace con otros usuarios) devuelve la lista de cadenas.
Para excluir el resto del código y asegurarse de que no tenga ningún efecto, escribí este pequeño script y le pedí a mis usuarios que lo ejecutaran:
Names Default To Here( 1 );
Clear Log();
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "Col List Box Example",
colList = Col List Box( all, width( 250 ), maxSelected( 1 ) ),
);
colList << Set Selected (2);
colListSelected = colList<< Get Selected;
testString="test";
show(Type(testString));
show(Type(colListSelected));
show(Type(colListSelected[1]));
show(colListSelected[1]);
Mi JMP devuelve esto:
Type(testString) = "String";
Type(colListSelected) = "List";
Type(colListSelected[1]) = "Name";
colListSelected[1] = :age;
Su JMP devuelve esto:
Type(testString) = "String";
Type(colListSelected) = "List";
Type(colListSelected[1]) = "String";
colListSelected[1] = "age";
¿Cómo es esto posible? ¿Alguien de JMP puede echar un vistazo a esto? ¿O debería enviarlo a soporte?
Gracias,
METRO
Re: El usuario obtiene errores con mi script que no puedo reproducir.Puede utilizar la función JMPVersion () para imprimir la versión de JMP.
Re: El usuario obtiene errores con mi script que no puedo reproducir.Miguello
ColListBox << get selected devuelve una lista de nombres de columna, es decir, una lista de cadenas entre comillas. No tengo ni idea de cómo su resultado es una referencia de columna. Respecto al error: mira el script a continuación. Ambas listas, usrsel1 y usrsel2, son listas y son compatibles con scripts. usrsel1 [1] es de secuencias de comandos porque es una referencia de columna: tiene mensajes (métodos). usrsel2 [1] es una cadena que no se puede escribir. Eso es lo que su mensaje de error informado le está diciendo.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
usrsel1 = { :height };
usrsel2 = { "height" };
//Run one line at a time
Show( IsScriptable(usrsel1), IsScriptable(usrsel2) ); // both are 1
Show( IsScriptable(usrsel1[1]), IsScriptable(usrsel2[1]) ); //results are 1, 0
show(usrsel1[1] <<GET name=""></GET>No conozco ninguna preferencia u opción para establecer (en Windows) donde obtener referencias de columna de retornos seleccionados.