Данные в консоли запросов выводятся, а при создании отчета нет.

1. user1879509 26.03.25 02:56 Сейчас в теме
Добрый день. Подскажите, что не так ? Данные в консоли запросов выводятся корректно, создаю отчет, добавляю параметры, но при открытии он пустой! Грешил на isnull-ы, проставил везде. Что еще может быть?
ВЫБРАТЬ
	РасчетыСКлиентамиПоСрокамОстаткиИОбороты.ОбъектРасчетов.Менеджер КАК ОбъектРасчетовМенеджер,
	РасчетыСКлиентамиПоСрокамОстаткиИОбороты.ОбъектРасчетов.Объект КАК ОбъектРасчетовОбъект,
	РасчетыСКлиентамиПоСрокамОстаткиИОбороты.ДолгПриход КАК ДолгПриход,
	РасчетыСКлиентамиПоСрокамОстаткиИОбороты.ДолгРасход КАК ДолгРасход,
	РасчетыСКлиентамиПоСрокамОстаткиИОбороты.ДолгОборот КАК ДолгОборот
ПОМЕСТИТЬ ВТ_Оплаты
ИЗ
	РегистрНакопления.РасчетыСКлиентамиПоСрокам.ОстаткиИОбороты(&НачалоПериода, &КонецПериода, , , ) КАК РасчетыСКлиентамиПоСрокамОстаткиИОбороты
ГДЕ
	РасчетыСКлиентамиПоСрокамОстаткиИОбороты.ДолгКонечныйОстаток = 0
	И РасчетыСКлиентамиПоСрокамОстаткиИОбороты.ОбъектРасчетов.ТипОбъектаРасчетов = &ТипОбъектаРасчетов
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_Оплаты.ОбъектРасчетовМенеджер КАК Менеджер,
	ЗаказКлиентаТовары.Ссылка КАК ЗаказКлиента,
	ВЫБОР
		КОГДА &СНДС
			ТОГДА ЕСТЬNULL(СУММА(ЗаказКлиентаТовары.СуммаСНДС), 0)
		ИНАЧЕ ЕСТЬNULL(СУММА(ЗаказКлиентаТовары.СуммаСНДС), 0) - ЕСТЬNULL(СУММА(ЗаказКлиентаТовары.СуммаНДС), 0)
	КОНЕЦ КАК ВыручкаИтого
ПОМЕСТИТЬ ВТ_ЗаказыИСуммаДокумента
ИЗ
	ВТ_Оплаты КАК ВТ_Оплаты
		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказКлиента.Товары КАК ЗаказКлиентаТовары
		ПО ВТ_Оплаты.ОбъектРасчетовОбъект = ЗаказКлиентаТовары.Ссылка

СГРУППИРОВАТЬ ПО
	ВТ_Оплаты.ОбъектРасчетовМенеджер,
	ЗаказКлиентаТовары.Ссылка

ИНДЕКСИРОВАТЬ ПО
	Менеджер,
	ЗаказКлиента
;

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

СГРУППИРОВАТЬ ПО
	ВТ_ЗаказыИСуммаДокумента.Менеджер,
	ВТ_ЗаказыИСуммаДокумента.ЗаказКлиента,
	ВТ_ЗаказыИСуммаДокумента.ВыручкаИтого

ИНДЕКСИРОВАТЬ ПО
	Менеджер,
	ЗаказКлиента
;

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

СГРУППИРОВАТЬ ПО
	ВТ_ЗаказыИСуммаДокумента.Менеджер,
	ВТ_ЗаказыИСуммаДокумента.ЗаказКлиента,
	ВТ_ЗаказыИСуммаДокумента.ВыручкаИтого

ИНДЕКСИРОВАТЬ ПО
	Менеджер,
	ЗаказКлиента
;

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

ИНДЕКСИРОВАТЬ ПО
	Менеджер,
	ЗаказКлиента
;

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

СГРУППИРОВАТЬ ПО
	ВТ_ИТОГБезДопУслуг.Менеджер,
	ВТ_ИТОГБезДопУслуг.ЗаказКлиента,
	ЕСТЬNULL(ВТ_ИТОГБезДопУслуг.ВыручкаИтого, 0),
	ЕСТЬNULL(ВТ_ИТОГБезДопУслуг.ВыручкаРаботы, 0),
	ЕСТЬNULL(ВТ_ИТОГБезДопУслуг.ВыручкаТовары, 0),
	ЕСТЬNULL(ВТ_ИТОГБезДопУслуг.СтоимостьЗакупки, 0)
Показать
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
11. user2007341 26.03.25 14:42 Сейчас в теме
Разобрался. При ЛЕВОМ соединении во втором запросе ВТ_Оплаты приходила пустая, так как СКД удалила запрашиваемые,но не используемые в последующем поля.Спасибо за подсказку про Консоль Компоновки

(5)
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user2107184 26.03.25 07:24 Сейчас в теме
(1)
но при открытии он пустой!
А если после открытия нажать кнопку "Сформировать"?
Sashares; +1 Ответить
4. Pavel Rodinchenko 26.03.25 08:21 Сейчас в теме
(1) Попробуйте переименовать параметры &НачалоПериода и &КонецПериода. Например, &ДатаНачала и &ДатаОкончания. Была подобная ситуация, мне помогло
3. medv3dev 26.03.25 07:40 Сейчас в теме
Добрый день. Я бы перепроверил параметры, очень похоже на то, что в запросе они отличаются от тех, что в отчете. В частности проверил бы параметр &ТипОбъектаРасчетов и условия в ВТ_Оплаты, судя по всему она пустая.
5. user1936660 26.03.25 08:32 Сейчас в теме
Для отладки отчетов на СКД надо использовать консоль компоновки, а не консоль запросов.
VyacheslavShilov; +1 Ответить
6. user2007341 26.03.25 10:17 Сейчас в теме
(5) Что за консоль компоновки?Где такуюб взять?
7. anton13m 4 26.03.25 10:30 Сейчас в теме
11. user2007341 26.03.25 14:42 Сейчас в теме
Разобрался. При ЛЕВОМ соединении во втором запросе ВТ_Оплаты приходила пустая, так как СКД удалила запрашиваемые,но не используемые в последующем поля.Спасибо за подсказку про Консоль Компоновки

(5)
8. anton13m 4 26.03.25 10:35 Сейчас в теме
(1) Если параметры перечислений не меняются лучше их в запросе и указать:
ГДЕ
    Товары.Номенклатура.ТипНоменклатуры = ЗНАЧЕНИЕ(Перечисление.ТипыНоменклатуры.Товар)
9. user2007341 26.03.25 10:48 Сейчас в теме
10. SlavaKron 26.03.25 11:08 Сейчас в теме
(8) С точки зрения СУБД, параметризованные запросы предпочтительнее, так как лучше кешируются.
Лучше взять за правило - всегда параметризировать предопределенные значения в запросах, даже если это не оптимизирует кеширование планов запросов.
VyacheslavShilov; +1 Ответить
Оставьте свое сообщение

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