Das Notes Forum
Domino 9 und frühere Versionen => ND9: Entwicklung => Thema gestartet von: Legolas am 07.04.14 - 13:28:11
-
Hallo Zusammen,
ist dies möglich:
In einer View sollen nur Dokumente angezeigt werden, deren Inhalt im multivalue Date-Feld älter sind als der aktuelle Tag.
Falls es geht, wie bitte?
Grüße
Bernd
-
Du musst
- ermitteln, ob Du wirklich einen Datumswert oder -Liste hast,
- mit @Sort sortieren
- letzten (jüngsten) Wert mit @Subset (Liste; -1) abfragen und auswerten.
HTH,
Bernhard
-
In einer View sollen nur Dokumente angezeigt werden, deren Inhalt im multivalue Date-Feld älter sind als der aktuelle Tag.
Falls es geht, wie bitte?
Bitte nicht.... ::)
Da du zwangsläufig mit @Now oder @Today in der Auswahlformel arbeiten musst, kann so eine Ansicht schnell mal zu einem Performanceproblem führen.
Besser wäre, wenn du einen Folder verwendest, oder die Auswahlformel täglich anpasst. In beiden Fällen brauchst du einen Agenten, der die Arbeit für dich erledigt.
Anstatt @Sort kannst du ggf. auch mit @Min arbeiten oder einfach vergleichen mit "liste < @Date(2014;4;6)". Bei Mehrfachwerten heißt das ja, "ist einer der Werte kleiner als gestern"
Gruß
Roland
-
Danke für den wichtigen Hinweis, Roland. Ich gehe zwar ganz sicher davon aus, daß Bernd sich dieser Problematik bewusst ist (wir kennen uns persönlich), aber an die nachfolgend Lesenden hätte ich auch denken müssen.
Nevertheless ist aber auch für erforderliche Maßnahmen bei grösseren Dokumentenzahlen (Verschieben in persönliche oder gemeinsame Ordner, Agents zur Dokumentmarkierung oader ähnliches) das Auswahlkriterium identisch.
Vielleicht meldet sich Bernd ja auch noch mal.
Bernhard
-
Hallo Zusammen,
die Dinge sind oft leider anders als gedacht!
Ich habe eben noch festgestellt, dass das Array mit Datumseinträgen eine Textliste ist.
Mein Ziel war es, per DB.search() über mehrere tausend Dokumente, schnellstmöglich die Daten zu haben um diese dann nach EXCEL zu exportieren.
Ein DB.search liefert mir bei einer Volltext indizierten DB in wenigen Sekunden ein Ergebnis für das eine Schleife mit Feldinhaltprüfung ein Vielfaches an Zeit benötigt.
Da aber die Datumsliste leider ein Textfeld ist, greift die @ Formel "liste < @Date(2014;4;6)" hier leider nicht.
Ich werde wohl nicht drum rum kommen, hier eine Do - While Schleife zu verwenden.
Oder hat noch jemand einen zielführenden Vorschlag?
Grüße an Euch alle und Danke für die Unterstützung
Bernd
-
Dann brauchst Du als innersten Term eben noch ein @ToTime. Darum dann @ Sort und dann das @Subset.
Bernhard
-
Heureka,
so geht's.
@Subset(@Sort(@ToTime(RemDate))) >= @Date(2014;04;08)
Danke Bernhard
Grüße
Bernd