Имя: Пароль:
1C
1С v8
СКД вывод товаров по которым не было продаж.
, ,
0 location
 
naïve
12.05.17
10:33
Добрый день уважаемые форумчане. Помогите с проблемкой одной. Есть отчет на СКД, который выводит информацию, по номенклатуре и ее продажам, но в отчет должна попасть не только та номенклатура по которой были продажи но и та по которой продаж не было, по условиям всегда будут выбирать папку (родителя) номенклатуры, по которой хотят посмотреть продажи. Я добавил как основную таблицу справочник номенклатура с отбором по родителю, все нормально выводиться, но также надо показать продажи по всем дням периода, сделал отдельный запрос по датам, в итоге у меня получается 2 запроса в СКД, если соединяю по периоду, то у меня пропадает, та номенклатура по которой не было продаж, но зато появляется все даты в периоде где были продажи и не было их. Подскажите что сделать как соединить так, чтобы были и номенклатуры по которым нет продаж и полный период?

схема СКД тут http://rgho.st/7MVymW2Qm
1 vicof
 
12.05.17
10:35
Соединять надо правильно. Гаданием без текста запроса не занимаемся
2 Маркусс
 
12.05.17
10:39
галку "Все" поставь рядом со справочником в настройке связей таблиц
3 location
 
naïve
12.05.17
10:48
(2) где эта галка?
4 location
 
naïve
12.05.17
11:06
(2) Полное соединение галочку? не помогает
5 Джинн
 
12.05.17
11:09
(0) Не забудьте добавить в отчет авианосцы - Вы их тоже не продавали.
6 location
 
naïve
12.05.17
11:52
(5) откуда знаешь, может и продавали.
7 AlvlSpb
 
12.05.17
11:58
(0) Какая конфигурация? Скачал схему, но в УТ не открывает. Посмотрел без особого вчитывания, что бросилось в глаза. Зачем отдельный запрос по датам, если есть регистр с оборотами и периодом Авто? Сделать в настройках группировку по периоду регистра День и будет выдавать все на каждый день периода.
8 location
 
naïve
12.05.17
12:01
(7) а если не было продаж за какой то период? он выдаст этот день?
9 AlvlSpb
 
12.05.17
12:03
(8) Прав. Не выдаст
10 AlvlSpb
 
12.05.17
12:06
(7) Но тогда и смысл отчета? Перечислять ВСЮ номенклатуру, ежедневно? Возможно задачу надо переформулировать? Например: Вывести продажи с периодом день и отдельно номенклатуру НЕпродаваемую за весь период (без разбивки по дням)? Иначе получается какая-то ерунда
11 location
 
naïve
12.05.17
13:53
(10) так вот как раз это и нужно видеть, но только номенклатуру которая не продавалась, должна быть в одной таблице с той которая продавалась, требования такие, там всего 10 номенклатур, не думайте что отчет выводит данные для 100 тыс строк.
12 AlvlSpb
 
12.05.17
15:53
(11) Посмотри. Сделал на УНФ, попробуй по аналогии. Дни недели взял из РС "Календарные графики". В настройках СКД: В полях Номенклатура, кол-во оборот и сума оборот, Группировка по ДатаГрафика

ВЫБРАТЬ
    Номенклатура.Ссылка КАК Ссылка
ПОМЕСТИТЬ Ном
ИЗ
    Справочник.Номенклатура КАК Номенклатура

СГРУППИРОВАТЬ ПО
    Номенклатура.Ссылка
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    КалендарныеГрафики.ДатаГрафика КАК ДатаГрафика
ПОМЕСТИТЬ Дат
ИЗ
    РегистрСведений.КалендарныеГрафики КАК КалендарныеГрафики
ГДЕ
    КалендарныеГрафики.ДатаГрафика МЕЖДУ &ДатаНачала И &ДатаОкончания
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    Дат.ДатаГрафика КАК ДатаГрафика,
    Ном.Ссылка КАК Ссылка
ПОМЕСТИТЬ НомДат
ИЗ
    Дат КАК Дат
        ЛЕВОЕ СОЕДИНЕНИЕ Ном КАК Ном
        ПО (ИСТИНА)
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    НомДат.ДатаГрафика КАК ДатаГрафика,
    НомДат.Ссылка КАК Ссылка,
    ПродажиОбороты.КоличествоОборот КАК КоличествоОборот,
    ПродажиОбороты.СуммаОборот КАК СуммаОборот
ИЗ
    НомДат КАК НомДат
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты({(&ДатаНачала)}, {(&ДатаОкончания)}, День, ) КАК ПродажиОбороты
        ПО НомДат.Ссылка = ПродажиОбороты.Номенклатура
13 AlvlSpb
 
12.05.17
15:56
+(12) Ежедневно в течении периода (ДатаНачала и ДатаОкончания в Параметрах снято Ограничение видимости, а в настройках установлена пользовательская видимость) выводится ВСЯ номенклатура и данные по обороту, если таковой имелся в этот день
14 AlvlSpb
 
12.05.17
16:46
+ (12) Только увидел. Не скопировал последнюю строчку. Последний пакет  

ИЗ
    НомДат КАК НомДат
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты({(&ДатаНачала)}, {(&ДатаОкончания)}, День, ) КАК ПродажиОбороты
        ПО НомДат.Ссылка = ПродажиОбороты.Номенклатура
          И НомДат.ДатаГрафика = ПродажиОбороты.Период
15 location
 
naïve
12.05.17
17:02
(12) (13) (14) спс попробую