Dropdown-Menü für interaktive Benutzereingaben erstellen<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich habe eine Frage zur JMP-Skripterstellung. Ich verwende JMP11. Ich möchte ein interaktives Skript in JMP erstellen. Das Skript enthält die folgenden Elemente:
1. Das Skript zeigt eine Meldung an, in der die Benutzer aufgefordert werden, ein Dokument auszuwählen. Benutzer wählen einen Dokumentnamen aus.
2. Basierend auf dieser Auswahl führt das verbleibende Skript Abfragen basierend auf dem vom Benutzer ausgewählten Dokument aus und erstellt relevante Diagramme und Tabellen.
Ich weiß, wie man Platz 2 in JMP erreicht. Für Nr. 1 weiß ich, wie man ein Textfeld anzeigt und Benutzer den gesamten Dokumentnamen selbst eingeben lässt, aber das würde zu manuellen Fehlern führen, und die verbleibende Abfrage funktioniert nicht, wenn ein falscher Name eingegeben wird.
Ich denke also, dass eine Datenbankabfrage an die Dokumententabelle den Benutzern alle aktiven Dokumente als Dropdown-Liste anzeigt und die Benutzer nur eines der angezeigten Dokumente auswählen. Ist es möglich, in JMP-Skripting zu tun?
Ich habe im Skripting-Handbuch nachgesehen, wie man Skripts interaktiv macht, aber die einzigen Optionen, die ich gesehen habe, waren, dass Benutzer den gesamten Text eingeben mussten. Wollte mich also bei dir erkundigen.
Vielen Dank im Voraus!
Betreff: Dropdown-Menü für interaktive Benutzereingaben erstellenErweitere nur etwas weiter john.ponte 's Beitrag.Dies ist ein Beispiel, von dem ich erhalten habe WK und oft geändert.
/* Beispieldatentabelle öffnen */
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
/* Extrahiere eine Liste einzigartiger Altersgruppen */
Zusammenfassen( a = By( :age ) );
Einfügen in( a, "", 1 );
/* Modalen Dialog erstellen */
Neues Fenster ("Beispiel",
<
H Listenfeld (
/* Nach Auswahl eines Alters die zweite ComboBox mit entsprechenden Namen füllen */
Panel Box( "Wählen Sie ein Alter:",
cb1 = Kombinationsfeld (
a,
<
Funktion( {dies},
selection = this << Get Selected();
r = dt << Zeilen abrufen Where( :age == Num( selection ) );
Altersnamen = :Name;
Insert Into( ageNames, "", 1 );
cb2 << Set Items( ageNames );
)
)
)
),
/* Ausgewählte Werte aus beiden ComboBoxen im Log drucken */
Panel Box ("Wählen Sie einen Namen:",
cb2 = Kombinationsfeld (
{""},
<
Funktion( {dies},
that=this<< Get Selected();
Drucken( Auswahl, das )
)
)
)
)
)
);
sel=num(Auswahl)
Betreff: Dropdown-Menü für interaktive Benutzereingaben erstellenUm eine Dropdown-Liste in JSL zu erstellen, müssen Sie lediglich eine Liste und eine Combobox erstellen. Hier ist ein Beispiel für JSL:
meine Liste = {
"" ,
"Einer" ,
"Zwei" ,
"Drei" ,
"Vier" ,
"Fünf"
} ;
doListChoice = Ausdruck (
Auswahl = meineListbox << getSelected ;
Show ( Auswahl ) ;
) ;
meineListbox = Kombinationsfeld ( meine Liste , doListChoice ) ;
gewinnen = neues Fenster ( "Liste anzeigen" , meineListbox ) ;
Führen Sie dies aus und Sie sehen eine Dropdown-Liste in einem Fenster. Wenn Sie Ihre Auswahl treffen, wird im Protokoll angezeigt, was Sie ausgewählt haben.
Die Frage ist nun, wie bauen Sie Ihre Liste auf? Wenn Ihre Dokumente Dateien sind, die in einem Verzeichnis gespeichert sind, kann ich Ihnen etwas JSL zeigen, um eine Liste aus dem Verzeichnis zu erstellen. Aber es klingt, als wären Ihre Dokumente in einer Datenbank? Wenn dies der Fall ist, können Sie die Datenbank abfragen und eine Liste erhalten. Verwenden Sie dann diese Liste, um das Kombinationsfeld wie gezeigt zu erstellen. Ich habe jedoch noch nichts mit einer Datenbank geschrieben, daher sind meine Kenntnisse in diesem Bereich schwach.
Beantwortet das deine Frage? Oder brauchten Sie Hilfe bei der Abfrage der Datenbank?