Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Peacemaker am 01.09.04 - 08:27:17
-
Hallo,
und wieder einkurzes Problem. Die Suche hat mir leider nicht weitergeholfen.
Also, ich möchte mehrere Environment Variablen anlegen. Das sieht im code wie folgt aus:
@Environment(singlelongname; alllongnames[n]);
@Environment(internalsysnumber; n);
Jedes statement für sich tut auch seinen Dienst, aber beide so deklariert hacken sich. internalsysnumber ist immer mit den Werten von singlelongname anstatt n überschrieben. Wie bekomme ich es hin, das die 2 Variablen unabhängig im Code deklariert und später abgefragt werden können, ohne das internalsysnumber den wert von singlelongname annimmt?
-
die beiden Zeilen Code sehen eigentlich ganz normal aus...
Dein Fehler ist garantiert an einer anderen stelle des Codes (zuweisung per = statt per := oder ein anderer unauffälliger Fehler)
Poste mal den ganzen Code, besonders, wie die variablen singlelongname, alllongnames und internalsysnumber gefüllt werden...
Gruß
Tode
-
Das ganze ist ein action Button in einem Form
n:=numberss;
@While(n!=0;
FIELD subsys_temp:=subsys[n];
FIELD ecnumbers_temp:=ecnumbers[n];
FIELD alldrivers_temp:=alldrivers[n];
FIELD allrec_temp:=allrec[n];
FIELD allact_temp:=allact[n];
FIELD allacttime_temp:=allacttime[n];
FIELD allacc_temp:=allacc[n];
FIELD allmax_temp:=allmax[n];
@Environment(singlelongname; alllongnames[n]);
@Environment(internalsysnumber; n);
@Command([FileSave]);
@Command([Compose];"add_subsystem");
@Command([FileSave]);
@Command( [CloseWindow] ) ;
@Set("n";n-1));
@Command([FileSave]);
-
Du füllst die Variablen singlelongname und internalsysnumber ja überhaupt nicht....
Oder willst DU etwa den ini- Eintrag "singlelongname" füllen ?
Dann lautet der korrekte Befehl:
@Environment( "singlelongname" ; allongnames[n] );
im übrigen ist dieses Beispiel ein typischer Fall für LotusScript. Vieles geht mit Formel, aber hier ist Formelsprache definitiv eine Krücke...
Tode
(nennt mich konservativ, aber ich schüttle mich immer noch bei der Verwendung von Schleifen / [n] in der Formelsprache...)
-
also besser funktionieren tut das ganze jetzt immer noch nicht:
@Environment("singlelongname"; alllongnames[n]);
@Environment("internalsysnumber"; n);
Das Problem ist weiterhin, das internalsysnumber den Wert aus dem Environment drüber bekommt. Läuft also irgendetwas faslch.
Im Klartext:
ein:
@Prompt([Ok];"info";@Environment(singlelongname));
@Prompt([Ok];"info";@Environment(internalsysnumber));
nach den 2 Einträgen liefert @prompt für beide Variablen den gleichen Wert? warum? Ich verstehs nicht mehr
-
Sag mal : Stellst Du Dich absichtlich blöd, oder willst Du mich ärgern ?
@Prompt([Ok];"info";@Environment(singlelongname));
@Prompt([Ok];"info";@Environment(internalsysnumber));
Liefert NATÜRLICH beidesmal den selben Wert zurück:
singlelongname = ""
internalsysnumber = ""
@Environment( "" ) ist natürlich immer das gleiche.
Und da Du genau den Wert früher schon mal gesetzt hast, bekommst Du auch einen Wert zurück.
wenn Du die Umgebungsvariable "singlelongname" setzen oder lesen willst, dann MUSST Du diese in "" setzen.
Tode