Хлебные крошки

Навигационная цепочка "хлебные крошки" — настраиваемый механизм навигации по системе.

Навигационная цепочка строится из отдельных элементов. Каждый элемент "хлебных крошек" представляет собой соотношение класса/типа объектов и одного или нескольких атрибутов типа "Ссылка на бизнес-объект" данного класса/типа, указывающих на родительские объекты.

В интерфейсе оператора "хлебные крошки" представлены в виде цепочки ссылок на определенные объекты, образующей путь до текущего объекта в структуре объектов системы, см. Навигационная цепочка "хлебные крошки".

Список элементов навигационной цепочки. Карточка элемента "хлебных крошек"

Список элементов навигационной цепочки

Список элементов навигационной цепочки настраивается на вкладке "Навигация" в блоке "Навигационная цепочка ("Хлебные крошки")".

Чтобы открыть список элементов навигационной цепочки, в меню навигации выберите "Настройка системы" → "Интерфейс и навигация" и перейдите на вкладку "Навигация". Список элементов по умолчанию пуст.

Для каждого элемента навигационной цепочки в списке отображаются:

  • Параметры:

    • Объекты — класс объекта, для которого настраивается навигационная цепочка "хлебные крошки". В рамках класса можно выбрать один или несколько типов, для которых настраиваются "хлебные крошки". Название класса/типа является ссылкой на карточку элемента "хлебных крошек".
    • Атрибуты связи — названия атрибутов связи для классов/типов объектов. Каждый атрибут располагается с новой строки. Атрибуты расположены в заданном порядке.
    • Объекты, на которые ссылаются атрибуты связи — класс объектов, на который ссылается атрибут связи, указывается для каждого атрибута связи.
    • Примерный вид "хлебных крошек" — пример цепочки "хлебных крошек" для класса, заданного в столбце "Объекты". Для каждого атрибута связи отображается по одному примеру, все возможные примеры навигационных цепочек отображаются в карточке элемента "хлебных крошек".
  • Иконки управления элементом:  "Редактировать и  "Удалить".

Карточка элемента "хлебных крошек"

Чтобы открыть карточку элемента "хлебных крошек", в блоке "Навигационная цепочка ("Хлебные крошки")" нажмите на название объекта в столбце "Объекты".

Карточка элемента "хлебных крошек" содержит:

  • Панель управления элементом "хлебных крошек":
    • кнопка "Редактировать", при редактировании параметров навигационной цепочки можно изменить набор типов в рамках класса, выбранного при добавлении цепочки и атрибуты связи.
    • кнопка "Удалить".
  • Блок "Свойства", в котором отображаются:

    • Объекты — класс объекта, для которого настраивается навигационная цепочка "хлебные крошки". В рамках класса могут быть выбраны один или несколько типов. Название класса/типа является ссылкой на его карточку.
    • Атрибуты связи — каждый атрибут располагается в отдельной строке, в заданном порядке, который определяет очередность обработки атрибутов при формировании навигационной цепочки.
    • Объекты, на которые ссылаются атрибуты связи — класс объектов, на который ссылается атрибут связи, указывается для каждого атрибута связи.
    • Примерный вид "хлебных крошек" — все возможные примеры цепочек "хлебных крошек" для класса, заданного в параметре "Объекты" согласно существующим настройкам в блоке "Навигационная цепочка ("Хлебные крошки")".

Чтобы вернуться в список элементов навигационной цепочки, нажмите ссылку "к списку элементов "хлебных крошек".

Добавление элемента навигационной цепочки

Элемент "хлебных крошек" можно создать для любых системных и пользовательских классов, кроме служебных.

