Отбираются данные только за период, который не учитывается в запросе остатков и оборотов

1. user1043700 01.06.20 00:13 Сейчас в теме
Добрый день.
Не могу разобраться с работой запроса (внешний отчет СКД) в бухгалтерии.
Утрировано, мне нужно получить все рейсы за период, реализации по этим рейсам, а оплату без учета периода.
Например, нужно получить рейсы за 2019 год и все оплаты по ним (в том числе в 2020)

В параметрах задан период выборки данных (начало и конец периода)
По заданному периоду получаю нужную мне выборку рейсов, помещаю в виртуальную таблицу.
Получаю остатки и обороты по проводкам реализации без учета периода, а они режутся по конец периода для выборки рейсов.
При этом, если увеличить период выборки рейса до конца 2020, то оплаты за 20 год попадают в отчет.

Чтобы не перегружать, привожу только часть запроса, где возникает ошибка
Прошу помочь.

ВЫБРАТЬ
	Проекты.Проект.Организация,
	Проекты.Проект.Заказчик,
	Проекты.Проект,
	РейсыПериодРТУ.Рейс,
	РейсыПериодРТУ.АктВыданный,
	ВЫРАЗИТЬ(РейсыПериодРТУ.АктВыданный.СуммаДокумента * РейсыПериодРТУ.АктВыданный.КурсВзаиморасчетов / КоличествоРейсовПоРТУ.Количество КАК ЧИСЛО(15, 2)),
	ВЫРАЗИТЬ(РейсыПериодРТУ.СуммаНДС * РейсыПериодРТУ.АктВыданный.КурсВзаиморасчетов / КоличествоРейсовПоРТУ.Количество КАК ЧИСЛО(15, 2)),
	ВЫРАЗИТЬ((РейсыПериодРТУ.АктВыданный.СуммаДокумента - РейсыПериодРТУ.СуммаНДС) * РейсыПериодРТУ.АктВыданный.КурсВзаиморасчетов / КоличествоРейсовПоРТУ.Количество КАК ЧИСЛО(15, 2)),
	ВЫРАЗИТЬ(РейсыПериодРТУ.АктВыданный.СуммаДокумента * РейсыПериодРТУ.АктВыданный.КурсВзаиморасчетов / КоличествоРейсовПоРТУ.Количество КАК ЧИСЛО(15, 2)),
	ВЫРАЗИТЬ((РейсыПериодРТУ.АктВыданный.СуммаДокумента - РейсыПериодРТУ.СуммаНДС) * РейсыПериодРТУ.АктВыданный.КурсВзаиморасчетов / КоличествоРейсовПоРТУ.Количество КАК ЧИСЛО(15, 2)),
	НАЧАЛОПЕРИОДА(РейсыПериодРТУ.Период, ДЕНЬ),
	НАЧАЛОПЕРИОДА(РейсыПериодРТУ.Период, МЕСЯЦ),
	НАЧАЛОПЕРИОДА(РейсыПериодРТУ.Период, КВАРТАЛ),
	ВЫРАЗИТЬ(ХозрасчетныйОстаткиИОбороты.СуммаОборотДт / КоличествоРейсовПоРТУ.Количество КАК ЧИСЛО(15, 2)),
	ВЫРАЗИТЬ(ХозрасчетныйОстаткиИОбороты.СуммаОборотКт / КоличествоРейсовПоРТУ.Количество КАК ЧИСЛО(15, 2)),
	ВЫРАЗИТЬ(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт / КоличествоРейсовПоРТУ.Количество КАК ЧИСЛО(15, 2))
ИЗ
	Проекты КАК Проекты
		ЛЕВОЕ СОЕДИНЕНИЕ РейсыПериодРТУ КАК РейсыПериодРТУ
			ЛЕВОЕ СОЕДИНЕНИЕ КоличествоРейсовПоРТУ КАК КоличествоРейсовПоРТУ
			ПО РейсыПериодРТУ.АктВыданный = КоличествоРейсовПоРТУ.АктВыданный
Показать

ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(, , , , , , ) КАК ХозрасчетныйОстаткиИОбороты
ПО РейсыПериодРТУ.АктВыданный = ХозрасчетныйОстаткиИОбороты.Субконто3
И (ХозрасчетныйОстаткиИОбороты.Счет В ИЕРАРХИИ (&СчетРТУ))

ПО Проекты.Проект = РейсыПериодРТУ.Рейс.Проект
ГДЕ
	НЕ РейсыПериодРТУ.АктВыданный ЕСТЬ NULL
По теме из базы знаний
Найденные решения
3. TimoninD 01.06.20 03:01 Сейчас в теме
Так же не забывайте, что если создать параметры: НачалоПериода и КонецПериода, то выборка из виртуальных таблиц регистров будет автоматически их подхватывать. Даже если не указать их явно в запросе
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. nomad_irk 76 01.06.20 00:33 Сейчас в теме
(1)Не нужно делать вложенное левое соединение.
3. TimoninD 01.06.20 03:01 Сейчас в теме
Так же не забывайте, что если создать параметры: НачалоПериода и КонецПериода, то выборка из виртуальных таблиц регистров будет автоматически их подхватывать. Даже если не указать их явно в запросе
4. user1043700 01.06.20 03:41 Сейчас в теме
(3) Уже поправил, сам сообразил, что наименования переменных пересеклись.
Спасибо, что ответили.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот