Domino 9 und frühere Versionen > ND6: Entwicklung
Link auf Child Dokumente
Axel:
--- Zitat von: Andreas Huhn am 14.11.05 - 11:31:36 ---response muß ich natürlich noch setzen, aber da bekomme ich grade keinen Verweis auf das aktuelle Doc.
mit Source.Document klappt es nicht. Ist ja auch vom Typ uiDocument.
--- Ende Zitat ---
Source ist vom Typ uidocument und mit Source.Document muss das aber funktionieren, Die etwas umständlichere Methode wäre die hier:
...
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Set uidoc = workspace.CurrentDocument
Set response = uidoc.Document
...
Axel
Andreas Huhn:
Der Code befindet sich im QuerySave Event. Egal ob ich es mit source.document oder der 'etwas umständlicheren Lösung' probiere, ich bekomme die Fehlermeldung:
"Invalid universal id"
laut Debugger in der Zeile:
Set parent = db.GetDocumentByUNID ( response.ParentDocumentUNID )
Mahlzeit!
Axel:
Hi,
upps, ich glaube, dass liegt daran, dass das Dokument nocht nicht gespeichert wurde und es dadurch noch keine ParentDocumentUNID hat.
Verlagere das Ganze mal ins PostSave-Event.
Axel
Andreas Huhn:
Genau. Daran lags. Jetzt merk ich erst was das für einen Rattenschwanz nach sich zieht.... Denn ich muß das für bis zu 20 Zeilen überprüfen ob sie Teil der Bestellung waren. Also braucht jedes sein eigenes Statusfeld. Da muß ich mich jetzt durchkämpfen. Ich hab da auch schon eine Idee. Bei Aufruf der Rückantwort schreib ich gleichzeitig in jedes der 20 Statusfelder eine 1 wenn die zugehörige Checkbox aktiviert war. im PostSave Event überprüfe ich nun jedes der 20 Felder auf eine "1" und falls gefunden ändere ich es in ein "Bestellt". Diesen Text wiederrum werte ich in einer HideWhen Formel für eine Ampelanzeige Rot/Grün aus.
Allerdings klappt das Lesen der Felder nicht.
Msgbox parent.Status
und
Msgbox Str(parent.Status)
liefern ein "Type mismatch"
Würde es so machen:
If Str(parent.BStatus_1) = "1" Then parent.BStatus_1 = "Bestellt"
If Str(parent.BStatus_2) = "1" Then parent.BStatus_2 = "Bestellt"
...
vielleicht später wenns mal läuft noch ne Schleife draus.
Grüße!
Axel:
Hi,
parent.Status liefert einen Variant-Wert zurück. Für eine Anzeige oder auch eine IF-Abfrage musst du noch (0) dranhängen.
Msgbox parent.Status(0)
Axel
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln