Пример DBGate 04 - Форма заказа

Этот пример демонстрирует следующие возможности DBGate:

Ниже приведен пример встроенной формы.

Встраивание форм

Чтобы встроить форму, добавьте db.css в заголовок, db.js в конец страницы и используйте элемент как:

<div class="db-control" data-app="dbgate" data-url="v4/mssql-041/ru-ru/usp_order_form"></div>

Динамические списки значений параметров

Чтобы попробовать динамические списки, измените категорию в первом параметре.
Вы увидите измененные списки в остальных параметрах.

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

Это пример настройки списков значений параметров.

Формулы на стороне клиента

Чтобы попробовать расчетные колонки, измените количество в любой ячейке.

Трюк заключается в формуле колонки Total =[@amount]*[@price], заданной в представлении view_items.

DBGate поддерживает формулы Excel, которые используют имена колонок и операторы JavaScript.

Условное форматирование

Этот пример загружает правила форматирования из таблицы xls.handlers.

Вы можете использовать бесплатную версию плагина SaveToDB для преобразования условного форматирования Excel
в такой набор правил. Используйте пункт "Мастера", "Инструменты разработчика", "Показать формат таблицы".

Защита ячеек

И последний интересный пункт, это защита ячеек серверными обработчиками событий изменения ячеек.

Попробуйте удалить наименование или установить значение в строке категории.

Сервер вернет ошибку 500, и DBGate отменит изменения.

Чтобы защитить ячейку от изменений, вызовите исключение в SQL коде.
Например, для SQL Server используйте RAISERROR (@message, 11, 0).

См. SQL код процедуры s04.usp_order_form_change, которая используется как обработчик.

Заключение

Этот пример показывает, как разработчики баз данных могут создавать интерактивные веб-формы.

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

Используйте формулы Excel в SELECT для расчета колонок и встраивайте формы в корпоративные веб-страницы.

Браузер кода



Вы можете загрузить примеры для SQL Server, Oracle Database, MySQL и PostgreSQL на странице SaveToDB SDK.