Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Freezer am 10.11.03 - 16:59:54
-
Hallo zusammen!
Wie bekomme ich per Formelsprache den Zugriff auf Felder in einem bestimmtes Dokument in einer Ansicht?
SV: Ich hab´ eine Ansicht, in der in der ersten Spalte die Dokumente nach dem Jahr und in der 2. Spalte nach dem Monat sortiert sind. Die Ansicht enthält Dokumente für vergangene Monate und Jahre, sowie für zukünftige Monate und Jahre. Ich möchte auf die Felder des Dokumentes zugreifen, das gerade aktuell ist, also das aktuelle Jahr und den aktuellen Monat enthält.
Hab´s bereits mit @DbLookup und @DbColumn probiert, bin aber leider zu keinem Ergebnis gekommen.
Kann mir vielleicht irgendwer weiterhelfen?
Danke, Freezer
-
Wo willst Du denn diese Formel definieren? In einer Maske oder in einem anderen Vieh?
-
Bau Dir eine zusätzliche Spalte ein als erste Spalte, die aus Jahr und Monat besteht, also Formel Jahr+Monat.
Dann kannst Du @DBLookup verwenden, indem Du den Suchkey aus dem aktuellen Datum bildest.
Also mal so grob :
_Monat:=@Text(@Month(@Today)));
_Jahr:=@Text(Year(@Today)));
_Key:=_Jahr+_Monat;
_tmp:=@DBLookup("":"NoCache";"Server":"DB";"View";_Key;"Feldname")
-
Ergänzend zu Driri's Vorschlag:
Ich würde hierfür eine versteckte Ansicht machen (NIEMALS eine öffentlich sichtbare Ansicht für programmatischen Zugriff benutzen !), die nur aus zwei Spalten besteht:
- @Text (@Year (Dein Datumsfeld)) + @Text (@Month (Dein Datumsfeld)) - Sortieren nicht vergessen !
- @DocumentUniqueID
In der 1. Spalte suchst Du wie von Driri beschrieben mit @dbLookup), die zweite liest Du aus und hast damit einen Wert für
@GetDocField.
Und wegen Ordnung aus Sauberkeit im Schlachthof muß Du bei @dbLookup noch darauf reagieren, ob ggf. mehr als ein Dok zurück geliefert wird und in diesem Fall entsprechend verfahren.
HTH,
Bernhard
-
Super Spitzenforum!!! ;D
Danke schön! Hat genau so geklappt!
Freezer!
PS: @SemeaphorosWo willst Du denn diese Formel definieren? In einer Maske oder in einem anderen Vieh?
Die Formel ist in einem "berechnetem Text" auf einer Seite