Domino 9 und frühere Versionen > ND8: Entwicklung

Evaluate mit @dbLookup verwenden

<< < (2/2)

koehlerbv:
Du solltest Dich mal näher mit den ganzen Methoden der Notes-Klassen auseinandersetzen ...

Möglichkeiten:
NotesView.GetAllDocumentsByKey, und Du schiebst die Items aus den Treffern um.
NotesView.GetAllEntriesBy Key, dann kannst Du ColumnValues auslesen.

Also: Ganz, wie es beliebt.

Bernhard

Akunin:
jo schon gemerkt das meine 2te Frage doof war, eigentlich total simpel :)

Driri:
Worauf ich hinaus wollte :


--- Zitat ---KM_Kennzeichen = Evaluate ( {@dblookup ("Notes" : "NoCache"; TestServer : TestDB; TestView; TestKey ; TestDC) }, thisdoc)

--- Ende Zitat ---

Evalute führt dann folgende Formel aus und zwar genau so :

@dblookup ("Notes" : "NoCache"; TestServer : TestDB; TestView; TestKey ; TestDC)


Was Du aber eigentlich haben möchtest, ist daß die Werte aus den Variablen von DBLookup ausgelesen werden. Dafür mußt Du den String, den Du an Evaluate übergibst aber anders aufbereiten.

Das sieht dann in etwa so aus :


--- Zitat ---KM_Kennzeichen = Evaluate ( {@dblookup ("Notes" : "NoCache";} & TestServer & {:} & TestDB & {;} & TestView & {;} & TestKey & {;} & TestDC & {)}, thisdoc)

--- Ende Zitat ---

Empfehlenswert ist es auch, den String für Evaluate vorher in eine Variable zu packen. Dann sieht man nämlich im Debugger direkt, mit was man Evaluate dann eigentlich füttert.

Das aber nur als Tipp für die Nutzung von Evaluate. Für deinen Zweck brauchst Du das ja nicht unbedingt.

jr:
Hallo,

also prinzipiell geht das schon mit Evaluate. Ist nicht so schön wie ein view.GetDocumentByKey, aber es geht. Dein Problem ist, dass es sich bei TestServer, TestDB, TestView usw. um Variablen handelt. Diese sind im Evaluate nicht verfügbar.

Der Evaluate-Befehl arbeitet auf dem übergebenen Dokument, in Deinem Fall also thisDoc. Wenn es unbedingt ein Evaluate sein soll, dann musst Du die Variablen zu Feldern im Dokument thisDoc machen. Also z. b. thisDoc.TestServer = TestServer.

Nicht schön, aber selten, und es funktioniert...  ;)

Gruß,

Joachim

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln