Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Aladdin Sane am 16.07.04 - 17:41:54
Titel: Web - DBLookup
Beitrag von: Aladdin Sane am 16.07.04 - 17:41:54
Hallo.
Ich erstelle in meiner WEB-DB Dokumente.
Nachdem diese gespeichert worden sind, soll in einem anderen Dokument die Existenz dieses neuen Doks über eine DBlookup-Funktion ermittelt werden.
Leider klappt das nicht - ich muss die Dokumente immer im Client öffnen bearbeiten und wieder speichern, damit die Änderungen angezeigt werden.
Ich habe schon versucht im WebQuerySave-Event des Web-Dokuments das "ComputewithForm" auf das Dokument, das aktualisert werden soll, anzuwenden, Geht nicht....
Wie kann so ein Neu-Berechnen der DBLookup-Formeln in LS programmiert werden?
habe gerade eine Funktion DBlookup für LS hier im Forum gefunden...
Werde das mal probieren...
Aber was anderes: Müsste nicht @Command([ToolsRefreshAllDocs]) auch die DBLookups aktualisieren? Bei mir macht es das nicht....
Titel: Hurra da hat jemand laut gedacht.
Beitrag von: Thomas Schulte am 16.07.04 - 18:47:14
;) Nein du hast vermutlich ein Begriffsproblem. So wie du es shcilderst willst du SOFORT nach dem Abschicken wieder auf die durch dieses Dokument eingetragenen Werte zugreifen und das geht schlicht und einfach schief. Der dblookup bracuht den Ansichten Index und der wird nun einmal nicht stante pede aktualisiert.
Schilder uns doch einmal was und warum du es willst. Vielleicht kennen wir einen anderen Ansatz.
In Script gibt es etwas ähnliches wie dblookup namens
Code
Dim col As NotesDocumentCollection
Dim docToSearch as NotesDocument
Dim vw As NotesView
key = <yourStuff>
vw.refresh ' immer eine gute Idee bei sowas
set docToSearch = vw.getDocumentByKey(key)
' oder
set colToSearch = vw.getAllDocumentsByKey(key)
Gruß Axel
Titel: Re:Hurra da hat jemand laut gedacht.
Beitrag von: Aladdin Sane am 16.07.04 - 19:29:41
Nein du hast vermutlich ein Begriffsproblem. So wie du es shcilderst willst du SOFORT nach dem Abschicken wieder auf die durch dieses Dokument eingetragenen Werte zugreifen und das geht schlicht und einfach schief. Der dblookup bracuht den Ansichten Index und der wird nun einmal nicht stante pede aktualisiert.
Schilder uns doch einmal was und warum du es willst. Vielleicht kennen wir einen anderen Ansatz.
-> Wenn ein neues Dokument gespeichert wird, ändert sich das Ergebnis einer DBLookup-Formel in einem anderen Dokument. Dieses Ergebnis muss möglich sofort nach dem Schließen der Webmaske in einer View angezeigt werden.
Ich habe nun die berechneten DBLookups entfernt und durch bearbeitbare ersetzt,
Ein Agent benutzt die von Herrn Eknori geschnitzte Funktion DBLookup für LS und schreibt die Ergebnisse in das ehemalige DBLookup-Feld.
Dieser Agent muss dann per Knopfdruck vom User asugeführt werden. Dann zeigt die Ansicht genau das an, was sie soll.
Lieber wäre es mir natürlich, wenn man auf diesen Knopfdruck verzichten könnte.