Hallo,
Ich bin kürzlich auf JMP14 umgestiegen und habe einige Skripte, die aufgrund eines „ungültigen Arguments beim Zugriff oder bei der Auswertung von ‚Schließen‘“ nicht mehr funktionieren.
Wenn ich in JMP12 die Tabelle ABC schließen und als CSV-Datei speichern möchte, würde ich grundsätzlich den folgenden Befehl verwenden:
close(data table ("ABC") << save("\C:\Temp\ABC.csv"));In JMP14 kann ich das nicht mehr tun. Weiß jemand, was diesem Befehl in JMP14 entsprechen würde (ohne ihn mit einem Befehl speichern und mit einem anderen schließen zu müssen)?
Vielen Dank im Voraus, Eliav.
close(data table ("ABC"), save("\C:\Temp\ABC.csv") );Jims Antwort ist richtig.
Also, was hat sich geändert? JMP 13 oder 14 fügte der <
dt = open("$sample_data/big class.jmp");
x = dt<<SAVE></SAVE>
Der C++-Entwickler entscheidet, ob für jede Nachricht ein Wert zurückgegeben wird (z. B. 1 für <
Wer immer noch liest: Das Schreiben von JSL, das mehr als eine Methode verkettet und das Ergebnis überprüft, ist ebenfalls ein potenzielles Problem. Verwenden Sie keine Verkettung und verlassen Sie sich nicht auf das Standardverhalten, um Ihre JSL zukunftssicher zu machen:
dt = Open( "$sample_data/big class.jmp" );
// prefer to send messages one at a time. Three messages:<BR />
x = dt << getname;
Write( Eval Insert( "\!ngetname ^x^" ) ); // big class
x = dt << save( "$desktop/big class.jmp" );
Write( Eval Insert( "\!nsave ^x^" ) ); // 1
x = dt << end data update;
Write( Eval Insert( "\!nend data update ^x^ ^x<<GETNAME></GETNAME>
(Ich habe JMP nicht vor 14, aber ich denke, das wird richtig sein ...)
Die Antwort auf die verkettete Frage, bei der << dreimal verwendet wird, hängt von der Version von JMP ab. Der <<<