Платформа: 8.2.19.116
Инструменты разработчика: Портативные 4.40p
Не очень продвинутая СКД в 8.2 может генерировать кривой запрос, который не может быть исполнен. При включенной отладке в консоли кода СКД невозможно получить текст запроса, так как вывод текста запроса производится после успешного исполнения запроса
Код
{ВнешняяОбработка.ирОбщий.МодульОбъекта(3356)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(191, 2)}: Операция не разрешена в предложении "СГРУППИРОВАТЬ"
<<?>>ПРЕДСТАВЛЕНИЕССЫЛКИ(ВЫБОР
Исходная функция
Код
Функция ВыполнитьЗамеритьЗапросЛкс(Запрос, ЛиОтладка = Ложь, Заголовок = "") Экспорт
Если ЛиОтладка Тогда
ВремяНачала = ПолучитьТекущееВремяВМиллисекундахЛкс();
КонецЕсли;
Результат = Запрос.Выполнить();
Если ЛиОтладка Тогда
Текст = Новый ТекстовыйДокумент;
Текст.УстановитьТекст(Запрос.Текст);
Текст.Показать(Заголовок + " - " + Строка(ПолучитьТекущееВремяВМиллисекундахЛкс() - ВремяНачала) + " мс");
КонецЕсли;
Возврат Результат;
КонецФункции // ВыполнитьЗамеритьЗапросЛкс()
Предложение по исправлению
Код
Функция ВыполнитьЗамеритьЗапросЛкс(Запрос, ЛиОтладка = Ложь, Заголовок = "") Экспорт
Если ЛиОтладка Тогда
ВремяНачала = ПолучитьТекущееВремяВМиллисекундахЛкс();
Текст = Новый ТекстовыйДокумент;
Текст.УстановитьТекст(Запрос.Текст);
КонецЕсли;
Попытка
Результат = Запрос.Выполнить();
Если ЛиОтладка Тогда
Текст.Показать(Заголовок + " - " + Строка(ПолучитьТекущееВремяВМиллисекундахЛкс() - ВремяНачала) + " мс");
КонецЕсли;
Исключение
Если ЛиОтладка Тогда
Текст.Показать(Заголовок);
КонецЕсли;
ВызватьИсключение;
КонецПопытки;
Возврат Результат;
КонецФункции // ВыполнитьЗамеритьЗапросЛкс()