Autor Thema: Warum wird Code im Postdocumentdelete nicht ausgeführt  (Gelesen 2073 mal)

Offline geissbock

  • Aktives Mitglied
  • ***
  • Beiträge: 131
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Hallo, brauch mal wieder Hilfe.
Szenario: Dokumente enthalten eine eingebettete Ansicht mit zugeordneten Unterdokumenten, die Bewertungen des Hauptdokumentes enthalten. Der kritischste Bewertungsstatus wird im Hauptdokument in Abhängigkeit der Unterdokumente berechnet dargestellt. Sprich wird ein Unterdokument gelöscht muss eine Neuberechnung des Gesamtbewertungsstatus stattfinden. Habe dazu entsprechenden Code in das Postdocumentdelete-Event der DB eingebaut. Aber der Code wird überhaupt nicht ausgeführt. Weder im Debugger noch werden eingebaute Testmessageboxen ausgegeben.
Woran kann das liegen bzw. wann genau greift denn dieses Event??
Danke Klaus

Offline DerAndre

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.655
  • Geschlecht: Männlich
  • Keep cool!
Re: Warum wird Code im Postdocumentdelete nicht ausgeführt
« Antwort #1 am: 10.10.07 - 13:17:37 »
Hilft das u.U.:

http://atnotes.de/index.php?topic=25827.msg165052#msg165052

Der letzte Absatz von Axel könnte wichtig sein.
André

Elterninitiative diabetischer Kinder und Jugendlicher e.V.
-----------------------------------------------------------------------------
Fliegen ist die Kunst auf den Boden zu Fallen, aber daneben.
-----------------------------------------------------------------------------
Etwas mehr Hardware dazu zu kaufen ist viel billiger als
Software besser zu machen. ( Niklaus Wirth )

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Warum wird Code im Postdocumentdelete nicht ausgeführt
« Antwort #2 am: 10.10.07 - 14:09:11 »
Hast Du die DB schon mal neu geöffnet?
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: Warum wird Code im Postdocumentdelete nicht ausgeführt
« Antwort #3 am: 10.10.07 - 14:15:36 »
Am besten du startest direkt notes neu. Imho wird das solange gecached, bis die Kachel der entsprechenden Datenbank nicht mehr aktiviert ist. Aber da übersieht man leicht Sachen.
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline pete_bla

  • Senior Mitglied
  • ****
  • Beiträge: 455
  • Geschlecht: Männlich
  • dot net gitz net!
Re: Warum wird Code im Postdocumentdelete nicht ausgeführt
« Antwort #4 am: 10.10.07 - 14:42:11 »
Hi,

wenn du mit dem gleichen NotesClient Entwickelst und Testest musst du die DB im NotesClient und zumindest auch den Desingern schliessen, um Änderungen an den DBEvents zu erhalten.

Gruss, Pete(r)
pete(r)

Offline geissbock

  • Aktives Mitglied
  • ***
  • Beiträge: 131
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Warum wird Code im Postdocumentdelete nicht ausgeführt
« Antwort #5 am: 10.10.07 - 15:16:39 »
Hallo,
vielen Dank für die vielen Hinweise. Das hat mir schon mal geholfen und ich habe über den Debugger nun Informationen erhalten. So, nun aber die nächste Frage. Ich will ja hier ein Bewertungsdokument löschen und aufgrund der verbliebenen dann den neuen Gesamtbewertungsstatus ermitteln. Ich durchlaufe also die verbliebenen Dokumente und vergleiche deren Werte. Hier nun das Problem: In der Kollektion die ich da durchlaufe, ist das gelöschte Bewertungsdokument noch drin und damit stimmt die Berechnung dann wieder nicht. Wie kann das denn sein, wenn ich doch im Postdocumentdelete bin?
Die Kollektion bekomme ich mit
Set coll = patentview.GetAllDocumentsByKey(key(0), True). Kann es sein, dass die Ansicht dann nicht so schnell aktualisiert wird und die Kollektion damit noch das gelöschte Dokument enthält?

Danke & Gruß Klaus

Offline geissbock

  • Aktives Mitglied
  • ***
  • Beiträge: 131
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Warum wird Code im Postdocumentdelete nicht ausgeführt
« Antwort #6 am: 11.10.07 - 15:00:48 »
Also hab da nochmal ein bisschen geforscht, es ist tatsächlich so, dass die Dokumente in diesem Event noch nicht komplett weg sind. Die Dokumente lassen sich ja auch noch ansprechen und Werte auslesen. Ganz schön dumme Sache. Jemand eine Idee für einen Würgaround?
Dabke
Klaus

Offline pete_bla

  • Senior Mitglied
  • ****
  • Beiträge: 455
  • Geschlecht: Männlich
  • dot net gitz net!
Re: Warum wird Code im Postdocumentdelete nicht ausgeführt
« Antwort #7 am: 11.10.07 - 15:32:26 »
Hi,

schonmal versucht die Dokumente zu markieren, dass sie z.B. nicht mehr gültig sind,
anstatt sie gleich zu löschen?
(eventuell auch generell, bevor du sie löscht)
Du kannst sie dann bei Deinem "Sammeln" auf dieses Flag prüfen und eben nicht mitnehmen.

Ausserdem kannst Du so ja auch aus den Ansichten Filtern, hast aber sie noch im "Archiv"
und im nachhinein könntest du sie wiederherstellen,
bzw. wenn die Löschung aus irgeneinem Grund nicht funktionierte einfacher als "Leichen" identifizieren und per Agenten automatisch löschen
(z.B. auch ganz praktisch wenn die Anwender eingeschränkte Rechte haben und evenutell selbst garnicht löschen dürfen)

Gruss, Pete(r)
pete(r)

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Warum wird Code im Postdocumentdelete nicht ausgeführt
« Antwort #8 am: 11.10.07 - 15:57:28 »
Merk Dir doch in einer globalen Variablen des DatabaseScripts im QueryDocumentDelete dessen UNID - darauf kannst Du dann im PostDocumentDelete zurückgreifen.

Ich habe es nicht probiert: Was sagt eigentlich im PostedDocumentDelete beim "gelöschten" Dokument zur Property IsValid der NotesDocument class?

Bernhard

Offline geissbock

  • Aktives Mitglied
  • ***
  • Beiträge: 131
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re: Warum wird Code im Postdocumentdelete nicht ausgeführt
« Antwort #9 am: 15.10.07 - 09:11:58 »
Hallo,
danke für die Hinweise. Hat geholfen. Merke mir die docid und schliesse die bei der Schleife aus. Bernhard, das Isvalid liefert leider auch ein True und das Isdeleted ein False. Schon merkwürdig, aber gut. Würgaround arbeitet nun wie gewünscht. Gelobt sei mal wieder das Forum und ihre hilfreichen Mitstreiter.
Schöne Woche noch.
Gruß Klaus

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz