Имя: Пароль:
1C
1С v8
Запрос на СКД (Номенклатура + Рег.Продажи)
0 dgynya
 
26.10.20
14:50
Добрый день, вроде простейший запрос но не могу справиться
Нужно соединить Справочник Номенклатуру и РегистрНакопление Продажи, при этом номенклатуру нужно вывести всю, в не зависимости продавали ее или нет
как не соединяю, выводит только то что было продано, что не так в моем запросе?
За ранее спасибо, кто поможет

ВЫБРАТЬ
    ПродажиОбороты.КоличествоОборот КАК Количество,
    ПродажиОбороты.Период КАК Период,
    СправочникНоменклатура.Наименование КАК Наименование
ИЗ
    РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, Месяц, ) КАК ПродажиОбороты
        ПОЛНОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК СправочникНоменклатура
        ПО (СправочникНоменклатура.Ссылка = ПродажиОбороты.Номенклатура.Ссылка)
ГДЕ
    ПродажиОбороты.Контрагент.Ссылка = &Контрагент

УПОРЯДОЧИТЬ ПО
    Наименование
1 Pro-tone
 
26.10.20
14:56
ВЫБРАТЬ
   СправочникНоменклатура.Ссылка КАК Номенклатура,
   ПродажиОбороты.КоличествоОборот КАК Количество,
   ПродажиОбороты.Период КАК Период
ИЗ
  СправочникНоменклатура КАК СправочникНоменклатура
  ЛЕВОЕ СОЕДИНЕНИЕ
     РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, Месяц, ) КАК ПродажиОбороты
  ПО
     СправочникНоменклатура.Ссылка = ПродажиОбороты.Номенклатура.Ссылка
2 Pro-tone
 
26.10.20
14:58
ПО "СправочникНоменклатура.Ссылка = ПродажиОбороты.Номенклатура" ссылка не надо после "ПродажиОбороты.Номенклатура"
3 Timon1405
 
26.10.20
14:59
(0)
//    ПО (СправочникНоменклатура.Ссылка = ПродажиОбороты.Номенклатура.Ссылка)
//ГДЕ
//    ПродажиОбороты.Контрагент.Ссылка = &Контрагент

ПО (СправочникНоменклатура.Ссылка = ПродажиОбороты.Номенклатура)
и ПродажиОбороты.Контрагент= &Контрагент
4 dgynya
 
26.10.20
15:23
РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, Месяц, ) КАК ПродажиОбороты
        ПОЛНОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК СправочникНоменклатура
        ПО (СправочникНоменклатура.Ссылка = ПродажиОбороты.Номенклатура.Ссылка)

это формируется автоматически после соединения двух таблиц, Левое соединение по справочнику тоже не помогает
5 dgynya
 
26.10.20
15:37
Через вложенный запрос тоже не получается
ВЫБРАТЬ
    ПродажиОбороты.Период,
    ПродажиОбороты.КоличествоОборот,
    СправочникНоменклатура.Наименование
ИЗ
    (ВЫБРАТЬ
        Номенклатура.Наименование КАК Наименование
    ИЗ
        Справочник.Номенклатура КАК Номенклатура) КАК СправочникНоменклатура
        ПОЛНОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты(&Н, &К, Месяц, ) КАК ПродажиОбороты
        ПО СправочникНоменклатура.Наименование = ПродажиОбороты.Номенклатура.Ссылка
ГДЕ
    ПродажиОбороты.Контрагент.Ссылка = &Контрагент
6 Kassern
 
26.10.20
15:45
делай левое соединение с таблицой номенклатуры. И не обрезай ты строчки с товарами условием "ГДЕ ПродажиОбороты.Контрагент.Ссылка = &Контрагент" и будет тебе счастье. Если хочешь отобрать продажи по контрагенту то делай это в параметрах виртуальной таблицы, или на крайняк в связях.
7 Kassern
 
26.10.20
15:48
и зачем использовать конструкцию ПродажиОбороты.Контрагент.Ссылка если ПродажиОбороты.Контрагент будет той же ссылкой...
8 Kassern
 
26.10.20
16:00
Вот тебе как вариант через параметры виртуальной таблицы

ВЫБРАТЬ РАЗРЕШЕННЫЕ
    Товары.Ссылка КАК Номенклатура,
    ЕСТЬNULL(ВыручкаИСебестоимостьПродажОбороты.СуммаВыручкиОборот, 0) КАК СуммаВыручкиОборот
ИЗ
    Справочник.Номенклатура КАК Товары
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВыручкаИСебестоимостьПродаж.Обороты(, , , АналитикаУчетаПоПартнерам.Контрагент = &Контрагент) КАК ВыручкаИСебестоимостьПродажОбороты
        ПО Товары.Ссылка = ВыручкаИСебестоимостьПродажОбороты.АналитикаУчетаНоменклатуры.Номенклатура
9 dgynya
 
26.10.20
16:14
всем спасибо, разобралась )
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан