Подтверждение ответа на согласование

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

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

Настройка системы для подтверждения пользовательского действия

Подготовительные настройки системы:

  1. Создайте пользовательский класс "Согласование" (negotiation), см. Настройка классов и типов объектов.
  2. В классе "Согласование" (negotiation) создайте одноименный тип, см. Настройка классов и типов объектов.
  3. Создайте и включите пользовательское действие по событию, см. Настройка пользовательского действия по событию.

    • "Согласование", объект "Согласование", событие "[Пользовательское событие]", действие "Скрипт", выполнять синхронно.

      Скрипт:

      subjects.each {

       negotiation ->

       def votes = utils.find('vote', ['voter_em': user, 'state': 'registered', 'parent': negotiation])

       if (votes)

       {

       def vote = votes.first()

       utils.edit(vote, ['state': 'accepted', 'voter_em': user])

       }

      }

  4. Добавьте параметры действия по событию, см. Настройка параметров пользовательского действия.

    • "Подтверждение" (confirmation), типа "Строка", нередактируемый, значение"Вы действительно готовы согласовать запрос?".
  5. В классе "Согласование" (negotiation) создайте пользовательский элемент управления на панели действий в карточке согласования, см. Добавление пользовательской кнопки.

    • "Согласовать", внешний вид "кнопка с подписью", действие "Согласование" — данный элемент управления будет отображаться в интерфейсе оператора и использоваться для согласования пользовательского действия.
  6. В классе "Согласование" (negotiation) настройте право на выполнение пользовательского действия, используя маркеры прав в группе прав "Пользовательские события".

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

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

  1. Откройте карточку согласования.
  2. Нажмите иконку "Согласовать" в панели действий.
  3. На открывшейся форме нажмите кнопку "ОК".