Имя: Пароль:
1C
 
Проблема с СКД
0 Mr Elidan
 
19.08.15
10:54
Тут проблема очевидна, она в связях, но вроде все правильно.
Тяну к таблице с контрагентами ЗначенияСвойствОбъектов, но выдает только тех контрагентов, у которых есть свойство. Без свойств, все круто, а с ними беда. Где касяк?

ВЫБРАТЬ
    СУММА(ЕСТЬNULL(ТабЕмкость.Количество, 0)) КАК КоличествоЕмкости,
    СУММА(ЕСТЬNULL(ТабЕмкость.Цена, 0)) КАК ЦенаЕмкости,
    СУММА(ЕСТЬNULL(ТабПродажи.Количество, 0)) КАК КоличествоПродаж,
    СУММА(ЕСТЬNULL(ТабПродажи.Цена, 0)) КАК ЦенаПродаж,
    СУММА(ЕСТЬNULL(ТабЕмкость.Количество, 0) * ЕСТЬNULL(ТабЕмкость.Цена, 0)) КАК СуммаЕмкости,
    СУММА(ЕСТЬNULL(ТабПродажи.Количество, 0) * ЕСТЬNULL(ТабПродажи.Цена, 0)) КАК СуммаПродаж,
    ТабЕщеОдинКаркас.Контрагент,
    ТабЕщеОдинКаркас.Номенклатура,
    ЗначенияСвойствОбъектов.Значение КАК КаналСбыта,
    ЗначенияСвойствОбъектов1.Значение
ИЗ
    ТабЕщеОдинКаркас КАК ТабЕщеОдинКаркас
        ЛЕВОЕ СОЕДИНЕНИЕ ТабЕмкость КАК ТабЕмкость
        ПО ТабЕщеОдинКаркас.Контрагент = ТабЕмкость.Контрагент
            И ТабЕщеОдинКаркас.Номенклатура = ТабЕмкость.Ассортимент
        ЛЕВОЕ СОЕДИНЕНИЕ ТабПродажи КАК ТабПродажи
        ПО ТабЕщеОдинКаркас.Контрагент = ТабПродажи.Контрагент
            И ТабЕщеОдинКаркас.Номенклатура = ТабПродажи.Номенклатура
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
        ПО ТабЕщеОдинКаркас.Контрагент = ЗначенияСвойствОбъектов.Объект
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов1
        ПО ТабЕщеОдинКаркас.Контрагент = ЗначенияСвойствОбъектов1.Объект
ГДЕ
    ЗначенияСвойствОбъектов.Свойство.Наименование = "Классификация клиентов"
    И ЗначенияСвойствОбъектов1.Свойство.Наименование = "Округ"

СГРУППИРОВАТЬ ПО
    ТабЕщеОдинКаркас.Контрагент,
    ТабЕщеОдинКаркас.Номенклатура,
    ЗначенияСвойствОбъектов.Значение,
    ЗначенияСвойствОбъектов1.Значение
1 Nuobu
 
19.08.15
10:55
ГДЕ
    ЗначенияСвойствОбъектов.Свойство.Наименование = "Классификация клиентов"
    И ЗначенияСвойствОбъектов1.Свойство.Наименование = "Округ"

Перенеси это в связи.
2 Mr Elidan
 
19.08.15
11:07
Эээ, как? В смысле связь подразумевает, что есть источник и приемник, а тут условие.
3 Nuobu
 
19.08.15
11:09
(2)  ПО ТабЕщеОдинКаркас.Контрагент = ЗначенияСвойствОбъектов.Объект
И  ЗначенияСвойствОбъектов.Свойство.Наименование = "Классификация клиентов"
И ЗначенияСвойствОбъектов1.Свойство.Наименование = "Округ"
4 Mr Elidan
 
19.08.15
11:09
Сделал, заработало, спасибо, но по механики все равно не понимаю( это ж условие!
5 Nuobu
 
19.08.15
11:10
(4) Как палка вырастёт, так поймёшь.
6 Mr Elidan
 
19.08.15
11:11
???
7 Nuobu
 
19.08.15
11:11
(6) Внизу, под именем))