Чтобы добавить элемент в навигационную цепочку, выполните следующие действия:

  1. В меню навигации выберите "Настройка системы" → "Интерфейс и навигация" и перейдите на вкладку "Навигация".
  2. В блоке "Навигационная цепочка ("Хлебные крошки")" нажмите кнопку Добавить элемент, заполните поля на форме добавления и нажмите кнопку Сохранить.

    Поля формы добавления:

    • Объекты — выберите класс/тип объектов, для которого настраивается навигационная цепочка "хлебные крошки".

      Для одного типа объектов может настраиваться только один элемент навигационной цепочки.

      Для выбора доступны системные и пользовательские классы объектов, тип объектов или несколько типов в рамках одного класса.

    • Атрибуты связи — выберите атрибуты связи выбранного класса/типа объектов, на основе которых вычисляется родительский объект в навигационной цепочке.

      Для выбора доступны атрибуты связи типа "Ссылка на бизнес-объект" выбранного класса/ типа объектов или общие атрибуты для выбранных типов, если указано несколько типов.

      Для выбора атрибутов используется список с двумя частями. Выбранными являются атрибуты, расположенные в правой части списка.

      Если выбрано несколько атрибутов связи, то порядок их обработки соответствует порядку отображения атрибутов в правой части списка.

      В списке с двумя частями доступны следующие виды перемещений с помощью инструмента "drag&drop":

      • из левой части списка в определенное место правой части;
      • из определенного места правой части в определенное место той же части;
      • из правой части списка в левую часть.

      Возможен быстрый выбор атрибута в правой и левой части списка, если список находится в фокусе. При вводе на клавиатуре начального символа, в списке отображается и выделяется цветом первый атрибут, название которого начинается с введенного символа. Если не найдено ни одного атрибута, то никаких действий не выполняется.

В результате выполнения настройки новый элемент отобразится на вкладке "Навигация" в блоке "Навигационная цепочка ("Хлебные крошки")".

При редактировании параметров навигационной цепочки можно изменить набор типов в рамках класса, выбранного при добавлении цепочки и атрибуты связи.

Изменение очередности обработки атрибутов при формировании навигационной цепочки

Порядок расположения атрибутов связи на карточке элемента навигационной цепочки, определяет очередность обработки атрибутов при формировании навигационной цепочки.

Чтобы изменить очередность обработки атрибутов при формировании навигационной цепочки, выполните следующие действия:

  1. В меню навигации выберите "Настройка системы" → "Интерфейс и навигация", перейдите на вкладку "Навигация" и откройте карточку элемента "хлебных крошек".
  2. В карточке элемента "хлебных крошек" укажите очередность обработки атрибутов связи с помощью инструмента "drag*drop" или иконок  "вверх" и  "вниз" в строке атрибута.

Настройка видимости навигационной цепочки в интерфейсе оператора

Для отображения навигационной цепочки:

Примеры

Пример 1. Настройка навигационной цепочки "хлебные крошки" для элементов оргструктуры

Описание настройки "хлебных крошек" для навигации по оргструктуре компании

В разделе приводится пример настройки "хлебных крошек" для навигации по оргструктуре компании. Пользователю предоставляется информация о положении текущего объекта, например, сотрудника или отдела, в оргструктуре компании и возможность удобного перехода в карточки родительских объектов.

Чтобы для каждого элемента оргструктуры, сотрудника и отдела, в навигационной цепочке отображалась иерархия вышестоящих элементов, создайте следующие элементы навигационной цепочки:

  1. Для класса "Сотрудник" (employee) с параметрами:

    • "Объекты": класс "Сотрудник" (employee);
    • "Атрибуты связи": "Отдел" (parent), указывающий на отдел, в который входит сотрудник.
  2. Для класса "Отдел" (ou), с параметрами :

    • "Объекты": класс "Отдел" (ou);
    • "Атрибуты связи": "Отдел" (parent), указывающий на вышестоящий отдел.

      Если класс объектов, вложен сам в себя, например, системный класс "Отдел" (ou), то в навигационной цепочке в качестве родительского объекта для отделов верхнего уровня отображается объект Компания.

