Динамический список, произвольный запрос - составной тип
Столкнулся недавно с интересной особенностью, хочу поделиться.
Внешняя обработка, на форме реквизит с типом "ДинамическийСписок", "Произвольный запрос", текст запроса ниже:
Вопрос: какого типа будет колонка динамического списка "СчетУчета"?
Казалось бы строка, а ннет, из-за засветившегося поля "СчетУчета" (ссылочный тип, ПланыСчетов) в связи первого пакета, динамический список выставит для колонки составной тип: Строка, ПланыСчетов.Хозрасчетный. Соответственно, при попытке поиска по динамическому списку через штатное поле поиска в районе командной панели будет ошибка, т.к. у колонки "СчетУчета" выведенной на экран и имеющей тип данных "Строка" нет вложенного реквизита "Наименование".
Платформы разных версий проверял от 8.3.12 до 8.3.18. Обработка с регистром из БП3.
Внешняя обработка, на форме реквизит с типом "ДинамическийСписок", "Произвольный запрос", текст запроса ниже:
ВЫБРАТЬ
ПрочиеРасчеты.Организация КАК Организация
ИЗ
РегистрНакопления.ПрочиеРасчеты КАК ПрочиеРасчеты
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПрочиеРасчеты.Остатки КАК ПрочиеРасчетыОстатки
ПО ПрочиеРасчеты.СчетУчета = ПрочиеРасчетыОстатки.СчетУчета
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
"Строка" КАК СчетУчета
ПоказатьВопрос: какого типа будет колонка динамического списка "СчетУчета"?
Казалось бы строка, а ннет, из-за засветившегося поля "СчетУчета" (ссылочный тип, ПланыСчетов) в связи первого пакета, динамический список выставит для колонки составной тип: Строка, ПланыСчетов.Хозрасчетный. Соответственно, при попытке поиска по динамическому списку через штатное поле поиска в районе командной панели будет ошибка, т.к. у колонки "СчетУчета" выведенной на экран и имеющей тип данных "Строка" нет вложенного реквизита "Наименование".
Платформы разных версий проверял от 8.3.12 до 8.3.18. Обработка с регистром из БП3.
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Ну и кстати, если сделать так:
то все будет отлично.
ВЫБРАТЬ
ПрочиеРасчеты.Организация КАК Организация
ИЗ
РегистрНакопления.ПрочиеРасчеты КАК ПрочиеРасчеты
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПрочиеРасчеты.Остатки КАК ПрочиеРасчетыОстатки
ПО ПрочиеРасчеты.СчетУчета = ПрочиеРасчетыОстатки.СчетУчета
;
//////////////////////////////////////////////////////////// ////////////////////
ВЫБРАТЬ
"Строка" КАК СчетУчета1
Показатьто все будет отлично.
(5) Ну как бы если поле засветилось в условии связи, но не участвует в выборке, то использовать его тип на поля с идентичным именем как минимум нелогично - я исключительно об этом.
Отключать "автозаполнение" это скорее костыль, к тому же не удобно, так как нужно актуализировать состав полей вручную. В 1С написал несколько дней назад, подожду их комментария.
Отключать "автозаполнение" это скорее костыль, к тому же не удобно, так как нужно актуализировать состав полей вручную. В 1С написал несколько дней назад, подожду их комментария.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот