Описание ошибки
Нет возможности использовать в консоли запросов внешние источники (временные таблицы), содержащие колонку типа "Тип". В частности, такие источники можно получить с помощью инструмента сохранения запроса при отладке кода.
Дополнительная информация
Данная проблема очень мешает анализу и отладке отражения документов в регл. учете в конфигурациях ERP (КА). Синтетический запрос, приведенный далее в сценарии воспроизведения, не является надуманным, а используется в типовом механизме для правильного позиционирования субконто в проводках. Собирается он по плану видов характеристик "ВидыСубконтоХозрасчетные".
Сценарий воспроизведения
На любой базе создать внешнюю обработку, содержащую следующий код:
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос.Текст =
"ВЫБРАТЬ
| 1 КАК Ссылка, ТИП(СТРОКА) КАК ТипЗначения
|ПОМЕСТИТЬ ВидыСубконто
|ОБЪЕДИНИТЬ ВСЕ
|ВЫБРАТЬ
| 2, ТИП(ЧИСЛО)
|ОБЪЕДИНИТЬ ВСЕ
|ВЫБРАТЬ
| 3, ТИП(ДАТА)";
Запрос.Выполнить();
Запрос.Текст =
"ВЫБРАТЬ
| ВидыСубконто.Ссылка,
| ВидыСубконто.ТипЗначения
|ИЗ
| ВидыСубконто КАК ВидыСубконто";
Результат = Запрос.Выполнить().Выгрузить();
Установить точку останова на последней строке и запустить базу на отладку в режиме предприятия. Открыть внешнюю обработку и запустить приведенный выше код. Когда отладчик остановится на последней строке вычислить выражение (Shift+F9) для сохранения запроса в настройках пользователя: ИТК.Отл(Запрос)
Продолжить выполнение программы. Убедиться, что приведенный код выполняется без ошибок.
В режиме предприятия открыть консоль разработчика и с помощью меню "Данные / Запрос (из отладки)" открыть сохраненный запрос. Выполнить его. В результате появится окно с ошибкой:
{(3, 1)}: Тип не может быть выбран в запросе
<<?>>ТипЗначения
{InfostartToolkit ОбщийМодуль.ИТК_Запрос.Модуль(1329)}: Запрос.Выполнить();
{InfostartToolkit ОбщийМодуль.ИТК_Запрос.Модуль(1547)}: ЗагрузкаДанныхВременныхТаблиц(Данные, МенеджерВременныхТаблиц);
{InfostartToolkit ОбщийМодуль.ИТК_Запрос.Модуль(850)}: Запрос = Инициализировать(Данные);
{InfostartToolkit ОбщийМодуль.ИТК_Запрос.Модуль(38)}: РезультатыВыполнения = ВыполнитьЗапрос(Данные, Режим, АнализируетсяПланЗапроса, Настройки["ОбратныйПорядокЗапросовПакета"]);
{(1)}:ИТК_Запрос.ПолучитьРезультат(Параметры[0],Параметры[1])
{ОбщийМодуль.ОбщегоНазначения.Модуль(5173)}: Выполнить ИмяМетода + "(" + ПараметрыСтрока + ")";
{ОбщийМодуль.ДлительныеОперации.Модуль(1058)}: ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
{ОбщийМодуль.ДлительныеОперации.Модуль(416)}: ВызватьПроцедуру(ИмяПроцедуры, ПараметрыЭкспортнойПроцедуры);
{InfostartToolkit ОбщийМодуль.ИТК_ДлительныеОперации.Модуль(82)}: Возврат Модуль.ВыполнитьВФоне(ИмяПроцедуры, ПараметрыПроцедуры, ПараметрыВыполнения);
{InfostartToolkit Обработка.ИТК_КонсольРазработчика.Форма.Основная.Форма(3492)}: Возврат ИТК_ДлительныеОперации.ВыполнитьВФоне(ПолноеИмяМетода, ПараметрыПроцедуры, ПараметрыВыполнения);
по причине:
{(3, 1)}: Тип не может быть выбран в запросе
<<?>>ТипЗначения
Далее можно перейти к закладке "Внешние источники (1)" и кликнув по гиперссылке в колонке "Значение" для единственной строки списка получить следующее сообщение об ошибке (связано с #64):
по причине:
Недопустимый тип реквизита. Имя: "ТипЗначения"
Ожидаемое поведение, если бы ошибки не было
Ожидается, что запрос выполнится без ошибок, результат будет содержать 3 строки. Также хотелось бы просмотреть содержимое внешнего источника, пусть даже без возможности редактирования колонки "ТипЗначения".
Окружение:
Infostart Toolkit 1.7.3
Платформа: 8.3.16.1876 (Linux x86-64)
Режим БД: клиент-серверный
Конфигурация:
1С:ERP. Управление холдингом (3.0.4.4)
Основной режим запуска: Управляемое приложение
Режим совместимости: Версия8_3_14
Версия БСП: 3.1.3.264
Клиент:
ОС: Windows x86-64 (Microsoft Windows 10 version 10.0 (Build 17763))
Язык: ru
Режим запуска: Управляемое приложение
Описание ошибки Нет возможности использовать в консоли запросов внешние источники (временные таблицы), содержащие колонку типа "Тип". В частности, такие источники можно получить с помощью инструмента сохранения запроса при отладке кода.
Дополнительная информация Данная проблема очень мешает анализу и отладке отражения документов в регл. учете в конфигурациях ERP (КА). Синтетический запрос, приведенный далее в сценарии воспроизведения, не является надуманным, а используется в типовом механизме для правильного позиционирования субконто в проводках. Собирается он по плану видов характеристик "ВидыСубконтоХозрасчетные".
Сценарий воспроизведения На любой базе создать внешнюю обработку, содержащую следующий код:
Установить точку останова на последней строке и запустить базу на отладку в режиме предприятия. Открыть внешнюю обработку и запустить приведенный выше код. Когда отладчик остановится на последней строке вычислить выражение (Shift+F9) для сохранения запроса в настройках пользователя:
ИТК.Отл(Запрос)
Продолжить выполнение программы. Убедиться, что приведенный код выполняется без ошибок.В режиме предприятия открыть консоль разработчика и с помощью меню "Данные / Запрос (из отладки)" открыть сохраненный запрос. Выполнить его. В результате появится окно с ошибкой:
Далее можно перейти к закладке "Внешние источники (1)" и кликнув по гиперссылке в колонке "Значение" для единственной строки списка получить следующее сообщение об ошибке (связано с #64):
Ожидаемое поведение, если бы ошибки не было Ожидается, что запрос выполнится без ошибок, результат будет содержать 3 строки. Также хотелось бы просмотреть содержимое внешнего источника, пусть даже без возможности редактирования колонки "ТипЗначения".
Окружение: Infostart Toolkit 1.7.3
Платформа: 8.3.16.1876 (Linux x86-64) Режим БД: клиент-серверный
Конфигурация: 1С:ERP. Управление холдингом (3.0.4.4) Основной режим запуска: Управляемое приложение Режим совместимости: Версия8_3_14 Версия БСП: 3.1.3.264
Клиент: ОС: Windows x86-64 (Microsoft Windows 10 version 10.0 (Build 17763)) Язык: ru Режим запуска: Управляемое приложение