Подробное описание добавления элементов см. Добавление элемента навигационной цепочки.

Алгоритм формирования навигационной цепочки "хлебные крошки" для элементов оргструктуры

  1. Выполняется проверка видимости элемента навигации "хлебные крошки", см. Видимость элементов навигации.

    Если флажок "Показывать "хлебные крошки" включен, то выполняется пункт 2.

    Если флажок выключен, то навигационная цепочка не отображается.

  2. Вычисляется родительский объект для текущего объекта, в карточке которого строится навигационная цепочка:

    1. Если у текущего объекта заполнен атрибут связи, то объект, на который указывает ссылка в атрибуте, считается родительским объектом для текущего.

      Если атрибут не заполнен, то навигационная цепочка не отображается.

    2. Выполняется проверка прав текущего пользователя на просмотр карточки родительского объекта.

      Если право есть, то в навигационную цепочку записывается текущий объект и ссылка на родительский объект. Например, Отдел ИТ/Сотрудник "Миронова Ольга Юрьевна".

      Если прав нет, то навигационная цепочка не отображается.

  3. Вычисляется родительский объект для объекта, определенного как родительский, в пункте 2.

    1. Если у объекта заполнен атрибут связи, то объект, на который указывает ссылка в атрибуте, считается родительским для данного объекта.

      Если атрибут не заполнен, то навигационная цепочка прерывается. В карточке текущего объекта отображаются элементы цепочки, созданные на предыдущем этапе.

    2. Выполняется проверка прав текущего пользователя на просмотр карточки родительского объекта.

      Если право есть, то в навигационную цепочку записывается ссылка на родительский объект. Например, Компания/Отдел ИТ/Сотрудник "Миронова Ольга Юрьевна".

      Если прав нет, то навигационная цепочка прерывается. В карточке текущего объекта отображаются элементы цепочки, созданные на предыдущем этапе. Например, Отдел ИТ/Сотрудник "Миронова Ольга Юрьевна"

Пользователь системы при просмотре карточки сотрудника над ее названием видит цепочку ссылок, включающую в себя ссылку на отдел, в который входит сотрудник, и ссылки на вышестоящие отделы для отдела сотрудника.

Пример 2. Настройка навигационной цепочки "хлебные крошки" для задач

Описание настройки "хлебных крошек" для навигации по задачам и этапам/проектам

В разделе приводится пример настройки "хлебных крошек" для навигации по задачам и этапам/проектам, в рамках которых они созданы. Пользователю предоставляется информация о принадлежности задачи к определенному этапу проекта или всему проекту и возможность удобного перехода в карточки родительских объектов.

В интерфейсе администратора выполните следующие настройки:

  1. Настройте пользовательские классы объектов для работы с задачами:

    1. Создайте пользовательские классы и типы объектов для работы с задачами, см. Настройка классов и типов объектов

      • пользовательский класс "Проект", тип "Проект";
      • пользовательский класс "Этап", тип "Этап", вложенный в класс "Проект".
      • пользовательский класс "Задача", тип "Задача";
    2. В классе "Этап" измените название пользовательского атрибута "Родитель" (parent) на "Проект" (parent), см. Редактирование параметров атрибута.

      Включите данный атрибут в группу, отображаемую на карточке объекта класс "Этап", см. Группы атрибутов и Контент "Параметры объекта".

    3. В классе "Задача" создайте ссылочные атрибуты типа "Ссылка на бизнес-объект" для связи задач с этапами и проектами для отображения на схеме связей:

      • "В рамках этапа", указывающий на объекты класса "Этап";
      • "В рамках проекта", указывающий на объекты класса "Проект"
  2. Чтобы для каждой задачи в навигационной цепочке отображалась иерархия вышестоящих элементов, выполните следующие настройки:

    1. Создайте следующие элементы навигационной цепочки:

      • Для класса "Задача" с параметрами:

        • "Объекты": класс "Задача";
        • "Атрибуты связи": "В рамках проекта", "В рамках этапа".
      • Для класса "Этап", с параметрами:

        • "Объекты": класс "Этап";
        • "Атрибуты связи": "Проект".

        Подробное описание добавления элементов см. Добавление элемента навигационной цепочки.

    2. Откройте карточку элемента навигационной цепочки для класса "Задача" и установите порядок атрибутов связи: первый "В рамках этапа", второй "В рамках проекта", см. Изменение очередности обработки атрибутов при формировании навигационной цепочки.

      Порядок расположения атрибутов связи учитывается при формировании строки "хлебных крошек" для текущего объекта в интерфейсе оператора. При нахождении первого заполненного атрибута объект из этого атрибута записывается в "хлебные крошки". Проверка для остальных атрибутов не выполняется.

