Hallo zusammen,
Ich habe 3 Skripte, die verschiedene SQL-Abfragen ausführen, um Daten zu extrahieren. Ein anderes Skript verwendet Include(), um jedes dieser Skripte auszuführen, nimmt dann einige Änderungen an den drei Tabellen vor und verknüpft sie.
Wenn ich in zwei dieser Skripte das einzelne Skript oder den Aufruf mit Include() ausführe, erhalte ich dieselbe Tabelle. Wenn ich das letzte Skript jedoch ausführe, erhalte ich ungefähr 8.000 Zeilen, aber wenn ich es über den Befehl include() ausführe, erhalte ich weniger als 4.000 Zeilen. Darüber hinaus fehlen auch einige Spalten.
Ich habe alles andere entfernt und habe jetzt nur noch ein JSL-Skript mit einer Zeile wie der folgenden:
Include( "...\Test.jsl");
und es gibt mir immer noch eine andere Tabelle als wenn ich Test.jsl direkt ausführe
Ich habe dieses Verhalten noch nie zuvor gesehen und die Tatsache, dass ich dieselben Tabellen erhalte, egal wie ich die beiden vorherigen Skripte ausführe, zeigt mir, dass einige Funktionen von include() mit meinen Daten nicht funktionieren.
Ist Ihnen das schon einmal begegnet? Für alle Fälle verwende ich JMP 17.0.0
Danke schön,
Es könnte zu einigen Variablenkollisionen kommen. Verfügen Ihre Skripte über ähnlich benannte Variablen? Beginnen Ihre Skripte mit Names Default To Here(1)? Oder verwenden Sie < < https://www.jmp.com/support/help/en/17.2/#page/jmp/programming-functions.shtml?os=win&source=application#ww5015591 und https://www.jmp.com/support/help /en/17.2/#page/jmp/include-a-script.shtml#ww306193
Hallo Jarmo,
Vielen Dank für Ihre Antwort. Ja, ich habe auch New Context ausprobiert.
Ich glaube, das Problem könnte im SQL-Code liegen. Es wurde geschrieben, um einen bestimmten Wert herunterzuladen, aber ich habe es geändert, um einige zusätzliche Parameter herunterzuladen, was möglicherweise alles verwirrend macht. Ich muss mir das SQL-Skript noch einmal ansehen. Da dies möglicherweise kein JMP-Problem ist, können Sie diesen Beitrag gerne löschen.
Danke noch einmal.
Eine weitere Sache, die Sie überprüfen sollten: Abfragen können ein unterschiedliches Zeitverhalten aufweisen, wenn sie im Hintergrund oder im Vordergrund ausgeführt werden. Manchmal kann die explizite Verwendung von Run Foreground hilfreich sein.
