Проблема с аттачами

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

  1. SkyRanger

    SkyRanger Active Member

    Регистрация:
    17 мар 2007
    Сообщения:
    44
    Симпатии:
    0
    Прикрепляю файло к документу

    Код (Text):
        Dim ws As New NotesUIWorkspace
    Dim uidoc As NotesUIDocument
    Dim rtitem As NotesRichTextItem
    Dim object As NotesEmbeddedObject
    Dim doc As NotesDocument
    Dim filename As Variant

    Set uidoc = ws.CurrentDocument
    filename = ws.OpenFileDialog(True, "Выберите файл(ы)","","c:\")
    Call uidoc.GotoField("doc_file")

    Forall j In filename
    Print j
    End Forall     

    Set doc = uidoc.Document

    Set rtitem = New NotesRichTextItem( doc, "doc_file" )

    Forall j In filename
    Set object = rtitem.EmbedObject( EMBED_ATTACHMENT, "", j)
    End Forall

    Call doc.Save( True, True )
    Но аттач становится виден после закрытия документа и открытия его сново.

    Мне надо чтобы аттач становился доступен сразу и еще чтобы он добавлялся не в самый конец документа а в поле doc_file чтобы не пролистывать содержание документа чтобюы добраться до прикрепленной в виде файла версии...
     
  2. velitchestvo

    velitchestvo Гость

    попробуй так:
    Dim ws As New NotesUIWorkspace
    Dim uidoc As NotesUIDocument
    Dim rtitem As NotesRichTextItem
    Dim object As NotesEmbeddedObject
    Dim filename As Variant

    Set uidoc = ws.CurrentDocument
    filename = ws.OpenFileDialog(True, "Выберите файл(ы)","","c:\")
    Call uidoc.GotoField("doc_file")

    Forall j In filename
    Print j
    End Forall

    Set rtitem = New NotesRichTextItem( uidoc, "doc_file" )

    Forall j In filename
    Set object = rtitem.EmbedObject( EMBED_ATTACHMENT, "", j)
    End Forall

    Call uidoc.Save( True, True )
     
  3. Medevic

    Medevic Что это ? :)
    Lotus team

    Регистрация:
    10 дек 2004
    Сообщения:
    3.346
    Симпатии:
    2
    Используй собаки:
    Код (Text):
    @Command([EditGotoField]; fieldName$);
    @Command([EditInsertFileAttachment])
     
  4. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    <!--QuoteBegin-velitchestvo+1:06:2007, 08:16 -->
    <span class="vbquote">(velitchestvo @ 1:06:2007, 08:16 )</span><!--QuoteEBegin-->Set rtitem = New NotesRichTextItem( uidoc, "doc_file" )
    [snapback]67741" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    тут скорее всего будет ошибка
     
  5. SkyRanger

    SkyRanger Active Member

    Регистрация:
    17 мар 2007
    Сообщения:
    44
    Симпатии:
    0
    Во заработало!


    Код (Text):
        Dim ws As New NotesUIWorkspace
    Dim uidoc As NotesUIDocument
    Dim rtitem As NotesRichTextItem
    Dim object As NotesEmbeddedObject
    Dim doc As NotesDocument
    Dim filename As Variant

    Set uidoc = ws.CurrentDocument
    filename = ws.OpenFileDialog(True, "Выберите файл(ы)","","c:\")

    Forall j In filename
    Print j
    End Forall     

    Set doc = uidoc.Document

    Set rtitem = New NotesRichTextItem( doc, "doc_file" )

    Call doc.Save( True, True )

    Forall j In filename
    Call uidoc.GotoField("doc_file")
    Set object = rtitem.EmbedObject( EMBED_ATTACHMENT, "", j)
    Call uidoc.GotoField("doc_text")
    Call uidoc.Import("Microsoft Word",j)
    End Forall

    Call doc.Save( True, True )
    Call uidoc.GotoField("post_no")
    Только проблема опять же, он зараза в самый низ документа под полоску аттачит, а я хочу чтобы в поле аттачил как значок, в общем аналогично

    Код (Text):
    @Command([EditGotoField]; fieldName$);
    @Command([EditInsertFileAttachment])
    тока на скрипте...
     
  6. SkyRanger

    SkyRanger Active Member

    Регистрация:
    17 мар 2007
    Сообщения:
    44
    Симпатии:
    0
    Интересно... Если использовать

    Set rtitem = doc.GetFirstItem( "doc_file" )

    то нефига не работает, он не возвращает объект поля...

    А если создавать новое поле и старое уже есть, он все равно добавляет в самый конец документа...

    Т.е. вставить в поле не получается, так как он ен хочет это поле возвращать в виде объекта... Или я где то туплю???

    А как запретить правку / удаление ентого объекта? Или надо запрещать правку всего документа???
     
  7. IsAvailable

    IsAvailable Гость

    1.
    По поводу отображения аттачей - этот вопрос на этом форуме поднимался не раз уже (и мной в том числе % )
    Дали мне в тот раз зело полезную ссылку. Как найду - выложу сюда. Но суть решения вот тут можно посмотреть: http://codeby.net/forum/threads/1774s0.html?p=8488&

    2.
    Чтоб до RT-поля достучаться - используй сначала Вариант, а потом уже присваивай значение "РТ-переменной".

    3.
    На сколько знаю, достаточно запретить правку части документа с РТ-полем. Например, секцией с регулируемым доступом.


    P.S. По поводу пункта 1. : http://codeby.net/forum/threads/2112s660.html...amp;#entry52357
    Спасибо oshmianski
     
Загрузка...
Похожие Темы - Проблема аттачами
  1. AgniXRudra
    Ответов:
    2
    Просмотров:
    54
  2. Zloikaktus
    Ответов:
    0
    Просмотров:
    31
  3. c0de3r
    Ответов:
    5
    Просмотров:
    153
  4. DobermannTT
    Ответов:
    10
    Просмотров:
    160
  5. SoulPaladin
    Ответов:
    4
    Просмотров:
    145

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