В интерфейсе оператора создайте объекты и укажите атрибуты связи:

  • создайте проект "Внедрение ПО" и этап "Обучение сотрудников";
  • создайте задачу "Обучение сотрудников" и в атрибуте "В рамках этапа" выберите этап "Обучение сотрудников";
  • создайте задачу "Разработка плана внедрения" и в атрибуте "В рамках проекта" выберите проект "Внедрение ПО".

Алгоритм формирования навигационной цепочки "хлебные крошки" для задачи

  1. Выполняется проверка видимости элемента навигации "хлебные крошки", см. Видимость элементов навигации.

    Если флажок "Показывать "хлебные крошки"" включен, то выполняется пункт 2. Если флажок выключен, то навигационная цепочка не отображается.

  2. Вычисляется родительский объект для задачи, в карточке которой строится навигационная цепочка:

    1. Если у задачи заполнен атрибут связи, указанный первым, например "В рамках этапа", то объект, на который указывает ссылка в атрибуте, считается родительским объектом для текущего.

      Атрибуты связи проверяются по очередности, соответствующей порядку их расположения в столбце "Атрибуты связи" в карточке соответствующего элемента хлебных крошек.

      Если первый атрибут не заполнен, то проверяется заполненность следующего атрибута, например "В рамках проекта".

      Если ни один атрибут не заполнен, то навигационная цепочка не отображается.

    2. Выполняется проверка прав текущего пользователя на просмотр карточки родительского объекта.

      Если право есть, то в навигационную цепочку записывается текущий объект и ссылка на родительский объект.

      Пример 1, по атрибуту связи "В рамках этапа": "Этап "Обучение сотрудников" /Задача "Обучение сотрудников".

      Пример 2, по атрибуту связи "В рамках проекта": "Проект "Внедрение ПО" /Задача "Разработка плана внедрения".

      Если прав нет, то навигационная цепочка не отображается.

  3. Вычисляется родительский объект для объекта, определенного как родительский, в пункте 2.

    1. Если у объекта заполнен атрибут связи, то объект, на который указывает ссылка в атрибуте, считается родительским для данного объекта.

      Если атрибут не заполнен, то навигационная цепочка прерывается. В карточке текущего объекта отображаются элементы цепочки, созданные на предыдущем этапе. Например, "Этап "Обучение сотрудников" /Задача "Обучение сотрудников ФО".

    2. Выполняется проверка прав текущего пользователя на просмотр карточки родительского объекта.

      Если право есть, то в навигационную цепочку записывается ссылка на родительский объект. Например, "Проект "Внедрение ПО" / Этап "Обучение сотрудников" / Задача "Обучение сотрудников".

      Если прав нет, то навигационная цепочка прерывается. В карточке текущего объекта отображаются элементы цепочки, созданные на предыдущем этапе. Например, "Этап "Обучение сотрудников" /Задача "Обучение сотрудников ФО".

Пользователь системы при просмотре карточки задачи над ее названием видит цепочку ссылок, включающую в себя ссылку на этап или проект, в рамках которого выполняется данная задача и ссылки на вышестоящие объекты для этапа.