Dieser Beitrag ist eine Fortsetzung und Erweiterung des gelösten Forums Hier .
Das folgende Skript wurde in diesem Beitrag entwickelt:
Names Default To Here(1);
dt = Current Data Table();
//get the unique character variable list
col9 = Column(dt, "Column 1");
unique_char = Associative Array(col9) << get keys;
nuniquechar = N Items(unique_char); //will be 5, if categories are A, B, C, D, E
unique_aa = Associative Array(unique_char, Repeat({.}, nuniquechar)); //repeat to initialize values as missing
//create new window to create multiple number edit boxes
vlbExpr = V List Box();
For(i = 1, i <= nuniquechar, i++,
Insert Into(vlbExpr, Text Box("Number for " || Char(unique_char[i]) || ":")); //i.e. "Number for A:"
Eval(
Eval Expr(Insert Into(vlbExpr, Number Edit Box(., <<SET function=""></SET>Wenn Spalte 2 bereits existiert und der Benutzer sie durch einen Satz neuer Werte ersetzen möchte, indem er das Skript erneut ausführt und einen neuen Satz von Werten eingibt.
Ich habe versucht, die Update-Funktion zu verwenden. Wenn Spalte 2 vorhanden ist, wird die Aktualisierungsfunktion für Spalte 2 verwendet. Andernfalls wird Spalte 2 erstellt. wie oben. aber ich bin mit dem Eval-Ausdruck nicht vertraut und brauche ein besseres Verständnis dafür, wo ich eine solche Aussage in das Skript einfügen könnte, wenn es funktioniert.
Hier ist eine Methode, die das Problem behandelt, wenn die Spalte bereits vorhanden ist
Names Default To Here( 1 );
dt = Current Data Table();
//get the unique character variable list
col9 = Column( dt, "Column 1" );
unique_char = Associative Array( col9 ) << get keys;
nuniquechar = N Items( unique_char ); //will be 5, if categories are A, B, C, D, E
unique_aa = Associative Array( unique_char, Repeat( {.}, nuniquechar ) ); //repeat to initialize values as missing
//create new window to create multiple number edit boxes
vlbExpr = V List Box();
For( i = 1, i <= nuniquechar, i++,
Insert Into( vlbExpr, Text Box( "Number for " || Char( unique_char[i] ) || ":" ) ); //i.e. "Number for A:"
Eval(
Eval Expr(
Insert Into(
vlbExpr,
Number Edit Box(
.,
<<SET function=""></SET>