Запуск скрипта из дашборда
8 800 555-89-02
Войти
Документация
CTRL+K
Standalone2505
SaaS

Запуск скрипта из дашборда

В этой статье

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

Данный функционал позволяет, например:

  • Добавить, удалить или обновить строки таблицы
  • Совершить действие в другой системе:
    • Создать задачу
    • Повысить приоритет задачи
    • Отправить сообщение

Настройка скрипта

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

  1. Создайте новый скрипт в Панели данных пространства.
  2. Первым блоком (триггером) обязательно должен быть Ручной запуск. Для запуска действия можно использовать скрипт только с этим триггером.
  3. Настройте ожидаемые поля, они будут заполняться пользователем или автоматически во время запуска действия из виджета. В параметрах блока:
    • Укажите название поля
    • Выберите тип данных (текст, число, дата или дата и время)
    • Если будет приниматься ряд данных, поставьте галочку рядом с полем Массив
    • Можно сделать поле обязательным для заполнения переключателем Обязательное поле
    Настройка ожидаемого поля Действие в дашборде не выполнится, если указанный тип данных ожидаемого поля не совпадет с фактическим типом данных.
  4. При нажатии Продолжить открывается модальное окно с созданными полями. Заполните их и нажмите Выполнить. Блок протестируется и в левой панели отобразятся дата и время выполнения, а также введенные в полях значения. Окно с полями
  5. Добавьте блок, например, для удаления или обновления строки таблицы.
  6. Выберите таблицу, в которую будут вноситься изменения, и с помощью маппинга соотнесите поля. Маппинг полей
  7. Протестируйте блок и опубликуйте скрипт.
Заметка

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

Настройка действия

Чтобы настроить действие, перейдите в дашборд, создайте или выберите таблицу, для которой необходимо настроить действие, и откройте вкладку Действия в правой панели. Нажмите + Действие.

Вкладка Действия

После нажатия появляются параметры для настройки действия.

Поля активации

Параметры настройки действия

Добавьте название и, при необходимости, описание, которое используется в качестве подсказки на этапе запуска скрипта. Чтобы дашборд автоматически обновлялся после запуска действия, настройте параметр Обновить дашборд после выполнения скрипта. Можно обновить все виджеты или только тот, для которого настроено действие. Также можно отключить параметр.

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

Дополнительно можно выбрать тип кнопки: основная, второстепенная или ссылка. Также можно настроить базовый цвет фона и текста.

Настройте параметры действия:

  • Название
  • Описание
  • Способ ввода

Настройка способа ввода

Из колонки

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

Из переменной

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

Из модели данных

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

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

Список таблиц

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

Список колонок

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

Способ Из модели данных в режиме просмотра

Заметка

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

Важно

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

Задать формулой

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

Задать агрегацией

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

Заметка

При использовании Фильтра по строкам значение рассчитывается с учетом выбранных строк.

Ввести вручную

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

Статический список

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

Динамический список

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

  • Отображаемый список
  • Значение по умолчанию
  • Фильтр по строкам
  • Предустановленные фильтры (кнопка + Фильтр)
  • Переключатели:
    • Скрыть параметр — параметр не будет отображаться в окне запуска действия
    • Ввод любых значений — в режиме просмотра в параметр можно вводить и отправлять одно значение, которого нет в динамическом списке. Если ожидаемое поле в скрипте — массив, то переключатель скрыт
    • Учитывать фильтры — в параметр передаются данные с учетом фильтров, назначенных в режиме просмотра

Запуск действия

Заметка
  • Для каждого действия дополнительно отображаются названия параметра в скрипте и тип.
  • Порядок параметров можно изменять. Для этого нажмите и удерживайте параметр, перемещая его в нужное место. Изменение также отобразится в форме запуска действия.

После настройки действия над таблицей появляется кнопка. Она становится активной в режиме просмотра.

Когда все необходимые параметры заданы, опубликуйте дашборд.

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

Заметка

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

Совет

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

Запуск

