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