Формулировка проблемы: на данный момент при наличии нескольких должностей у пользователя в форме с настроенной связью «Должности - Пользователь», а также при автозаполнении должностью текущего пользователя, поле «Должность» автоматически заполняется первой должностью в списке. Необходимо, чтобы при связи «Должности - Пользователь» отображалась та должность, которая выше по уровню орг. структуры.
Решение: необходимо реализовать возможность сортировки должностей пользователя в диалоге выбора должностей. При этом компонент автоматически заполняется первым значением из всего набора доступных значений.
Сортировка должна осуществляться следующим образом:
при наличии у пользователя должностей в различных по уровню структуры подразделениях - должности сортируются по убыванию уровня орг. структуры вне зависимости от уровня должности (см. пример ниже);
при наличии у пользователя должностей в одинаковых по уровню структуры подразделениях:
при наличии различных номеров подразделений - должности сортируются по возрастанию номера подразделения вне зависимости от уровня должности;
при наличии одинаковых номеров подразделений - должности
сортируются по возрастанию ID
должности.
Примечание: при наличии в подразделении с одинаковыми номерами должностей и.о. руководителя и заместителя руководителя приоритет отдается и.о. руководителя.
при наличии у пользователя должностей в одном подразделении - должности сортируются по следующему порядку:
руководитель;
и.о. руководителя;
заместитель руководителя;
специалист.
Примечание: если флажок компонента
объекты Synergy
с типом «Должность» «Заполнять
первой должностью создающего пользователя» включен - поле
«Должность» автоматически заполняется первой должностью из всего
набора должностей авторизованного пользователя.
Таким образом, порядок отображения должностей будет следующим:
И.О_руководителя_подразделения_1
Заместитель_руководителя_подразделения_1
Специалист_2
Специалист_4
Заместитель_руководителя_подразделения_3
Специалист_3