Domino 9 und frühere Versionen > ND8: Entwicklung
Problem mit Kontrollkästchenfeld
emadowo:
Hallo Notesfreunde!
Ein Feld "Planung" vom Typ Kontrollkästchen hat folgende Formel zur Auswahl:
aktuellesJahr := @Text(@Year(@Date(@Now)));
nächstesJahr := @Text(@Year(@Date(@Now))+1);
übernächstesJahr := @Text(@Year(@Date(@Now))+2);
drittesJahr := @Text(@Year(@Date(@Now))+3);
aktuellesJahr : nächstesJahr : übernächstesJahr : drittesJahr
Damit kann ich über Jahre hinweg immer "das aktuelle und die nächsten drei Jahre" für eine Planung zur Verfügung stellen. Funktionierte soweit ganz gut, bis ich ein Jahr später die Maske um ein neues Feld "Jahr des Rundschreibens" ergänzte. Die beiden Felder haben in der Maske nichts miteinander zu tun.
Folgendes geschieht:
Ein Dokument, welches letztes Jahr erstellt wurde, hat im Feld Planung den Wert "2012", weil es letztes Jahr das "aktuelle Jahr" war (siehe obige Formel) und vom Ersteller des Dokuments 2012 ausgewählt wurde.
Wenn man nun das Dokument bearbeitet und das neue Feld mit einem Wert versorgt und speichert, löscht es den Wert 2012 aus dem Feld "Planung".
Nachdem die Felder keine programmiertechnischen Abhängigkeiten haben, vermute ich, daß es auch nicht am neuen Feld liegt sondern eher daran, dass der Wert "2012" jetzt ja nicht mehr als Auswahl angeboten wird und deshalb gelöscht wird.
Wie kann ich das verhindern? Danke schon im voraus für eure Hilfe!
Grüße aus (dem trockenen Teil) Bayern
Erwin
ascabg:
Hallo,
Durften die User denn mehr als einen Wert in diesem Feld verwenden?
Ausserdem, wenn ich das noch richtig weiss, kann ein Feld vom Typ "Kontrollkaestchen" (Checkbox)
keine Werte annehmen, die nicht auch definiert sind.
Eigenschaft des Feldes "Allow values not inlist" ist nicht aktivierbar.
Andreas
koehlerbv:
@Unique (@Trim (@If (Planung != ""; Planung; "") : <Deine bisherigen berechneten Werte> ))
Bernhard
dnotes:
Da der vorh. Wert nicht mehr in der Liste verfügbar ist wurde nun ja noch einmal bestätigt.
Interessant wäre zu erfahren wie man ihn dennoch behält.
Also muss der alte Wert bei Bedarf - das wäre z.B. wenn es ein bereits gespeichertes Doc ist - mit in die Auswahl aufgenommen werden.
Hier mal ein Beispiel:
--- Code: ---aktuellesJahr := @Text(@Year(@Date(@Now)));
nächstesJahr := @Text(@Year(@Date(@Now))+1);
übernächstesJahr := @Text(@Year(@Date(@Now))+2);
drittesJahr := @Text(@Year(@Date(@Now))+3);
Liste := aktuellesJahr : nächstesJahr : übernächstesJahr : drittesJahr;
@If(@IsNewDoc;Liste;@Sort(@Unique(Planung:Liste)))
--- Ende Code ---
ascabg:
@Bernhard
Kleine Frage zu Deiner Formel.
Ist das nicht ein wenig widerspruechlich, erst abzufragen, ob Werte in einem Feld
vorhanden sind und wenn nein, dann einen "leeren" (hier also ""), vor die neuen
Werte zu stellen.
Eigentlich muesste doch
@Unique(@Trim(Planung : <Deine bisherigen berechneten Werte>)) oder.
@Unique(@Trim(@ThisValue : <Deine bisherigen berechneten Werte>))
ausreichend sein.
Andreas
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln