Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: juebri am 22.12.03 - 15:53:14
-
Hallo zusammen,
hoffentlich mein letztes Prob vor Weihnachten:
Ich habe in einer Maske 10 Dialoglisten (Info0 bis Info9). Diese greifen über
@Unique(@DbColumn("":"NoCache";"";"Zusatzinfos";1))
alle auf die Ansicht "Zusatzinfos" zu.
Man kann in diese Felder - wie soll es auch anders sein - neue Schlüsselwörter mit Informationen eingeben, z.B. "Quelle: Chip.de".
In der Ansicht "Zusatzinfos" sollen nun in der ersten Spalte alle Schlüsselwörter der Felder 0 bis 9 so dargestellt werden, dass diese Felder über @DBColumn auch ausgelesen werden können. Es gab da mal ne Lösung glaub ich - ich finde Sie aber nicht.
Bereits jetzt danke für Eure Hilfe und ein Frohes Fest und nen guten Rutsch.
-
Hi,
deine Spaltenformel muß so aussehen:
Info0: Info1 : Info2 : Info3: Info4 : Info5 : Info6 : Info7 : Info8 : Info9
Ausserdem musst du die Spalte sortieren, am besten aufsteigend, und auf dem zweiten Reiter der Spalteneigenschaften die Option "Mehrfachwerte getrennt anzeigen" markieren. Dann sollte das funktionieren.
Axel
-
Hallo Axel, danke für die Info.
Genau so bin ich eigentlich vorgegangen. Nach Aktualisierung klappte es nicht. Dann bin ich verzweifelt. Jetzt habe ich die Ansicht erneut geöffnet und siehe da: Es funktioniert so, wie ich es eingegeben hab.
Ein Cache - Problem?????
Frohes Fest
-
Hi,
ich denke schon. Manchmal hilft es die Datenbank zu schließen und wieder zu öffnen, oder einfach mal den Client neu zu starten. In hartnäckigen Fällen muß man schon mal die cache.dsk löschen.
Schöne Weihnachten
Axel
-
Um Fehler einzugrenzen habe ich mir gleich eine kleine DOS-Batchdatei geschrieben, die per Default die cache.dsk beim Notes-Start löscht.
Dies kann u.U. viel Sucharbeit sparen....
TMC
-
@Unique(@DbColumn("":"NoCache";"";"Zusatzinfos";1))
NoCache führt doch dazu, dass Änderungen erst erkannt werden, wenn die DB geschlossen und dann erneut geöffnet wurde.
NoCache macht durchaus Sinn, wenn die Sache performance-kritisch wird. Wenn jedoch neue Werte sofort sichtbar werden müssen ...
Bernhard
-
Umgekehrt, Bernhard
-
@Jens: Das verstehe ich jetzt nicht ganz, bin eigentlich der Meinung Bernhards, die Hilfe gibt ja nicht allzu viel her darüber:
Schlüsselwort. Optional. Wenn Sie "NoCache" nicht verwenden, werden die Ergebnisse der Suche für eine Weiterverwendung zwischengespeichert. Für jede nachfolgende Suche am selben Speicherort werden diese Informationen solange benutzt, wie die ausführende Datenbank für die Suche geöffnet ist. Wenn Sie "NoCache" weglassen, werden die Suchergebnisse automatisch zwischengespeichert; Sie können jedoch "Cache" angeben, um eine bessere Lesbarkeit sicherzustellen. Siehe "NoCache angeben" in diesem Kapitel.
Wenn Sie sicherstellen möchten, daß nur aktuelle Informationen abgerufen werden, geben Sie diese Option an, und zwar mit einem Doppelpunkt nach dem Klassenargument. Zum Beispiel: "Notes":"NoCache".
"NoCache" angeben
Ob es zweckmäßig ist, "NoCache" zu verwenden, hängt von der erforderlichen Verarbeitungsgeschwindigkeit ab. Wenn Notes/Domino immer wieder eine Verbindung mit derselben Datenbank herstellen und dieselben Informationen laden muß, wird die Verarbeitungsgeschwindigkeit unnötig reduziert. Wenn Sie jedoch damit rechnen müssen, daß sich die Daten häufig ändern, sollten Sie die zusätzliche Zeit aufwenden, um stets mit aktuellen Informationen arbeiten zu können.
Wenn Sie beispielsweise eine Datenbank durchsuchen, in der Kundenadressen gespeichert sind, können Sie in den meisten Fällen mit Zwischenspeicherung arbeiten, da sich diese Adressen nur selten ändern werden. Wenn Sie aber eine Datenbank durchsuchen, in der Börsenkurse gespeichert sind, wobei die Datenbank stündlich aktualisiert wird, sollten Sie ohne Zwischenspeicherung arbeiten und jedesmal eine neue Suche erzwingen.
Dies bestätigt mir aber Bernhards Aussage,
Vielleicht kannst Du mal erklären, was Du mit "umgekehrt" meinst,
Danke.
Etwas verwirrt,
TMC
-
also NoCache bedeutet, dass die Ergbnisse der Abfrage immer brandaktuell aus der Datenbank geholt werden.
Nichts oder Cache heißt, dass eine Abfrage ihr Ergebnis im Cache speichert und bei weiteren Abfragen immer auf das Ergebnis im Cache zugreift.
Ich denke, das meint Semeaphoros... mit umgekehrt
-
Oh, was für einen Schmarr'n habe ich da geschrieben: "NoCache" erzwingt selbstverständlich bei jedem @dbColumn / @dbLookUp den Neuaufbau der Ansicht-Indizes. Genau dafür ist dieser Parameter da ...
Bernhard (der sich für 2004 vorgenommen hat, dem Forum möglichst keine "Schnellschüsse" mehr zu präsentieren ;-)
-
Genau so ist es, mit NoCache wird jedesmal neu gelesen und damit ggf. auch der Index neu aufgebaut. Mit Cache (oder ohne Angaben) wird zwischengespeichert mit dem Ergebnis, dass geänderte Ergebnisse teilweise erst nach Verlassen und Neustart des Clients gezeigt werden.
Hochinteressant der für N6 neue Parameter "ReCache", der es erlaubt, den aktuellen Cache zu verwerfen (Grosses Dankeschön an Damien Katz, der die @Engine für N6 neu geschrieben hat und dabei ein paar ganz schöne Neuerungen hat einfliessen lassen).
PS: Leider funktioniert der Parameter Cash nur selten (vgl. 20 € Geschichte andernorts ... ;D )