Форматы таблиц
Надстройка SaveToDB позволяет загружать и сохранять форматы таблиц в любое время, используя элементы ленты:
- Сохранить формат таблицы
- Обновить формат таблицы
- Мастер форматов таблиц
Надстройка сохраняет форматы в таблице xls.formats.
Также надстройка загружает форматы, когда пользователь подключается к объекту в первый раз. Это удобно, т.к. пользователи сразу получают отформатированную таблицу.
DBEdit, DBGate и ODataDB также загружают форматы таблиц. Однако, продукты поддерживают лишь ограниченный набор форматирования Microsoft Excel.
Разработчики могут определить в базе данных правила форматирования в стиле CSS для DBEdit, DBGate и ODataDB. Они приведены ниже.
Также разработчики могут использовать обычные стили CSS для страниц DBGate и ODataDB.
Форматы CSS
Разработки могут определить форматы таблиц в поле HANDLER_CODE с типом Format в поле EVENT_NAME таблицы xls.handlers.
Например:
ID | TABLE_SCHEMA | TABLE_NAME | COLUMN_NAME | EVENT_NAME | HANDLER_SCHEMA | HANDLER_NAME | HANDLER_TYPE | HANDLER_CODE |
---|---|---|---|---|---|---|---|---|
s17 | usp_request | Format | ATTRIBUTE | <Format> |
Ниже приведен пример формата:
[{"format":"font-family: Calibri; font-size: 11pt; border-style: none"}, {"formula":"row_format=1","format":"background-color: rgb(33,89,103); color: white !important; font-weight: bold","stopIfTrue":true}, {"formula":"row_format=2","format":"font-weight: bold"}, {"formula":"row_format=9","format":"background-color: rgb(0,33,96); color: white !important; font-weight: bold"}, {"formula":"<0","format":"color:red","columns":"data00,data01,data02,data03,data04,data05, data06,data07,data08,data09,data10,data11,data12"}, {"formula":"[cf_sign=0][pl_sign=-1][=null]","format":"background-color: rgb(255,255,0);","columns":"asset_account_id"}]
Определение формата содержит JSON массив объектов формата.
Объекты формата могут содержать свойства: format, formula, columns и stopIfTrue.
Свойство format содержит стили в формате CSS.
DBGate и ODataDB поддерживают любые правила CSS. DBEdit поддерживает ограниченный набор:
- border-style (none)
- background-color
- color
- font-weight (bold | 600 | 700)
- font-family
- font-size (pt | px)
- font-style (italic)
- text_decoration (underline | line-through)
Свойство formula определяет условия для применения формата. Используйте квадратные скобки для определения нескольких условий AND (как в CSS).
Используйте имя поля, знак и условие, как, например, row_format=1, или просто знак и значение, как <0.
Также поддерживаются специальные формулы: even (четная строка), odd (нечетная строка), tr:nth-child(even) и tr:nth-child(odd).
Свойство columns определяет целевые колонки. В качестве альтернативы, можно задать колонки в поле COLUMN_NAME, что удобно при генерации форматов представлениями.
Используйте свойство stopIfTrue чтобы остановит дальнейшее применение правил.
DBEdit игнорирует атрибут !important, который можно использовать в DBGate и ODataDB.
Вы можете использовать следующие шаги для создания сложных форматов в визуальном режиме:
- Установите надстройку SaveToDB для Microsoft Excel (можно использовать бесплатную редакцию).
- Подключитесь к объекту базы данных в Microsoft Excel и отформатируйте его, в т.ч. с условным форматированием.
- Запустите "Мастера", "Инструменты разработчика", "Показать формат таблицы".
- Скопируйте формат и вставьте его в поле HANDLER_CODE.
- Отредактируйте формат и сохраните его.