Autor Thema: View Selection  (Gelesen 4289 mal)

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
View Selection
« am: 11.06.04 - 12:16:09 »
Hallo, ich hab ein Problem mit meiner View Selection.
Ich hab als Formel das drinnen stehe:

_Datumd:=@TextToTime("Heute");
_Datume:=@TextToTime("Today");
_Today := @If(_Datumd > [01.01.1900];_Datumd;_Datume);
SELECT Form="Document" & ok="" & @Adjust(_Today;0;0;0;0;0;0) = Date

Wobei Date ein Feld mit dem Typ Datum ist.
Die Dokumente werden täglich mit einem Agent erzeugt der das Feld Date so erstellt:
   doc.date=""
   Set item = doc.GetFirstItem( "Date")
   Set dateTime = New NotesDateTime( Now )
   Set item.DateTimeValue = dateTime
Nun wenn ich jetzt im Designer die Ansicht refreshe dann zeigt er mir wirklich nur die doc's von heute an.
Aber wenn ich mir die Ansicht im Notes ansehe dann sehe ich auch immer ältere Dokumente.
Es hat aber auch schon funktioniert!!
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re:View Selection
« Antwort #1 am: 15.06.04 - 11:01:15 »
Kennt niemand eine Lösung für das Problem? ???
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:View Selection
« Antwort #2 am: 15.06.04 - 11:22:00 »
Ich habe nur Vermutungen und Anmerkungen:
Wie oft wird denn die Ansicht automatisch aktualisiert ? Was ist da eingestellt ?
Code
@Adjust(_Today;0;0;0;0;0;0) = Date
Das dürfte eigentlich sowieso nicht funktionieren: Das "=" setzt ja voraus, dass beide Werte sekundengenau übereinstimmen. Hier würde ich @Date einsetzen.

Dein Date-Feld kannst Du übrigens erheblich einfacher setzen:
doc.Date = Now.

Bernhard

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:View Selection
« Antwort #3 am: 15.06.04 - 11:26:21 »
Hi,

ich vermute ins Blaue hinein, dass der Haken in dieser Zeile liegt:

_Today := @If(_Datumd > [01.01.1900];_Datumd;_Datume);

Versuch's doch mal so z.B.

SELECT Form="Document" & ok="" & @Adjust(@Today;0;0;0;0;0;0) = Date

Um den Kritikern vorzubeugen, die Probleme von @Today in einer SELECT-Formel sind mir durchaus bewusst.

Alternative wäre folgendes: es gibt ja anscheinend einen Agent, der in der Nacht läuft und neue Dokumente erzeugt.

Wäre es damit möglich auch für alle anderen Dokumente ein Flagfeld (z. B. auf 0 für nicht heute) zu setzen? Alle neuen sollten in dem Flagfeld 1 beinhalten. In der View-Formel könnte man dann das Feld auswerten.

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Glombi

  • Gast
Re:View Selection
« Antwort #4 am: 15.06.04 - 11:35:47 »
Den Effekt mit @TextToTime("Heute") hatte ich auch: Die Ansicht wird nicht automatisch aktualisiert.

Es gibt 2 Workarounds:
1. Du verwendest @Today
Nachteil: Der User sieht immer den blauen Aktualisierungskringel. Ausserdem wird das aus Performance-Gründen nicht empfohlen.

2. Du bzw. Euer Admin erstellt ein Programmdokument:
Programmname: updall
Befehlszeile: DeineDatenbank.nsf -R
Zeitplan: einmal am morgen bspw. 06:00
Dadurch werden alle Ansichten in der Datenbank neu berechnet.

Andreas

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:View Selection
« Antwort #5 am: 15.06.04 - 23:22:20 »
Ich ergänze noch einen "1b" - Workaround zu Andreas' Liste:

1b. Du verwendest @Today und stellst beim Karlson-auf-dem-Dach - Tab der Vieweigenschaften als Refresh-Index "Auto, at most every" und dann einen akzeptablen Wert, z.B. 6 Stunden, ein. Damit hast Du keinen Kringel mehr und ist performance-seitig besser.

Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:View Selection
« Antwort #6 am: 15.06.04 - 23:35:33 »
Irgendwie sollte sich jetzt mal einer (von den Gegnern) mit den entsprechenden zeitlichen und technischen Möglichkeiten bereit erklären, das @Today-in-Ansichten-Syndrom mit Facts zu untermauern. @Today in Spalten oder Zugriffsformeln geht ohne weiteres (will heissen: Ohne, dass es der User wirklich merkt, selbst, wenn er nur via ISDN angeschlossen ist - das Geraffel passiert ja auf dem Server), wenn die Anzahl der Docs überschaubar ist und der Aufbau der Ansicht nicht zu kompliziert ist. Ich setze das ohne erkennbare Nachteile öfters ein - wie gesagt, es kommt auf die Datenmenge an. Eine generelle Verdammnis kann ich nicht nachvollziehen.

