условное оформление дерева значений управляемая форма

Условное оформление управляемой формы в 1С

Условное оформление формы в 1с 8 служит для управления видимостью, доступностью, цветом элементов таблиц управляемой формы (а также оно используется в СКД и динамических списках). Удобство его использования заключается в том, что вы один раз задаете условие по которому должно меняться оформление вашей формы. После этого при работе пользователя с формой, при срабатывании условия оформление будет меняться автоматически. Не нужно использовать события формы и писать лишний код.

Следует заменить, что условное оформление форм работает только в конфигурациях использующих управляемое приложение (Бухгалтерия 3.0, ЗУП 3.0/3.1, Управление торговлей 11 и т.п.)

Условное оформление 1с. Интерактивная настройка

Еще один плюс условного оформления — его можно настроить не написав ни строчки кода. Для этого в форме необходимо:

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

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

Условное оформление формы. Пример интерактивной настройки

Для примера мной была написана простейшая обработка, на формы которой добавлен реквизит с типом ТаблицаЗначений, с тремя колонками. А также три реквизита с типом булево. Скачать обработку можно Здесь.

Форма обработки выглядит так:

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

Настроим следующее условное оформление данной формы: при установке реквизита СкрытьКолонку1 в значение Истина, в таблице форме скрывать реквизит Колонка1.

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая формаусловное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

Условное оформление 8.3. Пример программной настройки

Используя ту же внешнюю обработку, что и в предыдущем пункте, приведем пример программной настройки условного оформления. Необходимо сделать следующее: при установке реквизита ПоменятьЦветКолонки2 в значение Истина, в таблице формы раскрашивать фон Колонки 2, при установке реквизита СделатьНедоступнойКолонку3 в значение Истина, в таблице формы делать недоступным реквизит Колонка3.

В модуле формы создадим серверную процедуру, назовем ее УстановитьУсловноеОформление и сразу же допишем ее вызов в процедуре ПриСозданииНаСервере.

Весь следующий код будем писать в процедуре УстановитьУсловноеОформление. Нам необходимо добавить новый элемент условного оформления формы, для этого используем стандартную коллекцию формы УсловноеОформление.

Также как и в интерактивном варианте, нам необходимо в созданном элементе заполнить оформления, условия и поля. Для того чтобы указать поле мы должны создать поле компоновки данных с именем колонки на которую будет распространяться оформление. Если полей несколько, добавляем нужное количество полей компоновки данных. Для отборов создаем элементы отбора компоновки данных и заполняем для них левое значение, правое значение и вид сравнения. Для того, чтобы задать нужные оформления заполним значения параметров доступных оформлений. В нашем примере получается следующий код:

Таким образом мы создали оформление для второй колонки таблицы. Для третьей колонки оно делается аналогичным образом, поэтому не будем на нем подробно останавливаться. Итоговый код процедуры УстановитьУсловноеОформление будет выглядеть следующим образом:

Напомню, что скачать обработку написанную на основе разобранных примеров можно Здесь.

Источник

Ваш браузер устарел, пожалуйста обновите ваш браузер пройдя по ссылке www.microsoft.com/download

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

Условное оформление дерева значений на управляемой форме

Предположим, мы создали некую обработку, которая выполняет те или иные действия над каталогом товаров. При этом у пользователя должна быть возможность выбирать категории товаров, для которых будут применяться эти действия. Логичным выбором будет выведение на форму иерархического списка категорий, где пользователь сможет галочками выбирать необходимые категории. Если пользователь отмечает галочкой категорию верхнего уровня, то подразумевается, что все вложенные категории также будут обработаны. Логично будет закрыть вложенные строки для редактирования и как-то пометить их, чтобы пользователю было понятно, что они будут обработаны вместе с родительской категорией. Вот здесь нам и пригодится условное оформление.

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

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

Работа с условным оформлением хорошо описана здесь:

При отборе мы указываем путь к данным:

А в полях оформления мы указываем путь к полю формы:

Источник

Ваш браузер устарел, пожалуйста обновите ваш браузер пройдя по ссылке www.microsoft.com/download

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

Условное оформление дерева значений на управляемой форме

Предположим, мы создали некую обработку, которая выполняет те или иные действия над каталогом товаров. При этом у пользователя должна быть возможность выбирать категории товаров, для которых будут применяться эти действия. Логичным выбором будет выведение на форму иерархического списка категорий, где пользователь сможет галочками выбирать необходимые категории. Если пользователь отмечает галочкой категорию верхнего уровня, то подразумевается, что все вложенные категории также будут обработаны. Логично будет закрыть вложенные строки для редактирования и как-то пометить их, чтобы пользователю было понятно, что они будут обработаны вместе с родительской категорией. Вот здесь нам и пригодится условное оформление.

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

