Hallo.
In einer Ansicht habe ich eine Aktion, die eine Dialogbox aufruft.
vRet = oUIWorkspace.DialogBox("(mToolboxUnterlagen)", True , True, True , False, True, False, "Toolbox", oTempDoc, True, True , True)
In der Dialogbox hab ich zwei eigene Buttons für OK (Typ OK) und Abbruch (Typ Abbrechen).
Zusätzlich habe ich ein Hilfsfeld, in der ein Wert reingeschrieben wird, jenachdem, welcher der beiden Buttons gedrückt wird. Das Hilffeld enthält dann den Wert "OK" oder "CANCEL".
In der Dialogbox selber können Werte in diverse Felder (numerisch, Text) eingetragen werden. Im QueryClose prüfe ich nun, ob die eingegebenen numerischen Werte innerhalb eines zulässigen Wertebereichs liegen. Wenn nicht, erscheint eine Msgbox-Fehlermeldung und die weitere Verarbeitung wird mit Continue=false abgebrochen.
Ansonsten ist alles ok und im aufrufenden Script geht's dann weiter.
vWert=Source.FieldGetText("hf_Button")
Continue=True
If ("OK"=vWert) Then
vWert=Source.FieldGetText("f_Gli_Wert")
If((vWert<1) Or (vWert>999)) Then
Msgbox "Der Wert muss zwischen 1 und 999 liegen (inklusive 1 und 999)."
Continue=False
End If
Das Problem: Wenn alle Werte richtig eingegeben wurden und keine Fehlermeldung erscheint, läuft alles so wie es soll (Dialogbox wird geschlossen und das aufrufende Script läuft weiter)
Liegt ein Eingabefehler vor kann man diesen zwar nach wegklicken der Msxbox korrigieren, aber mit Klick auf den eigenen "OK"-Button läßt sich die Dialogbox nun nicht mehr schließen. Das QueryClose wird nicht mehr aufgerufen.
In den Buttons selber wird nur das Hilfsfeld bestückt. Ich habe auch testweise ein RefreshParentNote() eingebaut, die Dialogbox läßt sich beim zweiten Versuch einfach nicht schließen.
Verwende ich die fest eingebauten OK/Cancel-Buttons, funktionierts.
Ich würde aber gerne die eigenen Buttons verwenden. Nur, warum läßt sich die Dialogbox nicht schließen?
Danke im Voraus,
Grüße
Ralph