Процесс оформления строк табличной части для управляемых форм отличается от оформления строк в обычных формах.
Содержание
Оформление в строк табличной части для обычных форм
Условное оформление в управляемых формах
Для того чтобы программно наложить оформление на элементы управляемой формы (а в частности на строки таблицы значений), необходимо воспользоваться элементами условного оформления.
ВАЖНО! Работы с элементами условного оформления доступна только на стороне сервера!
ВАЖНО! Для оформления строк таблицы (или дерева) значений мы будем использовать условное оформление самой формы, а не элемента списка!
Таким образом, код для реализации условного оформления управляемой формы будет иметь следующий вид: В приведенном примере, в случае если значение реквизита "Реквизит1" будет больше 10, цвет текста строки будет выделен зеленым.
Вы же можете наложить любое условие и любое необходимое оформление.
Данная статья является анонсом новой функциональности.
Не рекомендуется использовать содержание данной статьи для освоения новой функциональности.
Полное описание новой функциональности будет приведено в документации к соответствующей версии.
Полный список изменений в новой версии приводится в файле v8Update.htm.
Реализовано в версии 8.3.13.1513.
Благодаря тому, что в основе всех прикладных решений 1С:Предприятия находится платформа, прикладные решения имеют однотипный интерфейс, они привычны для пользователей и выглядят узнаваемо. В то же время на крупных внедрениях такая узнаваемость может являться недостатком, если вместе с 1С:Предприятием заказчик использует сторонние программные продукты, выполненные в другой палитре или в определенном корпоративном стиле, принятом в компании.
Поэтому в версии 8.3.13 мы решили сделать несколько доработок, которые позволят вам подстроить внешний вид прикладного решения под эстетические требования заказчика, под тот стиль, который используется в большинстве его программных продуктов.
Такая возможность, безусловно, будет полезна вам при внедрении корпоративных типовых решений, потому что позволит учесть корпоративный стиль заказчика.
Также эта возможность будет полезна для нетиповых решений, тесно интегрированных со сторонними продуктами заказчика. Например, когда глобальная навигация реализована в стороннем приложении, а 1С:Предприятие должно запускаться в нужные моменты и сразу переходить на требуемую точку навигации. При этом очень желательно, чтобы запуск происходил без заставки и стартовых диалогов, а само 1С:Предприятие было бы похоже на то стороннее приложение, из которого оно запускается.
Основной стиль в управляемом приложении
Все изменения, о которых пойдёт речь, мы реализовали с помощью хорошо известных вам объектов конфигурации Стиль. Они существовали в прошлых версиях платформы, они использовались в обычном приложении. Но с появлением управляемого приложения и интерфейса Такси, необходимость в этих объектах, как в инструменте «раскрашивания» интерфейса исчезла. И сейчас мы возвращаем лишь некоторые их возможности.
Во-первых, мы вернули свойство конфигурации ОсновнойСтиль. То есть вы можете указать, какой из имеющихся стилей является основным для вашего прикладного решения.
Естественно, мы вернули и сами объекты конфигурации Стиль. Теперь вы можете видеть их в дереве конфигурации. Однако в управляемом приложении вам будет доступна настройка только пяти стилевых цветов, которые используются в интерфейсе Такси:
- Цвет навигации устанавливает цвет фона панели разделов;
- Цвет дополнительной навигации устанавливает цвет фона панели функций текущего раздела;
- Цвет активности применяется к следующим элементам интерфейса:
- рамка текущего элемента формы,
- фон текущего элемента меню,
- фон текущей строки и ячейки таблицы;
Для облегчения вашей работы платформа берёт на себя некоторые дополнительные действия, связанные с выбранными вами цветами. Например, если для фона вы выбираете достаточно тёмный цвет, то платформа самостоятельно инвертирует цвет текста так, чтобы он хорошо читался на этом фоне. Кроме этого часть цветов платформа рассчитывает от стилевых (выбранных вами), например цвет рамки кнопок, цвет текущей строки неактивной таблицы и тому подобное.
Кроме непосредственного указания основного стиля в Конфигураторе, вы можете сделать это и с помощью встроенного языка. В контекст управляемого приложения мы вернули свойство глобального контекста ГлавныйСтиль. Устанавливать это свойство вам нужно в обработчике события УстановкаПараметровСеанса().
Основной стиль в мобильном клиенте
Аналогичные изменения мы выполнили и в мобильном клиенте. Однако из-за специфики мобильного интерфейса в нём используется меньшее количество стилевых цветов:
- Цвет активности применяется к следующим элементам интерфейса:
- фон заголовка формы,
- фон текущего элемента меню,
- фон текущей строки и ячейки таблицы,
- индикатор,
- иконки рабочего стола;
Цвет навигации, цвет дополнительной навигации и цвет важного в мобильном клиенте не используются.
Так же, как и в «обычных» клиентских приложениях, платформа автоматически адаптирует цвет текста под цвет фона (на светлом фоне черный цвет, на темном фоне белый текст). Кроме этого фон кнопок контекстного меню строки таблицы рассчитывается исходя из выбранного вами цвета активности.
Отключение заставки при запуске
Как мы уже упоминали в начале, на крупных внедрениях с тесной интеграцией возникает потребность запускать прикладные решения 1С:Предприятия без заставки и стартовых диалогов. Возможность отключать стартовые диалоги и сообщения существует давно, для этого используются параметры командной строки DisableStartupDialogs и DisableStartupMessages.
Теперь мы добавили к ним ещё один параметр – DisableSplash. На корпоративных внедрениях этот параметр позволяет не показывать при запуске собственную заставку 1С:Предприятия, замена которой была согласована с фирмой 1С.
Расширение стилей и картинок
Возможность изменения стиля приложения мы вынесли и в расширения. То есть, применяя то или другое расширение, вы тоже можете менять стиль прикладного решения, не меняя саму конфигурацию.
В расширениях вы можете теперь, например, создавать собственные стили, переопределять основной стиль конфигурации, а также заимствовать и переопределять стили конфигурации.
Кроме этого в расширении вы можете переопределять свойства конфигурации, содержащие картинки. Это такие свойства, как:
- Картинка основного раздела;
- Логотип;
- Заставка.
При этом происходит полное замещение картинки, то есть используется только картинка из расширения. Если одно и то же свойство переопределяют сразу несколько расширений, то в результате будет использоваться картинка из расширения, применённого последним.
Брендирование расширений
Применительно к расширениям хочется сказать ещё об одной новой возможности. Она не связана непосредственно со стилем прикладного решения, но позволяет вам обозначить авторство своего расширения, и дать ссылки на подробную информацию, связанную с ним.
Непосредственно в расширение конфигурации мы добавили поля с информацией о поставщике и о самом расширении:
- Краткая информация;
- Подробная информация;
- Авторские права;
- Адрес информации о поставщике;
- Адрес информации о конфигурации.
Эти поля имеют то же назначение, что и одноимённые свойства конфигурации, но описывают расширение. Информация из этих полей отображается в окне О программе для каждого из установленных расширений. Например, так:
Мы надеемся, что новые возможности помогут вам осуществлять более качественные внедрения, и адаптировать внешний вид приложений к корпоративным стилям.
Условное оформление формы в 1с 8 служит для управления видимостью, доступностью, цветом элементов таблиц управляемой формы (а также оно используется в СКД и динамических списках). Удобство его использования заключается в том, что вы один раз задаете условие по которому должно меняться оформление вашей формы. После этого при работе пользователя с формой, при срабатывании условия оформление будет меняться автоматически. Не нужно использовать события формы и писать лишний код.
Следует заменить, что условное оформление форм работает только в конфигурациях использующих управляемое приложение (Бухгалтерия 3.0, ЗУП 3.0/3.1, Управление торговлей 11 и т.п.)
Условное оформление 1с. Интерактивная настройка
Еще один плюс условного оформления — его можно настроить не написав ни строчки кода. Для этого в форме необходимо:
- Открыть свойства формы -> вкладка оформление -> УсловноеОформление Открыть;
- Откроется таблица Настройка условного оформления;
- В первом столбце необходимо выбрать оформление (или сразу несколько);
- Во втором столбце задать условие, по которому будет срабатывать выбранное оформление;
- С третьем столбце необходимо выбрать элементы формы на которые будет действовать выбранное оформление.
Обратите внимание, что условное оформление действует только на колонки таблиц формы. Другие элементы формы вы тоже можете выбрать в колонке Оформляемые поля, но это не даст никакого результата.
Условное оформление формы. Пример интерактивной настройки
Для примера мной была написана простейшая обработка, на формы которой добавлен реквизит с типом ТаблицаЗначений, с тремя колонками. А также три реквизита с типом булево. Скачать обработку можно Здесь.
Форма обработки выглядит так:
Настроим следующее условное оформление данной формы: при установке реквизита СкрытьКолонку1 в значение Истина, в таблице форме скрывать реквизит Колонка1.
- Откроем настройку условного оформления формы;
- Добавим в таблицу новую строку;
- В колонке Оформление нажмем на кнопку с тремя точками и выберем параметр Видимость, значение Нет;
- В колонке Условие нажмем на кнопку с тремя точками, в открывшемся окне добавим новый отбор. Пропишем туда следующие значения: Левое значение — СкрытьКолонку1, Вид сравнения — Равно, Правое значение — Да;
- В колонке Оформляемые поля нажмем на кнопку с тремя точками, в открывшемся окне добавим новый элемент, и выберем значение ТаблицаФормыКолонка1;
- В итоге у нас должна получиться настройка условного оформления, такая же как на следующем рисунке;
- Нажмем кнопку Ок, сохраним нашу обработку и запустим ее в режиме 1С Предприятие;
- При установке флажка Скрыть колонку 1, будут происходить следующие изменения в оформлении формы.
Условное оформление 8.3. Пример программной настройки
Используя ту же внешнюю обработку, что и в предыдущем пункте, приведем пример программной настройки условного оформления. Необходимо сделать следующее: при установке реквизита ПоменятьЦветКолонки2 в значение Истина, в таблице формы раскрашивать фон Колонки 2, при установке реквизита СделатьНедоступнойКолонку3 в значение Истина, в таблице формы делать недоступным реквизит Колонка3.
В модуле формы создадим серверную процедуру, назовем ее УстановитьУсловноеОформление и сразу же допишем ее вызов в процедуре ПриСозданииНаСервере.
Весь следующий код будем писать в процедуре УстановитьУсловноеОформление. Нам необходимо добавить новый элемент условного оформления формы, для этого используем стандартную коллекцию формы УсловноеОформление.
Также как и в интерактивном варианте, нам необходимо в созданном элементе заполнить оформления, условия и поля. Для того чтобы указать поле мы должны создать поле компоновки данных с именем колонки на которую будет распространяться оформление. Если полей несколько, добавляем нужное количество полей компоновки данных. Для отборов создаем элементы отбора компоновки данных и заполняем для них левое значение, правое значение и вид сравнения. Для того, чтобы задать нужные оформления заполним значения параметров доступных оформлений. В нашем примере получается следующий код:
Таким образом мы создали оформление для второй колонки таблицы. Для третьей колонки оно делается аналогичным образом, поэтому не будем на нем подробно останавливаться. Итоговый код процедуры УстановитьУсловноеОформление будет выглядеть следующим образом:
Напомню, что скачать обработку написанную на основе разобранных примеров можно Здесь.
«>