Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Eike am 30.06.03 - 10:45:16
-
es läuft ein Agent mit Formelsprache. Dieser Agent soll auf dem Server laufen. Nun bräuchte ich den aktuellen Servernamen. Mit @Subset(@DbName;1) leicht gedacht. Wird der Agent auf dem Server getriggert, meint er er ist lokal und es bleibt leer. Wer kennt einen Methode den aktuellen Server mit der Formelsprache auszulesen?
-
Les das Ding doch einfach aus der Notes.ini aus.
Meff
-
Wenn der Agent auf dem Server läuft, liefert
@UserName
den Servernamen zurück.
Andreas
-
danke für die Antworten.
@username geht nicht, weil der Unterzeichner dann drin steht. Und bei bundesweit 19 Server ein Unding alle mit der serverID zu unterschreiben.
Notes.ini ist OK
-
Die Ini Varible heisst übrigens "ServerName".
@Elke
setzt Du den Thread bitte auf erledigt...
Meff
-
Irrtum ! Die Variable Servername kann nicht in der Notes.ini des Server stehen. Er bekommt seinen Namen erst durch die ID. Den Name des Mailservers kann man vorschreiben. Wenn nicht jeder Server gleichzeitig ein Mailserver ist geht das nicht. Ich nehme den Dateinamen der ServerID der entspricht den Namen des Servers.
-
Aus der Notes Adminhilfe R5:
ServerName
Syntax: ServerName=name
Description: Specifies the full hierarchical name of the server
Applies to: Servers
Default: None
UI equivalent: The Server Name field in the Server document
Meff
P.S.: Verzeih mir im übrigen, ich hatte Deinen Namen falsch gelesen.
-
Hallo Meff
Dann würde mich mal interresieren was bei dir auf der Konsole erscheint, wenn du die Variable "servername" eingibst.
Index: sho con "servername"
-
Der Servername !? Habe das jetzt auf 5 Server getestet und das hat überall gefunzt.
Meff
-
Mir ist nicht klar, wie man in R5 mit der @Formelsprache Systemvariablen aus der NOTES.INI lesen soll.
Hab ich jetzt nen Brett vor'm Kopf, oder was ???
Andreas
-
@GetEnvironmentString(Variablenname)
Meff
-
@GetEnvironmentString(Variablenname) ??? ??? ???
Also in Script gibt's sowas, aber in der Formelsprache - unter R5 bekomme ich das nicht gespeichert "Unbekannt @Funktion '@GetEnvironmentString'
Andreas
-
@GetEnvironmentString( "Variablenname")
... um es genau zu nehmen...
ata
-
Yoo,
einfach nur @Environment( Variable ) in der Formelsprache.
GetEnvironmentString in LS ist eine Funktion der Klasse "NotesSession".
Gruss ...
Hoshee
-
... so ist es, wenn man zu schnell liest - du hast natürlich Recht...
@Environment("Variablenname")
... oder
@GetEnvironment( "Variablenname" )
ata
-
Yoo ata,
bring mich hier jetzt nicht durcheinander ;D
Ich kenne @Environment(Variable) oder @Environment(Variable;Wert) zum lesen und schreiben. Dann noch zum schreiben: ENVIRONMENT Variable := Textwert oder @SetEnvironment(Variable;Wert) aber @GetEnvironment ist mir unbekannt!!!
Gruss ...
Hoshee
-
Also, in R5 ist das so:
Mit der @Formelsprache kann man keine Systemvariablen aus der NOTES.INI lesen oder setzen, sondern nur User-Variablen. Das sind die Variablen, die mit $ beginnen.
Wenn ich bspw. @Environment("Vorname") verwende, greift er auf die NOTES.INI Variable "$Vorname" zu.
Es gibt die folgenden Funktionen
ENVIRONMENT
@Environment(...)
@SetEnvironment(...)
Andreas
-
OK, OK, den @Get gibt es wirklich nicht, da muss ich mich entschuldigen. Aber Du kannst mittels Lotus Script Systemvariablen auslesen:
dim session as new NotesSession
dim env as string
env = session.GetEnvironmentString("Servername", true)
Einfach hinter den Variablenname die Option "True" setzten, damit werden Systemvariablen ausgelesen.
Meff
-
Hi Meff,
macht ja alles nix. ;)
Das ursprüngliche Problem von Eike war ja, dass er einen Formelsprachen-Agenten hat.
Wär natürlich genial, wenn's sowas wie Evaluate auch in der Formelsprache für Script gäbe...
Also gibt es wohl nur eine Lösung:
In die NOTES.INI eines jeden Servers muss man irgendwie eine Environmentvariable eintragen wie z.B.
$Servername=HAL
Das kann man dann mit @Formeln abfragen.
Sorry, aber was anderes weiß ich auch nicht.
Andreas