Folgendes Problem:
Datenbank 1/Maske A öffnet per Button Datenbank 2/Maske B, diese üernimmt Werte aus der Maske A.
Wie kann ich im Postopen oder Querysave der Maske B das Dokument der Maske A (nach auslesen der Werte) schliessen? Gibt es da eine Lösung in der Formelsprache oder in LotusScript?
Anders formuliert:
Wenn - aus welchem Grund auch immer- Dokumente nur
gespeichert, aber nicht geschlossen werden, so werden diese
in Notes in der oberen Taskleiste angezeigt, wobei jeweils nur
ein Dokument aktiv ist. Wie können nun die "nicht-aktiven"
Dokumente per Formel/Script geschlossen werden?
Danke für Eure Beiträge!
Eves :sunclaus:
Schliessen eines nicht aktiven Dokumentes
- Eves
- Erledigt
-
-
Hallo,
ich würde es so machen, dass Maske A vor dem Öffnen von Maske B einen INI-Parameter setzt mit Angabe von
"Server!!Datenbank;UniversalID".Im Postopen der Maske B kann dann der INI-Parameter ausgelesen werden, per Script das Dokument im Hintergrund referenziert und dann geschlossen werden. Anschließend sollte man den INI-Parameter unbedingt leeren, damit der Postopen nicht versehentlich zieht, wenn die Maske gar nicht von einer anderen aufgerufen wurde.
Ich hoffe, dass hilft Dir weiter?!?
Gruß
Thomas Heiner
http://www.tgh-online.de -
Hi,
das geht in Script ganz einfach.
Ich hab eine Anwendung in der brauche ich bestimmte Dokumente nur um damit in einer Ansicht etwas anzuzeigen. Wenn jemand draufklickt soll stattdessen ein anderes Dokument geöffnet werden.
So geht's:Sub Postopen(Source As Notesuidocument)
'Hier soll verhindert werden, dass das Dokument überhaupt geöffnet werden kann.
'Stattdessen soll auf das übergeordnete Protokoll weitergeleitet werden.
'Basisdeklarationen
Dim session As New NotesSession
Dim uiws As New NotesUIWorkspace
'Objektdeklarationen
Dim db As NotesDatabase
Dim ddoc As NotesDocument
Dim sdoc As NotesDocument
Dim uidoc As NotesUIDocument
'Variablendeklarationen
Dim uid As String
'Start
Set sdoc = Source.Document 'Back-End Instanz des UIDOCs öffnen
uid = sdoc.Ft_ParentID(0) 'DocUniqueID des Protokolls auslesen
Set db = session.CurrentDatabase 'Objekt für die aktuelle Datenbank anlegen
Set ddoc = db.GetDocumentByUNID(uid) 'Das Protokoll anhand der DocUniqueID finden
Set uidoc = uiws.EditDocument(False, ddoc, False) 'Das Protokoll ins UI holen
Call Source.Close
End Sub