База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как исправить ошибки в запросе на соединение документов и регистров? › Ответ в теме: Как исправить ошибки в запросе на соединение документов и регистров?
В вашем запросе есть несколько ошибок и неточностей, которые вызывают проблему:
1. В части соединения с регистром накопления РасчетыСКлиентами:
|
1 2 |
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РасчетыСКлиентами КАК РасчетыСКлиентами ПО Заказ.Договор = РасчетыСКлиентами.ОбъектРасчетов.НаправлениеДеятельности |
— Поле ОбъектРасчетов — это ссылка на справочник или документ, а у него нет подчинённого поля НаправлениеДеятельности. Вы пытаетесь сравнить Заказ.Договор с РасчетыСКлиентами.ОбъектРасчетов.НаправлениеДеятельности, что некорректно.
— Скорее всего, вы хотели сравнить Заказ.Договор с РасчетыСКлиентами.ОбъектРасчетов (то есть по ссылке на договор).
2. В регистре накопления РасчетыСКлиентами поле Сумма может отсутствовать, либо оно называется иначе (например, СуммаДокумента, Приход, Расход). Нужно проверить точное имя поля.
3. В выборке вы дважды выбираете РасчетыСКлиентами.Сумма как Сумма и Сумма1 — это избыточно.
—
Правки, которые нужно сделать:
— Исправить условие соединения:
|
1 |
ПО Заказ.Договор = РасчетыСКлиентами.ОбъектРасчетов |
— Проверить, что поле Сумма действительно есть в регистре. Если нет, заменить на правильное имя.
— Убрать дублирование поля Сумма.
—
Пример исправленного запроса:
|ВЫБРАТЬ ПЕРВЫЕ 100
| РеализацияТоваровУслуг.ЗаказКлиента.Договор КАК ЗаказДоговор,
| РеализацияТоваровУслуг.ЗаказКлиента.Ссылка КАК ЗаказСсылка,
| РеализацияТоваровУслуг.Ссылка КАК РеализацияСсылка,
| РеализацияТоваровУслуг.ЗаказКлиента.Ссылка КАК РеализацияЗаказСсылка,
| РасчетыСКлиентами.Сумма КАК Сумма,
| РасчетыСКлиентами.КОплате КАК КОплате,
| РасчетыСКлиентами.Оплачивается КАК Оплачивается,
| РасчетыСКлиентами.КОтгрузке КАК КОтгрузке,
| РасчетыСКлиентами.Отгружается КАК Отгружается,
| РасчетыСКлиентами.ОбъектРасчетов КАК ОбъектРасчетовСсылка
|ИЗ
| Документ.ЗаказКлиента КАК Заказ
| ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
| ПО Заказ.Ссылка = РеализацияТоваровУслуг.ЗаказКлиента.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РасчетыСКлиентами КАК РасчетыСКлиентами
| ПО Заказ.Договор = РасчетыСКлиентами.ОбъектРасчетов
—
Если поле Сумма отсутствует, замените его на правильное имя, например:
|
1 |
РасчетыСКлиентами.Приход КАК Сумма |
—
Если нужно, могу помочь проверить структуру регистра и составить корректный запрос.