Консоль запросов

Представленный инструмент разработчика "Консоль запросов" является доработкой обработки(Владимира Милькина) с сайта
http://helpme1c.ru/obrabotka-konsol-zaprosov-upravlyaemoe-prilozhenie-its-1s-8-3-8-2,
и предназначен для составления произвольных выборок данных 1с и отладки запросов  в основных режимах 1С:Предприятие.
Обработка может быть полезна для разработчиков конфигураций  в управляемом приложении 1с.
Данный инструмент позволяет написать и отладить 1с запрос (в том числе и пакетный запрос) в режиме 1С: Предприятие, используя стандартный конструктор запросов 1с (для релизов платформы начиная с 8.3.5), как и при работе в конфигураторе 1с.
В том числе: данные временных таблиц запроса пакетного запроса, данные о времени построения выборки, количество строк в выборке, включая временные таблицы, и в каждой таблице отдельно, выделение ячеек в выборке, сравнение  результатов двух запросов 1с (только в толстом клиенте),
вывод выборки в новом окне, сохранение текста и параметров запросов  в файле *.q1c, настройка автосохранения, экспорт выборок в табличный документ и другое.
Текст готового запроса можно перенести в программный код 1С(с помощью специальной команды меню:"Текст запроса для конфигуратора").
Для релиза платформы 8.3.8 и более поздних, реализована возможность получения данных непосредственно из менеджера временных таблиц, что существенно сокращает время выполнения обработки.
Список доработок:
в модуле обработки
1) в функции ВывестиРезультатЗапросов

// Training1s ->  стр.923
// Проверим версию платформы 1С

СисИнфо = Новый СистемнаяИнформация; 
Если Число(Лев(СтрЗаменить(СисИнфо.ВерсияПриложения,".",""),3)) < 838 Тогда // Старый вариант
    Результат = ВыполнитьЗапросСВременнойТаблицей(НакапливаемыйЗапрос, ИмяТаблицы, ИмяЗапроса);
Иначе // Вызов новой функции    
    Результат
= ВыполнитьЗапросСВременнойТаблицейИзМВТ(МассивДанныхПоЗапросу.Запрос.МенеджерВременныхТаблиц, ИмяТаблицы, ИмяЗапроса); 
КонецЕсли;
// Training1s <-
Функция ВыполнитьЗапросСВременнойТаблицейИзМВТ(Знач МВТ, ИмяВременнойТаблицы, ИмяЗапроса) // Training1S
    Попытка
        Результат = МВТ.Таблицы.Найти(ИмяВременнойТаблицы).ПолучитьДанные();
        ИмяЗапроса = НСтр("ru = 'Временная таблица:'") + " " + ИмяВременнойТаблицы;
    Исключение
        Результат = Неопределено;
    КонецПопытки;
        Возврат
Результат;
КонецФункции

Проверяем версию платформы 1с и, если она не старше релиза 8.3.8, то используем новое свойство Таблицы менеджера временных таблиц. Метод ПолучитьДанные() возвращает значение типа РезультатЗапроса.
2) в функции ВывестиРезультатОдногоЗапроса(ИмяЗапроса, РезультатЗапроса, Открыта, ПараметрыВыводаЗапроса, Иерархия, КоличествоСтрок, МассивШириныКолонок) после вывода детальных записей получаем количество строк в запросе.

Детали = ВывестиДетали(РезультатЗапроса, ПараметрыВыводаЗапроса);
КоличествоСтрок = ПараметрыВыводаЗапроса.КоличествоСтрок; // Training1s
Заголовок = ВывестиЗаголовокЗапроса(ИмяЗапроса, КоличествоСтрок);

Количество строк считаем в функциях ВывестиДеталиСИерархией и ВывестиДеталиБезИерархии: после обхода цикла выборки по результату запроса записываем количество строк в выборке.

ПараметрыВыводаЗапроса.КоличествоСтрок = ИндексСтроки - 1; // Training1s

Ссылка на скачивание: https://yadi.sk/d/psMdDlf8xhSZ8