неизменный Rich Text Item

Тема в разделе "Lotus - Программирование", создана пользователем nadezdaMP, 13 окт 2009.

  1. nadezdaMP

    nadezdaMP Гость

    обсуждений по этой теме много, но все они по конкретным задачам разные,
    поэтому помогите пожалуйста с решением следующей:

    есть документ, в нем содержится поле Body , в котором может быть пусто, либо текст, либо атачменты, либо и то и другое, и тд.
    необходимо скопировать это поле в другой документ, с добавлением в это поле уже нового документа, ссылки на документ, из которого оно было скопировано.
    у меня на все вылетают ошибки, ну никак, либо ссылка, либо содержимое поля Body получается.

    ссылку я добавляю так
    Set rtitem = New NotesRichTextItem (taskdoc, "Body")
    Call rtitem.AppendDocLink( tempdoc, "Ссылка ...")
    Call rtitem.AppendText("Ссылка ...")
    Call rtitem.AddNewLine(1)
    ...
    потом соответственно пытаюсь сделать
    Dim rtitemA As NotesRichTextItem, rtitemB As NotesRichTextItem
    Set rtitemA = New NotesRichTextItem (taskdoc, "Body")
    Set rtitemB = New NotesRichTextItem (taskdoc, "Body1")
    Call rtitemA.AppendDocLink( tempdoc, "Ссылка ")
    Call rtitemA.AppendText("Ссылка ")
    Call rtitemA.AddNewLine(1)

    Call taskdoc.ReplaceItemValue("Body1", contentdoc.GetItemValue("Body")(0))
    Call rtitemA.AppendRTItem(rtitemB)
    Call rtitemB.Remove
    Call taskdoc.Save(True, True)

    вылетает ошибка что item Body1 is not a rich text item
    хотя смотрела в EZTools ontentdoc.GetItemValue("Body")(0) - тип рич текст

    вообщем, запуталась, обьясните как можно сделать пожалуйста =)


    вообщем, в документе из которого нужно скопировать, ипользуется computed subform, в нем соответсвенно поле Body содержится, может в этом причина?
     
  2. nvyush

    nvyush Lotus team
    Lotus team

    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    Вместо
    Call taskdoc.ReplaceItemValue("Body1", contentdoc.GetItemValue("Body")(0))


    Попробовать
    If taskdoc.HasItem("Body1") Then Call taskdoc.RemoveItem("Body1")
    Call taskdoc.CopyItem(contentdoc.GetFirstItem("Body"), "Body1")
    ?
     
  3. NickProstoNick

    NickProstoNick Статус как статус :)

    Регистрация:
    22 авг 2008
    Сообщения:
    1.766
    Симпатии:
    39
    Покажи строку, на которой вываливается в ошибку
     
  4. nadezdaMP

    nadezdaMP Гость

    сделала именно так, все работает, спасибо!

    строку с ошибкой не помню уже, вроде на методе AppendRTItem вываливалась.
     
Загрузка...
Похожие Темы - неизменный Rich Text
  1. seoman2
    Ответов:
    35
    Просмотров:
    1.186
  2. Cheburan
    Ответов:
    9
    Просмотров:
    625
  3. evgenyum
    Ответов:
    7
    Просмотров:
    552
  4. Amfion
    Ответов:
    12
    Просмотров:
    1.000
  5. garrick
    Ответов:
    3
    Просмотров:
    617

Поделиться этой страницей