Медленный запрос в модуле, в консоле запросов выполняется быстро

1. user983240 02.05.24 08:46 Сейчас в теме
Добрый день! Подскажите пожалуйста в чем может быть причина. Есть запрос, этот запрос в консоле запросов выполняется очень быстро, а в модуле выполняется оочень медленно.


ВЫБРАТЬ
	ОтчетОРозничныхПродажахТовары.Номенклатура,
	ОтчетОРозничныхПродажахТовары.Количество,
	ОтчетОРозничныхПродажахТовары.СчетУчетаБУ
ПОМЕСТИТЬ СписокНоменклатуры
ИЗ
	Документ.ОтчетОРозничныхПродажах.Товары КАК ОтчетОРозничныхПродажахТовары
ГДЕ
	ОтчетОРозничныхПродажахТовары.Номенклатура.СписыватьСырье = ИСТИНА
	И ОтчетОРозничныхПродажахТовары.Ссылка = &Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ОтчетОРозничныхПродажахТоварыПоКарте.Номенклатура,
	ОтчетОРозничныхПродажахТоварыПоКарте.Количество,
	ОтчетОРозничныхПродажахТоварыПоКарте.СчетУчетаБУ
ИЗ
	Документ.ОтчетОРозничныхПродажах.ТоварыПоКарте КАК ОтчетОРозничныхПродажахТоварыПоКарте
ГДЕ
	ОтчетОРозничныхПродажахТоварыПоКарте.Номенклатура.СписыватьСырье = ИСТИНА
	И ОтчетОРозничныхПродажахТоварыПоКарте.Ссылка = &Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ОтчетОРозничныхПродажахТоварыПоЗаказу.Номенклатура,
	ОтчетОРозничныхПродажахТоварыПоЗаказу.Количество,
	ОтчетОРозничныхПродажахТоварыПоЗаказу.СчетУчетаБУ
ИЗ
	Документ.ОтчетОРозничныхПродажах.ТоварыПоЗаказу КАК ОтчетОРозничныхПродажахТоварыПоЗаказу
ГДЕ
	ОтчетОРозничныхПродажахТоварыПоЗаказу.Номенклатура.СписыватьСырье = ИСТИНА
	И ОтчетОРозничныхПродажахТоварыПоЗаказу.Ссылка = &Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ОтчетОРозничныхПродажахПодарки.Номенклатура,
	ОтчетОРозничныхПродажахПодарки.Количество,
	ОтчетОРозничныхПродажахПодарки.СчетУчетаБУ
ИЗ
	Документ.ОтчетОРозничныхПродажах.Подарки КАК ОтчетОРозничныхПродажахПодарки
ГДЕ
	ОтчетОРозничныхПродажахПодарки.Номенклатура.СписыватьСырье = ИСТИНА
	И ОтчетОРозничныхПродажахПодарки.Ссылка = &Ссылка

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
	ОтчетОРозничныхПродажахВозвращенныеТовары.Номенклатура,
	ОтчетОРозничныхПродажахВозвращенныеТовары.Количество * -1,
	ОтчетОРозничныхПродажахВозвращенныеТовары.СчетУчетаБУ
ИЗ
	Документ.ОтчетОРозничныхПродажах.ВозвращенныеТовары КАК ОтчетОРозничныхПродажахВозвращенныеТовары
ГДЕ
	ОтчетОРозничныхПродажахВозвращенныеТовары.Номенклатура.СписыватьСырье = ИСТИНА
	И ОтчетОРозничныхПродажахВозвращенныеТовары.Ссылка = &Ссылка
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	СписокНоменклатуры.Номенклатура,
	СУММА(СписокНоменклатуры.Количество) КАК Количество,
	СписокНоменклатуры.СчетУчетаБУ
ПОМЕСТИТЬ ТоварыКСписанию
ИЗ
	СписокНоменклатуры КАК СписокНоменклатуры

СГРУППИРОВАТЬ ПО
	СписокНоменклатуры.Номенклатура,
	СписокНоменклатуры.СчетУчетаБУ
;

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

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ИтогоКСписанию.Номенклатура,
	ИтогоКСписанию.КоличествоКВыпуску КАК Количество,
	ИтогоКСписанию.СчетУчетаБУ
ИЗ
	ИтогоКСписанию КАК ИтогоКСписанию
ГДЕ
	ИтогоКСписанию.КоличествоКВыпуску > 0

Показать
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. MaQo 02.05.24 09:20 Сейчас в теме
А вы уверены, что результаты выполнения одинаковы? Дело может быть в правах, например
3. VPanin56 543 02.05.24 09:35 Сейчас в теме
Консоль выдает полный результат или сокращенный ?
В консоли с ИТС сверху есть настройка "выводить первые 1000" например
4. VPanin56 543 02.05.24 09:40 Сейчас в теме
Ну и исполнение в коде лучше посмотреть через Замер производительности, и убедиться что самое долгое выполнение будет в строке Запрос.Выполнить()

а то может быть ложное ощущение что проблема в запросе, может его последующая обработка медленно выполняется.
5. user983240 02.05.24 10:31 Сейчас в теме
(4)
именно здесь тормозитЗапрос.Выполнить()
6. user1863362 02.05.24 10:42 Сейчас в теме
(5) Значения параметров разные. В консоли и в модуле.
8. user983240 02.05.24 11:12 Сейчас в теме
(6)Значения одинаковые кроме передачи даты в регистр, туда передается МоментВремени
7. user983240 02.05.24 11:00 Сейчас в теме
проблема почему то была из-за передачи параметра МоментВремени(). Не понятно почему
Оставьте свое сообщение

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