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