Ich werde hier langsam kirre.
ich möchte folgendes:
die Anwender bearbeiten ein Dokument und sollen bestimmte Items via Button im Backend ändern können.
Feolgendes soll passieren, wenn die Aktion ausgelöst wird:
- Hinweis, dass das Dokument gespeichert wird
- der Anwender wählt via Picklist etwas aus
- die Werte werden umgeschossen
- das Backenddokument wird gespeichert
- SaveOptions wird auf 0 gesetzt
- das Frontenddokument wird geschlossen
- das Backenddokument wird via UniversalUNID angezogen und als Frontenddokument geöffnet
Folgendes passiert mir:
1. Das SaveOptions Item wird mit 0 abgespeichert (Fehler wurde von der Chefin entdeckt)
2. Danach habe ich im Backend das SaveOptions entfernt:
Jetzt werde ich im neugeöffenten Dokument gefragt, ob ich speichern will. Während der Abfrage ist ein weiteres Fenster mit dem Dokument geöffnet.
Wie bekomme ich das hingebogen? Oder habe ich einen Fehler im Code?
Folgendes habe ich noch gefunden:
noch einer, der rätselt:
http://www-10.lotus.com/ldd/nd85forum.nsf/5f27803bba85d8e285256bf10054620d/bce9c41f1e1512398525779f004b44e8?OpenDocument&Highlight=0,uidoc.closedas wusste ich auch noch nicht bzw. hat mir bisher kein Bein gestellt:
http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/queryclose-annoyances?opendocument&comments#anc1Die Version ist:
Release 8.5.2
Revision 20100811.1131 (Release 8.5.2)
Standardkonfiguration
und hier der Code:
Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace
Dim session As New notessession
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim flag As Integer
Dim strUNID As String
Dim docReopen As NotesDocument
Set uidoc = ws.CurrentDocument
Set doc = uidoc.Document
flag = Messagebox ("blabla ----Möchten Sie fortfahren?",4, "Hinweis")
If flag = 6 Then
Call uidoc.save
' Setzen der Eigenschaften, hier bekommen die Anwender noch ein Picklist zur auswahl
'diverse Felder setzen
Call doc.save(False,False)
strUNID = doc.UniversalID
uidoc.document.SaveOptions ="0" 'keine Speicherabfrage
Call uidoc.Close
Set docReopen = session.currentDatabase.GetDocumentByUNID(strUNID)
'------------------------------------------------------------
' da im docReopen nun immer das SaveOptions entfernt werden muss
If docReopen.HasItem("SaveOptions") Then
Call docReopen.RemoveItem("SaveOptions")
Call docReopen.Save(False, False)
End If
'------------------------------------------------------------
Call ws.EditDocument(False,docReopen)
ws.CurrentDocument.EditMode = True
End If
End Sub