В типовом маршруте «Согласование договорных документов» есть параметр Руководитель подразделения. В этом параметре задается имя руководителя, для которого готовится договор. Значение параметра заполняется программно от инициатора. Значение выбирается из справочника Пользователи.
Без добавления разрезов данные в отчетах по этому типовому маршруту можно анализировать в разрезе имен руководителей подразделений.
Предположим, что только имен руководителей для анализа недостаточно. Требуются их подразделения. В этом случае в список параметров следует добавить параметр Должность руководителя (Post), тип Справочник Виды должностей.
Значение этого параметра не имеет смысла запрашивать у пользователей, его можно получить программно. Для этого в событие типового маршрута «Завершение выбора» можно добавить вычисления:
DEPARTMENT_MANAGER_PARAM_NAME = "РуководительПодразделения"
PARAM_IS_NOT_EXIST = -1
LIST_IS_EMPTY_COUNT = 0
FIRST_EMPLOYEE_INDEX = 0
// Получить список параметров ТМ
WorkflowParams = Object.WorkflowParams
DepartmentManagerParamIndex = WorkflowParams.IndexOfName(DEPARTMENT_MANAGER_PARAM_NAME)
if DepartmentManagerParamIndex <> PARAM_IS_NOT_EXIST
// Получить пользователя руководителя подразделения
DepartmentManagerUser = WorkflowParams.Values(DepartmentManagerParamIndex).Value
DepartmentManagerUserID = DepartmentManagerUser.ID
DepartmentManagerEmployeesCodeList = GetEmployeesByUserID(DepartmentManagerUserID)
if DepartmentManagerEmployeesCodeList.Count > LIST_IS_EMPTY_COUNT
// Получить работника руководителя подразделения
DepartmentManagerEmployeeCode = DepartmentManagerEmployeesCodeList.Values(FIRST_EMPLOYEE_INDEX)
DepartmentManagerEmployeeRecord = References.РАБ.GetObjectByCode(DepartmentManagerEmployeeCode)
PostKindCode = DepartmentManagerEmployeeRecord.ВидДолжности
if Assigned(PostKindCode)
// Получить вид должности
PostKindID = GetRequisiteValueAsString("PositionKinds"; PostKindCode; SYSREQ_ID)
PostKindInfo = References.PositionKinds.ObjectInfo(PostKindID)
WorkflowParams.ValueByName("Post").Value = PostKindInfo
endif
© Компания DIRECTUM, 2018 | Сообщество пользователей DIRECTUM |