Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: hmarco am 12.11.02 - 16:20:04
-
Hallo,
ich brauche mal einen kleinen Tipp, ich möchte,
das mein Dokument, vor dem schließen einmal aktuallisiert wird.
Dies muss einmal beim Anlegen des Dokumentes und beim ändern des Dokumentes passieren.
Außerdem müssten die Antworten auf das Dokument auch gleichzeitig mit aktualisiert werden.
Habt ihr da eine Idee?
Mfg Marco
P.S.: Ist noch ein Problem mit meiner gruseligen Passwortdatenbank. ;D
-
Theoretisch solltest du im Querysave mit uidoc.Refresh() das Dokument vor dem Schließen aktualisieren können.
Und die Antworten kriegst du im QS mit Document.ComputeWithForm() so hin.
z.B.:
Dim doc As notesDocument
Dim resp As NotesDocument
Dim coll As NotesDocumentcollection
Set coll = doc.Responses
Set resp = coll.GetFirstDocument
Do While Not resp Is Nothing
Call resp.ComputeWithForm(True,True)
Call resp.Save(True,True)
Set resp = coll.GetNextDocument(resp)
Loop
lg
-rar
-
Hallo,
danke für das Skript, :-*
jedoch bekommen ich eine Fehlermeldung:
"Object Variable not set"
Was kann das bedeuteten.
Scheint bei diesem Befehl aufzutreten:
Set coll = doc.Responses
Mfg Marco
-
Du mußt das doc natürlich zuweisen. Im Querysave z. B. mit
set doc = Source.Document
-
Hallo,
geht leider immer noch nicht. :'(
Ich hänge mal meine Paswortdatenbank an.
Dieses Skript habe in in der korregierten Fassung in der Maske Kunde,
jedoch noch nicht in der Maske Teilprojekt.
Würdest du dir das wohl einmal ankucken.
Mfg Marco
-
Probier mal dasda
Dim doc As NotesDocument
Dim resp As NotesDocument
Dim coll As NotesDocumentcollection
Set doc = Source.Document
Set coll = doc.Responses
If Not coll Is Nothing Then
Set resp = coll.GetFirstDocument
Do While Not resp Is Nothing
Call resp.ComputeWithForm(True,True)
Call resp.Save(True,True)
Set resp = coll.GetNextDocument(resp)
Loop
End If
-
Hallo,
der Fehler tritt nicht mehr auf. :D
Jedoch macht er die Aktulisierung nicht. :'(
Es wird nämlich das Skript im QueryOpen vom Teilprojekt
nicht nochmal ausgeführt.
Mfg Marco
-
... für die Aktualisierung während der Eingabe nimmst du den Code ins PostRecalc...
ata
-
Das ComputeWithForm berechnet nur das Dokument neu. (Formeln in berechneten Feldern und so.) Es fuhrt aber nicht das script im Queryopen aus, da das Dokument ja nicht geöffnet wird.
Du könntest aber das Script aus dem QO des Teilprojektes in das vorherige Script einfügen...
Do While Not resp Is Nothing
resp.Autor3 = doc.Systemtechniker
Call resp.ComputeWithForm(True,True)
Call resp.Save(True,True)
Set resp = coll.GetNextDocument(resp)
Loop
-rar