Wählen Sie Werte aus der Berichtstabelle oder der Zwischenablage im lokalen Datenfilter ausGibt es eine Möglichkeit, interaktiv Werte aus einer Tabelle (Datentabelle oder Tabelle in einem Bericht) auszuwählen und diese in einen lokalen Datenfilter zu übertragen?
Anders gefragt: Es ist einfach, Werte in eine zeilenweise Liste in die Zwischenablage zu bringen, können diese irgendwie im lokalen Datenfilter ausgewählt werden, oder gibt es eine alternative Möglichkeit, dies zu tun?
Hier ist ein Beispiel-Workflow:

Vielen Dank!
DatentabelleBetreff: Werte aus Berichtstabelle oder Zwischenablage im lokalen Datenfilter auswählenSieht so aus, als würde es ein Add-In mit Ihrem Button-Box-Skript zur Rettung sein!
Vielen Dank @txnelson .Ich werde den Beitrag für eine Weile "ungelöst" lassen, nur für den Fall, dass jemand eine No-Script-Lösung findet ...
Betreff: Werte aus Berichtstabelle oder Zwischenablage im lokalen Datenfilter auswählenEin weiterer Gedanke,
Dies könnte automatisiert werden, indem ein Row State Handler auf die Datentabelle angewendet wird.Jedes Mal, wenn sich ein Rowstate ändert, löst dies die Ausführung des Codes aus, der sich derzeit in der Schaltflächenbox befindet, und aktualisiert den lokalen Filter.
Betreff: Werte aus Berichtstabelle oder Zwischenablage im lokalen Datenfilter auswählenEs gibt vielleicht bessere Möglichkeiten, dies zu tun, aber hier ist meine Meinung dazu.Wenn Sie ein separates Fenster mit nur einer Button Box() darin erstellen, wird durch Klicken auf die Schaltfläche ein einfaches Skript ausgeführt, das den Filter ändern kann

Hier ist das Skript, das das obige Beispiel erzeugt
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
dis = dt << Distribution( continuous Distribution( Column( :height ) ) );
lf = dis << Local Data Filter( Add Filter( columns( :name ), Mode( Show( 1 ), Include( 1 ) ) ) );
nw = New Window( "Set Values",
Button Box( "Click to Set Selection From Selected Rows",
theRows = dt << get selected rows;
If( N Rows( theRows ) > 0,
theWhere = ":name == \!"" || dt:Name[theRows[1]] || "\!"";
For( i = 2, i <= N Rows( theRows ), i++,
theWhere = theWhere || " | :name == \!"" || dt:Name[theRows[i]] || "\!""
);
lf << delete all;
Eval( Parse( "lf << add filter (Columns (:name), where( " || theWhere || " ) );" ) ),
lf << delete all;
lf << add Filter ( Columns (:name));
);
)
);