mirror of
https://github.com/tormozit/RDT1C.git
synced 2025-12-17 13:14:11 +00:00
106 lines
5.8 KiB
Plaintext
106 lines
5.8 KiB
Plaintext
//ирМобильный Перем ирМобильный Экспорт;
|
||
//ирМобильный Перем ирОбщий Экспорт;
|
||
//ирМобильный Перем ирСервер Экспорт;
|
||
//ирМобильный Перем ирКэш Экспорт;
|
||
//ирМобильный Перем ирПривилегированный Экспорт;
|
||
|
||
Процедура УстановитьФлажкиПотомков(СтрокаДерева) Экспорт
|
||
|
||
Для Каждого СтрокаДереваПотомок Из СтрокаДерева.Строки Цикл
|
||
|
||
СтрокаДереваПотомок.Метка = СтрокаДерева.Метка;
|
||
УстановитьФлажкиПотомков(СтрокаДереваПотомок);
|
||
|
||
КонецЦикла;
|
||
|
||
КонецПроцедуры // ЭлементыФормы.ДеревоПолей.ТекущаяСтрока()
|
||
|
||
Процедура УстановитьФлажкиРодителей(СтрокаДерева, ТрехЗначныйФлажок = Ложь) Экспорт
|
||
|
||
Родитель = СтрокаДерева.Родитель;
|
||
|
||
Если Родитель = Неопределено Тогда
|
||
Возврат;
|
||
КонецЕсли;
|
||
|
||
ИтоговаяМетка = Истина;
|
||
КоличествоЛожь = 0;
|
||
Для Каждого СтрокаСосед Из Родитель.Строки Цикл
|
||
Если СтрокаСосед.Метка = 0 Тогда
|
||
КоличествоЛожь = КоличествоЛожь + 1;
|
||
Если Не ТрехЗначныйФлажок Тогда
|
||
ИтоговаяМетка = Ложь;
|
||
Прервать;
|
||
КонецЕсли;
|
||
КонецЕсли;
|
||
КонецЦикла;
|
||
|
||
Если ТрехЗначныйФлажок Тогда
|
||
ИтоговаяМетка = ?(КоличествоЛожь = Родитель.Строки.Количество(), 0, ?(КоличествоЛожь = 0, 1, 2));
|
||
КонецЕсли;
|
||
|
||
Если ИтоговаяМетка <> Родитель.Метка Тогда
|
||
|
||
Родитель.Метка = ИтоговаяМетка;
|
||
УстановитьФлажкиРодителей(Родитель, ТрехЗначныйФлажок);
|
||
|
||
КонецЕсли;
|
||
|
||
КонецПроцедуры // УстановитьФлажкиРодителей()
|
||
|
||
Процедура УстановитьФлажокСтрокиПоПодчиненным(СтрокаДерева, ТрехЗначныйФлажок = Ложь) Экспорт
|
||
|
||
Если СтрокаДерева.Строки.Количество() = 0 Тогда
|
||
Возврат;
|
||
КонецЕсли;
|
||
|
||
ИтоговаяМетка = Истина;
|
||
КоличествоЛожь = 0;
|
||
|
||
Для Каждого ПодчиненнаяСтрока Из СтрокаДерева.Строки Цикл
|
||
|
||
УстановитьФлажокСтрокиПоПодчиненным(ПодчиненнаяСтрока, ТрехЗначныйФлажок);
|
||
Если ПодчиненнаяСтрока.Метка = 0 Тогда
|
||
КоличествоЛожь = КоличествоЛожь + 1;
|
||
КонецЕсли;
|
||
ИтоговаяМетка = ИтоговаяМетка И ПодчиненнаяСтрока.Метка ;
|
||
|
||
КонецЦикла;
|
||
|
||
Если ТрехЗначныйФлажок Тогда
|
||
ИтоговаяМетка = ?(КоличествоЛожь = СтрокаДерева.Строки.Количество(), 0, ?(КоличествоЛожь = 0, 1, 2));
|
||
КонецЕсли;
|
||
|
||
СтрокаДерева.Метка = ИтоговаяМетка;
|
||
|
||
КонецПроцедуры
|
||
|
||
Функция ЕстьПолеСсылкаВТаблицеПолейРегистрации(ТаблицаПолейРегистрации) Экспорт
|
||
|
||
Результат = Ложь;
|
||
|
||
Для Каждого СтрокаТаблицы Из ТаблицаПолейРегистрации Цикл
|
||
Если СтрокаТаблицы.ПолеРегистрации.Количество() = 1 И СтрокаТаблицы.ПолеРегистрации[0].Значение = "Ссылка" Тогда
|
||
Результат = Истина;
|
||
Прервать;
|
||
КонецЕсли;
|
||
КонецЦикла;
|
||
|
||
Возврат Результат;
|
||
|
||
КонецФункции
|
||
|
||
//ирМобильный #Если Клиент Тогда
|
||
//ирМобильный Контейнер = Новый Структура();
|
||
//ирМобильный Оповестить("ирПолучитьБазовуюФорму", Контейнер);
|
||
//ирМобильный Если Не Контейнер.Свойство("ирМобильный", ирМобильный) Тогда
|
||
//ирМобильный ПолноеИмяФайлаБазовогоМодуля = ВосстановитьЗначение("ирПолноеИмяФайлаОсновногоМодуля");
|
||
//ирМобильный ирМобильный = ВнешниеОбработки.ПолучитьФорму(ПолноеИмяФайлаБазовогоМодуля);
|
||
//ирМобильный КонецЕсли;
|
||
//ирМобильный ирОбщий = ирМобильный.ПолучитьОбщийМодульЛкс("ирОбщий");
|
||
//ирМобильный ирКэш = ирМобильный.ПолучитьОбщийМодульЛкс("ирКэш");
|
||
//ирМобильный ирСервер = ирМобильный.ПолучитьОбщийМодульЛкс("ирСервер");
|
||
//ирМобильный ирПривилегированный = ирМобильный.ПолучитьОбщийМодульЛкс("ирПривилегированный");
|
||
//ирМобильный #КонецЕсли
|
||
|