Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Small am 21.02.05 - 16:25:16
-
hiho,
wir haben in der Firma eine Datenbank mit formatierten Memos, die seit neuestem prüfen soll, ob eine "Mindestversion" des Notes Clients benutzt wird. (zb. 5.0.12 etc)
Ist dies nicht der Fall soll die Datenbank geschlossen werden und stattdessen die Maildatenbank des Users wieder geöffnet werden.
Das Script für die Prüfung habe ich in das Queryopen einer Seite gepackt, die in einer Rahmengruppe immer als Standart geladen wird.
Folgendes Problem:
- wenn ich in dem Postopen continue auf false setzte verunstaltet er mir die Rahmengruppe (Verbergen Formeln werden nicht gesetzt, Seiten nicht geladen, etc)
- generell: ich bekomm die Datenbank einfach nicht geschlossen
Muss ich das ganze an einer anderen Stelle platzieren ?
Wo ist mein Gedankenfehler ?
Danke und Gruß Rene
-
Eine DB schließen geht in R5 mit Script nicht. Daher musst Du es mit Formelsprache mittels @Command([FileCLoseWindow]) machen.
Das ganze dann im Postopen des Datenbank Scripts.
Wie man aber in Formelsprache die genaue Versionsnummer ermittelt, weiss ich momentan nicht. Mit @Version geht es nicht.
Andreas
-
Hallo Andreas, hallo Rene,
Mit @Version geht es nicht.
ich habe @Version gerade mal ausprobiert (Client 5.0.11).
Als Wert wird hier 166 zurückgegeben.
@BrowserInfo( "Version" ) liefert ebenfalls den Wert 166.
Müsste es dann nicht folgendermaßen gehen?
@If(@TextToNumber(@Version) <= 160; @Command([FileCLoseWindow]) ;@Command([FileOpenDatabase]; "Server":"mail.nsf"; ""; ""; ""; "" ))
HTH
Thomas
-
Aus der Hilfe:
@Version
Gibt die Nummer der verwendeten Notes/Domino Version zurück.
Syntax
@Version
Rückgabewert
Versionscode
Zeichenfolge. Die Versionsnummer.
Verwendung
In Spaltenformeln, Auswahlformeln, Formeln für Mail-Agenten oder periodische Agenten gibt die Funktion @Version die Versionsnummer des Domino Servers oder der Notes Workstation zurück, auf der sich die Datenbank befindet. Bei allen anderen Formeln gibt @Version die Versionsnummer der Notes Workstation zurück, die die Formel ausführt.
Der folgenden Tabelle können Sie die Notes/Domino Versionen entnehmen, die den von @Version zurückgegebenen Werten entsprechen.
Zahl, die von @Version zurückgegeben wird Entsprechende Lotus Notes/Domino Version
114 Notes 3.x
136 Notes 4.0, 4.0x
138 Notes 4.1, 4.1x
145 Notes 4.5, 4.5x
147 Notes 4.6
166 Notes 5.0, 5.0x
190 Notes 6.0, 6.0.1, 6.0.2
194 Notes 6.5, 6.0.3, 6.0.x
D.h. man kann damit nicht ermitteln, ob man einen 5.0.11 oder 5.0.12 Client hat.
Andreas
-
Hallo Andreas,
ich glaube, ich muss mich mal um ein Update meiner Hilfe-Datei kümmern. :-[
Meine hört nämlich bei Versionscode 147 auf.
Danke für deine Info.
Viele Grüße
Thomas
-
hiho,
schon mal danke für eure Hilfe.
Mit @Version kann ich nicht wirklich arbeiten, weil die Version dynamisch sein muss.
(muss von 1 Sekunde auf die andere änderbar sein, aber das ist ja auch nicht das Problem :P)
Eine DB schließen geht in R5 mit Script nicht. Daher musst Du es mit Formelsprache mittels @Command([FileCLoseWindow]) machen.
Danke, das schaue ich mir mal genauer an.
Nur mal so aus Neugierde: Wie geht das denn in R6 ? (wir upgraden wohl bald)
Wenn natürlich einer neue Ideen hat, wär ich sehr erfreut diese zu erfahren :)
Gruß Rene
-
In R6 gibt es:
Closes all views and documents in the database, then closes the database.
Hinweis This method is new with Release 6.
Defined in
NotesUIDatabase
Syntax
Call notesUIDatabase.Close
Usage
If a document is being edited, a dialog box asks if the user wants to save the changes.
Andreas
-
hiho,
danke. DAS würde mir jetzt helfen. ;D
Naja, basteln wir mal weiter an einer Lösung für R5.
Edit & Lösung:
Das ganze nicht im Queryopen der Seite sondern im Postopen der Seite platziert (da haben wir nämlich einen NotesUiWorkspace) und dann mittels
workspace.currentdocument.close abbrechen
Danke Leutz, der Tip mit dem Schliessen des Dokumentes war goldrichtig. (wär ich nie drauf gekommen)
Gruß Rene