|
Вопрос по Дереву значений | ☑ | ||
---|---|---|---|---|
0
Nemirov
07.07.21
✎
16:37
|
На форму выгрузил запрос в дерево значений. Возникла необходимость добавить колонку с типом булево (флажок).
"ВЫБРАТЬ | ЛОЖЬ КАК Выбран, | ДействиеСкидокНаценокПоНоменклатуре.Период КАК Период, | ДействиеСкидокНаценокПоНоменклатуре.Источник КАК Источник, | ДействиеСкидокНаценокПоНоменклатуре.Номенклатура КАК Номенклатура, | ДействиеСкидокНаценокПоНоменклатуре.Ответственный КАК Ответственный |ИЗ | РегистрСведений.ДействиеСкидокНаценокПоНоменклатуре КАК ДействиеСкидокНаценокПоНоменклатуре |ГДЕ | ДействиеСкидокНаценокПоНоменклатуре.Период >= &ТекущаяДата | И ДействиеСкидокНаценокПоНоменклатуре.Статус = &Статус |ИТОГИ ПО | Источник" Первый раз работаю с деревом. Не пойму как сделать так, если ты ставишь галочку родителю, то проставить истину всей номенклатуре по родителю. Родитель обозначен у меня как источник. Пробовал вот так. Все строки прохожу, выставляется истина, но на форме истина отображается только у родителя. &НаКлиенте Процедура ТаблицаМаркетингиВыбранПриИзменении(Элемент) Элемент.Родитель.ТекущаяСтрока Если Элемент.Родитель.ТекущиеДанные.Номенклатура = ПредопределенноеЗначение("Справочник.Номенклатура.ПустаяСсылка") тогда ВыбратьВсеПоИсточнику(Элемент.Родитель.ТекущиеДанные.Источник); КонецЕсли; КонецПроцедуры Процедура ВыбратьВсеПоИсточнику(Источник) ДеревоНаФорме = РеквизитФормыВЗначение("МаркетинговыеАкции"); Для каждого ПоискИсточника из ДеревоНаФорме.Строки цикл Если ПоискИсточника.Источник = Источник тогда Для каждого СтрокаПоИсточнику из ПоискИсточника.Строки Цикл СтрокаПоИсточнику.Выбран = Истина; КонецЦикла; КонецЕсли; КонецЦикла; КонецПроцедуры |
|||
1
Nemirov
07.07.21
✎
16:38
|
С сервера понятно, на клиенте вряд ли отобразится. Но заного когда ставлю флажок, те строки которые я проходил до этого опять со значением Ложь.
|
|||
2
acht
07.07.21
✎
16:54
|
(0) > ДеревоНаФорме = РеквизитФормыВЗначение("МаркетинговыеАкции");
Обратное действие где? |
|||
3
Nemirov
08.07.21
✎
09:29
|
(2) Что за обратное действие?
|
|||
4
Nemirov
08.07.21
✎
09:30
|
(2) А в элемент формы
|
|||
5
Nemirov
08.07.21
✎
09:38
|
(2) Спасибо !!!
|
|||
6
lodger
08.07.21
✎
09:41
|
(0) "РеквизитФормыВЗначение("МаркетинговыеАкции");" - тяжелая и дорогая по ресурсам операция.
не проще ли с ДанныеФормыДерево работать? &НаКлиенте Процедура ТаблицаМаркетингиВыбранПриИзменении(Элемент) // Элемент.Родитель.ТекущаяСтрока Если Элемент.Родитель.ТекущиеДанные.Номенклатура = ПредопределенноеЗначение("Справочник.Номенклатура.ПустаяСсылка") тогда ВыбратьВсеПоИсточнику(Элемент.Родитель.ТекущиеДанные); КонецЕсли; КонецПроцедуры &НаКлиенте Процедура ВыбратьВсеПоИсточнику(Источник) Для каждого ДочерниеСтроки из Источник.ПолучитьЭлементы() цикл ДочерниеСтроки.Выбран = Истина; ВыбратьВсеПоИсточнику(ДочерниеСтроки); КонецЦикла; КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |