Moin moin
kurz vorweg: Ich nutze ein Script, dass ich hin und wieder den Kollegen per Mail (Button) zuschicke, mit dem die Kacheln abhängig von der Geschäftsstelle installiert werden.
Alle Geschäftsstellen habe einen Server und dort liegt normalerweise auch der "MailServer". Das heisst: Ich hole mir aus die Umgebungsvariabel "MailServer" und füge per "Call UiWs.addDatabase...." die Kachel hinzu.
Das ist normalerweise kein Problem, hätten wir nicht in der Hauptstelle zwei Notes-Server.
Auf SERVERA laufen alle Anwendungen und SERVERB stellt nur die Postkörbe zur Verfügung.
So dachte ich mir (auch wenn es nicht elegant ist), frage ich einfach den ermittelten "MailServer" im Script fest ab und prüfe, ob nicht jemand versehentlich den "SERVERB" angegeben hat. Wenn ja, dann wird der Wert (unschön) im Script mit "SERVERA" ersetzt.
sMailServer = oSession.GetEnvironmentString("MailServer",True)
If cMailServer.common = "SERVERB" Then
cMailServerNew = "SERVERA"
Else
cMailServerNew = cMailServer.common
End If
Der Eintrag "MailServer" in der names.nsf ist hin und wieder klein oder GROSS geschrieben. Das ist mein Problem. Die simple If-Abfrage prüft nur, ob der Wert (im obigen Beispiel) GROSS geschrieben wurde. Ich finde es dabei ziemlich unelegant, wenn ich jetzt alle möglichen Schreibweisen überprüfen muss.
In der Formelsprache würde ich einfach mit einem Uppercase den String vergleichen.
Ich konstruiere mal ;-)
If
@UPPERCASE(cMailServer.common
) = "SERVERB" Then
Schicke, gelle? ;-)
Wie geht das aber wirklich in Lotus Script?