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