Hallo Bernhard,
anbei der Code
Exiting-Event
Sub Exiting(Source As Field)
'Funktion: Die Prozedur führt beim Verlassen des Feldes die Prüfung ob Gebuehren anfallen durch
'
'Argumente: Source; Objekt-Variable vom Typ 'Field', welche den Bezug auf das aktuelle Field übergibt
'
'Rückgabe: keine
'
'Call: subPruefenGebuehren (Globals)
'
'Prozedur
subPruefenGebuehren
End Sub
Aufgerufene Prozedur
Public Sub subPruefenGebuehren()
'Funktion: Die Prozedur überprüft ob Gebühren für die Rücküberweisung anfallen und schreibt das Ergebnis in
' das Feld 't_GebuehrenFlag'.
'
'Argumente: keine
'
'Rückgabe: keine
'
'Calls: keine
'
'Variablendeklaration
'Objekt-Variablen
Dim nwuGUI As notesuiworkspace
Dim nduThis As notesuidocument
Dim ndoDoc As notesdocument
'Variant-Variablen
Dim vntValue As Variant
'Prozedur
Messagebox "Otto"
Set nwuGUI = New notesuiworkspace
Set nduThis = nwuGUI.currentdocument
Set ndoDoc = nduThis.document
vntValue = ndoDoc.getitemvalue("t_FswGebBelast")
If vntValue(0) = "B" Then
vntValue = ndoDoc.getitemvalue("t_FswKriterienGebBelast")
vntValue = Evaluate(vntValue(0), ndoDoc)
End If
ndoDoc.replaceitemvalue "t_GebuehrenFlag", vntValue(0)
nduThis.refresh
nduThis.refreshhideformulas
End Sub
Zur Maske:
Die betreffenden Felder bis auf eins mit Hide-When-Fromel belegt und werden dynamisch ein- und ausgeblendet. Außerdem liegen die Felder innerhalb von Tabellen (nur falls das von Bedeutung sein sollte). Beim Verlassen soll eine Prüfung der Werte durchgeführt werden und ein entsprechendes Kennzeichen gesetzt werden. Leider kann ich die Prüfung nicht mit der Formelsprache durchführen, außer es gibt ein Gegenstück zum LS Evaluate.
In der Maske ist die Option 'Felder automatisch aktualisieren' aktiviert.
Reicht das an Information?
Rainer