Wie kann man einen dynamischen Datenfilter in JMP Live anzeigen?Aktuell verwenden wir eine benutzerdefinierte Benutzeroberfläche für die lokale Einrichtung, nun möchten wir aber eine ähnliche Einrichtung auf JMP Live realisieren.
Mir ist aufgefallen, dass JMP Live nicht mit benutzerdefinierten Benutzeroberflächen funktioniert. Welche Möglichkeiten habe ich, um dasselbe oder ein ähnliches Ergebnis zu erzielen?
Die aktuelle Benutzeroberfläche filtert und erstellt Teilmengen in einem spezifischen Format für den Endbenutzer.

Ist es möglich, dieselbe Funktionalität in JMP Live über einen Datenfilter oder eine andere Methode zu erreichen? Ich habe dies mit BigClass.jmp getestet, aber es wird lediglich die Datentabelle in JMP Live hochgeladen und angezeigt, ohne dass die Filterung angewendet wird.
dt = Open("$SAMPLE_DATA/Big Class.jmp");
dt << Data Filter(
Add Filter(columns(:sex, :age))
);
Automatisierung und SkripterstellungGrundlagen der Datenanalyse und ModellierungBetreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Dies ist unser aktueller Arbeitsablauf und unsere Benutzeroberfläche, die wir intern (lokal) verwenden.
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?
Dies ist unser aktueller Arbeitsablauf und unsere Benutzeroberfläche, die wir intern (lokal) verwenden.
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Welche Version von JMP Live verwenden Sie? In Version 19 haben wir die Möglichkeit hinzugefügt, das Skript zur Berichtserneuerung zu bearbeiten. Dadurch können Sie Ihre Benutzeroberfläche noch individueller gestalten. Ohne Ihre Benutzeroberfläche gesehen zu haben, kann ich nicht beurteilen, ob alle Funktionen Ihrer benutzerdefinierten Oberfläche automatisch funktionieren, wenn Sie mit dem Datenfilter interagieren.
Hier finden Sie die Dokumentation zum Bearbeiten von Regenerationsskripten: https://www.jmp.com/support/help/en/19.0/jmplive/jmplive.shtml#2667989
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Ich verwende die neueste Version von JMP 19.
In meiner aktuellen Benutzeroberfläche, die nicht auf JMP Live basiert, verwenden wir benutzerdefinierte bedingte Dropdown-Listen als Filter und außerdem Optionsfelder, mit denen wir die Art der zu generierenden Teilmenge festlegen.
Also Filter (Dropdown-Menüs) + Optionsfelder = Teiltabelle (einfach ausgedrückt)
Wir verfügen über mehr als 50.000 Datensätze.
Ich habe den Datenfilter mit Tabulate ausprobiert, aber er ist in JMP Live extrem langsam. Ich frage mich, welche anderen Ansätze/Lösungen ich versuchen kann, um ein ähnliches Ergebnis zu erzielen.
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Wir haben in der Vergangenheit bereits ähnliche Anfragen erhalten. Ich habe Ihren Wunsch in unseren internen Funktionswunsch aufgenommen.
Leider kann ich Ihnen momentan nur eine Lösung anbieten: Wenn Sie die Daten logisch aufteilen könnten, um mehrere Berichte zu erstellen, könnten Sie diese als unterschiedliche Datenansichten für eine Gruppierung nutzen. Ob dies praktikabel ist, hängt von der Komplexität Ihrer Filter ab.
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?
Da Optionsfelder nicht möglich sind, konzentriere ich mich nun darauf, separate Berichte zu erstellen, aber es gibt immer noch Probleme.
Ich habe versucht, den Datenfilter mit der Funktion „Tabellieren“ zu verwenden, aber das funktioniert nur, wenn beide auf dieselbe Datentabelle verweisen. Wird der Filter auf eine Tabelle (Tabelle A) angewendet und die Tabellierung auf einer anderen Tabelle (Tabelle
durchgeführt, bricht die Verknüpfung ab – der lokale Datenfilter hat keinen Einfluss auf die zweite Tabelle.
In JMP Live möchte ich wissen, ob es möglich ist, einen lokalen Datenfilter für Tabelle A einzurichten und dann die Filterauswahl des Benutzers automatisch die Anzeige von Tabelle B steuern zu lassen. Zum Beispiel:
- Benutzer filtern Tabelle A nach Abteilung und Projekt
- Tabelle B zeigt dann alle Zeilen an, die diesen Auswahlen entsprechen, mit zusätzlichen Spalten wie Ergebnis und Datum.
Aktuell scheint das nicht zu funktionieren. Es wirkt so, als ob JMP Live die Verwendung von Tabulate erzwingt, was die Sache verkompliziert. Dabei wäre es viel einfacher, wenn JMP es erlauben würde, gefilterte Daten direkt über Tabellen hinweg mithilfe eines Datenfilters zu steuern, ohne Tabulate zu benötigen.
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Kann man die beiden Tabellen mithilfe von Virtuelle Teilnahme verknüpfen? Das folgende Beispiel verwendet drei verknüpfte Tabellen: Kundeninformationen sind über die Spalte „Kunden-ID“ und Filminformationen über die Spalte „Artikelnummer“ verknüpft. Die Funktion Tabulate verwendet alle drei Tabellen und fasst die Leihinformationen anhand der verfügbaren Filter für Kundendemografie zusammen.
NamesDefaultToHere(1);
dt_customers = Open( "$SAMPLE_DATA/Movie Customers.jmp", Invisible );
dt_inventory = Open( "$SAMPLE_DATA/Movie Inventory.jmp", Invisible );
dt_rentals = Open( "$SAMPLE_DATA/Movie Rentals.jmp" );
dt_rentals << Tabulate(
Show Control Panel( 0 ),
Add Table(
Column Table(
Grouping Columns(
:"Rating[Item Number]"n
)
),
Row Table(
Grouping Columns(
:"Genre[Item Number]"n
)
)
),
Local Data Filter(
Mode( Show( 0 ) ),
Add Filter(
columns(
:"Gender[Customer ID]"n
),
Where(
:"Gender[Customer ID]"n == "F"
)
)
)
);
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Die Lösung von @danschikore funktioniert auch in JMP Live.
Wenn Sie die Daten per Skript in JMP Live aktualisieren, stellen Sie sicher, dass Sie die Eigenschaften der virtuellen Join-Spalte in das Skript einbeziehen.
Dem Beispiel folgend, im Datenskript „Filmverleih“:
:"Customer ID" << Set Property( "Link Reference", Reference Table("Movie Customers.jmp") );
:"Item Number" << Set Property( "Link Reference", Reference Table("Movie Inventory.jmp") );
Im Film: Kunden:
:"Customer ID" << Set Property( "Link ID", 1 );
Ein Inventar im Film:
:"Item Number" << Set Property( "Link ID", 1 );
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?
Wie funktioniert die ODBC-Schnittstelle beim Aktualisieren von Daten in JMP Live? Muss ich etwas konfigurieren, da ich die Fehlermeldung „Datenquellenname nicht gefunden“ und „Kein Standardtreiber angegeben“ erhalte? Lokal funktioniert das Skript jedoch einwandfrei, indem es Daten aus der Datenbank abruft.
Damit die Aktualisierung der Daten funktioniert, müssen die zurückgegebenen Daten immer im Datentabellenformat vorliegen.
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Hallo,
Vielen Dank für Ihren Kommentar.
Meinten Sie das Skript, das JMP Live automatisch für die Datentabelle generiert, nachdem wir die Daten in JMP Live veröffentlicht haben?

Haben Sie außerdem einen Beispielcode für die DSN-lose Abfrage, um eine Verbindung herzustellen oder die Verbindung für die Datenaktualisierung zu testen?
Wie bei der lokalen JMP-Abfrage führen wir diese direkt durch:
::DB_CONNECTION_STRING = "DSN=testConnection";
dt_results = Open Database(
DB_CONNECTION_STRING ,
"SELECT
*
FROM TestTable
WHERE key IS NOT NULL",
"Test Table"
);
Was genau muss in der DSN-losen Verbindungszeichenfolge enthalten sein?
Oder sollten wir uns auf das automatisch generierte Aktualisierungsskript verlassen, das JMP Live während der Veröffentlichung erstellt?
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Open Database(
"DSN=testConnection;",
"SELECT
*
FROM TestTable
WHERE key IS NOT NULL",
"Test Table"
);
Dies ist das Beispielskript, das von der Quelle generiert wird.
Wenn wir das obige Skript verwenden und stattdessen Variablen nutzen wollten, sähe das korrekte Format zum Übergeben der Anmeldeinformationen dann so aus? Oder muss noch etwas hinzugefügt werden?
::DB_CONNECTION_STRING =
"DSN=testDSN;" || // same name as DSN in the credentials
"UID=%_UID_%;" ||
"PWD=%_PWD_%;";
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Wenn auf dem JMP Live-Server ebenfalls derselbe DSN und Treiber installiert ist, muss dann etwas Bestimmtes in der Abfrage angegeben werden, um dort aktuelle Daten zu erhalten?
Betreff: Wie kann ein dynamischer Datenfilter in JMP Live angezeigt werden?Sie müssen den Datenbanknamen, den Treiber, den Port, den Server und die Benutzerdaten (als Platzhalter) angeben.
Hier ist ein Beispielskript zum Abfragen von Daten:
dt = New SQL Query(
Connection(
"ODBC:DATABASE=placeholder;
DRIVER={placeholder};
PORT=placeholder;
PWD=%_PWD_%;
SERVER=placeholder;
UID=%_UID_%;"
),
QueryName( "placeholder" ),
Select,
From( Table( "placeholder", Schema( "placeholder" ) ) )
) << Run Foreground;
dt;