Форум на Kuban.ru (http://forums.kuban.ru/)
-   Территория 1С (http://forums.kuban.ru/f1040/)
-   -   Помогите плиз с запросом к ТЧ (http://forums.kuban.ru/f1040/pomogite_pliz_s_zaprosom_k_tch-7809950.html)

Dimm 09.06.2016 17:22

Помогите плиз с запросом к ТЧ
 
Уважаемые,для УТ 11.2 рисую внешний отчет.Суть отчета:Собрать все строки ТЧ документа ЗаказКлиента и ТЧ документа(ов!) на его основании ЗаказПоставщику. Для чего:увидеть по всем заказам клиента что мы заказали у поставщика и по какой цене.
Если у ЗаказаКлиента один подчиненный Заказ Покупателю,нет проблем.Если у ЗКлиента несколько ЗПоставщикам,тут проблемы и начинаются,которые я не могу победить.
Суть проблемы:в заказе клиента 3 номенклатуры,в каждом заказе
поставщику по одной номенклатуре,неповторяющейся,и отчет выводит не 3 строки,а 9.
Запрос:
ВЫБРАТЬ
ЗаказКлиента1.Номер КАК Номер,
ЗаказКлиента1.Дата КАК Дата,
ЗаказКлиента1.Партнер КАК Партнер,
ЗаказКлиента1.Автор КАК Автор,
ЗаказКлиентаТовары2.Номенклатура.Артикул КАК НоменклатураАртикул,
ЗаказКлиентаТовары2.Номенклатура КАК Номенклатура,
ЗаказКлиентаТовары2.Номенклатура.Родитель КАК НоменклатураРодитель,
ЗаказКлиентаТовары2.Номенклатура.ЕдиницаИзмерения КАК НоменклатураЕдиницаИзмерения,
ЗаказКлиентаТовары2.Количество КАК Количество,
ЗаказПоставщику3.Контрагент КАК Поставщик,
ЗаказПоставщику3.Номер КАК НомерПоставщикаТовара,
ЗаказПоставщику3.НомерПоДаннымПоставщика КАК НомерПоДаннымПоставщика,
ЗаказПоставщику3.ДатаПоДаннымПоставщика КАК ДатаПоДаннымПоставщика,
ПоступлениеТоваровУслуг4.Дата КАК ДатаПоступленияТовара,
ПоступлениеТоваровУслуг4.НомерВходящегоДокумента КАК НомерВходящегоДокумента,
РеализацияТоваровУслуг5.Дата КАК ДатаРеализации,
РеализацияТоваровУслуг5.Номер КАК НомерРеализации,
ЗаказКлиентаТовары2.ДатаОтгрузки,
ПоступлениеБезналичныхДенежныхСредств.Номер КАК НомерВхПП,
ПоступлениеБезналичныхДенежныхСредств.Дата КАК ДатаВхПП,
ЗаказПоставщикуТовары.Цена КАК ЦенаЗакупки,
ЗаказКлиентаТовары2.Цена КАК ЦенаПродажи,
ЗаказКлиентаТовары2.Сумма
ИЗ
Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары2
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК ЗаказКлиента1
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПоставщику КАК ЗаказПоставщику3
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг4
ПО ЗаказПоставщику3.Ссылка = ПоступлениеТоваровУслуг4.ЗаказПоставщику.Ссылка
ПО ЗаказКлиента1.Ссылка = ЗаказПоставщику3.ДокументОснование.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг5
ПО ЗаказКлиента1.Ссылка = РеализацияТоваровУслуг5.ЗаказКлиента.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеБезналичныхДенежныхСредств.РасшифровкаПлатежа КАК ПоступлениеБезналичныхДенежныхСредствРасшифровкаПлатежа
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеБезналичныхДенежныхСредств КАК ПоступлениеБезналичныхДенежныхСредств
ПО ПоступлениеБезналичныхДенежныхСредствРасшифровкаПлатежа.Ссылка = ПоступлениеБезналичныхДенежныхСредств.Ссылка
ПО ЗаказКлиента1.Ссылка = ПоступлениеБезналичныхДенежныхСредствРасшифровкаПлатежа.ОснованиеПлатежа.Ссылка
ПО ЗаказКлиентаТовары2.Ссылка = ЗаказКлиента1.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
ПО ЗаказКлиентаТовары2.Ссылка = ЗаказПоставщикуТовары.Ссылка.ДокументОснование.Ссылка
И ЗаказКлиентаТовары2.Номенклатура = ЗаказПоставщикуТовары.Номенклатура
ГДЕ
ЗаказКлиента1.Дата МЕЖДУ &НачалоПериода И &КонецПериода

MarySue 09.06.2016 20:00

вообще-то, такие вещи делаются не запросом по документам
а по регистрам надо смотреть

Jimbo 09.06.2016 22:16

просто шедеврально! в чем смысл ?

Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары2
ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента КАК ЗаказКлиента1

Viking 13.06.2016 19:42

1-я строка "Выбрать" - правильная
остальное не правильно ВСЕ.
1. Запрос строить НУЖНО по регистрам. За запрос по документам по рукам нужно бить очень сильно. (сами на свой запрос посмотрите. В него попадут ВСЕ документы и не проведенные и помеченные на удаление)
2. В таблице "ЗаказКлиентаТовары2" есть объект "Ссылка" со всеми реквизитами шапки документа - отпадет надобность в "ЗаказКлиента1". Аналогично для заказа Поставщику. Нет надобности в таблице "ЗаказПоставщику3"
и т.д. и т.п.

Чучундер 13.06.2016 22:20

Пусть делает по документам
Больше геморроя - ценнее работа последующего специалиста

bma1 14.06.2016 11:53

В УТ же есть какой-то регистр, который как раз отвечает за то, в каком заказе поставщика какие позиции из каких заказов покупателей размещены...


Текущее время: 19:32. Часовой пояс GMT +3.