Перейти к содержанию

Статья для предыдущей поддерживаемой версии ПО — 4.7!

Текущая рекомендованная версия — Comindware Platform 5.0. См. документацию к версии 5.0.

Публичные и внутренние формы. Контроль доступа

Введение

Для любого шаблона (кроме шаблона процесса) можно создать неограниченное число форм. На них можно поместить разные атрибуты, и каждая форма может предназначаться для отдельной категории пользователей.

Доступ пользователей к форме определяется с помощью ролей и типа формы.

Здесь рассматривается контроль доступа к формам посредством типа формы.

Определения

Предусмотрено два типа форм: публичная и внутренняя.

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

Примечание

В начальном событии и пользовательской задаче отображается только определённая форма связанного шаблона записи и селектор форм недоступен.

Стартовая форма и форма пользовательской задачи всегда являются публичными.

Пример настройки внутренней формы для ограничения доступа к ней

В качестве примера создадим в шаблоне записи две формы и разграничим доступ к ним:

  • Клиентпубличная форма, будет доступна через селектор форм наряду с основной формой шаблона.
  • Диспетчервнутренняя форма, не будет доступна через селектор форм. Пользователь сможет перейти к этой форме только по прямой ссылке, например, отправленной в эл. письме.

Настройка форм

  1. Создайте шаблон записи «Заявки» со следующими атрибутами:

    Название Тип Свойства
    Тип ТС Список значений Добавьте значения «легковой автомобиль», «автобус», «грузовой автомобиль»
    Количество пассажиров Число Количество знаков после запятой: 0
    Водитель Аккаунт  
  2. Поместите на основную форму шаблона атрибуты «Тип ТС» и «Количество пассажиров».

  3. Создайте форму «Клиент» и поместите на неё атрибут «Количество пассажиров».
  4. Создайте форму «Диспетчер» и поместите на неё атрибуты «Тип ТС», «Количество пассажиров», «Водитель».
  5. В свойствах формы «Диспетчер» выберите тип «Внутренняя».

Тестирование

  1. Создайте новую запись в шаблоне «Заявки».
  2. Откроется основная форма шаблона.
  3. Нажмите селектор форм рядом с заголовком записи:

    • В раскрывающемся списке под селектором будут отображаться основная форма шаблона и форма «Клиент».
    • Форма «Диспетчер» в списке отображаться не будет.
  4. Выберите и просмотрите форму «Клиент».

  5. Перейдите к форме «Диспетчер», используя ссылку вида:

    http://example.com/#form/<oa.XX>/<form.XX>/<RecordID>

    Здесь:

    • http://example.com/ — адрес сервера Comindware Business Application Platform;
    • <oa.XX> — ID шаблона записи «Заявки» (его видно в списке шаблонов);
    • <form.XX> — ID формы «Диспетчер» (его видно в адресной строке браузера в конструкторе формы);
    • <RecordID> — ID записи «Заявки».

Связанные статьи

Формы. Определения, редактирование, удаление, использование списка форм

Стартовая форма и форма пользовательской задачи

Роли в приложении. Определения, настройка, объединение, удаление

К началу