Das Notes Forum

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?
Titel: Re:Web - DBLookup
Beitrag von: Aladdin Sane am 16.07.04 - 17:50:01
Ach ich sehe gerade:

für das ComputeWithForm ist  das Feld Form notwendig.
Ich habe das gar nicht drin....
Titel: Re:Web - DBLookup
Beitrag von: Aladdin Sane am 16.07.04 - 17:55:15
... hat auch nichts geändert...

:-(
Titel: Re:Web - DBLookup
Beitrag von: Aladdin Sane am 16.07.04 - 17:58:39
Der Agent, der die Aktualiserung vornehmen soll beinhaltet folgenden Code:

   Call doc.computewithForm(True,True)
   Call doc.save(True,True)

doc ist auch das richtige Dokument - habe ich getestet.
Titel: Re:Web - DBLookup
Beitrag von: Aladdin Sane am 16.07.04 - 18:13:43
OK - zurück das ganze.

ComputewithForm ist nicht auf DBLookup anwendbar....
Sch....

Titel: Re:Web - DBLookup
Beitrag von: Aladdin Sane am 16.07.04 - 18:27:40
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.

Thomas
Titel: Re:Web - DBLookup
Beitrag von: Marinero Atlántico am 16.07.04 - 19:12:05
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.

Titel: Re:Web - DBLookup
Beitrag von: Aladdin Sane am 16.07.04 - 19:36:48
Nach dem eben beschriebenen Agenten ist noch ein Update des Browsers nötig, bis die
Infos schön angezeigt werden.

Kann man das in LS im Agent irgendwie integrieren???
Sorry, aber ich hatte mit Web-DBs bislang noch nix am Hut.