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

Этот пример демонстрирует возможности ODataDB:

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

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

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

<div class="db-control" data-app="odatadb" data-url="v4/mssql-041/default/en-us/usp_order_form()"></div>

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

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

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

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

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

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

Формула для колонки Total =[@amount]*[@price] задана в представлении view_items.

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

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

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

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

Защита ячеек

Еще один интересный аспект — защита ячеек с помощью серверных обработчиков событий изменения ячеек.

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

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

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

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

Заключение

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

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

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

Браузер кода



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