Пятница, 04.10.2024, 13:58
Главная Регистрация RSS
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Пожелание - два мелких улучшения в ирКонсольКомпоновокДанных
akrynetskyДата: Суббота, 27.05.2023, 06:44 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Статус: Оффлайн
В обработке ирКонсольКомпоновокДанных предлагаю на форме Форма:
1. Кнопку Сформировать сделать кнопкой по умолчанию. Чтобы работала по нажатию Ctrl+Enter
2. Замерять время выполнения всегда и отображать замеры на кнопке Отладка

Примерный код функции прикладываю

Код
Функция ВыполнитьОтчет()
   
   СохранитьФайлДляВосстановления();
   
   // Моя вставка Крынецкий 22.05.23
   ПрошлоВремени = ТекущаяУниверсальнаяДатаВМиллисекундах();
   // Конец моей вставки
   
   Если КомпоновщикНастроек.Настройки.Структура.Количество() = 0 Тогда
      ЭлементыФормы.Структура.ТекущаяСтрока = ирОбщий.НайтиДобавитьЭлементСтруктурыГруппировкаКомпоновкиЛкс(КомпоновщикНастроек.Настройки.Структура);
      ирОбщий.СообщитьЛкс("Добавлена группировка ""Детальные записи"", т.к. структура компоновки была пустая");
   КонецЕсли;
   Если ЭлементыФормы.ПанельРезультатов.ТекущаяСтраница = ЭлементыФормы.ПанельРезультатов.Страницы.МакетКомпоновки Тогда
      СтруктураВнешниеНаборыДанных = Неопределено;
   Иначе
      СтруктураВнешниеНаборыДанных = СтруктураВнешниеНаборыДанных();
   КонецЕсли; 
   МенеджерВременныхТаблиц = мМенеджерВременныхТаблиц;
   МакетКомпоновкиДанных = ПолучитьМакетКомпоновки(,, СтруктураВнешниеНаборыДанных,, МенеджерВременныхТаблиц);
   Если МакетКомпоновкиДанных = Неопределено Тогда
      Возврат Ложь;
   КонецЕсли;
   УстановитьМакетКомпоновкиДанных(МакетКомпоновкиДанных);
   Если ЭлементыФормы.ПанельРезультатов.ТекущаяСтраница = ЭлементыФормы.ПанельРезультатов.Страницы.МакетКомпоновки Тогда
      Возврат Ложь;
   КонецЕсли; 
   Результат = СкомпоноватьРезультатМой(, СтруктураВнешниеНаборыДанных,, Истина, МенеджерВременныхТаблиц);
   
   // Моя вставка Крынецкий 22.05.23. Задача 205
   ПрошлоВремени = ТекущаяУниверсальнаяДатаВМиллисекундах()-ПрошлоВремени;
   Кнопка = ЭлементыФормы.КоманднаяПанельФормы.Кнопки.Отладка;
   Кнопка.Отображение = ОтображениеКнопкиКоманднойПанели.НадписьКартинка;
   Кнопка.Текст = СтрШаблон("%1 мс", ПрошлоВремени);
   // Конец моей вставки
   
   Возврат Результат = Истина;

КонецФункции
Прикрепления: 3790445.png (27.4 Kb)


Сообщение отредактировал akrynetsky - Суббота, 27.05.2023, 06:45
 
tormozitДата: Суббота, 27.05.2023, 08:52 | Сообщение # 2
Генералиссимус
Группа: Администраторы
Сообщений: 6382
Репутация: 165
Статус: Оффлайн
1. Не буду делать, т.к. консоли открываются еще в режиме редактора и тогда основной кнопкой будет ОК. Это будет путать пользователя.
2. Не буду делать именно так, т.к. частое изменение текста на кнопке будет сдвигать всех кнопки правее ее - они будут прыгать вправо-влево. А отображение общего времени часто не достаточно полезно, т.к. есть как минимум 2 важных части:
- Компоновка макета, которая первый раз в сеансе может выполнять заметно дольше чем непервый
- Выполнение макета
Поэтому сделаю отдельные статические индикаторы https://www.hostedredmine.com/issues/964205
 
tormozitДата: Воскресенье, 28.05.2023, 21:47 | Сообщение # 3
Генералиссимус
Группа: Администраторы
Сообщений: 6382
Репутация: 165
Статус: Оффлайн
2. Сделано в 6.77
 
akrynetskyДата: Вторник, 06.06.2023, 07:13 | Сообщение # 4
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Статус: Оффлайн
Я именно хотел видеть каждый раз время выполнения макета (запрос + вывод в табличный документ), т.к. как правило на это больше всего уходит времени.
А время компоновки макета, если интересно, можно посмотреть включив кнопку "Отладка"
 
tormozitДата: Вторник, 06.06.2023, 07:23 | Сообщение # 5
Генералиссимус
Группа: Администраторы
Сообщений: 6382
Репутация: 165
Статус: Оффлайн
На второй картинке показан индикатор длительности выполнения макета.
 
akrynetskyДата: Вторник, 06.06.2023, 07:38 | Сообщение # 6
Рядовой
Группа: Пользователи
Сообщений: 3
Репутация: 0
Статус: Оффлайн
Спасибо!
 
  • Страница 1 из 1
  • 1
Поиск: