IBProcessEmail.Documents

Синтаксис

Documents: IBProcessEmailDocuments;

Описание

Свойство Documents определяет коллекцию прикреплённых к сообщению документов.

Пример

Для выполнения примера в репозитории предполагается наличие процесса с идентификатором PROCESS. Для процесса настроено событие запуска, отправляющее сообщение с какими-либо прикреплёнными документами.

Добавьте ссылки на системные сборки: BPM, Metabase. Также добавьте ссылку на сборку, которая необходима для работы с процессами.

Sub UserProc;
Var
    Mb: IMetabase;
    MObj: IMetabaseObjectDescriptor;
    Process: IBProcess;
    EventCollection: IBProcessEventGroupCollection;
    EMailEvent: IBProcessEventEmail;
    Email: IBProcessEmail;
    Docs: IBProcessEmailDocuments;
    Doc: IBProcessEmailDocument;
    i, c: Integer;
Begin
    Mb := MetabaseClass.Active;
    MObj := Mb.ItemById("PROCESS");
    // Получение структуры процесса
    Process := BProcessCollection.ByKey(MObj.Key);
    // Получение коллекции групп событий у процесса
    EventCollection := Process.Events;
    EMailEvent := EventCollection.ItemByType(BProcessEventType.StartProcess).Item(0As IBProcessEventEmail;
    Email := EMailEvent.Email;
    // Документы, прикреплённые к сообщению
    Docs := Email.Documents;
    c := Docs.Count;
    Debug.WriteLine("Количество документов: " + c.ToString);
    For i := 0 To c - 1 Do
        Doc := Docs.Item(i);
        Debug.WriteLine("Документ: " + Doc.Name + "( Ключ: " + Doc.Key.ToString + ')');
        Debug.Indent;
        Debug.WriteLine("Тип документа: " + Doc.DocType);
        Debug.WriteLine("Документ в репозитории: " + Doc.Descriptor.Name + '(' + Doc.Descriptor.Id + ')');
        Debug.Unindent;
    End For;
End Sub UserProc;

При выполнении примера в консоль среды разработки будет выведена информация о документах, прикреплённых к сообщению.

См. также:

IBProcessEmail