Creación y actualización de una nueva hoja de cálculo de filas de la hoja de cálculo anterior que contienen un valor específicoHola comunidad JMP,
Soy muy nuevo en JMP y JSL, así que tengo dificultades para realizar estas dos tareas relacionadas.
1) Me gustaría escribir un script que haga una nueva hoja de cálculo de filas de la hoja de cálculo antigua que contenga una entidad específica. Por ejemplo, me gustaría hacer un script que cree una nueva tabla de datos de todas las filas de hombres. (Ver imágenes adjuntas a continuación)
2) Necesito poder actualizar automáticamente esta tabla de datos. Suponiendo que la tabla completa se encuentra en una base de datos local (como en SSMS), ¿cómo puedo usar un script JMP para actualizar la tabla de todos los hombres desde una base de datos SQL local? He intentado agregar al script "Update db" generado automáticamente, pero no tengo idea de lo que estoy haciendo. Cualquier ayuda sería muy apreciada.
Muchas gracias a la comunidad de JMP.



Re: Crear y actualizar una nueva hoja de cálculo de filas de la hoja de cálculo antigua que contiene un valor específico @jmpandvba ,
En el ejemplo que ha proporcionado:
NewHt=dt<<SUBSET></SUBSET>
tenga en cuenta que NewHt es una referencia a su tabla de datos. Entonces, en su declaración de actualización, está pasando la referencia a la tabla de datos que desea adjuntar. En el script de ejemplo que proporcioné, sería "dt1"
Re: Crear y actualizar una nueva hoja de cálculo de filas de la hoja de cálculo antigua que contiene un valor específicoÚltima actualización de este hilo,
Después de crear esa nueva tabla de datos del subconjunto, ¿cómo puedo escribir un script JSL para actualizarlo si se adjunta el conjunto de datos original?
Supongo que uno utiliza la función "Actualizar" en JSL que aparece en la página 177 de la guía de scripts JMP:
NewHt=dt<<SUBSET></SUBSET>
Pero, ¿cómo puedo hacer esto con el subconjunto específico que acabamos de crear?
Re: Crear y actualizar una nueva hoja de cálculo de filas de la hoja de cálculo antigua que contiene un valor específico @jmpandvba ,
//Clean up
Clear Log(); Clear Globals(); Close All(DataTables,"No Save");
// Open Sample Data
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// Subset based on condition
dt << Select Where(:Sex == "M");
// Select some columns
Column(dt,"age")<< Set Selected(1);
dt << Invert Column Selection;
dt1 = dt << Subset(Selected Rows(1),Selected Columns(1));
dt1 << Set Name("Boys In Class");
// Save as spreadsheet
Close(dt1,Save("C:\Test.xlsx")); Re: Crear y actualizar una nueva hoja de cálculo de filas de la hoja de cálculo antigua que contiene un valor específico¡Gracias por su respuesta rápida! Otra pregunta rápida, si quisiera hacer un subconjunto de todas las columnas excepto la edad, ¿cómo haría eso? (Creo que escribo la línea del guión algo como esto, pero ¿qué pasa en el paréntesis de la columna?)
subdt = dt << Subset(Column(..........), Output Table Name( "Male summary" ) );
Re: Crear y actualizar una nueva hoja de cálculo de filas de la hoja de cálculo antigua que contiene un valor específico @jmpandvba ,
Es fácil responder a una parte de su pregunta, si tenía datos en JMP, puede crear fácilmente una nueva tabla de datos u hoja de cálculo como se muestra a continuación.
//Clean up
Clear Log(); Clear Globals(); Close All(DataTables,"No Save");
// Open Sample Data
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// Subset based on condition
dt << Select Where(:Sex == "M");
dt1 = dt << Subset("");
dt1 << Set Name("Boys In Class");
// Save as spreadsheet
Close(dt1,Save("C:\Test.xlsx"));
En cuanto a cómo actualizar automáticamente la tabla de datos, esto requeriría una ejecución por lotes / programada de su script JMP. En un momento dado del día, si puede hacer que una aplicación invoque su script JMP y se ejecute, podrá lograrlo. Puede ver ejemplos de automatización de C # o VBA de JMP para obtener ideas. (Z: \ Archivos de programa \ SAS \ JMP \ 14 \ Samples \ Automation)