Das Notes Forum

Domino 9 und frühere Versionen => ND9: Entwicklung => Thema gestartet von: rambrand am 07.06.16 - 14:57:44

Titel: Kalenderansicht zeigt nicht alle Dokumente
Beitrag von: rambrand am 07.06.16 - 14:57:44
Hallo,

eine ältere DB macht seit neuestem wohl Probleme. Die Anwendung verwaltet Ein-, Austritt und Versetzung von Mitarbeitern. Die Austrittsmaske hat z.B. ein Datumsfeld LastDay, in dem der letzte Arbeitstag hinterlegt ist. In der Kalenderansicht wird in der ersten Spalte auf dieses Feld verwiesen.
In den normalen Ansichten ist das Dokument sichtbar, in der Kalenderansicht ist das Dokument nicht sichtbar.
Die Kalenderansicht enthält nur die Datumsspalte und eine Spalte mit dem Namen des Mitarbeiters.
Auf dem Dokument gibt es keine Leserfelder. Um die Ansichtsselektionsformel auszuschließen - wobei die wirklich simpel ist - habe ich einfach mal ein Select @all reingestellt - kein Erfolg.

Kann mir jemand einen Schubs geben?

Bye,
Markus
Titel: Re: Kalenderansicht zeigt nicht alle Dokumente
Beitrag von: Tode am 07.06.16 - 14:59:35
Das sind wahrscheinlich Antwortdokumente, und die Ansicht hat die Option "Antwortdokumente hierarchisch anzeigen" gesetzt.
Titel: Re: Kalenderansicht zeigt nicht alle Dokumente
Beitrag von: rambrand am 07.06.16 - 15:15:28
Hallo Torsten,

nein, sind keine Antwortdokumente. Die Dokumente werden bei jedem Vorgang neu erstellt. Ist ein sehr primitives Personalverwaltungs-Tool.
Zudem ist die Option "Antwortdokumente hierarchisch anzeigen" bei einer Kalenderansicht ausgegraut.

Ich habe die Datumsspalte mal entzerrt. Es gibt 3 Masken "Neu", "Versetzung" und "Austritt" - alle drei haben je nachdem ein eigenes Datumsfeld.
Daher steht in dem Datumsspalte folgende Formel

Code
@If(Form="Neu";Eintrittsdatum;@If(Form="Versetzung";Versetzungsdatum;LastDay))

Ich hab testweise nun alle drei Fälle in drei Kalenderansichten umgewandelt und der Spalte immer genau das entsprechende Datumsfeld zugewiesen. Siehe da, die bisher nicht sichtbaren Dokumente erscheinen nun in den Testkalenderansichten.

Sieht mir danach aus, dass er die Formel irgendwie nicht sauber hinbekommt. Lustigerweise funktioniert das mal, mal funktioniert das nicht.
Ich glaube ich werde die Datenbank mal auf meine Todo-Liste setzen und allen drei Masken ein gleichnamiges Datumsfeld spendieren, auf das sich dann die Ansichtsspalte bezieht.

Bye
Markus
Titel: Re: Kalenderansicht zeigt nicht alle Dokumente
Beitrag von: koehlerbv am 07.06.16 - 15:25:27
Die Formel sollte lauten:

@If (Form = "Neu"; Eintrittsdatum; Form = "Versetzung"; Versetzungsdatum ;LastDay)
Titel: Re: Kalenderansicht zeigt nicht alle Dokumente
Beitrag von: rambrand am 07.06.16 - 15:46:41
Hallo Bernhard,

auf das zweite @if hatte ich gar nicht so geachtet. Leider funktioniert die Ansicht auch mit nur einem @if nicht korrekt.
Ich hab auch ehrlich keine Ahnung, ob die Ansicht jemals korrekt funktioniert hat. Die DB und der Code ist schon 15 Jahre alt. Ein Erbstück.
Mit der Ansicht arbeiten wohl nur ein, zwei Leute und erst jetzt ist das denen aufgefallen.

