Write – записать историю
<< Click to Display Table of Contents >> Объектная модель > Действия с репозиториями и сущностями > History – история работы Write – записать историю |
Метод используется для записи истории работы с сущностью.
ВАЖНО. Методы для записи в историю доступны только в серверном коде.
При использовании метода Write() у сущности вызывается событие на запись истории. Поэтому не рекомендуется использовать метод в событии «До сохранения истории» для той же сущности, так как это может привести к бесконечным вызовам события.
В зависимости от типа сущности метод может иметь разное количество перегрузок. При работе с историей документов дополнительно записывается информация о номере версии, с которой происходит действие.
Перегрузки
Write(Nullable <Enumeration> operation, Nullable <Enumeration> operationDetailed, string comment) |
Записать историю работы |
Write(Nullable <Enumeration> operation, Nullable <Enumeration> operationDetailed, string comment, Nullable <bool> isSubstitute) |
Записать историю работы по замещению |
Write(Nullable <Enumeration> operation, Nullable <Enumeration> operationDetailed, string comment, Nullable <int> versionNumber) |
Записать историю работы с версией документа. Перегрузка доступна только при работе с документом |
Write(Nullable <Enumeration> operation, Nullable <Enumeration> operationDetailed, string comment, Nullable <int> versionNumber, Nullable <bool> isSubstitute,) |
Записать историю работы с версией документа по замещению. Перегрузка доступна только при работе с документом |
Синтаксис
C# |
public void Write(Nullable <Enumeration> operation, Nullable <Enumeration> operationDetailed, string comment, Nullable <int> versionNumber, Nullable <bool> isSubstitute); |
Параметры
operation – логическая операция в предметной области, которая выполняется над сущностью. В истории работы с сущностью отображается в колонке «Действие». Например, «Экспорт» документа;
operationDetailed – детальная информация о логической операции. В истории работы с сущностью отображается как локализованное значение в колонке «Комментарий». Например, «Экспорт в файл»;
comment – комментарий к операции. В истории работы с сущностью отображается как нелокализованная часть комментария в колонке «Комментарий». Расположение в комментарии зависит от настроек параметра operationDetailed. Например, при экспорте документа в файл в комментарии указывается имя файла;
versionNumber – номер версии документа;
isSubstitute – признак того, что действие выполнялось по замещению.
Пример. Добавление записи в историю
/// <summary>
/// Добавить исполнителя в задание на согласование.
/// </summary>
/// <param name="assignment">Задание.</param>
/// <param name="newApprover">Новый согласующий.</param>
/// <param name="deadline">Новый срок для задания.</param>
[Public, Remote]
public void AddApprover(IAssignment assignment, IEmployee newApprover, DateTime? deadline)
{
var operation = new Enumeration(Constants.ApprovalAssignment.AddApprover);
assignment.Forward(newApprover, ForwardingLocation.Next, deadline);
// Записать добавленного исполнителя в историю.
assignment.History.Write(operation, operation, Company.PublicFunctions.Employee.GetShortName(newApprover, false));
// ...
}
© Компания Directum, 2024 |