Добрый день,
Запросы начал писать 3 недели назад, сильно не пинайте)
Необходимо получить обороты по контрагентам
Регистры "Покупатели" и "Поставщики"
Всё классно, получил.
Дальше сказали "А получика ещё сети" (сети - реквизит контрагента)
Получил, радуюсь.
Сказали "А получика ты ,красный молодец, реквизит "Город" из самого верхнего родителя контрагента"
Вот тут я и вспотел).
Пробую так
| SELECT
| КОнтрАгенты.ID [КонтРАгент $Справочник.КонтрАгенты],
| СетЬ.ID [СЕть $Справочник.Сети],
| Город.ID [Город $Справочник.Города],
| Рег.Договор as [ДоГовор $Справочник.Договоры],
| Рег.Фирма as [Фирма $Справочник.Фирмы],
| Рег.СуммаРубНачальныйОстаток as СуммаРубНачОст,
| Рег.СуммаРубПриход as СуммаРубПриход,
| Рег.СуммаРубРасход as СуммаРубРасход,
| Рег.СуммаРубКонечныйОстаток as СуммаРубКонОст,
| Рег2.СуммаРубНачальныйОстаток as СуммаРубНачОст1,
| Рег2.СуммаРубПриход as СуммаРубПриход1,
| Рег2.СуммаРубРасход as СуммаРубРасход1,
| Рег2.СуммаРубКонечныйОстаток as СуммаРубКонОст1,
| CASE
| WHEN КонтрАгенты5.ID Is Null
| THEN
| CASE
| WHEN КонтрАгенты4.ID Is Null
| THEN
| CASE
| WHEN КонтрАгенты3.ID Is Null
| THEN
| CASE
| WHEN КонтрАгенты2.ID Is Null
| THEN
| CASE
| WHEN КонтрАгенты1.ID Is Null
| THEN
| КонтрАгенты.ID
| ELSE
| КонтрАгенты1.ID
| END
| ELSE
| КонтрАгенты2.ID
| END
| ELSE
| КонтрАгенты3.ID
| END
| ELSE
| КонтрАгенты4.ID
| END
| ELSE
| КонтрАгенты5.ID
| END as [Родитель $Справочник.КонтрАгенты]
|FROM
| $РегистрОстаткиОбороты.Покупатели(:НачДата, :КонДата~,,,,
| ,
| (Договор,Фирма),(СуммаРуб)) as Рег
|FULL JOIN $РегистрОстаткиОбороты.Поставщики(:НачДата, :КонДата~,,,
| ,
| ,
| (Договор,Фирма),(СуммаРуб)) as РЕг2
|ON (Рег.Договор = Рег2.Договор)
|AND (Рег.Фирма = Рег2.Фирма)
|INNER JOIN
| $Справочник.Договоры as Договоры ON (ДОговоры.ID = Рег.ДоговоР)
|INNER JOIN
| $Справочник.КонтрАгенты as КонтрАгенты ON (КонтрАгенты.ID = Договоры.PARENTEXT)
|LEFT JOIN
| $Справочник.КонтрАгенты as КонтрАгенты1 ON (КонтрАгенты1.ID = КонтрАгенты.ParentID)
|LEFT JOIN
| $Справочник.КонтрАгенты as КонтрАгенты2 ON (КонтрАгенты2.ID = КонтрАгенты1.ParentID)
|LEFT JOIN
| $Справочник.КонтрАгенты as КонтрАгенты3 ON (КонтрАгенты3.ID = КонтрАгенты2.ParentID)
|LEFT JOIN
| $Справочник.КонтрАгенты as КонтрАгенты4 ON (КонтрАгенты4.ID = КонтрАгенты3.ParentID)
|LEFT JOIN
| $Справочник.КонтрАгенты as КонтрАгенты5 ON (КонтрАгенты5.ID = КонтрАгенты4.ParentID)
|INNER JOIN
| $Справочник.Сети as СеТь ON ($КонтрАгенты.СЕТЬ = СеТь.ID)
|INNER JOIN
| $Справочник.Города as Город ON (Родитель.Город = ГорОд.ID)";
И послал он меня "The column prefix 'Родитель' does not match with a table name or alias name used in the query."
Думу думаю, как же быть.