Ist Ihnen schon einmal aufgefallen, dass man beim Speichern mehrerer Objektverweise in einer Liste tatsächlich nicht den Objektverweis erhält...?
z.B
Namesdefault to here(1);
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
gb = dt << Graph Builder( Variables( X( :height ), Y( :weight ) ), Elements( Points( X, Y ), Smoother( X, Y ) ) );
list = {};
list2 = {};
Insert Into(list, {gb, "test", "test2"});
Insert Into(list2, gb);
show(list[1]);
show(list2[1]);
show(gb);
Ausgabe:
list[1] = gb;
list2[1] = Graph Builder[];
gb = Graph Builder[];
Die erste Liste enthält den Variablennamen. Für Aufrufe damit ist sie nicht nützlich.
Verwenden Sie Eval List() ( Skripting-Leitfaden > Datenstrukturen > Listen in JSL-Skripten > Listen auswerten )
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Variables(X(:height), Y(:weight)),
Elements(Points(X, Y), Smoother(X, Y))
);
list = {};
list2 = {};
Insert Into(list, Eval List({gb, "test", "test2"}));
Das sah ja viel zu einfach aus. Danke!