Interaktives Schließen einer Datentabelle während eines laufenden SkriptsWenn Berichte geöffnet sind und ein Benutzer versucht, eine Datentabelle zu schließen, fragt JMP (standardmäßig), was zu tun ist: " Die Datentabelle "Big Class.jmp" hat andere Fenster geöffnet. Sie können alle Fenster für diese Datentabelle schließen oder sie einfach ausblenden. "
Nettes Feature, wirklich. Ich würde es gerne in ein Skript einarbeiten, das ich erstelle. Ich habe die Datentabelle identifiziert, mit der ich arbeiten möchte. Ich öffne dann ein Fenster mit New Window (), das eine Reihe von Informationen über diese Datentabelle sammelt und schließlich die Option "OK" oder "Abbrechen" anbietet. Wenn der Benutzer die Daten jedoch interaktiv schließt, bevor das Skript geschlossen wird, passieren seltsame Dinge ... insbesondere wenn der Benutzer zurückkommt und mit einer jetzt geschlossenen Datentabelle "OK" versucht.
Gibt es eine Möglichkeit, sich mit JMP zu verbinden, um festzustellen, ob ein Bericht noch geöffnet ist? Wie wird es gemacht?
Betreff: Interaktives Schließen einer Datentabelle während eines laufenden SkriptsVielen Dank. Ich wusste nicht über das Schlüsselwort "Client", das die Nachricht auslöst. Ich musste den Code ein wenig ändern, um den Auslöser zu entfernen, wenn das Fenster des Skripts geschlossen wird, bevor jemand versucht, die Datentabelle zu schließen. Das war jedoch ziemlich einfach.
Hier ist was ich endete mit:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
my_win=new window("My summary",
vlistbox(
Text Box("Avg height: " || char(col mean( :height))),
Text Box("Avg weight: " || char(col mean( :weight)))
));
my_win << On Close(dt << Unsubscribe("name1", On Close));
dt << Subscribe(
"name1"("client"),
On Close( my_win << Close window )
);Betreff: Interaktives Schließen einer Datentabelle während eines laufenden SkriptsVersuchen Sie das Nachricht abonnieren für eine Datentabelle. Dadurch wird die Beziehung eingerichtet, die diese Nachricht auslöst.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
my_win=new window("My summary",
vlistbox(
Text Box("Avg height: " || char(col mean( :height))),
Text Box("Avg weight: " || char(col mean( :weight)))
));
dt << Subscribe(
"name1"("client"),
On Close( New Window( "Closing Data Table" ,
Text Box("You're closing Big Class")
) )
);