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

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

В этой статье

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

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

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

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

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

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

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

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

Для настройки действия:

  1. Перейдите в дашборд, создайте или выберите таблицу, в которой необходимо настроить действие, и откройте вкладку Действия в правой панели. Вкладка Действия
  2. Нажмите Добавить.
  3. Добавьте название и, при необходимости, описание (будет использоваться в качестве подсказки на этапе запуска скрипта). Чтобы дашборд автоматически обновлялся после запуска действия, нажмите переключатель Обновить дашборд после выполнения действия.
  4. В поле Условие блокировки кнопки можно добавить блокирующее условие, при выполнении которого кнопка в режиме просмотра отключается. Дополнительно для кнопки можно выбрать ее тип (основная, второстепенная или ссылка) и задать базовый цвет фона и текста. Условие блокировки кнопки
  5. Настройте параметры действия:
    • Название
    • Описание
    • Способ ввода:
      • Из колонки — в параметр скрипта будет передаваться значение из таблицы, выбранное в списке
      • Из переменной — указывается системная переменная или переменная дашборда (статический или динамический список). Для данного способа переменную необходимо вывести в виджет Параметр. В скрипт передается значение по умолчанию или выбранное в Параметре. При запуске действия выбрать значение невозможно
      • Задать формулой — с помощью формулы можно настроить динамически изменяемый параметр
      • Ввести вручную — данные вводятся вручную при запуске действия в поле Значение по умолчанию. Для поля можно указать описание.
      • Статический список — создается статический список, при запуске пользователь выбирает значение из списка в окне запуска скрипта. Создать список можно с помощью YAML (например, ["en", "es"]) или JSON (например, [{"label": "English", "value": "en"}, {"label": "Español", "value": "es"}]). В поле Значение по умолчанию можно ввести или выбрать одно или несколько значений
      • Динамический список — создается динамический список, при запуске пользователь выбирает значение из списка в окне запуска скрипта, можно задать фильтр с помощью кнопки + Фильтр
    • Переключатель Скрыть параметр. Если настройка включена, параметр не отображается в окне запуска действия
    • По кнопке Удалить действие удаляется Настройка действия
  6. Опубликуйте дашборд.
Заметка

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

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

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

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

Заметка

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

Совет

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

Запуск

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

Поля

Важно
  • Если в блоке Ручной запуск изменились ожидаемые поля, то в настройках действия с этим скриптом в виджете название ожидаемого поля изменится, а настройки способа ввода останутся прежними.
  • Действие применяется только к первой 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Предустановленные фильтры (необязательно)
scriptNamestringНазвание скрипта
parametersПараметры скрипта (необязательно)
updateDashboardbooleanОбновить дашборд после выполнения действия

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

КлючТипОпределение
namestringНазвание параметра в скрипте
displayNamestringОтображаемое название
inputMethodenumСпособ ввода значения переменной:
- COLUMN — из колонки
- VARIABLE — из переменной
- FORMULA — задать формулой
- MANUALLY — ввести вручную
- STATIC_LIST — статический список
- DYNAMIC_LIST — динамический список
columnNamestringНазвание колонки
Для способа ввода Из колонки (COLUMN)
tableNamestringНазвание таблицы
Для способа ввода Из колонки (COLUMN)
sourceVariablestringПеременная
Для способа ввода Из переменной (VARIABLE)
formulastringФормула
Для способа ввода Задать формулой (FORMULA)
defaultValuestringЗначение по умолчанию
Для способов ввода Ввести вручную (MANUALLY) и Динамический список (DYNAMIC_LIST)
descriptionstringОписание поля
Для способа ввода Ввести вручную (MANUALLY)
optionsstringЗначения в списке
Для способов ввода Статический список (STATIC_LIST) и Динамический список (DYNAMIC_LIST)
defaultOptionIndexesstringЗначения в списке, выбранные по умолчанию
Для способа ввода Статический список (STATIC_LIST)
isHiddenbooleanСкрыть параметр

Пример:

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, чтобы сайт был лучше для вас.