Domino 9 und frühere Versionen > ND9: Entwicklung
Feldwerte und ein Bild in neues Dokument übernehmen
koehlerbv:
--- Zitat von: Tode am 09.06.17 - 08:28:09 ---Spielen wir uns ein bisschen die Bälle zu...
--- Ende Zitat ---
Torsten, Andrew: Prima, AtNotes-like und irgendwie nahe "genial". Hoffen wir, es nützt Christine. Aber die macht schon etwas daraus ;)
Danke,
Bernhard
thkn777:
@smoky
Wie erstellst Du das Bild?
#1 - Zu Deinem ersten Ansatz:
- Ich habe hier zwei Masken Q und Z (Quelle und Ziel), in jeder ein RichText-Feld (jeweils gleicher Name "RichTextFeld").
- In der zweiten Maske Z steht im Vorgabewert dieses Feldes "@ThisValue".
- In der Maske Z ist "Formeln übernehmen Werte aus gewähltem Dokument" aktiviert.
Wenn ich jetzt in Maske Q in das RichTextFeld Text, ein Bild aus der Zwischenablage und ein Attachment einfüge und das Dokument speichere und dann in einer Ansicht auf dem Dokument stehe und ein Dokument mit Maske Z erzeuge, sind scheinbar alle Items korrekt übertragen worden, ABER wenn ich das Attachment versuche anzuzeigen, steht im Dialog Länge = 4 Byte und Kodierung 0Ä<schwarzes Quadrat> und das Öffnen geht schief mit Fehler "Element des Dokuments nicht gefunden". Das Inline-Bild dagegen wird ordentlich angezeigt.
--> also falls es "nur" ein Inline Bild sein soll, könnte das so gehen für Dich
#2 ReplaceItemValue ("Tode's Methode")
Überträgt bei mir (Notes R8.5.3) nur Text, keine Inline Bilder und keine Attachments. Kann in R9 natürlich anders sein, hab ich aber grad nicht da.
#4 doc.copyItemToDocument ("Deine Script Lösung")
Funktioniert bei mir. Du musst nur eben ALLE Items, die aus dem Quell-Dokument in's Ziel übertragen werden sollen, kopieren (Tip: einfach Tode's Lösung anpassen).
#4 doc.CopyToDatabase und doc.CopyAllItems
Wären andere Möglichkeiten. Es werden alle Elemente des RichTextFeldes übertragen, Attachments werden mit korrekter Länge angezeigt und können geöffnet werden. Ja, das ggf. nachträglich erforderliche Herauslöschen überflüssiger Items ist lästig, aber irgendwas ist ja immer ;)
Viel Erfolg,
Th.
smoky:
Danke für die vielen Gedanken und Möglichkeiten - ich finde euch Spitze
Zuerst wollte ich alle benötigten Felder kopieren (wären weniger gewesen als alle kopieren und die nicht benötigten zu löschen).
Das neue Dokument wird als Mail weitergeschickt, das heißt ich brauche dort eigentlich sowieso alle Informationen gesammelt in einem Feld. Also habe ich mir nun den Haupttext der aus verschiedenen Feldinhalten und etwas erklärenden Text dazu bereits im Quell Dokument berechnen lassen - das heißt ich habe mir das berechnete Feld vom Zweit Dokument einfach ins Quell Dokument kopiert :-), somit hatte ich nur mehr ein Feld zusätzlich zum Bild, Empfänger und zum Subject.
lg
Christine
Peter Klett:
Aus unserer Bibliothek, doc ist das markierte Dokument, newdoc das mit Compose erstellte
--- Code: --- If doc.HasItem ("$FILE") Then
'Alle Items entfernen, die nicht $FILE oder Typ RICHTEXT sind. Das Dokument darf danach NICHT gespeichert werden!!!
ForAll item In doc.Items
If Not item Is Nothing Then
If Not (item.Name = "$FILE" Or item.Type = RICHTEXT) Then
'Beim Löschen von Richtextfeldern ab 5.0.10 werden die $Files mit gelöscht
'deshalb müssen die Richtextfelder erhalten bleiben
Call doc.RemoveItem (item.Name)
End If
End If
End ForAll
'$FILE-Items und RICHTEXT-Felder kopieren
Call doc.CopyAllItems (newdoc)
End If
--- Ende Code ---
koehlerbv:
--- Zitat von: smoky am 12.06.17 - 17:42:23 ---Das neue Dokument wird als Mail weitergeschickt, das heißt ich brauche dort eigentlich sowieso alle Informationen gesammelt in einem Feld.
--- Ende Zitat ---
Dann mach das doch - wenn es nicht auf dem Server laufen soll - über Copy & Paste im UI. Schlimmstenfalls flackert da beim Juhser mal kurz der Monitor, sonst kriegt der da nix mit.
Bernhard
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln