JSL: ¿Cómo obtener recuperar nombres de más de una tabla seleccionada actualmente?Hola amigos. Trato con nuevas tablas todos los días (nombres de tabla únicos) que siempre tienen al menos un encabezado de columna común, que utilizo para Coincidir columnas para Unirse . Esto se está volviendo repetitivo, así que he estado pensando en escribir un guión.
Problema: no quiero tener que especificar los nombres de las dos tablas en el script cada vez que quiero Unirse dos mesas.
Estoy buscando un método para que el script seleccione automáticamente / semi-automáticamente las dos tablas a las que quiero unirme. Sé que hay un método para recuperar la tabla seleccionada actualmente, pero ¿qué pasa con la tabla seleccionada antes de eso? El mejor caso es si hay un método para recuperar nombres de tablas para todos tablas actualmente seleccionadas y luego proceder a hacer Unirse para estas mesas
¡Aprecie todas las ideas y consejos! ¡Gracias!
Re: JSL: ¿Cómo obtener recuperar nombres de más de una tabla seleccionada actualmente?Por supuesto, solo hay una tabla 'actual' en una sesión JMP. Pero podrías hacer algo como esto:
NamesDefaultToHere(1);
// Make some tables with different numbers of columns
n = 5;
for(t=1, t<=n, t++, NewTable("Table "||Char(t), << addMultipleColumns("Test", Random Integer(5), Character)));
// Function that returns the names of all open tables containing a specified column
tablesWithColumn =
Function({inCol}, {Default Local},
matchingTables = {};
for(t=1, t<=NTable(), t++,
cols = DataTable(t) << getColumnNames("String");
if(Contains(cols, inCol), InsertInto(matchingTables, DataTable(t) << getName));
);
matchingTables;
);
// Try it out
myCol = "Test 3";
NewWindow("Open Tables with Column "||myCol,
PanelBox("Pick Tables to Join",
lb = ListBox(tablesWithColumn(myCol), maxSelected(2));
)
);