Связи между объектами оргструктуры
Любой сотрудник обязательно должен быть зарегистрирован в одном из отделов компании. Сотрудник–исполнитель может одновременно входить в состав одной или нескольких команд. Участник команды может назначаться ответственным за запрос в рамках команды.
Как правило, все отделы и команды хранятся в системе в карточке компании.
Между системными классами "Отдел" (ou) и "Сотрудник" (employee) преднастроены связи типа "Вложение", см. Связь типа "Вложение":
- в класс "Компания" (root) вложены объекты класса "Отдел" (ou);
- в класс "Отдел" (ou) вложены объекты классов "Отдел" (ou) и "Сотрудник" (employee);
Вложенные классы отображаются в свойствах родительского класса на вкладке "Атрибуты"
Атрибут "Родитель"
Для отображения связи типа "Вложение" во вложенных объектах используется атрибут "Родитель" (parent). Значением атрибута является ссылка на карточку родительского объекта, в котором создан данный объект. Для отделов верхнего уровня ссылка на компанию, для подотделов и сотрудников — на отдел.
Особенности добавления объектов оргструктуры
Объекты класса "Сотрудник" (employee) могут добавляться только в карточке отдела.
Объекты класса "Отдел" (ou) могут добавляться в карточке компании и в карточке отдела.
Особенности разрыва связи сотрудника с командой
Связь объекта класса "Сотрудник" (employee) с объектом класса "Команда" (team) не может быть удалена в следующих случаях:
- Сотрудник в рамках команды является ответственным за объекты, статус которых отличен от "Закрыт" (closed) или другого конечного статуса.
- Сотрудник является единственным исполнителем в команде, ответственной за объекты, статус которых отличен от "Закрыт" (closed) или другого конечного статуса.
- Сотрудник является единственным исполнителем в команде, которая автоматически назначается ответственной в статусах.
- Сотрудник в рамках команды автоматически назначается ответственным в статусах.
- Сотрудник в рамках команды выбран в качестве значения по умолчанию для агрегирующих атрибутов.