Откроется окно запуска скрипта. Заполните обязательные поля и другие, если необходимо. Чтобы запустить скрипт, нажмите Выполнить или Enter. Для отмены нажмите иконку крестика в правом верхнем углу окна.

Поля

Заметка

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

Важно
  • Если в блоке Ручной запуск изменились ожидаемые поля, то в настройках действия с этим скриптом в виджете название ожидаемого поля изменится, но настройки способа ввода останутся прежними.
  • Действие применяется только к первой 1 000 выбранных строк.
  • Запуск скрипта доступен пользователям с доступом на чтение и/или редактирование пространства и дашборда.

Действие невозможно запустить, когда:

  • Используемый скрипт удален
  • В используемом скрипте блок-триггер Ручной запуск заменен на другой
  • Из модели данных удалена используемая таблица
  • Используется пустое значение колонки из другой связанной таблицы. Необходимо изменить ее свойство на Nullable

Когда скрипт запускается, в правом нижнем углу отображается сообщение Действие «Название действия» запущено. Если скрипт успешно завершает работу, в правом нижнем углу появляется сообщение Действие выполнено. Если скрипт не был выполнен успешно, отображается сообщение об ошибке. В зависимости от причины возникновения ошибки вы можете перейти в журнал выполнений, перезапустить скрипт или закрыть окно.

Примеры запуска скриптов из дашборда

Чтобы выполнить какое-либо действие, необходимо создать скрипт.

Добавить строку

Чтобы добавить строку в таблицу:

  1. Создайте новый скрипт в дашборде.
  2. Добавьте блок Ручной запуск. В блок добавьте ожидаемые поля, укажите необходимые типы данных и нажмите Продолжить. Используйте названия колонок таблиц из модели данных. Протестируйте блок. Заполненный блок Ручной запуск
  3. Добавьте блок Добавить строки. В блоке выберите необходимую таблицу, а в колонках — указанные в первом блоке ожидаемые поля. Для удобства используйте визуальный маппинг. Протестируйте блок. Заполненный блок Добавить строку
  4. Опубликуйте скрипт.
  5. Откройте дашборд с необходимой таблицей. Добавьте действие во вкладке Действия и укажите для него название. В параметрах каждого поля укажите необходимый способ ввода и колонку. Чтобы результат выполнения отобразился после выполнения скрипта, установите для параметра Обновить после выполнения скрипта значение Этот виджет. Скрипт Добавить строку в таблице
  6. Опубликуйте дашборд. В верху таблицы нажмите Добавить строку. Укажите необходимые параметры и нажмите Выполнить. Выполнение скрипта Добавить строку
  7. Строка добавлена. Строка добавлена

Удалить строки

Чтобы удалить строки из таблицы:

  1. Создайте новый скрипт в дашборде.
  2. Добавьте блок Ручной запуск. В блок добавьте ожидаемое поле, укажите необходимый тип данных и нажмите Продолжить. Используйте название колонки таблицы из модели данных. Протестируйте блок. Блок Ручной запуск в скрипте Удалить строки
  3. Добавьте блок SQL-запрос с запросом на удаление строки. Протестируйте блок. Блок SQL-запрос для удаления Пример SQL-запроса для удаления строки:
    DELETE FROM case_table
    WHERE incident_id = ${a1.Номер проблемы};
    
  4. Опубликуйте скрипт.
  5. Откройте дашборд с необходимой таблицей. Добавьте действие во вкладке Действия и укажите для него название. В параметрах поля укажите способ ввода Из колонки. Выберите ту же колонку, что и указана в SQL-запросе скрипта. Чтобы результат выполнения отобразился после выполнения скрипта, установите для параметра Обновить после выполнения скрипта значение Этот виджет. Скрипт Удалить строки в таблице
  6. Опубликуйте дашборд. Выберите строки, которые хотите удалить и нажмите Удалить строки над таблицей. Нажмите Выполнить. Удаление строк из таблицы
  7. Строки удалены. Строки удалены

