Hallo Forum,
bei der Entwicklung einer Dialogbox bin ich auf ein Problem gestoßen. Ich habe eine Dialogbox, in welcher auch versteckte Felder enthalten sind ($currentStep, $nextStep). Die Werte dieser Felder sollen geändert werden, indem auf eine Schaltfläche ("Weiter") geklickt wird. Die Schaltfläche enthält den folgenden Code:
FIELD $currentStep := "1";
FIELD $nextStep := "2";
@Command([RefreshParentNote]);
@PostedCommand([CloseWindow])
Die Werte der Felder vor dem Klick auf die Schaltfläche sind "0" für $currentStep und "1" für $nextStep. Wenn ich die Dialogbox ganz normal als Maske testlaufen lasse, werden die neuen Werte für die Felder korrekt gesetzt. Wenn ich das ganze allerdings per LotusScript in einer Dialogbox laufen lasse, werden die veränderten Werte nicht zurückgeschrieben. Die Werte der Felder sind noch so, wie vor Aufruf der Dialogbox.
Die Dialogbox wird wie folgt aufgerufen:
Dim uiws As New NotesUIWorkspace
Dim ses As New NotesSession
Dim db As NotesDatabase
Dim tmpDialogBox As NotesDocument
Dim result As Integer
Set db = ses.CurrentDatabase
Set tmpDialogBox = db.CreateDocument
result = uiws.DialogBox("($dialog)",True,True,True,False,False,False,"Dialogbox",tmpDialogBox,True,True,False)
Eine Überprüfung des Objektes tmpDialogBox per Debugger ergibt für die Felder $currentStep "0" und für $nextStep "1", obwohl ich auf die Schaltfläche "Weiter" geklickt habe, also die Werte, welche für die Felder initial eingestellt sind.
Der Effekt tritt unabhängig davon auf, ob die Felder bearbeitbar sind oder berechnet mit dem eigenen Namen als Wert eingetragen.
Hat jemand eine Idee, wo ich was verkehrt mache? Habt ich überhaupt ausreichend dargelegt, was ich will?
Viele Grüße
Harry