Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Manfred.Gipp am 15.03.07 - 11:09:37
-
Hallo,
ich habe eine Dialogbox, die es ermöglicht mehrere Werte zu wählen ohne neue Eingaben zu machen.
Ich möchte jetzt aus dieser Dialogbox die Werte, die gewählt wurden weiter verarbeiten, ohne sie in dem darunterliegenden Dokument zu speichern.
Die Frage ist: Wie kann ich nach dem Schließen der Dialogbox auf die gewählten Werte zugfreifen? Und wie frage ich den Code ab, mit dem die Dialogbox beendet worden ist?
Vielleicht hat hier jemand eine Antwort.
Gruß
Manfred
-
Hallo
LS oder @Formulas ???
In LS kein Problem. Einfach ein "Dummy"-Doc erzeugen und das in der Dialogbox verfügbar machen.
Im späteren Verlauf die Werte aus dem dummxdoc lesen und nicht das Dummydoc speichern.
-
Geht nur mit LS. Mit Formeln hast du prinzipiell keine Möglichkeit, mit der Ausnahme des Umwegs über die ini-Datei. Allerdings würde ich diesen Weg nur wählen, wenn es keine andere Möglichkeit gibt. Es besteht die Gefahr eines zumüllens der ini-Datei.
Axel
-
Verstehe ich das richtig, dass beim Drücken des OK oder Cancel Buttons in QueryClose von der Dialogmaske ein Dokument in der DB erzeugt wird und danch wieder gelöscht werden soll?
-
Nein.
Du erstellst ein Dummy-Dokument und rufst es als Dialog auf.
Axel
-
aber dann kann ich im Dialogfenster nicht mehr auf das zugrundeliegende Dokument zurückgreifen.
Also:
Das Dialogfenster füllt sich mit Informationen aus einem Dokument das gerade vom Benutzer gewählt worden ist. Der Benutzer soll daraus eine Auswahl treffen und diese Auswahl (insgesamt drei Felder) muss ich nach Schließen des Dialogfensters auswerten.
Das Dialogfenster wird durch einen Agenten geöffnet, der wiederum wird von einem Command aus einer Symbolleiste gestartet.
-
Verstehe ich das jetzt richtig, du willst Werte aus dem darunterliegenden Dokument im dialog anzeigen, aber Änderungen nicht zurückspeichern.
Das kannst du mit den entsprechenden Parametern beim Aufruf des Dialoges steuern.
Du möchtest bitte die Designer-Hilfe lesen. Da steht alles genau erklärt.
flag = notesUIWorkspace.DialogBox( form$ , [autoHorzFit] , [autoVertFit] , [noCancel] , [noNewFields] , [noFieldUpdate] , [readOnly] , [title$] , [notesDocument] , [sizeToTable] , [noOkCancel] , [okCancelAtBottom] )
...
noFieldUpdate
Boolean. Optional. Specify True if to not pass any edits from the dialog box to the underlying document (for example, if you're passing the edits somewhere else in a Queryclose script for the dialog box form). Otherwise, the edits are passed to the underlying form.
Axel
-
Hier mal der Code mit dem "Dummy"-Dokument
----------snip
Dim notesSession As New NotesSession
Dim doc As NotesDocument
Set doc = notesSession.DocumentContext
Dim db As NotesDatabase
Set db = notessession.CurrentDatabase
Dim Rueckgabe As New NotesDocument (db)
Rueckgabe.OfficePhonenumber = doc.OfficePhonenumber
Dim workspace As New NotesUIWorkspace
Dim Flag As Integer
Flag = workspace.DialogBox ("PhoneSelection",True,True,False,False,False,False,"Bitte wählen sie ihre Nummer",Rueckgabe, False, False,True)
If Flag = True Then
Else
End If
----------snap
Das bedeutet, dass ich in das Dummy-Dokument erst alle Werte reinschreiben muss, damit die Dialogbox die Daten auswerten kann. Und nach der Beendigung der Dialogmaske kann ich aus dem Rueckgabe-Dokument die Felder auslesen?
-
Das bedeutet, dass ich in das Dummy-Dokument erst alle Werte reinschreiben muss, damit die Dialogbox die Daten auswerten kann. Und nach der Beendigung der Dialogmaske kann ich aus dem Rueckgabe-Dokument die Felder auslesen?
Ja - das bedeutet es!! Ist doch kein Akt ^-^
-
War leider doch ein "kleiner" Akt. Weil viele andere Probleme damit auftraten.
Die habe ich, dank eurer Hilfe, jetzt aber beseitigt und es funktioniert.
Danke