Automatisches Kopieren von Tabellenskripten beim erneuten Ausführen von „Quelle“Hallo,
Ich erstelle eine Datenbank in Excel, die ständig aktualisiert wird. Neue Zeilen und Spalten werden regelmäßig hinzugefügt und vorhandenen Zeilen werden gelegentlich neue Daten hinzugefügt. Daher habe ich begonnen, das Skript „Source“ zu verwenden, um die entsprechende nachgelagerte JMP-Tabelle zu aktualisieren.
Meine Frage ist, ob es eine Möglichkeit gibt, vorhandene Tabellenskripte in die aktualisierte Tabelle zu übernehmen, wenn das Quellskript ausgeführt wird. Ich habe eine Reihe von Graph Builder-Skripten in der JMP-Tabelle gespeichert und möchte diese bei jeder Ausführung des Quellskripts automatisch in die neue Tabelle kopieren. Ich verwende JMP Version 17.
Danke schön!
WindowsBetreff: Automatisches Kopieren von Tabellenskripten beim erneuten Ausführen von „Quelle“Willkommen in der Community.
Hier ist ein Beispiel für den Code, der zum Kopieren aller Tabellenskripte von einer Datentabelle in eine andere erforderlich ist, abzüglich des Quelltabellenskripts.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
names=dt<<GET table="" script="" names=""></GET>
<P>Sie müssten diese Methode zu Ihrem Quellskript hinzufügen oder sie als separates Skript ausführen, um das zu tun, was Sie versuchen.</P>
<P>Details und Beispiele zu den verschiedenen Elementen dieses Skripts finden Sie im Skriptindex unter dem Pulldown-Menü „Hilfe“</P>Betreff: Automatisches Kopieren von Tabellenskripten beim erneuten Ausführen von „Quelle“Hier ist eine andere Option
Names Default To Here(1);
<BR />// Depending on your source script, there are different options of handling
// getting the reference to dt1 and dt2
dt1 = Open("$SAMPLE_DATA/Big Class.jmp");
dt2 = Open("$SAMPLE_DATA/Big Class Families.jmp");<BR />
dt2 << Delete Scripts(dt2 << Get Table Script Names); // for demo purposes
wait(1); // for demo purposes
<BR />t_scripts = dt1 << Get Table Script Names;
Remove From(t_scripts, Contains(t_scripts, "Source"), 1);<BR />
For Each({t_script}, t_scripts,
Eval(EvalExpr(
dt2 << New Script(t_script,
Expr(dt1 << Get Script(t_script));
);
));
);
wait(0);Betreff: Automatisches Kopieren von Tabellenskripten beim erneuten Ausführen von „Quelle“Ein anderer Ansatz:
Upgrade auf JMP 18, es ist für alle lizenzierten Benutzer kostenlos.
In JMP 18 gibt es neben dem Quellskript ein Aktualisierungsskript:

Dadurch wird die Tabelle selbst aktualisiert, anstatt eine neue zu erstellen. Manuell hinzugefügte Skripte bleiben erhalten.
Vorteile von „Update Table“ gegenüber „Source Scripts“:
Quellskripte sind „fragil“ – JMP überschreibt sie ohne Warnung:
Aktualisieren und Verketten: Quellskriptkollision
Nachteile:
Mit „Tabelle aktualisieren“ werden alle manuell hinzugefügten Spalten entfernt.
https://community.jmp.com/t5/JMP-Wish-List/Wizard-to-update-Excel-files-in-place-no-code-solution/idc-p/761983/highlight/true#M5540
Betreff: Automatisches Kopieren von Tabellenskripten beim erneuten Ausführen von „Quelle“Ich weiß, ich habe gerade einen weiteren Kommentar hinterlassen, in dem ich sage, dass ich Ihre JMP-Hilfe überall sehe und sie wirklich zu schätzen weiß. Aber im Ernst. Ich sehe Ihre Hilfe überall und sie ist so nützlich. Danke für alles, was Sie tun, um den Leuten zu helfen.