Last active
November 1, 2019 14:05
-
-
Save a-sitnikov/21ab83da94e9a3f04793177823b9f430 to your computer and use it in GitHub Desktop.
Пометки в дереве
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
&НаКлиентеНаСервереБезКонтекста | |
Процедура УстановитьПометкуГруппы(Строка) | |
ИтогоПометка = 0; | |
Колво = 0; | |
Строки = Строка.ПолучитьЭлементы(); | |
Для каждого Строка1 из Строки Цикл | |
Если Строка1.Пометка = 1 Тогда | |
ИтогоПометка = ИтогоПометка + 1; | |
КонецЕсли; | |
Колво = Колво + 1; | |
КонецЦикла; | |
Если ИтогоПометка = 0 Тогда | |
Строка.Пометка = 0; | |
ИначеЕсли ИтогоПометка = Колво Тогда | |
Строка.Пометка = 1; | |
Иначе | |
Строка.Пометка = 2; | |
КонецЕсли; | |
КонецПроцедуры | |
&НаКлиентеНаСервереБезКонтекста | |
Процедура УстановитьПометкуПодчиненных(Строка, Пометка) | |
Строки = Строка.ПолучитьЭлементы(); | |
Для каждого Строка1 из Строки Цикл | |
Строка1.Пометка = Пометка; | |
УстановитьПометкуПодчиненных(Строка1, Пометка); | |
КонецЦикла; | |
КонецПроцедуры | |
&НаКлиенте | |
Процедура ДеревоПометкаПриИзменении(Элемент) | |
ТекСтрока = Элементы.Дерево.ТекущиеДанные; | |
Если ТекСтрока.Пометка = 2 Тогда | |
ТекСтрока.Пометка = 0; | |
КонецЕсли; | |
УстановитьПометкуПодчиненных(ТекСтрока, ТекСтрока.Пометка); | |
Родитель = ТекСтрока.ПолучитьРодителя(); | |
Пока Родитель <> Неопределено Цикл | |
УстановитьПометкуГруппы(Родитель); | |
Родитель = Родитель.ПолучитьРодителя(); | |
КонецЦикла; | |
КонецПроцедуры | |
&НаКлиенте | |
Процедура ВклВсе(Команда) | |
Для каждого Строка1 из Дерево.ПолучитьЭлементы() Цикл | |
Строка1.Пометка = 1; | |
УстановитьПометкуПодчиненных(Строка1, Строка1.Пометка) | |
КонецЦикла; | |
КонецПроцедуры | |
&НаКлиенте | |
Процедура ВыклВсе(Команда) | |
Для каждого Строка1 из Дерево.ПолучитьЭлементы() Цикл | |
Строка1.Пометка = 0; | |
УстановитьПометкуПодчиненных(Строка1, Строка1.Пометка) | |
КонецЦикла; | |
КонецПроцедуры |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment