Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: maiko am 04.09.02 - 10:42:43
-
Hallo,
ich baue gerade ein Forum fuers Web unter Notes auf.
Soweit klappt auch alles prima, nun aber die Frage:
Ich habe also mein Hauptdokument (wie z.b. in diesem Forum hier R5-Entwicklung), darunter einen Beitrag (hier Antwortdokument und Datum), darunter verschiedene Antworten (die hoffentlich hier auch kommen).
Die Ansicht ist ja relativ einfach zu bauen.
Nun möchte ich aber wir hier eine Übersicht ueber alle Foren machen und da soll das Datum des letzten Beitrags unterhalb dieses Forums angezeigt werden.
Hat jemand eine Idee wie ich das in einer Ansicht machen könnte ?
So z.b. sieht die Ansicht aus:
Forum1 1.1.2000
...Beitrag1 2.1.2000
......Antwort1 3.1.2000
......Antwort2 4.1.2000
Forum2 2.1.2000
...Beitrag1 2.1.2000
......Antwort1 3.1.2000
......Antwort2 10.1.2000
Nun will ich eine Ansicht generieren mit
Name Datum letzter Beitrag
Forum1 4.1.2000
Forum2 10.1.2000
Ich hoffe es ist jedem klar was ich machen will und hoffe das irgendjemand eine kleine Idee hat...
Danke im voraus
maiko
-
hm..da man keine dynamischen Ansichten on the fly zusammenbasteln kann, wie das zB mit PHP/MySQL wunderbar möglich ist, mach einen Umweg...
generiere eine Art "Überwachungsdoc" für jedes Forum
(also: 10 Foren = 10 Überwachungsdocs). Sobald ein neuer Beitrag eingestellt wird, läuft dort im Query Save eine Update Routine für das Überwachungsdoc (halt Datum des Eintrags, Postingsubject). Diese Überwachungsdocs läßt Du dann in der eigenen Ansicht anzeigen, sonst hast Du keine Chance mE sowas aufzubauen.
Einzigste Prob ist das Handling von Raceconditions, wenn also 2 User im selben Forum einen neuen Beitrag zur gleichen Zeit abfeuern. Dann gibt es einen Saveconflict im Überwachungsdoc. Würde ich halt in der QuerySave Routine abfangen, denn was macht´s schon groß, wenn der eine Beitrag sich nicht im Überwachungsdoc verewigen kann, da der andere Beitrag ja zur gleichen Zeit geschrieben wurde (nutze dazu das doc.save(true, false), das solche Speicherkonflikte sehr gut regelt).