Изменить приоритет

Чтобы изменить приоритет:

  1. Создайте новый скрипт в дашборде.
  2. Добавьте блок Ручной запуск. В блок добавьте ожидаемые поля, укажите необходимые типы данных и нажмите Продолжить. Протестируйте блок. Блок Ручной запуск в скрипте Изменить приоритет
  3. Добавьте блок Обновить строки. В блоке укажите необходимую таблицу, колонку-ключ и значение ключа, а в колонках — приоритет. Для удобства можно использовать визуальный маппинг. Протестируйте блок. Добавление блока Обновить строки
  4. Опубликуйте скрипт.
  5. Откройте дашборд с необходимой таблицей. Добавьте действие во вкладке Действия и укажите для него название. В параметрах каждого поля укажите необходимый способ ввода и колонку. Чтобы результат выполнения отобразился после выполнения скрипта, установите для параметра Обновить после выполнения скрипта значение Этот виджет. Добавление действия Изменить приоритет
  6. Опубликуйте дашборд. Выберите строки, для которых хотите изменить приоритет. В верху таблицы нажмите Изменить приоритет. Введите или выберите необходимое значение и нажмите Выполнить. Выполнение действия Изменить приоритет
  7. У выбранных задач изменился приоритет. Приоритет изменился

Настройки скрипта и действия в YAML

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

КлючТипОпределение
namestringНазвание действия
typeenumТип действия по клику: EXECUTE_SCRIPT
Возможен только один тип действия
descriptionstringОписание (необязательный ключ)
filtersПредустановленные фильтры (необязательный ключ)
scriptKeystringКлюч скрипта
parametersПараметры скрипта (необязательный ключ)
autoUpdateenumОбновить после выполнения скрипта:

- NONE — нет
- THIS_WIDGET — этот виджет
- ALL_WIDGETS — все виджеты
buttonTypeenumТип кнопки:

- primary — основная
- primary-outlined — второстепенная
- link — ссылка
colorstringЦвет текста кнопки
backgroundColorstringЦвет фона кнопки
borderColorstringЦвет обводки второстепенной кнопки
blockingConditionАктивация кнопки

Параметры скрипта (блок parameters)

В блоке parameters указываются параметры скрипта:

КлючТипОпределение
namestringНазвание параметра в скрипте
displayNamestringОтображаемое название
inputMethodenumСпособ ввода значения переменной
isHiddenbooleanСкрыть параметр
Способ ввода (ключ inputMethod)

Доступны перечисленные способы ввода значения:

  • COLUMN — из колонки
  • VARIABLE — из переменной
  • DATA_MODEL — из модели данных
  • FORMULA — задать формулой
  • AGGREGATION — задать агрегацией
  • MANUALLY — ввести вручную
  • STATIC_LIST — статический список
  • DYNAMIC_LIST — динамический список

Настройки для способа ввода Из колонки (COLUMN):

КлючТипОпределение
tableNamestringНазвание таблицы
columnNamestringНазвание колонки из таблицы, указанной в ключе tableName

Настройки для способа ввода Из переменной (VARIABLE):

КлючТипОпределение
sourceVariablestringНазвание переменной

Настройки для способа ввода Из модели данных (DATA_MODEL):

КлючТипОпределение
optionenumВариант использования:
- TABLE_LIST — список таблиц
- COLUMN_LIST — список колонок
parentstringНазвание основного параметра, в котором используется вариант TABLE_LIST. Только для варианта COLUMN_LIST

Настройки для способа ввода Задать формулой (FORMULA):

КлючТипОпределение
formulastringФормула
filterByRowsbooleanРасчет формулы с учетом фильтра по выбранным строкам

Настройки для способа ввода Задать агрегацией (AGGREGATION):

КлючТипОпределение
formulastringФормула с возможностью использовать агрегатные функции
filterByRowsbooleanРасчет формулы с учетом фильтра по выбранным строкам

Настройки для способа ввода Ввести вручную (MANUALLY):

