RDT1C/DataProcessors/ирНастройкаЖурналаРегистрации/Ext/ObjectModule.bsl
Администратор 78068c27a6 .
2016-12-04 00:16:49 +03:00

106 lines
5.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//ирМобильный Перем ирМобильный Экспорт;
//ирМобильный Перем ирОбщий Экспорт;
//ирМобильный Перем ирСервер Экспорт;
//ирМобильный Перем ирКэш Экспорт;
//ирМобильный Перем ирПривилегированный Экспорт;
Процедура УстановитьФлажкиПотомков(СтрокаДерева) Экспорт
Для Каждого СтрокаДереваПотомок Из СтрокаДерева.Строки Цикл
СтрокаДереваПотомок.Метка = СтрокаДерева.Метка;
УстановитьФлажкиПотомков(СтрокаДереваПотомок);
КонецЦикла;
КонецПроцедуры // ЭлементыФормы.ДеревоПолей.ТекущаяСтрока()
Процедура УстановитьФлажкиРодителей(СтрокаДерева, ТрехЗначныйФлажок = Ложь) Экспорт
Родитель = СтрокаДерева.Родитель;
Если Родитель = Неопределено Тогда
Возврат;
КонецЕсли;
ИтоговаяМетка = Истина;
КоличествоЛожь = 0;
Для Каждого СтрокаСосед Из Родитель.Строки Цикл
Если СтрокаСосед.Метка = 0 Тогда
КоличествоЛожь = КоличествоЛожь + 1;
Если Не ТрехЗначныйФлажок Тогда
ИтоговаяМетка = Ложь;
Прервать;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Если ТрехЗначныйФлажок Тогда
ИтоговаяМетка = ?(КоличествоЛожь = Родитель.Строки.Количество(), 0, ?(КоличествоЛожь = 0, 1, 2));
КонецЕсли;
Если ИтоговаяМетка <> Родитель.Метка Тогда
Родитель.Метка = ИтоговаяМетка;
УстановитьФлажкиРодителей(Родитель, ТрехЗначныйФлажок);
КонецЕсли;
КонецПроцедуры // УстановитьФлажкиРодителей()
Процедура УстановитьФлажокСтрокиПоПодчиненным(СтрокаДерева, ТрехЗначныйФлажок = Ложь) Экспорт
Если СтрокаДерева.Строки.Количество() = 0 Тогда
Возврат;
КонецЕсли;
ИтоговаяМетка = Истина;
КоличествоЛожь = 0;
Для Каждого ПодчиненнаяСтрока Из СтрокаДерева.Строки Цикл
УстановитьФлажокСтрокиПоПодчиненным(ПодчиненнаяСтрока, ТрехЗначныйФлажок);
Если ПодчиненнаяСтрока.Метка = 0 Тогда
КоличествоЛожь = КоличествоЛожь + 1;
КонецЕсли;
ИтоговаяМетка = ИтоговаяМетка И ПодчиненнаяСтрока.Метка ;
КонецЦикла;
Если ТрехЗначныйФлажок Тогда
ИтоговаяМетка = ?(КоличествоЛожь = СтрокаДерева.Строки.Количество(), 0, ?(КоличествоЛожь = 0, 1, 2));
КонецЕсли;
СтрокаДерева.Метка = ИтоговаяМетка;
КонецПроцедуры
Функция ЕстьПолеСсылкаВТаблицеПолейРегистрации(ТаблицаПолейРегистрации) Экспорт
Результат = Ложь;
Для Каждого СтрокаТаблицы Из ТаблицаПолейРегистрации Цикл
Если СтрокаТаблицы.ПолеРегистрации.Количество() = 1 И СтрокаТаблицы.ПолеРегистрации[0].Значение = "Ссылка" Тогда
Результат = Истина;
Прервать;
КонецЕсли;
КонецЦикла;
Возврат Результат;
КонецФункции
//ирМобильный #Если Клиент Тогда
//ирМобильный Контейнер = Новый Структура();
//ирМобильный Оповестить("ирПолучитьБазовуюФорму", Контейнер);
//ирМобильный Если Не Контейнер.Свойство("ирМобильный", ирМобильный) Тогда
//ирМобильный ПолноеИмяФайлаБазовогоМодуля = ВосстановитьЗначение("ирПолноеИмяФайлаОсновногоМодуля");
//ирМобильный ирМобильный = ВнешниеОбработки.ПолучитьФорму(ПолноеИмяФайлаБазовогоМодуля);
//ирМобильный КонецЕсли;
//ирМобильный ирОбщий = ирМобильный.ПолучитьОбщийМодульЛкс("ирОбщий");
//ирМобильный ирКэш = ирМобильный.ПолучитьОбщийМодульЛкс("ирКэш");
//ирМобильный ирСервер = ирМобильный.ПолучитьОбщийМодульЛкс("ирСервер");
//ирМобильный ирПривилегированный = ирМобильный.ПолучитьОбщийМодульЛкс("ирПривилегированный");
//ирМобильный #КонецЕсли