Замена линков на документы в Rt поле

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

Статус темы:
Закрыта.
  1. Maria

    Maria Гость

    на форме есть RT-поле, в нем хранятся описания документов со ссылками на них. Нужно пройтись по всем ссылкам и заменить их на другие, а старые удалить.

    Код (Text):
    Set RTITem = Doc.GetFirstItem("Body")
    Set RTnav = RTItem.CreateNavigator
    If Not RTnav.FindFirstElement(RTELEM_TYPE_DOCLINK) Then
    Print "В документе не содержатся ссылки на другие документы"
    Else
    Do
    Set RTlink = RTnav.GetElement
    Call RTItem.BeginInsert(RTnav,true)
    Call RTitem.AppendDocLink (NewDoc, NewDoc.Subj(0))
    Call RTItem.EndInsert
    RTLink.Remove
    Loop While RTnav.FindNextElement
    end if
    Как правильно написать код между do и loop, чтобы все правильно работало? а то постояно ошибки валятся? :(
     
  2. Sandr

    Sandr Гость

    Вы пытаетесь не заменить ссылку, а удалить... а потом вставить какую-то другую ссылку... Причем тут же её удаляете и опять вставляете...

    Поробуйте так, переменные не объявлены у меня.. писалось прямо тут:

    Код (Text):
     Dim rtlink As NotesRichTextDocLink
    Set rtlink = rtnav.GetFirstElement(RTELEM_TYPE_DOCLINK)
    If rtlink Is Nothing Then
    Print "В документе не содержатся ссылки на другие документы"   Exit Sub
    End If

    While Not(rtlink Is Nothing)
    Set rtlinkNew = rtnav.GetNextElement(rtlink)
    call rtlink.remove
    Set rtlink = rtlinkNew
    Wend

    Call RTitem.AppendDocLink (NewDoc, NewDoc.Subj(0))
     
Загрузка...
Статус темы:
Закрыта.

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