<< Click to Display Table of Contents >> Объектная модель > Workflow – управление бизнес-процессами > Attachments – работа со вложениями AttachmentDetails – детальная информация о вложениях задачи, задания или уведомления |
Для программной работы с детальной информацией о вложениях задачи, задания или уведомления используется свойство AttachmentDetails. Оно хранит ссылку на вложение конкретной задачи, а не всех вложений семейства задачи, включая подзадачи и задания.
Свойства
Имя |
Тип |
Описание |
---|---|---|
RootEntity |
IEntity |
Ссылка на родительскую сущность, в которую добавлено вложение. Вычисляется программно. Возвращаемое значение: •Task – вложение добавлено в задачу; •Assignment – вложение добавлено в задание |
Task |
Задача, в которую добавлено вложение |
|
Assignment |
IAssignmentBase |
Задание, в которое добавлено вложение |
MainTask |
Задача, для которой нет ведущей задачи (Главная задача) |
|
AttachedBy |
Пользователь, который добавил вложение |
|
AttachedAt |
DateTime |
Дата и время добавления вложения |
GroupId |
Guid |
Идентификатор группы, в которую добавлено вложение |
AttachmentTypeGuid (EntityTypeGuid) |
Guid |
Тип вложения. Например, простой документ, входящее письмо, задача, справочник |
AttachmentId (EntityId) |
long |
Идентификатор вложения |
Group |
IAttachmentGroupInfo |
Информация о группе, в которую добавлено вложение. Вычисляется программно |
Свойство AttachmentDetails в основном используется для поиска по вложениям конкретной задачи, задания или уведомления.
Пример. Поиск по вложениям
// Найти все задания, у которых вложения были добавлены после 01.09.2023.
var attachedAt = new DateTime(2023, 09, 1);
var result = Sungero.Workflow.Assignments.GetAll()
.Where(a => a.AttachmentDetails.Any(attachment => attachment.AttachedAt > attachedAt));
Для программного добавления вложений рекомендуется использовать метод Add() свойства Attachments.
Свойство AttachmentDetails можно заполнять через сервис интеграции. Например, в задачу на свободное согласование нужно добавить документ в группу вложений «Приложения». Для этого напишите POST-запрос к сервису интеграции, в котором заполните свойства-ссылки добавляемого вложения.
Пример:
POST https://localhost/Integration/odata/IFreeApprovalTasks(676)/AttachmentDetails
{
"AttachmentId": 295,
"AttachmentTypeGuid": "8dd00491-8fd0-4a7a-9cf3-8b6dc2e6455d",
"GroupId": "fe0d933f-02f8-4733-b110-1e49467a9cf8",
"MainTask": {"Id": 676},
"AttachedBy": {"Id": 116},
"AttachedAt": "2023-09-05T16:53:00+05:00"
}
Примечание. Чтобы вложение сохранилось в системе корректно, в запросе к сервису интеграции должны быть заполнены свойства MainTask, AttachedBy, AttachedAt, AttachmentTypeGuid, AttachmentId, GroupId.
© Компания Directum, 2024 |