Domino 9 und frühere Versionen > ND7: Entwicklung
Momentanes Doc nicht speichern und ein anderes Doc im Frontend öffnen
(1/1)
Klaas:
Hallo,
irgendwie komme ich nicht weiter.
Ich möchte das momentane Dokument schließen, es nicht speichern (wenn bestimmte Felder leer sind) und anstelle dessen ein bestimmtes anderes Dokument öffnen.
Das ganze passiert wenn das Feld verlassen wird.
Alles klappt nur nicht das "nicht Speichern".
Hier der Code.
--- Code: ---Sub Exiting(Source As Field)
Dim session As New NotesSession
Dim ws As New Notesuiworkspace
Dim doc As NotesUIDocument
Dim currentDB As NotesDatabase
Dim articleView As NotesView
Dim articleDoc As NotesDocument
Dim articleDocDatePersNr As String
Dim DocDatePersNr As String
Dim DocSave As String
Dim DocPLeistung As String
Dim DocGLeistung As String
Set doc =ws.CurrentDocument
Call doc.Refresh
Call session.SetEnvironmentVar( "Leistung_DailyCalc_DateOfWork", doc.FieldGetText("DateOfWork"))
DocDatePersNr = doc.FieldGetText("DatePersNr")
DocSave = doc.FieldGetText("SaveStatus")
If DocSave <>"" Then
Exit Sub
End If
Set gSession = New NotesSession
Set currentDB = gSession.CurrentDatabase
Set articleView = currentDB.GetView ( "DateAndPersNR" )
Set articleDoc = articleView.GetFirstDocument
While Not articleDoc Is Nothing
articleDocDatePersNr = articleDoc.GetItemValue ("DatePersNr")(0)
If articleDocDatePersNr = DocDatePersNr Then
Messagebox("Das Dokument ist bereits vorhanden.")
DocPLeistung = doc.FieldGetText("LNummer")
DocGLeistung = doc.FieldGetText("GNummer")
If DocPLeistung ="" And DocGLeistung ="" Then
SaveOptions =1
End If
Call doc.Close
Set doc = ws.EditDocument( False , articleDoc )
Exit Sub
End If
Set articleDoc = articleView.GetNextDocument ( articleDoc )
Wend
Call doc.GotoField("CalcPersonCleaningtime")
End Sub
--- Ende Code ---
koehlerbv:
Als allererstes solltest Du Option Declare setzen und danach Deinen Code korrigieren.
Bernhard
Klaas:
Habe ich gemacht....gefunden habe ich das ich "A New NotesSession" 2 mal deklariert habe.
Und das man SaveOptions so nicht setzten kann.
Aber was mache ich nun?
Wie kann ich denn SaveOptions im UIDoc auf 1 setzen?
koehlerbv:
SaveOptions = "1" bedeutet: "Immer speichern ohne Nachfrage".
Den gewünschten Wert setzen: NotesUIDocument.Document.SaveOptions = "0"
Bernhard
MaxMuster:
--- Zitat von: koehlerbv am 27.09.10 - 11:53:52 ---SaveOptions = "1" bedeutet: "Immer speichern ohne Nachfrage".
--- Ende Zitat ---
Na ja, fast. SaveOptions steuert die "Wollen Sie speichern" abfrage beim Schließen des Dokumentes.
"0": Das Dokument wird ohne nachfrage geschlossen - und nicht gespeichert
"1": Sofern das Dokument im Frontend geändert wurde erscheint die übliche 'Wollen Sie speichern' Abfrage
Der Feldtyp ist Text
Roger
Navigation
[0] Themen-Index
Zur normalen Ansicht wechseln