Automatizar la copia de scripts de tabla al volver a ejecutar "source"Hola,
Estoy creando una base de datos en Excel que se actualizará continuamente. Se agregarán nuevas filas y columnas periódicamente y, ocasionalmente, se agregarán nuevos datos a las filas existentes. Por eso, comencé a utilizar el script "Source" para actualizar la tabla JMP correspondiente.
La pregunta que tengo es si hay alguna manera de transferir los scripts de tabla existentes a la tabla actualizada al ejecutar el script de origen. Tengo varios scripts de creación de gráficos guardados en la tabla JMP y me gustaría copiarlos automáticamente a la nueva tabla cada vez que se ejecute el script de origen. Uso la versión 17 de JMP.
¡Gracias!
VentanasRe: Automatizar la copia de scripts de tabla al volver a ejecutar "source"Bienvenido a la comunidad.
A continuación se muestra un ejemplo del código necesario para copiar todos los scripts de tabla de una tabla de datos a otra, menos el script de la tabla de origen.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
names=dt<<GET table="" script="" names=""></GET>
<P>Tendría que agregar esta metodología a su script fuente o ejecutarlo como un script separado para hacer lo que está intentando hacer.</P>
<P>Puede encontrar detalles y ejemplos de los diferentes elementos de este script en el Índice de scripts en el menú desplegable Ayuda.</P>Re: Automatizar la copia de scripts de tabla al volver a ejecutar "source"Aquí hay otra opción
Names Default To Here(1);
<BR />// Depending on your source script, there are different options of handling
// getting the reference to dt1 and dt2
dt1 = Open("$SAMPLE_DATA/Big Class.jmp");
dt2 = Open("$SAMPLE_DATA/Big Class Families.jmp");<BR />
dt2 << Delete Scripts(dt2 << Get Table Script Names); // for demo purposes
wait(1); // for demo purposes
<BR />t_scripts = dt1 << Get Table Script Names;
Remove From(t_scripts, Contains(t_scripts, "Source"), 1);<BR />
For Each({t_script}, t_scripts,
Eval(EvalExpr(
dt2 << New Script(t_script,
Expr(dt1 << Get Script(t_script));
);
));
);
wait(0);Re: Automatizar la copia de scripts de tabla al volver a ejecutar "source"Otro enfoque:
Actualice a JMP 18, es gratis para todos los usuarios con licencia.
En JMP 18, además del script fuente, hay un script de actualización:

que actualizará la tabla en sí, en lugar de crear una nueva. Los scripts agregados manualmente se conservan.
Ventajas de "Actualizar tabla" en comparación con "Scripts fuente":
Los scripts de origen son "frágiles": JMP los sobrescribe sin previo aviso:
Actualizar y concatenar: colisión de scripts de origen
Contras:
Actualizar tabla elimina cualquier columna agregada manualmente
https://community.jmp.com/t5/JMP-Wish-List/Wizard-to-update-Excel-files-in-place-no-code-solution/idc-p/761983/highlight/true#M5540
Re: Automatizar la copia de scripts de tabla al volver a ejecutar "source"Sé que acabo de dejar otro comentario diciendo que veo su ayuda en JMP en todas partes y que realmente se agradece. Pero en serio, veo su ayuda en todas partes y es muy útil. Gracias por todo lo que hace para ayudar a las personas.