Работа с функциями, триггерами и формами ввода в Insight

Всем доброго времени суток! В данной статье мы рассмотрим этапы реализации интеграции функций, триггеров и форм ввода в через пакет виджетов Insight Low-Code.
Insight Low-Code.

  1. Предварительное требование: Наличие развернутого приложения, обеспечивающего функционирование задач (tasks).

  2. Подготовка задачи и ее полей: Сначала необходимо создать задачу (task) в системе. После этого в настройках задачи следует создать необходимые поля. Можно подвязаться к одному из полей с атрибутом name типа varchar, что позволит отправлять данные массивом через UI, используя запятую в качестве разделителя.

  3. Анализ целевой схемы и таблицы: Необходимо провести анализ и идентифицировать целевую схему и таблицу базы данных, в которую приложение осуществляет запись данных, относящихся к задачам. Это важно для определения точки интеграции функций и триггеров.

  4. Разработка функции: Следующим шагом является разработка необходимой функции, которая будет мониторить и обрабатывать изменения в указанной таблице, куда пишет приложение. Эта функция должна быть написана на языке программирования, поддерживаемом базой данных, например, PL/pgSQL для PostgreSQL.

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

  6. Назначение прав и привилегий: Для корректной работы функций и триггеров необходимо выполнить назначение соответствующих прав и привилегий через инструмент управления базами данных, например DBeaver. Это включает в себя:

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