КлючТипОпределение
defaultValuestringЗначение по умолчанию
filterByRowsbooleanРасчет формулы с учетом фильтра по выбранным строкам
validationstringВалидация
descriptionstringОписание поля

Настройки для способа ввода Статический список (STATIC_LIST):

КлючТипОпределение
optionsstringСписок значений
defaultOptionIndexnumber[]Значение по умолчанию

Настройки для способа ввода Динамический список (DYNAMIC_LIST):

КлючТипОпределение
optionsstringСписок (задается по формуле)
displayOptionsstringОтображаемый список (задается по формуле)
insertAnyValuesbooleanПереключатель Ввод любых значений. В режиме просмотра в параметр можно вводить и отправлять одно значение, которого нет в динамическом списке
validationstringВалидация (только используется insertAnyValues)
defaultValuestringЗначение по умолчанию. Задается по формуле
filterByRowsbooleanРасчет формулы с учетом фильтра по выбранным строкам
filtersПредустановленные фильтры (необязательный ключ)
considerFiltersbooleanУчитывать фильтры из режима просмотра

Настройка цвета для кнопки

При настройке блоков backgroundColor, color или borderColor используйте ключи, описанные в таблице ниже.

КлючТипОпределение
modeenumРежим окрашивания:

- AUTO — авто
- BASE — базовый
valuestringHEX-код цвета (указывается в двойных кавычках)

Активация кнопки (блок blockingCondition)

КлючТипОпределение
modeenumРежим активации кнопки:

- VARIABLE — по переменной
- FORMULA — по формуле
variableNamestringТолько для режима VARIABLE

Название переменной (указывается в двойных кавычках)
variableValuestringТолько для режима VARIABLE

Значение переменной (указывается в двойных кавычках)
formulastringТолько для режима FORMULA

Формула (указывается в двойных кавычках)

Пример:

actions:
  - name: "Действие"
    type: EXECUTE_SCRIPT
    description: "Описание действия"
    filters:
      - name: case_id
        formula: '"case_table"."case_id"'
        dbDataType: STRING
        format: STRING
        filteringMethod: INCLUDE
        checkedvalues: 
          - 'Value_1'
          - 'Value_2'
          - 'Value_3'
        formValues: {}
    scriptName: script_1
    parameters: 
      - name: parameter_1
        displayName: "Параметр 1"
        inputMethod: COLUMN
        tableName: table_1
        columnName: column_1
        isHidden: false
      - name: parameter_2
        displayName: "Параметр 2"
        inputMethod: VARIABLE
        sourceVariable: variable_1
        isHidden: false
      - name: parameter_3
        displayName: "Параметр 3"
        inputMethod: FORMULA
        formula: 'avg("table_1"."column_1")'
        isHidden: false
      - name: parameter_4
        displayName: "Параметр 4"
        inputMethod: MANUALLY
        description: "Описание поля параметра"
        isHidden: false
      - name: parameter_5
        displayName: "Параметр 5"
        inputMethod: STATIC_LIST
        options:
          - '10'
          - '20'
          - '30'
        defaultOptionIndex: 0
        isHidden: false
      - name: parameter_6
        displayName: "Параметр 6"
        inputMethod: DYNAMIC_LIST
        formula: '"table_1"."column_1"'
        dbDataType: STRING
        filters:
          - name: case_id
            formula: '"case_table"."case_id"'
            dbDataType: STRING
            format: STRING
            filteringMethod: INCLUDE
            checkedvalues: 
              - 'Value_1'
              - 'Value_2'
              - 'Value_3'
            formValues: {}
        defaultValue: '100'
        isHidden: false
    updateDashboard: true

Была ли статья полезна?

Да
Нет
Предыдущая
Разрезы и меры
8 (800) 555-89-028 (495) 150-31-45team@infomaximum.com
Для бизнеса
© 20102025. ООО «Инфомаксимум»
Мы используем файлы cookies, чтобы сайт был лучше для вас.