условное оформление дерева значений управляемая форма. Смотреть фото условное оформление дерева значений управляемая форма. Смотреть картинку условное оформление дерева значений управляемая форма. Картинка про условное оформление дерева значений управляемая форма. Фото условное оформление дерева значений управляемая форма

Работа с условным оформлением хорошо описана здесь:

При отборе мы указываем путь к данным:

А в полях оформления мы указываем путь к полю формы:

Источник

Условное оформление в управляемых формах

Для условного оформления в списках и формах
в обычном приложении использовалось событие ПриПолученииДанных() или ПриВыводеСтроки(),
где через «ячейку» в зависимости от данных строки устанавливали нужное свойство.
С приходом нового режима работы платформы возможности условного оформления расширились.
В данной статье разберем основные аспекты.

— Простое условное оформление пользователь может настроить и сам, если его научить :). Это будет сложно конечно, но возможно.

(7) AllexSoft, да, так и есть, спасибо за ответ. Уже кое-чего примитивное настроил на уровне конфы.
для управления оформлением программно в динамическом списке вот так сделал:

НовыйЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();
//НовыйЭлементУсловногоОформления.ИдентификаторПользовательскойНастройки = «»Стр.НомерСтроки;
НовыйЭлементУсловногоОформления.Представление = «СозданоПрограммно»;
НовыйЭлементУсловногоОформления.Использование = Истина;

ЭлементОтбора = НовыйЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип(«ЭлементОтбораКомпоновкиДанных»));
ЭлементОтбора.Использование = Истина;

ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(«СписокКлиентов.НоваяВерсия»);
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
ЭлементОтбора.ПравоеЗначение = Новый ПолеКомпоновкиДанных(Справочники.ВерсияПП.ПустаяСсылка());
КонецЦикла;
КонецПроцедуры

Источник

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

Область применения: управляемое приложение.

Рекомендация (полезный совет)

1. Для настройки некоторых свойств элементов управления можно использовать условное оформление. Однако у этого механизма также есть ряд ограничений.

1.1. Не следует использовать условное оформление для скрытия в таблице строк целиком. Это существенно замедляет работу в веб-клиенте, а также приводит к некорректному отображению содержимого таблицы.

1.2. Если задача может быть функционально решена как с помощью условного оформления динамического списка, так и с помощью условного оформления формы, то следует выбрать первый вариант (условное оформление динамического списка). Это также несколько ускорит открытие формы.

2.1. Настройку условного оформления форм и динамических списков рекомендуется делать в коде формы. Такой подход имеет ряд преимуществ перед заданием настроек условного оформления в свойствах формы:

2.2. Все настройки условного оформления должны производиться при создании формы и потом не должны модифицироваться. Исключением могут являться случаи, когда элементы формы генерируются программно – условное оформление таких элементов нужно настраивать при генерации элементов и потом не нужно менять.

2.3. В коде процедуры установки условного оформления нужно минимизировать использование строковых констант, а использовать переменные, разыменования и т.д. – такой подход позволит минимизировать количество скрытых ошибок в настройках условного оформления, например:

ПолеЭлемента = Элемент.Поля.Элементы.Добавить();
ПолеЭлемента.Поле = Новый ПолеКомпоновкиДанных(Элементы.ТоварыУпаковка.Имя);

ГруппаОтбора1 = Элемент.Отбор.Элементы.Добавить(Тип(«ГруппаЭлементовОтбораКомпоновкиДанных»));
ГруппаОтбора1.ТипГруппы = ТипГруппыЭлементовОтбораКомпоновкиДанных.ГруппаИли;

ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип(«ЭлементОтбораКомпоновкиДанных»));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(«АдресноеХранение»);
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Ложь;

ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип(«ЭлементОтбораКомпоновкиДанных»));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(«Объект.Товары.ТипНоменклатуры»);
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
ОтборЭлемента.ПравоеЗначение = Перечисления.ТипыНоменклатуры.Товар;

ОтборЭлемента = ГруппаОтбора1.Элементы.Добавить(Тип(«ЭлементОтбораКомпоновкиДанных»));
ОтборЭлемента.ЛевоеЗначение = Новый ПолеКомпоновкиДанных(«Объект.Статус»);
ОтборЭлемента.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ОтборЭлемента.ПравоеЗначение = Перечисления.СтатусыПриходныхОрдеров.КПоступлению;

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *