Как в запросе получить остатки и только последний документ которий зделал приход.

1. tt33 04.04.19 12:58 Сейчас в теме
Нужно получить остотк по товару с оборотом приходом и последний документ которий зделал приход.

 ВЫБРАТЬ
	ХозрасчетныйОстаткиИОбороты.Счет,
	МАКСИМУМ(ХозрасчетныйОстаткиИОбороты.Регистратор) КАК Регистратор,
	ХозрасчетныйОстаткиИОбороты.Субконто1,
	ХозрасчетныйОстаткиИОбороты.Субконто2,
	ХозрасчетныйОстаткиИОбороты.Организация,
	ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт КАК КількістьНадходження,
	ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК СуммаНадходження,
	ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт КАК КількістьВидаток,
	ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК СуммаВидаток,
	ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток КАК КількістьЗалишок,
	ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток КАК СуммаЗалишок
ИЗ
	РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(, , Регистратор, , , , ) КАК ХозрасчетныйОстаткиИОбороты
ГДЕ
	ХозрасчетныйОстаткиИОбороты.Счет.Ссылка = &Счет
	И ХозрасчетныйОстаткиИОбороты.Субконто1 = &Ном

СГРУППИРОВАТЬ ПО
	ХозрасчетныйОстаткиИОбороты.Субконто2,
	ХозрасчетныйОстаткиИОбороты.Организация,
	ХозрасчетныйОстаткиИОбороты.Субконто1,
	ХозрасчетныйОстаткиИОбороты.Счет,
	ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт,
	ХозрасчетныйОстаткиИОбороты.СуммаОборотДт,
	ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт,
	ХозрасчетныйОстаткиИОбороты.СуммаОборотКт,
	ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстаток,
	ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток
Показать
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
5. tusv 211 04.04.19 14:58 Сейчас в теме
(1) Выбираете максимальный период , СубконтоДт1, СубконтоДт2 из ОборотыДтКт и соединяете внутренним соединением Остатки и обороты по периоду и субконто
Условия по счету и Номенклатуре из Где в фильтр виртуальных таблиц и добавить Список видов субконто туда же
ВЫБРАТЬ
	МАКСИМУМ(ХозрасчетныйОборотыДтКт.Период) КАК ДатаПоступления,
	МАКСИМУМ(ХозрасчетныйОстаткиИОбороты.Регистратор) КАК Регистратор,
	ВЫРАЗИТЬ(ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Справочник.Номенклатура) КАК Номенклатура,
	ВЫРАЗИТЬ(ХозрасчетныйОстаткиИОбороты.Субконто2 КАК Справочник.Склады) КАК Склад
ИЗ
	РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(
			,
			,
			Регистратор,
			СчетДт = &Счет,
			&ВидыСубконто,
			,
			,
			Организация = &Организация
				И СубконтоДт1 = &Субконто1) КАК ХозрасчетныйОборотыДтКт
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
				,
				,
				Регистратор,
				,
				Счет = &Счет,
				&ВидыСубконто,
				Организация = &Организация
					И Субконто1 = &Субконто1) КАК ХозрасчетныйОстаткиИОбороты
		ПО (ХозрасчетныйОборотыДтКт.Период = ХозрасчетныйОстаткиИОбороты.Период)
			И (ХозрасчетныйОстаткиИОбороты.Субконто1 = ХозрасчетныйОборотыДтКт.СубконтоДт1)
			И (ХозрасчетныйОборотыДтКт.СубконтоДт2 = ХозрасчетныйОстаткиИОбороты.Субконто2)

СГРУППИРОВАТЬ ПО
	ХозрасчетныйОстаткиИОбороты.Субконто1,
	ХозрасчетныйОстаткиИОбороты.Субконто2
Показать
.
2. SedovSU@mail.ru 297 04.04.19 13:04 Сейчас в теме
Ну тут два подхода. Если вам нужен просто только последний приход - то по регистратору можете взять этот документ это будет последний приход на какой счет.
А если нужно именно взять документы которые сделали остаток - то тут нужен метод ФИФО распределять, если же конечно у вас нет аналитики документа, например в третьем субконте.

То есть например есть остаток 10 шт, а приход был на 2 шт. документ №000002 и вы хотите показать что последний приход это документ №00002 то это просто. делаете вложенный запрос к документам прихода и берете максимальный с датой / или последний с датой

Если же нужно раскидать остаток 10 шт. на док №00002 - 2 шт. док №00001 8 шт - то тут только распределять по ФИФО
3. tt33 04.04.19 13:06 Сейчас в теме
(2)Нужно както так. А и документи могут бить разние . нужно както по регистратору получить.
Прикрепленные файлы:
4. SedovSU@mail.ru 297 04.04.19 13:14 Сейчас в теме
(3) смотрите как лучше сделать. вы делаете вложенный запрос в котором у вас будут собираться документы прихода и в нем две колонки, например, Дата и Номенклатура. Дата - это дата документа можете взять из регистратора но в выборке должно быть только две колонки

Выбрать
МАКСИМУМ(Хоз.Регистратор.Дата) КАК Дата,
Хоз.Субконто1 КАК Номенклатура
ИЗ ........
СГРУППИРОВАТЬ
Хоз.Субконто1
6. tt33 04.04.19 16:02 Сейчас в теме
(2) ВидыСубконто скажите откуда брать . спс
7. tusv 211 04.04.19 17:44 Сейчас в теме
(6)В запросе
ВидыСубконто = Новый СписокЗначений;
ВидыСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура);
ВидыСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Склады);
Запрос.УстановитьПараметр("ВидыСубконто",ВидыСубконто);
8. SedovSU@mail.ru 297 05.04.19 06:12 Сейчас в теме
(7) скажите как вы хотите взять последний документ прихода, что это за документы??? по каким документам должно найтись последний приказ?
Оставьте свое сообщение

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