So erkennen Sie, ob die Datentabelle privat istHallo zusammen,
Ich möchte die verwenden
subscribe to data table list()
Funktion zur Behandlung aller Tabellen, die der Benutzer während der Ausführung eines meiner Skripts öffnet. Da das Skript auch seine eigenen privaten Datentabellen erstellt, brauche ich eine Möglichkeit zu erkennen, ob eine Datentabelle privat ist, um sie anders zu behandeln als vom Benutzer geöffnete Datentabellen.Ich habe nach einer "ist privat"-Funktion gesucht, konnte sie aber nicht finden.
Der
<<HAS data="https://community.jmp.com/" view=""></HAS>
Die Nachricht funktioniert nicht so, wie ich es gerne hätte. Ich denke, dies könnte damit zusammenhängen, dass die Datenansicht erstellt wird, nachdem die "onopen" -Funktion des Datentabellen-Abonnements ausgelöst wurde.
Vielen Dank für Ihre Hilfe!
Matteo
SkripterstellungBetreff: Wie erkennt man, ob die Datentabelle privat ist?Hallo @Craige_Hales ,
Sie haben Recht, man sollte die Tabelle nicht innerhalb der "open" Callback-Funktion schließen. Dies ist nicht das, was ich eigentlich tun muss, ich habe es in meinem Beispiel nur als Möglichkeit verwendet, um zu untersuchen, was passiert ist, aber es ist nicht das Hauptproblem.
Sie haben auch Recht, dass bei Verwendung von "Open(..., private)" die Callback-Funktion "Open" nicht aktiviert ist.Genau dieses Verhalten bräuchte ich.
Aber in meinem Beispiel habe ich "New Table(..., private)" verwendet. In diesem Fall wird die „Öffnen“-Callback-Funktion aktiviert.Hier brauche ich einen Weg, um zu wissen, dass die Tabelle privat ist, und sie anders zu verwalten.
Danke noch einmal!
Matteo
Betreff: Wie erkennt man, ob die Datentabelle privat ist?Ich bin mir ziemlich sicher, dass das Schließen der Tabelle während des Öffnens JMP 15 in einem leicht beschädigten Zustand zurücklässt @Audrey_Shull . Tun Sie das nicht; Die Tabellennamen scheinen danach zumindest verwirrt zu sein. Ich bin mir ziemlich sicher, dass das Verhalten in JMP 16 anders sein wird.
Ich bin auch verwirrt; Hier erfolgt kein Rückruf:
does not print "opening" or "closing"druckt nicht "opening" oder "closing"
Meine Meinung ist, dass die Rückrufe sollten niemals für private Datentabellen vorgenommen werden. Das ist ein Teil dessen, was privat bedeutet ... sie sollten schwer zu beobachten und zu manipulieren sein.@chungwei
Betreff: Wie erkennt man, ob die Datentabelle privat ist?Hallo @David_Burnham ,
Tatsächlich möchte ich alle Datentabellen erkennen, die während der Ausführung meines Skripts erstellt wurden, aber die privaten Tabellen (im Grunde nichts auf ihnen tun) anders behandeln als die sichtbaren, die vom Benutzer erstellt wurden.Dies kann nicht durch eine Liste behandelt werden, denke ich.Siehe auch meine Antwort auf @Craige_Hales .
Danke!
Matteo
Betreff: Wie erkennt man, ob die Datentabelle privat ist?Danke @Craige_Hales ,
Hier ist ein Beispiel dafür, was ich sehe.Es scheint wirklich, dass die fopen-Funktion bei der allerersten Erstellung des Datentabellenobjekts ausgelöst wird.
names default to here(1);
fopen = Function( {dt},
print(dt<<HAS data="https://community.jmp.com/" view=""></HAS>Betreff: Wie erkennt man, ob die Datentabelle privat ist?Wenn es Ihr Skript ist, das die privaten Tabellen generiert, dann ist der vielleicht einfachste Weg herauszufinden, ob eine Tabelle privat ist, eine Liste der Tabellen zu pflegen, die Sie erstellen; dann können Sie einfach auf diese Liste verweisen.
Betreff: Wie erkennt man, ob die Datentabelle privat ist?Ich habe das Scripting-Index-Beispiel in JMP 15 ausprobiert und Big Class in Private geändert. Es wird nicht durch Öffnen oder Schließen gesehen, was ich erwarten würde. Können Sie ein Beispiel nennen?