Betreff: Wie sortiert man die Datentabelle innerhalb einer Anwendung?Ich bin mir nicht sicher, ob ich Ihre Frage richtig verstehe, es scheint, dass Ihr Skript einige Zeichen ("")" in Zeile 2 und "<<") nicht enthält.
sortThisData = Function( {dt},
Try( newdt = dt << Sort( By( Column( snCol ), Column( dtCol ) ), Replace Table ), );
/* IF thrown */
if(contains(exception_msg[1], "JMP cannot replace the existing table"),
ex = New Window( "Alert",
<<MODAL></MODAL>Betreff: Wie sortiert man die Datentabelle innerhalb einer Anwendung?Hallo,
Ich bin mir nicht sicher, was du mit fehlenden Zeichen meinst. Aber in jedem Fall ist das Problem dasselbe, auch wenn der Aufruf der obigen Funktion durch eine einfache Sortiertabelle ersetzt wird:
DataTable1 << Sort (By( Column(snCol), Column(dtCol)), Replace Table);
Ich erhalte die folgende Warnung, obwohl das einzige offene Fenster für DataTable1 die Anwendung ist, die die Sort-Funktion aufgerufen hat.

Betreff: Wie sortiert man die Datentabelle innerhalb einer Anwendung?Es tut mir leid, dass ich falsch verstanden habe, was Sie tun möchten. Es scheint, dass es nicht einfach ist, eine Datentabelle im Application Builder zu sortieren.
Es ist keine intelligente Lösung, Sie können zuerst eine Datentabelle kopieren und dann die Datentabelle sortieren. Es erstellt eine weitere Datentabelle, Sie sollten eine Tabelle schließen, wenn sie nicht verwendet wird.
original_dt = Current Data Table();
dt = original_dt << Subset( All rows, Selected columns only( 0 ), Link to original data table( 0 ), invisible );
dt << Sort( By( Column( dt, snCol ), Column( dt, dtCol ) ), Replace Table )
Wie sortiere ich die Datentabelle innerhalb einer Anwendung?Ich habe mit dem JMP Application Builder eine ziemlich komplexe JSL-Anwendung geschrieben. Der Anwendungsstarter fordert den Benutzer zur Spaltenauswahl auf und dann sortiere ich die Daten nach den ausgewählten Spalten, bevor ich mit der Verarbeitung und Visualisierung fortfahre.
Wenn der Datensatz über abhängige geöffnete Fenster verfügt, muss ich dem Benutzer die Möglichkeit geben, ohne Sortierung fortzufahren (die Daten waren wahrscheinlich vorsortiert) oder das Skript zu beenden, damit der Benutzer mit den abhängigen Fenstern umgehen kann.Zu diesem Zweck habe ich die folgende Funktion erstellt:
sortThisData = Function ({dt},
try( dt << Sort (By( Column(snCol), Column(dtCol)), Replace Table) ,
/* IF thrown */
if (contains(exception_msg[1], "JMP cannot replace the existing table"),
ex = New Window( "Alert", <<MODAL></MODAL>
Es scheint jedoch, dass die Anwendung selbst als abhängiges offenes Fenster zählt! Ich kann die Daten nicht sortieren, auch wenn keine anderen Fenster geöffnet sind.
Wie kann ich dieses Problem umgehen und meine Daten sortieren? Ich habe den Zeitpunkt des Aufrufs meiner SORT-Funktion verschoben, aber dies muss erfolgen, nachdem die OK-Taste im Launcher gedrückt wurde und bevor die Verarbeitung/Visualisierungen abgeschlossen sind.
Irgendwelche Vorschläge?
Automatisierung und SkripterstellungQualitäts- und Verfahrenstechnik