Механизм связанных подключений и датаблоков в Платформе "ШЕРП"
В Платформе «ШЕРП» реализована возможность использования одного и того же Модуля прикладной информационной системы с различными типами СУБД (например, с SQL Server и PostgreSQL).
Данный функционал использует механизм создания группы подключений и связи датаблоков данных подключений.
Логика работы:
- Система получает от пользователя запрос на выполнение датаблока по заданному подключению;
- Система проверяет, входит ли данное подключение в группу связанных подключений;
- Если выбранное подключение входит в группу и является активным, то выполняется датаблок данного подключения;
- Если выбранное подключение входит в группу, но не является активным, то происходит поиск и выполнение связанного Датаблока активного подключения;
- Если не удаётся найти связанный Датаблок, система выдаёт сообщение об ошибке.
Рассмотрим пример настройки связи датаблоков в информационной системе «ШЕРП Айтишник».
Задача: необходимо реализовать возможность работы окна списка (Browser) «Организации» c СУБД MS SQL Server и PostgreSQL.
Для реализации необходимо выполнить следующие этапы:
- Создать группу подключений;
- Создать связанные датаблоки для группы подключений;
- Выбрать активное подключение (в зависимости от типа СУБД).
Далее рассмотрим их подробнее.
Создание группы подключений
Последовательность действий:
- В меню «Студия. Разработчик» выполним команду «Группы подключений»:
- В окне списка групп выполним команду «Добавить» контекстного меню окна:
- Укажем параметры создаваемой группы подключений и нажмём кнопку «ОК»:
- Откроем карточку созданной группы и выполним команду «Добавить подключение»:
- В открывшейся форме выберем подключение к БД «ITWorker» с типом SQL Server из выпадающего списка поля «Подключение» и нажмём кнопку «ОК»:
Аналогично добавим связанное подключение к БД «itworker» с типом PostgreSQL:
В результате добавленные подключения будут отображены на карточке группы подключений:
Настройка связи датаблоков
Последовательность действий:
- Откроем окно списка (Browser) «Организации» в режиме редактирования и перейдём на форму редактирования датаблока, возвращающего выборку данных об организациях:
- Выполним команду «Создать датаблок» контекстного меню области «Связанные датаблоки для других типов СУБД» закладки «Датаблок»:
Сгенерированный датаблок отобразится в списке связанных датаблоков.
- Выполним команду «Открыть карточку» контекстного меню.
Откроется форма редактирования связанного датаблока:
Данный датаблок имеет некоторые отличия (выделены красным на рисунке выше):
- Префикс «PGS» в названии информирует о том, что датаблок предназначен для работы с СУБД PostgreSQL;
- Префикс «TEMP» в названии информирует о том, что датаблок сгенерирован автоматически и нуждается в проверке;
- Комментарий в тексте команды (подсвечен зелёным цветом) – информирует о наличии/отсутствии изменений в тексте команды.
- Выполним редактирование связанного датаблока.
В рассматриваемом примере синтаксис выполняемой в датаблоке команды для СУБД SQL Server и PostgreSQL практически не отличается. Поэтому удалим комментарий из поля «Текст команды» и надпись «TEMP» из имени датаблока.
- Сохраним параметры связанного датаблока.
Настройка активного подключения
Последовательность действий:
- Выделим подключение «itworker» (подключение к СУБД PostgreSQL) и выполним команду «Сделать активным» панели инструментов карточки группы подключений:
- В открывшемся диалоговом окне нажмём кнопку «Да»:
Появится сообщение о необходимости обновить кэш датаблоков:
- Выполним команду «Обновить кэш датаблоков» вкладки «Разработка» панели инструментов:
Отобразится системное сообщение об успешном обновлении.
В результате выбранное подключение получит статус «Активное»:
- Откроем окно списка «Организации» из меню «Айтишник»:
Видно, что в некоторых полях отобразились постфиксы «PG». Это говорит о том, что в данный момент окно списка отображает данные из БД PostgreSQL (подключение «itworker»).
0 комментариев