Bernhard

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:View Selection
« Antwort #7 am: 15.06.04 - 23:48:33 »
Irgendwie sollte sich jetzt mal einer (von den Gegnern) mit den entsprechenden zeitlichen und technischen Möglichkeiten bereit erklären, das @Today-in-Ansichten-Syndrom mit Facts zu untermauern. @Today in Spalten oder Zugriffsformeln geht ohne weiteres

U.a. Manfred hat das hier schön erklärt:
http://www.madicon.de/id/5RQNJ9

Ich kann mich auch erinnern es gab hierzu schon irgendwo auf ibm.com fundierte Beiträge - habe leider gerade nix zur Hand. Ich bin da auch eigentlich nicht der Richtige zur Beantwortung (da kein Admin), ein Admin mit "Server-Gefühl" kann dazu bestimmt genaueres sagen.

Ich habe nur ein schlechtes Bauch-Gefühl, wenn oben ständig ein AKtualisierungskringel da ist, und manche User da regelmäßig wie wild draufklicken und man die GUI dabei dezent leicht "blinken" sieht als wenn dabei jedesmal Server-Requests laufen.

Ist wie gesagt bei mir ein reines Bauch-Gefühl, dass das nicht gut sein kann.....
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:View Selection
« Antwort #8 am: 16.06.04 - 00:25:48 »
Hierzu kann ich nur sagen: Es kommt auf die Umstände an.
Die eine Lösung ist nicht immer aktuell, die andere beansprucht Performance (wenn es um viele Daten geht), die nächste ist nur scheinbar besser (embedded view - die rechnet ja auch jedes Mal neu durch) etc.
Das muss wohl jeder, der eine dem Produktivbetrieb entsprechende Datenmenge zur Verfügung hat (was ja für den Entwickler kein Problem darstellen sollte), im jeweils aktuellen Kontext selber durchspielen.

Bernhard

Offline robertpp

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 940
  • Geschlecht: Männlich
Re:View Selection
« Antwort #9 am: 16.06.04 - 08:37:00 »
Danke für die zahlreichen Antworten.
Ich hab das eigentlich in einer anderen db auch mit dem _Datume und _Datumd
das hab ich eigentlich nur deshalb wenn es ein deu oder ein Eng Server ist das er das Datumsformat checkt.

Ich hab es nach Glombi's 2. Variante gemacht. Jetzt geht es vorerst einmal ich hoffe das bleibt so.

Ich hab eigentlich nicht so viele doc's in der Anischt ca. 20 und es sind zwei Ansichten.
Mittels Agent wollte ich es nicht machen da er ja wirklich nur die neuen doc's erstellt.

Danke nochmals für die schelle Hilfe.
Robert
------------------------------------------------------------
1250 Notes User Client von 5.0.5 bis 6.5.4     WIN2000, XP
14 Notes Server von 6.5 bis 6.5.4 WIN2000, XP

32   Notes Server von 5.0.1 bis 6.5.4 in unserer Domain
323 Notes Server weltweit mit 38000 User in einem Adressbuch

Glombi

  • Gast
Re:View Selection
« Antwort #10 am: 16.06.04 - 09:48:58 »
IBM / Lotus scheint sich nicht groß um die @Today Problematik zu scheren, wenn ich mir bspw. die Teamroom Schablone ansehe.

Im Gegenteil: Aus der KBASE:

View Selections Using @TextToTime and Today Return Too Many Documents

Problem:

A view which uses a View Selection formula based on @TextToTime and "Today" returns more than the expected documents.   If you select the F9 key to refresh the view then only the expected documents are contained within the view; the unwanted documents disappear, as desired.

Solution:

This issue has been reported to Lotus Quality Engineering.

Workaround:
@Today is the equivalent of @TextToTime("Today").  Use @Today in the formula instead.  

Note: @Today and @TextToTime("Today") both have a time stamp equivalent to 12 AM.  Therefore, it is unnecessary to use a formula construction such as @TextToTime("Today" + "00:00:00") to create a time stamp of 12 AM; this is done automatically when using @Today.


Dann noch ein anderer Vorschlag:
A workaround for this issue is to run a scheduled agent on the documents after midnight each day which flags documents based on the condition of the selection formula that you are using in the view.  For example, suppose you want to show documents in a view that have a field equal to today's date.  A flag can be set on those documents using an @if(FieldName=@Today;Flag="1";Flag="0").  Then, for your new view use a selection formula based on whether the flag field is set to a certain value (for example, Select Flag="1").

Super, da freuen sich die per Handy replizierenden Aussendienstler...


Andreas
« Letzte Änderung: 16.06.04 - 09:50:40 von Glombi »

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz