Autor Thema: Interessehalber: Backend-Doc removen wenn im UI instantiiert wurde  (Gelesen 1059 mal)

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Ich hatte vorhin gerade folgende Problemstellung:

Ein Dokument ist über eine Maske geöffnet. Das Backend instantiiert man ja üblichweise hier via Frontend - weil ja das UIDoc quasi schon dasteht.

Jetzt wäre ein Button schick gewesen, der das UIDoc schließt und dann ein backenddoc.remove(false) ausführt.

Die Designerhilfe sagt dazu ganz klar:
Zitat
If you access a NotesDocument object through the Document property of NotesUIDocument, you can't delete the back-end document. If you could, the UI rendition would have no basis. You must access the document strictly through the back-end.
.

Kennt da trotzdem vielleicht wer einen Würgaround?

Ein
Call uidoc.close
Set uidoc = Nothing
vor der Ausführung des doc.remove klappt schonmal nicht.

Ich habe das Löschen jetzt über eine Ansicht realisiert. Würde mich aber interessieren ob es nicht doch einen direkten Weg im geöffneten Dok gibt (jetzt ohne Workaround via Del-Flag etc.).
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Warum nicht einfach die Del aka Lösch-Taste drücken?

Anyway, wenn Du ein

set doc = uidoc.doc

machst, bist Du mit dieser Instanz des Dokumentes vom UIDoc abhängig (ist jedenfalls meine Interpretation der Hilfe). Daher nützt Dir das Schliessen des UIDoc an dieser Stelle nichts.

Obs funktioniert, weiss ich nicht, aber ich würde es mal so probieren:

set docThis = uiDoc.Document
set strUNID = doc.UniversalID
Call uiDoc.Close

delete docThis

set docThis = dbThis.GetDocumentByUNID (strUNID)

Call docThis.remove(False)


.... und ich bin gespannt, ob das was bringt.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Klar, genau so geht's, Danke Jens.
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Danke für die Bestätigung, da war ich jetzt auch gespannt drauf.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz