RichText Feld in Memo kopieren

  • Hallo Forum,


    habe foglendes Problem!
    Ich möchte in einer Infomail ein formatiertes Richtextfeld aus einem Setup-Dokument einfügen.
    Der Text in diesem Feld ist Fett und kursiv formatiert!


    Gehe ich nun hin und hänge das Setupfeld an das Body Feld der Memo an passiert nichts! Das Bodyfeld ist immer leer!!




    Hier mein Script dazu:


    Wobei einige Werte in die Funktion übergeben werden.



    '##############################
    Dim s As New notessession
    Dim db As notesdatabase
    Dim maildoc As notesdocument


    Set db = s.currentdatabase
    Set maildoc = db.createdocument
    maildoc.from = n.abbreviated
    maildoc.principal = n.abbreviated
    maildoc.form = "memo"

    maildoc.sendto = empfaenger
    maildoc.subject = mailsubject



    Set rtitemA = New NotesRichTextItem(maildoc, "Body" )
    Set rtitemB = New NotesRichTextItem(sourceDoc, sourceField )

    If (rtitemA.Type = RICHTEXT And rtitemB.Type = RICHTEXT ) Then
    Call rtitemA.AppendRTItem( rtitemB )
    End If
    Call maildoc.send(False)
    '##############################



    Hat jemand von Euch einen Tipp?
    Habe zwar das Forum schon durchsucht, jedoch keinen Hinweis auf das Problem gefunden.


    Danke im Voraus für die Rückmeldungen


    Legonas

    ---------------------------------
    Alles wird gut! :sunclaus:

  • Kommt der evtl in die Bedingung wo er das Item anhängt gar nicht rein ?


    Was passiert wenn du die If-Abfrage weglässt ?


    Alternativ kannst du das Item ja auch einfach aus dem Vorlagendokument kopieren (CopyItemToDocument)


    /EDIT
    Warte mal:


    Du generierst hier zwei leere RichTextItems und hängst das eine leere an das andere an. Wo soll denn da der Inhalt herkommen ?
    Wenn dann musst du dir das RichTextItem aus der Vorlage per GetFirstItem holen

  • Hallo Zusammen!


    Folgendes habe ich getestet:


    1) Set rtitemA = maildoc.GetFirstItem( "Body" )


    --> Funktioniert nicht, da das Feld noch nicht existiert im neu erzeugten Maildokument. Wenn ich das Dokument zuvor speichere funktioniert es auch nicht!


    2) Speicher ich das neue MemoDok, lade das neue Memo dann wieder und greife dann per
    Set rtitemA = New NotesRichTextItem(maildoc, "Body" )
    auf das Body-Feld zu funktioniert es.



    Kann es sein, dass ein RichText Feld nur in einem zuvor gespeicherten Dokument manipuliert werden kann?


    Zudem habe ich jedoch noch den Effekt, dass in meinem Mailfeil in welches die Memo versendet wird das Bodyfeld nur sichtbar ist, wenn ich in den Bearbeitemodus gehe?


    Hat hier noch jemand eine Idee??


    Danke Legonas

    ---------------------------------
    Alles wird gut! :sunclaus:

  • Hallo Zusammen,


    habe das Problem gefunden!


    Das Body-Feld muss mit dem Befehl:
    Set rtitemA = maildoc.CreateRichTextItem("Body")
    erzeugt werden.
    Nur dann existiert es in einem noch nicht gespeicherten Dokuement auch.


    Das Ansichtsproblem in meinem Postfach hatt sich erledigt, wenn ich eine Leerzeile vor dem Einfügen des ItemsB einfüge.


    Warum auch Immer !!!!


    danke und schöndes Wochenende
    legonas

    ---------------------------------
    Alles wird gut! :sunclaus: