Hallo!
Wenn ich in einem maskenfeld eine RTI habe, dann kann ich ja über Datei - Anhängen... oder über die "Büroklammer" in der Symbolleiste ein Attachement einfügen. Das sieht dann auch ganz nett aus. Das klappt aber nur, wenn ich im Edit-Modus bin und der Cursor im RTI steht.
Nun habe ich ein Script geschrieben, dass mir ebenfalls ein (weiteres) Item in das RTI schreibt. Allerdings sieht das doof aus. Richtig funktionieren tut es auch nur, wenn ich im Ansichts-Modus bin. Bin ich im Edit-Modus und führe das Script aus, so wird das (neue) Attachment nicht in das dafür vorgesehene Maskenfeld geschoben, sondern außerhalb der Maske "unter der schwarzen Linie".
Frage 1: Wie bekomme ich es hin, dass das Scribt in jedem doc-Modus funktioniert?
Frage 2: Wie macht die Büroklammer es, dass "ihre" Attachements so schön aussehen. Ich will das auch für mein Script *trotz*.
Nachfolgend noch das Script
| Sub Click(Source As Button) |
| Dim ws As New NotesUIWorkspace |
| Dim uidoc As NotesuiDocument |
| Dim session As New NotesSession |
| Dim db As NotesDatabase |
| Dim anhang As NotesEmbeddedObject |
| Dim rtitem As NotesRichTextItem |
| Dim doc As NotesDocument 'Stammakte |
| |
| Dim DateiNamen As Variant |
| |
| Set db = session.CurrentDatabase |
| Set ws = New NotesUIWorkspace |
| Set uidoc = ws.CurrentDocument |
| Set doc = uidoc.Document |
| |
| If doc.HasEmbedded = True Then |
| Set rtitem = doc.GetFirstItem( "PatScan" ) |
| Else |
| Set rtitem = New NotesRichTextItem( doc, "PatScan" ) |
| End If |
| |
| DateiNamen = ws.OpenFileDialog( True, "Gescannte Dokumente", "*.pdf", "H:\" ) |
| |
| If Isempty(DateiNamen) Then |
| Exit Sub |
| End If |
| |
| Forall Datei In DateiNamen |
| Set anhang = rtitem.EmbedObject( EMBED_ATTACHMENT, "", Datei ) |
| ' Kill Datei |
| End Forall |
| |
| Call doc.Save( True, False ) |
| End Sub |
Zum Anhang: Kopie (6) wurde über die Büroklammer eingefügt, Kopie (7) über mein Script
Danke im voraus - Frank