Имя: Пароль:
1C
1С v8
Вопрос по Запросам
0 Xatori
 
06.03.13
16:17
Собственно сам вопрос
Имеем запрос

ВЫБРАТЬ
   ВыработкаОСОС.ОсновноеСредство КАК ОсновноеСредство,
   СУММА(ВыработкаОСОС.Количество) КАК Количество
ИЗ
   Документ.ВыработкаОС.ОС КАК ВыработкаОСОС
ГДЕ
   ВыработкаОСОС.Ссылка В(&Ссылка)

СГРУППИРОВАТЬ ПО
   ВыработкаОСОС.ОсновноеСредство
ИТОГИ
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОсновноеСредство),
   СУММА(Количество)
ПО
   ОБЩИЕ

Возвращает 91 Элемент по Основному Средству

Далее цепляем к нему

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

СГРУППИРОВАТЬ ПО
   ВыработкаОСОС.ОсновноеСредство,
   СтоимостьОСБухгалтерскийУчет.Организация
ИТОГИ
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОсновноеСредство),
   СУММА(Количество)
ПО
   ОБЩИЕ

Получается по Основному средству 79 элементов

Причём, как бы не менялось соединение(Левое, правое, полное) на результат это не влияет. Но судя по данным всегда происходит полное соединение.

Сталкивался кто то с подобным? Почему такое происходит?
1 lxndr
 
06.03.13
16:19
Условие
ГДЕ
   ...
   И СтоимостьОСБухгалтерскийУчет.Регистратор = &Регистратор

Режет твои правые записи
2 Xatori
 
06.03.13
16:21
Собственно с правыми записями то всё нормально, NULL не появляется к ненайденным записям из 1-й таблицы
3 NcSteel
 
06.03.13
16:22
(0) Не полное , а внутреннее.
4 Xatori
 
06.03.13
16:25
мб немного задача не ясна, поясню (3)
Есть табличная часть, к ней цепляю левым соединение данные из Регистра, результат остаётся только то что есть в обоих таблицах, но ведь при левом соединении то что (в моём случае в табличной части) должно в любом случае остаться, а получается что не остаётся.
5 GANR
 
06.03.13
16:25
6 NcSteel
 
06.03.13
16:26
(4) Если накладывать условие в секции "ГДЕ" на правую таблицу при левом соединии, то вид соединения преобразуется во внутреннее. Подобные условия должны находится в секции "ПО"
7 Xatori
 
06.03.13
16:28
(6) понял, спасибо за инфу))