- Почему может не работать условное оформление на управляемой форме
- Условное оформление
- Пример
- Вывод
- УФ. Условное оформление не могу победить
- Не работает условное оформление управляемой формы. Почему?
- Условное оформление динамических списков (работа с интерфейсами, 23 минуты видео)
- Приёмы работы с динамическим списком – условное оформление
- v8.3: Условное оформление программно
Почему может не работать условное оформление на управляемой форме
Условное оформление
У нас есть некоторая форма списка, например, элементов плана вида характеристик «ПраваПользователей» в конфигурации «Управление производственным предприятием» версии 1.3.
Форма, как Вы видите, управляемая. нам нужно оформить список таким образом, чтобы все строки групп элементов выделялись зеленым цветом. Приступим!
Пример
Оформление элементов управляемых форм выполняется с помощью условного оформления формы:
Для решения нашей задачи добавим элемент условного оформления со следующими настройками:
При последующем открытии формы строки групп плана видов характеристик должны быть выделены зеленым цветом. Но. этого не происходит!
Дело в том, что список элементов и групп плана видов характеристик отображается на форме с помощью объекта формы с типом «Динамический список». Динамические списки использут возможности системы компоновки данных, включая отборы и условное оформление. Последнее как-раз и определяет конечное оформление списка, игнорируя настройки условного оформления самой формы. Добавим аналогичные настройки условного оформления для динамического списка.
Единственное отличие — в список оформляемых полей нужно добавить все видимые поля списка, на которые должно распостраняться условное оформление.
Вывод
Часто слышал, что условное оформление на управляемых формах не всегда работает. В итоге выяснялось, что просто настройки делалишь для формы, а не для динамического списка.
Надеюсь статья кому-нибудь да сэкономит время при решении проблем с условным оформлением.
Источник
УФ. Условное оформление не могу победить
При создании формы определяю условное оформление одного из динамических списков.
ЭлементОтбораОтобранные = УсловноеОформлениеОтобранные.Отбор.Элементы.Добавить(Тип(«ЭлементОтбораКомпоновкиДанных»));
ПолеКомпоновкиДанныхОтобранные = Новый ПолеКомпоновкиДанных(«СписокПомещений.Ссылка»);
ЭлементОтбораОтобранные.ЛевоеЗначение = ПолеКомпоновкиДанныхОтобранные;
ЭлементОтбораОтобранные.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке;
ЭлементОтбораОтобранные.ПравоеЗначение = Новый СписокЗначений;
ЭлементОтбораОтобранные.Использование = Истина;
ПолеОформленияОтобранные = УсловноеОформлениеОтобранные.Поля.Элементы.Добавить();
ПолеОформленияОтобранные.Поле = Новый ПолеКомпоновкиДанных(«СписокПомещений»);
ПолеОформленияОтобранные.Использование = Истина;
УсловноеОформлениеОтобранные.Оформление.УстановитьЗначениеПараметра(«ЦветТекста», WebЦвета.Серый);
УсловноеОформлениеОтобранные.ИдентификаторПользовательскойНастройки = «Отобранные»;
Сам список пока что пустой.
Далее в ходе заполнения определенной таблицы хочу чтобы элементы динамического списка раскрашивались в зависимости от того присутствуют они в моей таблице или нет.
Для каждого ЭлементУО Из ЭтаФорма.УсловноеОформление.Элементы Цикл
Если ЭлементУО.ИдентификаторПользовательскойНастройки = «Отобранные» Тогда
ЭлементыОтбораУООтобранные = ЭлементУО.Отбор.Элементы;
Прервать;
КонецЕсли;
КонецЦикла;
ИскомоеПолеКомпоновкиКлюч = Новый ПолеКомпоновкиДанных(«СписокПомещений.Ссылка»);
ИскомоеПолеКомпоновки = Неопределено;
Для каждого ЭлементОтбораКомпоновки Из ЭлементыОтбораУООтобранные Цикл
Если ЭлементОтбораКомпоновки.ЛевоеЗначение = ИскомоеПолеКомпоновкиКлюч Тогда
ИскомоеПолеКомпоновки = ЭлементОтбораКомпоновки;
Прервать;
КонецЕсли;
КонецЦикла;
В отладчике смотрел — список значений заполняется. Но на форме в списке визуально это никак не отображается. Список обновлять по F5 пробовал. Не помогло.
Как раскрасить динамический список в зависимости от присутствия «Ссылка» этого списка в определенном списке значений? Или после изменения параметров отбора условного оформления что-то еще необходимо сделать?
Источник
Не работает условное оформление управляемой формы. Почему?
Есть два элемента:
«Элемент1» (поле ввода, путь к данным «Объект.Реквизит1» с типом Перечисление)
«Элемент2» (поле ввода, путь к данным «Объект.Реквизит2» с типом Строка)
Делаю условное оформление (в конфигураторе, НЕ программно):
Использование = «Истина»
Оформление = «Видимость = Ложь»
Условие = «Объект.Реквизит1 Равно ‘Перечисление.Перечисление1.Значение10′»
Оформляемые поля = «Элемент2»
Вопрос: почему не срабатывает УО, когда выбираю «Значение10» в поле «Элемент1»?
Условия задачи.
Есть два реквизита во внешней обработке:
— ПолеДоступностьюКоторогоНужноУправлять — Любой тип
— ПолеКотороеРулитДоступностьюДругогоПоля — Булево
Оба реквизита кинуты на форму.
Тыкая галочку у реквизита ПолеКотороеРулитДоступностьюДругогоПоля, ничего не происходит с полем ПолеДоступностьюКоторогоНужноУправлять, а хотелось бы чтобы оно меняло доступность.
Что тут может быть не так?
(13) EMelihoff, так это же не так, условное форматирование задается на сервере, в контексте сервера значения есть в реквизитах (вернее доступны на сервере), да это и не важно, при описании условного оформления мы явно указываем какой реквизит нужно всегда сравнивать с неким заранее заданным значением и если сравнение проходит, то должно что-то происходить в оформлении, в частности мне нужно чтобы менялась Доступность поля в зависимости от значений другого поля
картина непонятная мне на самом деле, почему не пашет условное оформление, наверное мат часть плохо знаю
из формы документа РегламентнаяОперация БП 3.0.41
Источник
Условное оформление динамических списков (работа с интерфейсами, 23 минуты видео)
Удобство работы с формами и их функциональность – один из базовых критериев, по которому оценивают доработки 1С клиенты или пользователи.
Мне просто нравится – это сильнейший аргумент, потому что он действует на бессознательном уровне.
Как и «мне просто НЕ нравится»…
Такова человеческая природа, игнорировать ее просто себе дороже.
Поэтому будет очень полезно уметь вызывать у клиентов то самое чувство – “мне просто нравится”… Хотя бы чуть-чуть 🙂
Сегодня мы разберем возможности СКД по условному оформлению динамических списков.
Вот несколько задач, которые можно решать с помощью такого условного оформления:
- Выделение красным шрифтом клиентов, которым запрещена отгрузка
- Товары с отрицательными остатками в подборе выводить серым шрифтом
- Скрывать поля, неактуальные для текущей строки – например, ИНН для групп справочника
- Выделять подсветкой позиции, для которых пользователь является ответственным менеджером
Удобно, добротно, показали заботу о клиенте – самое то, что надо 🙂
И сильно выделяет на фоне остальных 95% “кодеров”…
Итак, переходим к учебному видео:
Приёмы работы с динамическим списком – условное оформление
Изучив урок, Вы узнаете:
- Как настраивать оформление динамического списка без конфигурирования
- Программную модель работы с условными оформлением – связь с Системой компоновки данных
- Возможности по оптимизации запроса динамического списка
- Средства по быстрому написанию программного кода для работы с динамическим списком – без шаблонов и шпаргалок
- Как настроить видимость полей для каждой строки списка
Чтобы освоить разработку интерфейсов и форм в 1С:Предприятие 8.3
на профессиональном уровне, рекомендуем записаться на курс:
Источник
v8.3: Условное оформление программно
|
|
|
|
|
|
|
|
|
|
|
|