Domino 9 und frühere Versionen > ND8: Entwicklung
Mit @SetField werte setzen ?
(1/1)
Scotty67:
...spiele gerade herum, komm auf einen grünen zweig...
ein radiobutton-feld, ich hätte gerne bei auswahl eines bestimmten werts (von z.b 4 möglichen) das automatisch in
einem anderen radiobutton-feld auch ein Wert gesetzt wird....
ich nehme an das die Funktion @SetField die richtige ist
@SetField("Status";"Open"))
lg/hannes
Axel:
--- Zitat von: Scotty67 am 15.06.10 - 15:11:26 ---ich nehme an das die Funktion @SetField die richtige ist
@SetField("Status";"Open"))
--- Ende Zitat ---
Für das was du machen willst, ist es die falsche Funktion. Da du den Feldwewrt bei einer Änderung setzen willst, musst du das OnChange-Event des einen Optionsfeldes nutzen und hier ist nur Script möglich.
Ein ganz einfaches Beispiel könnte so aussehen. Es fehlt allerdings jegliche Fehlerbehandlung.
--- Code: ---Sub Onchange(Source As Field)
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Set uidoc = ws.CurrentDocument
Call uidoc.FieldSetText("Status", "Open")
End Sub
--- Ende Code ---
Zusätzlich musst du in den Feldeigenschaften auf den 3.Reiter (Propellerhut) die Option "Run Exiting/Onchange events alfter value change" setzen.
Axel
WildVirus:
N'Abend,
außerdem sollte das markierte Häkchen aktiviert werden
Es geht auch so, dass das Zielfeld sich selbst berechnet in Abhängigkeit vom Quellfeld.
CU,
Axel
Scotty67:
...danke für den Tipp nur funktioniert das nur im Debug-Modus - aber vielleicht fällt euch ja noch dazu etwas ein...
hier der script hinter dem OnChange
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Set uidoc = ws.CurrentDocument
Dim x As String
x=uidoc.FieldGetText("Division")
If x="PP/PS" Then
Call uidoc.FieldSetText("BusinessArea", "PP/PS")
End If
Das Feld BusinessArea wiederum ist ein RadiobuttonField welches die eigenen Werte
wiederum über diese Formel bekommt:
@Unique(@DbLookup("Notes":"NoCache";"":"";"ConfigBa";Division;2))
Axel:
Eventuell ist es ein Aktualisierungsproblem. Versuch mal als letzte Anweisung ein
Call uidoc.Refresh
Du kannst in deinen Code an den entsprechenden Stellen auch mal eine Messagebox... - Anweisung einfügen. Dann siehst du auch ohne Debug wo du dich gerade im Code befindest.
Axel
Navigation
[0] Themen-Index
Zur normalen Ansicht wechseln