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

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

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

Локальная переменная. Использование для массовой обработки записей

В Comindware Platform можно настроить возможность массовой обработки нескольких записей в таблице, например, если нужно поменять статус у нескольких заявок одновременно, подтвердить оплату нескольких счетов и т. д. В данной статье рассмотрен пример массового назначения исполнителей по заявкам и последующего запуска процесса по каждой из заявок.

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

Исходные данные

  • Шаблон записи «Заявки».
  • Атрибут «Ответственный» в шаблоне записи «Заявки» (тип данных — «Аккаунт»).
  • Шаблон процесса «Исполнение заявки».

Порядок настройки

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

    • Отображаемое названиеНазначить исполнителя;
    • Контекст кнопкиЗапись;
    • Тип кнопкиСохранить;
    • Результат выполненияОбновить данные;
    • Отображать диалоговое окно — флажок установлен.

    Сохраните настройки кнопки и перейдите на вкладку «Локальные переменные». Создайте переменную «Исполнитель» (тип данных — «Аккаунт»).

    Перейдите на вкладку «Свойства» и нажмите «Настроить диалоговое окно». Вынесите на центральную область созданную локальную переменную. Сохраните настройки и вынесите кнопку на область кнопок для таблиц.

  2. Перейдите в настройки приложения и нажмите «Сценарии». Создайте новый сценарий со следующими параметрами:

    • НазваниеНазначение исполнителя по заявке;
    • Контекст выполненияОт инициатора;
    • СтатусАктивен.
  3. Настройте триггер на нажатие созданной в п. 1 кнопки. Добавьте действие по изменению значения. Выберите атрибут «Ответственный», укажите операцию со значениями — Заменить и в поле «Значение» выберите N3. Вставьте следующее выражение:

    @prefix cmwsession: <http://comindware.com/ontology/session#>. 
    @prefix user: <http://comindware.com/ontology/user#>.
    @prefix variable: <http://comindware.com/ontology/session/variable#>.
    @prefix debug: <http://comindware.com/ontology/debug#>.

    {
    cmwsession:context variable:dialogVariables ?v1.
    ?v1 variable:Ispolnitel ?value.
    }

    Примечание

    Важно указать системное имя, прописанное в локальной переменной, после variable:.

    Затем добавьте действие «Запуск процесса», выберите процесс «Исполнение заявки». Перейдите на вкладку «Дополнительно» и отметьте флажки «Выполнять отдельно от сценария» и «Игнорировать все ошибки». Если этого не сделать, процесс запустится не по каждой из записей, а только по одной.

  4. Протестируйте. Выберите несколько заявок, нажмите кнопку «Назначить исполнителя». Откроется диалоговое окно с локальной переменной «Исполнитель». Выберите пользователя и подтвердите операцию.

К началу

Ассистент базы знаний Comindware

Загрузка ассистента...
Запрос отправлен в ИИ-ассистент Открыть вкладку