Подскажите, пожалуйста, почему не считается итог, если есть два запроса, которые объединяются.
Первый запрос из РегистраНакопления, второй из РеистраСведений.
Есть три поля в обоих запросах. Первые два заполняются из первого запроса, а третье из второго.
И получается, если есть данные только из второго запроса (т.е. третье поле), то итог по строке не подсчитывается. Если же есть данные хотябы в одном поле из первого запроса, то итоги считаются правильно
Текст запросов такой:
Первый запрос из РегистраНакопления, второй из РеистраСведений.
Есть три поля в обоих запросах. Первые два заполняются из первого запроса, а третье из второго.
И получается, если есть данные только из второго запроса (т.е. третье поле), то итог по строке не подсчитывается. Если же есть данные хотябы в одном поле из первого запроса, то итоги считаются правильно
Текст запросов такой:
ВЫБРАТЬ
Поступление.РазделУчета КАК РазделУчета,
Поступление.Контрагент КАК Контрагент,
Поступление.Сумма КАК Сумма,
Поступление.Период КАК ПериодРеализации,
Поступление.ВидДвижения КАК ВидДвижения,
Поступление.Физлицо КАК ФизЛицо,
ВЫБОР
КОГДА
(ТИПЗНАЧЕНИЯ(Поступление.Регистратор) = ТИП(Документ.ПКОпроживание) или ТИПЗНАЧЕНИЯ(Поступление.Регистратор) = ТИП(Документ.РКОпроживание))
ТОГДА Поступление.Сумма
ИНАЧЕ 0
КОНЕЦ КАК Касса,
ВЫБОР
КОГДА
(ТИПЗНАЧЕНИЯ(Поступление.Регистратор) = ТИП(Документ.Оплата) или ТИПЗНАЧЕНИЯ(Поступление.Регистратор) = ТИП(Документ.ВозвратОплаты))
ТОГДА Поступление.Сумма
ИНАЧЕ 0
КОНЕЦ КАК Банк,
ВЫБОР
КОГДА
НЕ(ТИПЗНАЧЕНИЯ(Поступление.Регистратор) = ТИП(Документ.Оплата) или ТИПЗНАЧЕНИЯ(Поступление.Регистратор) = ТИП(Документ.ВозвратОплаты))
ТОГДА 0
КОНЕЦ КАК Бронирование,
Поступление.Регистратор КАК Регистратор
ИЗ
РегистрНакопления.ВзаиморасчетыПроживание КАК Поступление
ГДЕ
Поступление.Период МЕЖДУ &ДатаЗаезда1 И &ДатаЗаезда2
И Поступление.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
Объединить Все
//
ВЫБРАТЬ
Бронирование.РазделУчета КАК РазделУчета,
Бронирование.Контрагент КАК Контрагент,
Бронирование.Сумма КАК Сумма,
Бронирование.Период КАК ПериодРеализации,
Бронирование.ВидРазмещения.Проживание КАК ВидРазмещения,
Бронирование.Физлицо КАК ФизическоеЛицо,
ВЫБОР КОГДА НЕ(Бронирование.ДатаЗаезда МЕЖДУ &ДатаЗаезда1 И &ДатаЗаезда2)
ТОГДА 0
КОНЕЦ КАК Касса,
ВЫБОР КОГДА НЕ(Бронирование.ДатаЗаезда МЕЖДУ &ДатаЗаезда1 И &ДатаЗаезда2)
ТОГДА 0
КОНЕЦ КАК Банк,
ВЫБОР
КОГДА Бронирование.ДатаЗаезда МЕЖДУ &ДатаЗаезда1 И &ДатаЗаезда2
ТОГДА -Бронирование.Сумма
//ИНАЧЕ 0
КОНЕЦ КАК Бронирование,
Бронирование.Регистратор КАК Регистратор
ИЗ
РегистрСведений.БронированиеНомеров КАК Бронирование
ГДЕ
(Бронирование.ДатаЗаезда МЕЖДУ &ДатаЗаезда1 И &ДатаЗаезда2)
И Бронирование.ВидРазмещения.Проживание
ПоказатьПрикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(5) Причем тут опыт? Ты писал запрос? Какое число у тебя попадет в результат запроса, если дата заезда попадает в интервал бронирования?(в вышеприведенном мной куске запроса)
Почему у тебя в первом запросе пара таких полей написана верно, а в остальных случаях ты решил написать неправильно?
Сравни результаты - что тебе выводится корректно, а что выводится некорректно. И сравни строчки запроса - те, которые выводят корректно, и которые некорректно. Нади мильон отличий.
Почему у тебя в первом запросе пара таких полей написана верно, а в остальных случаях ты решил написать неправильно?
Сравни результаты - что тебе выводится корректно, а что выводится некорректно. И сравни строчки запроса - те, которые выводят корректно, и которые некорректно. Нади мильон отличий.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот