Как проинформировать согласующего об ограничениях в полномочиях
<< Click to Display Table of Contents >> Разработка > Примеры разработки > Согласование по регламенту Как проинформировать согласующего об ограничениях в полномочиях |
Предположим, что у сотрудника есть ограничение в полномочиях: он согласует документы на сумму до 1 миллиона рублей, а для согласования документов на большую сумму ему требуется запросить подтверждение у вышестоящей организации.
Чтобы на этапе согласования вывести предупреждение, информирующее об ограничениях:
1.В карточку этапа с типом Согласование добавьте новое свойство логического типа Проверка полномочий. Для этого перекройте справочник Sungero.Docflow.ApprovalStage.
Примечание. Для заполнения свойства Проверка полномочий в уже созданных этапах можно написать скрипт конвертации.
2.Перекройте задание на согласование документа с согласующим Sungero.Docflow.ApprovalAssignment. Если проверку полномочий необходимо реализовать на этапе согласования с руководителем, то перекрывать нужно задание Sungero.Docflow.ApprovalManagerAssignment.
3.В событии Показ формы добавьте код, в котором осуществляется проверка полномочий и вывод информационного сообщения. При этом проверка происходит, если задание сформировано по этапу, в котором установлен признак Проверка полномочий.
var stage = ApprovalStages.As(_obj.Stage);
if (stage != null && stage.IsCheckAuthority == true)
{
// Проверить полномочия текущего сотрудника.
var str = Purchase.PublicFunctions.GetInfoAboutAuthority(Sungero.Company.Employees.Current,
_obj.DocumentGroup.OfficialDocuments.FirstOrDefault());
// Вывести предупреждение.
if (!string.IsNullOrEmpty(str))
e.AddInformation(Purchase.Resources.CheckAuthorityFormat(str));
}
В результате в задании на согласование сотрудник, для которого задано ограничение в полномочиях, увидит предупреждающее сообщение:
© Компания Directum, 2024 |