Domino 9 und frühere Versionen > ND6: Entwicklung
Lotus Script Anfängerproblem...
Silent_Bob:
@Axel:
Ich habe jetzt den Code aus Antwort 17 nochmal so wie er ist ein meiner schaltfläche ersetzt. Habe extra auf Gross und Kleinschreibung geachtet.
Der Code an sich funktioniert jetzt auch. Der Anhang wird ausgewählt und erscheint auch in dem Entsprechenden RTF Feld.
Allerdings lässt sich das Dokument nicht speichern.
Ich kann STRG + S drücken, "Speichern" im Menü "Datei" auswählen, oder meine Schaltfläche "@Command[(FileSave)]
Nichts. Das Ding wird nicht gespeichert.
Silent_Bob:
So wie es aussieht, habe ich die Lösung gefunden.
In dem Script von Antwort 17 fehlte etwas:
Sub Click(Source As Button)
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim anhang As NotesRichTextItem
Dim datei As Variant
Set uidoc = workspace.CurrentDocument
Set doc = uidoc.Document
Set anhang = New NotesRichTextItem(doc, "anhang")
datei = workspace.OpenFileDialog(False, "Datei auswaehlen")
If Isempty(datei) Then Exit Sub
Call uidoc.GotoField("anhang")
If anhang.type = 1 Then
Call anhang.EmbedObject( EMBED_Attachment, "", datei(0))
Call anhang.Update
doc.SaveOptions = "0"
Call UiDoc.Close(True)
Dim NewUiDoc As NotesUIDocument
Set NewUiDoc = workspace.EditDocument(True, doc)
Set Doc = NewUiDoc.Document
doc.SaveOptions = "1"
End If
End Sub
Vor dem letzten "EndIf" habe ich noch ei doc.SaveOptions="1" eingebaut!
Nun lässt sich das Ding auch speichern.
Wenn ich jetzt keine bösen Überraschungen mehr erlebe, scheints das gewesen zu sein, oder was meint ihr?
klaussal:
Ich frag mich ja, warum zweimal saveoptions gesetzt werden ?
1 = speichern, 0 = nicht speichern
Untitled:
zuerst wird auf "0" gesetzt, um das uiDoc ohne Speicherabfrage zu schliessen. Anschliessend wird es wieder auf "1" gesetzt, um zukünftig das Speichern wieder zu erlauben.
Es wird ja nicht automatisch wieder auf "1" gesetzt.
Was ich allerdings auch nicht begreife ist, wo das Backend-Dokument gespeichert wird (ev. mit anhang.Update?) und warum das doc.Saveoptions nicht im uiDokument gemacht wird. Und wo wird das "doc.SaveOptions = "1"" gespeichert?
Grüsse
Axel:
Damit das Ganze sauber funktioniert muss das Feld SaveOptions wieder entfernt werden.
...
If anhang.type = 1 Then
Call anhang.EmbedObject( EMBED_Attachment, "", datei(0))
Call anhang.Update
doc.SaveOptions = "0"
Call UiDoc.Close(True)
Dim NewUiDoc As NotesUIDocument
Set NewUiDoc = workspace.EditDocument(True, doc)
Set Doc = NewUiDoc.Document
Call doc.RemoveItem( "SaveOptions" )
End If
...
Axel
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln