Ich bin noch ziemlich unerfahren mit JSL, aber ich möchte eine Tabelle generieren, die alle Spalten in einer Datei als Gruppierungsspalten verwendet, wobei das Skript alle Spalten in der Datei auswählt, anstatt jeden Spaltennamen im Skript zu identifizieren.Der Grund dafür ist, dass sich die Spaltennamen von geteilter Tabelle zu geteilter Tabelle ändern können, und ich möchte ein Skript, das generisch genug ist, um dies zu handhaben.Hier ist ein Beispiel für das Skript, das ich jetzt verwende
// Dialogfeld öffnen, um SWR-Tabelle auszuwählen
Projekt << Skript ausführen (
Dateien = Datei auswählen( "SWR-Tabelle auswählen", "$DESKTOP", {"JMP-Dateien|xlsx", "Alle Dateien|*"}, 1, 0, "", "mehrere" );
For( i = 1, i <= N Items( Dateien ), i++,
Versuchen(
Offen(
Dateien[i],
Arbeitsblatteinstellungen (hat Spaltenüberschriften ( 1 ), Anzahl der Zeilen in Überschriften ( 1 ), Überschriften beginnen in Zeile ( 1 ),
Daten beginnen in Zeile ( 2 ) )
)
)
);
Fenster nach vorne bringen
);
// SWR-Tabelle erstellen - TBD
Projekt << Skript ausführen (
obj = Tabulate( Add Table( Row Table( Grouping Columns( :WAFER, :EPI-Lauf ) ) ),Einschließen fehlt für Gruppierungsspalten(1) )
);
Ich möchte die einzelnen Spalten in "Spalten gruppieren" ersetzen, um alle Spalten aus der Tabelle zu verwenden, ohne jede einzelne angeben zu müssen.Ist das möglich?
Ich denke, das ist, was Sie wollen.Es sollte für jede eingelesene Datentabelle eine neue tabellarische Tabelle erstellt werden
// Open dialog box to select SWR Table
project << Run Script(
Files = Pick File(
"Select SWR Table",
"$DESKTOP",
{"JMP Files|xlsx", "All Files|*"},
1,
0,
"",
"multiple"
);
For( i = 1, i <= N Items( Files ), i++,
Try(
dt=Open(
Files[i],
Worksheet Settings(
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 )
)
)
);
dt << rerun formulas;
colList = dt << get column names( nominal );
obj = dt << Tabulate(
Add Table( Row Table( Grouping Columns( evalexpr(colList) ) ) ),
Include missing for grouping columns( 1 )
)
);
Bring Window To Front;
);
//Create SWR Table - TBD
/*project << Run Script(
obj = Tabulate(
Add Table( Row Table( Grouping Columns( :WAFER, :EPI Run ) ) ),
Include missing for grouping columns( 1 )
)
);*/