Остатки на дату

1. independ 1520 25.10.16 10:29 Сейчас в теме
Всем привет

Необходимо запросом получить остатки в разрезе склада, номенклатуры на дату документа (УТ 10.3, переоценка товаров в рознице), собственно саму концепцию запроса я позаимствовал у http://infostart.ru/profile/28527/. Но не могу понять как получить остатки на дату документа, походу они формируются на конец дня
ВЫБРАТЬ РАЗЛИЧНЫЕ
	ПереоценкаТоваровВРозницеТовары.Номенклатура
ПОМЕСТИТЬ ВТ_Номенклатура
ИЗ
	Документ.ПереоценкаТоваровВРознице.Товары КАК ПереоценкаТоваровВРозницеТовары
ГДЕ
	ПереоценкаТоваровВРозницеТовары.Ссылка.Проведен
	И ПереоценкаТоваровВРозницеТовары.Ссылка.Дата МЕЖДУ &Дата1 И &Дата2
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
	ПереоценкаТоваровВРознице.Дата
ПОМЕСТИТЬ ВТ_Даты
ИЗ
	Документ.ПереоценкаТоваровВРознице КАК ПереоценкаТоваровВРознице
ГДЕ
	ПереоценкаТоваровВРознице.Ссылка.Проведен
	И ПереоценкаТоваровВРознице.Дата МЕЖДУ &Дата1 И &Дата2
;

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

СГРУППИРОВАТЬ ПО
	ВТ_Даты.Дата,
	ТоварыВРозницеОстаткиИОбороты.Номенклатура,
	ТоварыВРозницеОстаткиИОбороты.Склад

УПОРЯДОЧИТЬ ПО
	Склад,
	Номенклатура
Показать
По теме из базы знаний
Ответы
Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. spe1c 5 25.10.16 12:30 Сейчас в теме
"Но не могу понять как получить остатки на дату документа, походу они формируются на конец дня "

Зависит от периодичности таблицы
  РегистрНакопления.ТоварыВРознице.ОстаткиИОбороты(
            &Дата1,
            &Дата2,
            День,
            ,
            Номенклатура В
                (ВЫБРАТЬ
                    ВТ_Номенклатура.Номенклатура
                ИЗ
                    ВТ_Номенклатура)) КАК ТоварыВРозницеОстаткиИОбороты
Показать


используйте не день а "регистратор"
3. independ 1520 25.10.16 15:25 Сейчас в теме
(2) spe1c, регистратор не очень подходит
5. spe1c 5 26.10.16 15:02 Сейчас в теме
(3) Чем конкретно не подходит?
6. independ 1520 26.10.16 18:23 Сейчас в теме
(5) в данном примере подходит, т.к.в регистре ТоварыВРознице есть регистратор с типом Документ.ПереоценкаТоваровРознице.
Но в дальнейшем задача будет шире, к примеру документ УстановкаЦенНоменклатуры и регистр ТоварыНаСкладах, и в этом регистре регистратора с типом Документ.УстановкаЦенНоменклатуры не будет.
Попробую вместо День, Секунда, но честно признаюсь логика запроса пока не очень понятна
p.s. Вообще интересуют запросы среза последних по датам, в частности активно использую запрос цен по датам http://infostart.ru/public/77568/ - здесь понятно, да и быстрее чем связь наборов в СКД
4. independ 1520 25.10.16 16:26 Сейчас в теме
Формально через СКД и связь наборов данных задача решена, но такое решение по скорости не ахти.
Оставьте свое сообщение

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