0
Varlant1n
04.06.21
✎
10:42
|
ТЗ такое: В ТЧ "Товары" есть стандартная функция "Разделить строки". Нужно выделить разделенную/разделенные строку/строки, в зависимости от текущей строки. Текущую строку выделять не надо. Я смог добиться следующего: у меня подчеркивается и текущая строка и разделенная и после того как меняется текущая строка прошлые строки выделенные так же остаются выделенными. То есть есть пробежаться по всем строкам ТЧ, в итоге они все будут подсвеченными. Может кто-то сможет подсказать как можно такое решить? Буду очень вам благодарен! Даже тем, кто будет писать гневные комментарии =))
Что сделал я:
1. Создал реквизит "ТекущаяНоменклатура" в документе,
2. Прописал следующие процедуры:
&НаКлиенте
Процедура ТоварыПриАктивизацииСтроки(Элемент)
ТекущаяСтрока = Элементы.Товары.ТекущиеДанные;
Если ТекущаяСтрока <> Неопределено Тогда
Объект.ТекущаяНоменклатура = ТекущаяСтрока.Номенклатура;
Для каждого Строка Из Объект.Товары Цикл
Если Строка.Номенклатура = Объект.ТекущаяНоменклатура Тогда
УстановитьУсловноеОфомление();
КонецЕсли;
КонецЦикла;
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура УстановитьУсловноеОфомление()
ЭлементУО = УсловноеОформление.Элементы.Добавить();
ЭлементУО.Оформление.УстановитьЗначениеПараметра("ЦветФона", WebЦвета.Желтый);
ЭлементОформления = ЭлементУО.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОформления.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Объект.Товары.Номенклатура");
ЭлементОформления.ПравоеЗначение = Объект.ТекущаяНоменклатура;
ЭлементОформления.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОформления.Использование = Истина;
ОформляемоеПоле = ЭлементУО.Поля.Элементы.Добавить();
ОформляемоеПоле.Поле = Новый ПолеКомпоновкиДанных("Товары");
КонецПроцедуры
|
|