Ошибка в запросе (отбрасывает некоторые строки)
Есть запрос из 3х пакетов. Нужно соединить все строки между собой (даже если в другом результате меньше строк).
По отдельности каждый отрабатывает отдельно, а вместе - гораздо меньше строк в результате (в этом и проблема). Такое ощущение, что игнорируется полное соединение и получается внутреннее (хотя при внутреннем - ничего не происходит).
По отдельности каждый отрабатывает отдельно, а вместе - гораздо меньше строк в результате (в этом и проблема). Такое ощущение, что игнорируется полное соединение и получается внутреннее (хотя при внутреннем - ничего не происходит).
ВЫБРАТЬ
ТоварыОрганизацийОстатки.Номенклатура,
ТоварыОрганизацийОстатки.СерияНоменклатуры,
ТоварыОрганизацийОстатки.Организация,
ТоварыОрганизацийОстатки.КоличествоОстаток
ПОМЕСТИТЬ Орг1
ИЗ
РегистрНакопления.ТоварыОрганизаций.Остатки КАК ТоварыОрганизацийОстатки
ГДЕ
ТоварыОрганизацийОстатки.Организация = &Организация1
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ТоварыОрганизацийОстатки.КоличествоОстаток,
ТоварыОрганизацийОстатки.СерияНоменклатуры,
ТоварыОрганизацийОстатки.Организация,
ТоварыОрганизацийОстатки.Номенклатура
ПОМЕСТИТЬ Орг2
ИЗ
РегистрНакопления.ТоварыОрганизаций.Остатки КАК ТоварыОрганизацийОстатки
ГДЕ
ТоварыОрганизацийОстатки.Организация = &Организация2
;
////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
ТоварыОрганизацийОстатки.Номенклатура,
ТоварыОрганизацийОстатки.СерияНоменклатуры,
Орг1.КоличествоОстаток КАК КоличествоОстаток1,
Орг2.КоличествоОстаток КАК КоличествоОстаток2,
ТоварыОрганизацийОстатки.КоличествоОстаток КАК КоличествоОстаток3
ИЗ
РегистрНакопления.ТоварыОрганизаций.Остатки КАК ТоварыОрганизацийОстатки
ПОЛНОЕ СОЕДИНЕНИЕ Орг1 КАК Орг1
ПО ТоварыОрганизацийОстатки.Номенклатура = Орг1.Номенклатура
И ТоварыОрганизацийОстатки.СерияНоменклатуры = Орг1.СерияНоменклатуры
ПОЛНОЕ СОЕДИНЕНИЕ Орг2 КАК Орг2
ПО ТоварыОрганизацийОстатки.Номенклатура = Орг2.СерияНоменклатуры
И ТоварыОрганизацийОстатки.СерияНоменклатуры = Орг2.СерияНоменклатуры
ГДЕ
ТоварыОрганизацийОстатки.Организация = &Организация3
ПоказатьПо теме из базы знаний
- 1С8:борьба - личный опыт работы с платформой 1с8
- Заметки про запросы. Коллекция
- Приемы быстрой работы в EDT/Git
- Расследование ошибки "TCP Provider: An existing connection was forcibly closed by the remote host" и неожиданные результаты
- Проблемы производительности. Индексация с дополнительным упорядочиванием
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(5)Чего это они не сгруппируются? Очень хорошо сгруппируются.
ВЫБРАТЬ
ТоварыОрганизацийОстатки.Номенклатура,
ТоварыОрганизацийОстатки.СерияНоменклатуры,
ТоварыОрганизацийОстатки.КоличествоОстаток КАК ОстатокОрг1,
0 КАК ОстатокОрг2,
0 КАК ОстатокОрг3
ПОМЕСТИТЬ Остатки
ИЗ
РегистрНакопления.ТоварыОрганизаций.Остатки(, Организация = &Организация1) КАК ТоварыОрганизацийОстатки
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ТоварыОрганизацийОстатки.Номенклатура,
ТоварыОрганизацийОстатки.СерияНоменклатуры,
0,
ТоварыОрганизацийОстатки.КоличествоОстаток,
0
ИЗ
РегистрНакопления.ТоварыОрганизаций.Остатки(, Организация = &Организация2) КАК ТоварыОрганизацийОстатки
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
ТоварыОрганизацийОстатки.Номенклатура,
ТоварыОрганизацийОстатки.СерияНоменклатуры,
0,
0,
ТоварыОрганизацийОстатки.КоличествоОстаток
ИЗ
РегистрНакопления.ТоварыОрганизаций.Остатки(, Организация = &Организация3) КАК ТоварыОрганизацийОстатки
ГДЕ
ТоварыОрганизацийОстатки.Организация = &Организация3
;
Выбрать
Номенклатура,
Серия,
СУММА(ОстатокОрг1) КАК ОстатокОрг1,
СУММА(ОстатокОрг2) КАК ОстатокОрг2,
СУММА(ОстатокОрг3) КАК ОстатокОрг3
ИЗ
ВТОстатки
СГРУППИРОВАТЬ ПО
Номенклатура,
Серия
Показать
(1) А почему бы вместо
не использовать
А еще лучше
Зачем городить огород?
Какую таблицу хотите получить в результате?
ТоварыОрганизацийОстатки.Организация = &Организация1
не использовать
ТоварыОрганизацийОстатки.Организация В (&МассивОрганизаций)
А еще лучше
РегистрНакопления.ТоварыОрганизаций.Остатки(,Организация В (&МассивОрганизаций)) КАК ТоварыОрганизацийОстатки
Зачем городить огород?
Какую таблицу хотите получить в результате?
(5) Все делается одним запросом без пакетов
ВЫБРАТЬ
ТоварыОрганизацийОстатки.Номенклатура,
ТоварыОрганизацийОстатки.СерияНоменклатуры,
Сумма(Выбор Когда ТоварыОрганизацийОстатки.Организация = &Организация1 Тогда
ТоварыОрганизацийОстатки.КоличествоОстаток
Иначе 0 Конец) Как КоличествоОрг1,
Сумма(Выбор Когда ТоварыОрганизацийОстатки.Организация = &Организация2 Тогда
ТоварыОрганизацийОстатки.КоличествоОстаток
Иначе 0 Конец )Как КоличествоОрг2,
Сумма(Выбор Когда ТоварыОрганизацийОстатки.Организация = &Организация3 Тогда
ТоварыОрганизацийОстатки.КоличествоОстаток
Иначе 0 Конец) Как КоличествоОрг3
ИЗ
РегистрНакопления.ТоварыОрганизаций.Остатки(,Организация в (&Организация1, &Организация2, &Организация3))КАК ТоварыОрганизацийОстатки
Сгруппировать ПО
Номенклатура,
СерияНоменклатуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот