Domino 9 und frühere Versionen > ND8: Entwicklung
Frontend-Backend Probleme
Peter Klett:
Probier das mal so (ungetestet)
--- Code: ---Sub Querymodechange(Source As Notesuidocument, Continue As Variant)
If Source.EditMode Then
Exit Sub
End If
Continue = False
Dim doc As NotesDocument
Set doc = Source.Document
Dim unid As String
unid = doc.UniversalID
doc.SaveOptions = "0"
Call Source.Close
Delete doc
Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase
Set doc = db.GetDocumentByUnid (unid)
Dim workspace As New NotesUIWorkspace
Call workspace.EditDocument (True, doc)
End Sub
--- Ende Code ---
pram:
Da die Lock-Funktionen von Notes hier nicht ausreichend sind, machen wir das ähnlich wie André geschrieben hat,
allerdings funktioniert das erneute Holen über getDocumentByUNID nicht immer. (Delete doc erforderlich, was wieder neue Probleme bereitet)
bei uns gibt es deshalb zu jedem Dokument noch ein kleines Lock-Dokument in dem der aktuelle Status des Dokumentes gespeichert ist (wer hat das Dokument offen und seit wann, wann wurde es gespeichert....)
Beim Wechsel in den Bearbeiten-Modus wird dann mit Hilfe des Lock-Dokuments geprüft, ob in der Zwischenzeit das Dokument anderweitig gespeichert wurde oder sogar noch offen ist.
Das Suchen und Finden des Lock-Dokumentes funktioniert dabei über die UNID die in einer definierten Art und Weise abgeändert wird (z.B. eine Stelle austauschen), somit ist keine zusätzliche Lookup-Ansicht erforderlich und die Dokumente könnten auch in einer eigenen "Lock-Datenbank" liegen, die von allen Servern erreichbar ist.
Gruß
Roland
sja:
Lieber Peter,
das ist es, super! Funktioniert!
Herzlichen Dank! Du hast mich gerettet.
Und herzlichen Dank an alle beteiligten! Ich bin unendlich dem ATNOTES dankbar, hier habe ich schon viel Mals ganz wirksame Hilfe bekommen! Und ich denke auch, dass die Information in diesem Vortrag auch für vielen anderen sehr hilfreich wird.
Liebe Grüße
Sofia
sja:
aber dazu auch nicht vergessen:
Sub Postmodechange(Source As Notesuidocument)
Source.Reload
End Sub
ohne Reload funktioniert es nicht.
:)
Sofia
sja:
Stop,
leider die Freude war zu früh, funktioniert nicht immer. Werde weiter testen und berichten.
Schade :(
Sofia
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln