Domino 9 und frühere Versionen > ND8: Entwicklung
Dialogbox
Peter Klett:
Also sinngemäß so:
...
Set doc = uidoc.Document
Dim tmpdoc As New NotesDocument (db) 'temporäres Dokument erstellen
Call doc.CopyAllItems (tmpdoc) 'Alle Items aus doc in das temporäre kopieren
Call workspace.DialogBox ("TEL_ADR_ändern", True, True, True, False, False, False, "Kommunikationsadresse ändern", tmpdoc, False, True, True)
If tmpdoc.FlagButton1 (0) = "1" Then
'Button 1 wurde gedrückt
doc.ZuAenderndesFeldBeiButton1 = tmpdoc.InDialogboxEingegebenerWert
End If
usw.
Hedwig14:
Toll, ich glaube wir sind auf dem richtigen Weg ! Vielen Dank.
Ich habe den Aufrufe der DB mit dem TMP-Dok hinbekommen.
Jetzt muss ich meinem Schalter in der DB nur noch verraten wie er an das TMP-Dok kommt in dem ich das Flag "Button gedrückt" hinterlegen muss..
Quasi hier:
Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim oWS As New NotesUIWorkspace 'Dialogmaske
oWS.CurrentDocument.Close 'Dialogmaske schließen
End Sub
Peter Klett:
workspace.CurrentDocument.Document im Button ist das tmpdoc, also das mit der Dialogbox geöffnete Dokument
Hedwig14:
OH TOLL !!
Es hat geklappt ! Vielen Vielen Dank für die tolle Hilfe !
SUPER !
Peter Klett:
Nur noch einmal zur Erklärung:
Der Umweg über das tmpdoc ist deshalb wichtig, weil Du mit Deiner Schaltfläche die Dialogbox abbrichst. Durch den Abbruch werden normalerweise die Informationen aus der Dialogbox nicht in das aufrufende Dokument geschrieben. Der Eingriff mittels RefreshParentNote führt aber dazu, dass das trotzdem erfolgt.
Durch das tmpdoc kannst Du nun im Nachgang genau die Felder übernehmen, die Du haben willst, und nicht automatisch alle (User ändert alle möglichen Daten in der Box und bricht dann ab).
Ich baue Dialogboxen nur über temporäre Dokumente, das ist manchmal etwas aufwendiger, aber ich kann ganz genau steuern, was ich von der Rückgabe nutze und was nicht. Genauso kann ich steuernde Felder in das tmpdoc schreiben, ohne dass die gleich beim nächsten Speichern im aufrufenden Dokument hinterlegt sind. Also insgesamt eine saubere Trennung zwischen dem produktiven Dokument und der Dialogbox.
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln