0
Beeezy
18.05.23
✎
12:08
|
День добрый мистчане. Такой вопрос, 1С УК 1.6.26.1 (аналог УНФ), платформа 8.3.22.1851. Необходимо условное изменение фона по простому условию. Для этого добавил булев реквизит "ЕстьРаспродажа" в справочник номенклатуры. Редактирую "ФормаСписка". Добавляю вот такую процедуру:
&НаСервере
Процедура ДобавитьУсловноеОформление()
ЭлементОформления = СписокЗапасы.УсловноеОформление.Элементы.Добавить();
//ЭлементОформления = СписокЗапасы.КомпоновщикНастроек.ФиксированныеНастройки.УсловноеОформление.Элементы.Добавить();
ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("ЕстьРаспродажа"); //ЕстьРаспродажа - это добавленный мною новый реквизит
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = ИСТИНА;
ЭлементОтбора.Использование = ИСТИНА;
Элемент = ЭлементОформления.Оформление.Элементы[0];
ЭлементОформления.Оформление.УстановитьЗначениеПараметра("ЦветФона", Новый Цвет(51, 153, 102));
Элемент.Использование = ИСТИНА;
КонецПроцедуры
Исправил динамический список "СписокЗапасы", добавил в запрос этот новый реквизит. Закинул эту процедуру в конец "ПриСозданииНаСервере". И при открытии формы выдает, что мое новое поле не найдено. Хотя, если переделаю условие, к примеру, на поле "наименование", то все отрабатывает. Так понимаю, скорее всего запрос динамического списка изменяется, но отловить не могу. Во всех параметрах формы мое поле светится, с ним можно работать, а при обращении - хрен. Кто может ткнуть носом, куда копать эту оказию?
|
|
4
Beeezy
24.05.23
✎
16:41
|
(2) Действительно, выражаю благодарность, проблема была в этом. Только не понимаю, почему на остальные поля работает без "Номеклатура."?
|
|
5
Donkey_hot
24.05.23
✎
17:20
|
(4) Мы вылечили симптом, а не причину. Повезло, что нужные данные хранятся в реквизите поля, которое уже имеется в списке. Что не так с добавленным Вами полем, увы, сказать затруднительно, надо смотреть, как добавляли.
|
|