1. Набираем команду codeby webinar. Набираем команду для организации и проведения вебинаров. Подробнее ...

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление
  3. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление

Сохранение вложений документа

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

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

    DEN888 Гость

    Репутация:
    0
    Приветствую

    Подскажите пожалуйста как правильно сохранить, через LS вложения поля (Body) текущего документа.

    нашел через Help пример

    Код:
    Dim doc As NotesDocument
    Dim rtitem As Variant
    Dim fileCount As Integer
    Const MAX = 100000
    fileCount = 0	
    '...set value of doc...
    Set rtitem = doc.GetFirstItem( "Body" )
    If ( rtitem.Type = RICHTEXT ) Then
    Forall o In rtitem.EmbeddedObjects
    If ( o.Type = EMBED_ATTACHMENT ) _
    And ( o.FileSize > MAX ) Then
    fileCount = fileCount + 1
    Call o.ExtractFile _
    ( "c:\reports\newfile" & Cstr(fileCount) )
    Call o.Remove
    Call doc.Save( True, True )
    End If
    End Forall
    End If
    Данный код указал в действии формы, при нажатии на кнопку выходит ошибка:
    "Переменная объекта не задана."

    PS: В LS новенький, прошу демонстрационный пример, заранее спасибо
     
  2. DEN888

    DEN888 Гость

    Репутация:
    0
    вроде бы получилось :rolleyes:

    Код:
    Sub Click(Source As Button)
    Dim workspace As New NotesUIWorkspace
    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim Pdoc As NotesDocument
    Set db = session.CurrentDatabase
    Set Pdoc = workspace.CurrentDocument.Document
    
    Set rtitem = Pdoc.GetFirstItem( "Body" ) 
    If ( rtitem.Type = RICHTEXT ) Then
    Forall o In rtitem.EmbeddedObjects
    If ( o.Type = EMBED_ATTACHMENT ) Then
    Call o.ExtractFile ("C:\reports\" & o.Name)	 
    End If
    End Forall	 
    End If
    End Sub
    может есть лучше варианты?
     
  3. hosm

    hosm * so what *

    Репутация:
    0
    Регистрация:
    18 май 2009
    Сообщения:
    2.442
    Симпатии:
    8
    Если не юзаются дальше, то вполне можно убрать строки Dim db As NotesDatabase Set db = session.CurrentDatabase
    и можно вместо o.Name брать o.Source
     
  4. lmike

    lmike нет, пердело совершенство
    Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.376
    Симпатии:
    336
    есть, здесь выкладывали @AttachmentNames
     
Загрузка...
Статус темы:
Закрыта.

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