Bye
Markus
Titel: Re: Kalenderansicht zeigt nicht alle Dokumente
Beitrag von: koehlerbv am 07.06.16 - 15:59:11
Und die Form- und Itemnamen stimmen wirklich? Sind alle drei vom Typ Notes Date/Time? Hast Du den Ansichtsindex mit Shift-F9 schon neu aufgebaut?

Bernhard
Titel: Re: Kalenderansicht zeigt nicht alle Dokumente
Beitrag von: rambrand am 07.06.16 - 17:10:35
Leider ja. Der Gag ist ja, aufgefallen ist das bei einem Austritt, der nicht im Kalender stand, andere Austritte (gleiche Maske) zeigt der Kalender an.
In anderen (normalen) Ansichten werden alle Dokumente vollzählig angezeigt.
Alle drei Datumsfelder sind vom Typ DateTime, auch in den betroffenen Dokumenten, hab es mittels DocumentSpy überprüft.
Und den Ansichtsindex hab ich auch schon ein paar Mal neu aufgebaut.
Für die separaten Testansichten verwende ich genau die gleichen Masken- und Feldnamen. Nur wie gesagt, die Datumsspalte hier dann nicht mit der @if-Formel, sondern schön jede Maske ihren eigenen Kalender.

Suspekt ...

Bye
Markus
Titel: Re: Kalenderansicht zeigt nicht alle Dokumente
Beitrag von: AC am 07.06.16 - 19:07:13
Komisch, vielleicht noch ein paar Ansätze zum Tüfteln oder Nachdenken.

Klappt es, wenn Du das fehlende Dokument mit identischen Werten nochmal NEU erstellst, taucht es dann auf ?  (notfalls in einer Kopie der DB).

Ist das Verhalten bei einer lokalen Replik und der Serverdb identisch ?

Hast Du eine zweite Spalte in der Ansicht mit Dauer ? Was steht da bei dem Dokument drin? Unterscheidet es sich ?

Ist auszuschliessen, das das Dokument einen Tag früher oder später in der Kalenderansicht auftaucht ?

Bei dem Dokument handelt es sich hier um ein aktuelleres oder ein älteres ( Du schreibst die DB ist schon sehr alt) - kann es daran liegen (gab es da mal Designänderungen)?
 
Titel: Re: Kalenderansicht zeigt nicht alle Dokumente
Beitrag von: rambrand am 08.06.16 - 08:51:48
Hi AC

folgendes Verhalten konnte ich nachstellen.

DB als lokale Kopie -> gleiches Verhalten, Dokumente erscheinen nicht im Kalender, auch beim rein kopieren von Dokumenten aus der Produktiv-DB
DB als neue DB aus Template auf Server, Dokument von Produktiv-DB in Test-DB kopiert -> Dokumente werden im Kalender angezeigt
DB als neue Serverkopie auf Server, Dokument von Produktiv-DB in Test-DB kopiert -> Dokumente werden nicht im Kalender angezeigt

Es gibt in der Kalenderansicht nur 2 Spalten, die Datumsspalte mit der entsprechenden Auswahlformel und dann die Spalte mit dem Namen des Mitarbeiters.

Die Datumsfelder haben immer als Uhrzeit 00:00:00. Die Dokumente erscheinen im Kalender auch nicht einen Tag früher oder später (ist alles überschaubar, würde auffallen).

Die Dokumente werden immer vorgangsbezogen erstellt, d.h. sie werden sind alle recht jung, die aufgefallenen Dokumente sind grad 3 Wochen alt.

Designänderungen gab es hin und wieder mal, aber wie gesagt die Dokumente werden i.d.R. 1-2 Wochen vor dem entsprechenden Fall (Eintritt, Versetzung, Austritt) erstellt.

Leider arbeitet die Anwendung mit Mails inkl. Links zu den Dokumenten. Sonst hätte ich gesagt, ich setze die DB neu auf und kopiere die Dokumente einfach rüber.

Bye
Markus