Schnellere Anzeige von Dokumenten
Herzlich Willkommen!/Tipps & Tricks/Schnellere Anzeige von Dokumenten

Schnellere Anzeige von Dokumenten

Dokumente, deren zugrundeliegende Maske eine der Funktionen @DbLookup oder @DbColumn verwendet, benötigen oft beim Öffnen vergleichsweise lange bis zur Anzeige im Notes Client - auch wenn die Dokumente nur im "Lesen-Modus" betrachtet werden.
 

Warum ist das so?


Das liegt daran, dass bestimmte berechnete oder editierbare Felder ihre Formeln auch beim lesenden Öffnen eines Dokumentes ausführen.
Das Ausführen der Feld-Formeln wird man nicht verhindern können, aber die "Lookup-Funktionen" müssen ja nicht immer ausgeführt werden.
 

Was kann man als Entwickler dagegen unternehmen?


In den entsprechenden Feldformeln sollten die "Lookup-Funktionen" eben nicht ausgeführt werden, wenn ein Dokument nur zur Anzeige am Bildschirm im Notes Client geöffnet wird. Die @If-Funktion ist hierbei der Schlüssel.
 

1. Beispiel: Schlüsselwortliste-Formel mit @DbColumn

@DbColumn(class:cache; server:database; view; columnNumber)
sollte geändert werden in:
@If( !@IsNewDoc & @IsDocBeingLoaded; @Return(""); @DbColumn(class:cache; server:database; view; columnNumber) )

2. Beispiel: Schlüsselwortliste-Formel mit @DbLookup

@DbLookup(class:cache; server:database; view; key; columnNumber; keywords)
sollte geändert werden in:
@If( !@IsNewDoc & @IsDocBeingLoaded; @Return(""); @DbLookup(class:cache; server:database; view; key; columnNumber; keywords) )

Hinweis zur Funktion @Return

Aus der HCL Online-Hilfe:
Immediately stops the execution of a formula and returns the specified value. This is useful when you only want the remainder of the formula to be executed only if certain conditions are True.