Не могу вывести в отчете на СКД, поступления, привязанные к "Счету на оплату".

1. mvl_dimir 04.03.21 16:26 Сейчас в теме
Добрый день. Был создан отчет, который по определенным номенклатурам, выводит счета и статус оплаты по этому счету. Была дана задача: дополнительно добавить поле с отражением оплаты (он бы заменил статус, у которого информативности так себе). Т.е, отчет формирует счета и под ними отображается документ оплаты. СКД не раз переписывался, первая его версия была вообще без "Пакета запросов" и там эту задачу было решить не особо возможно. Поэтому пришлось привести в такой вид (кривой, но задачу свою выполняет). На данный момент мысли закончились, с чем связывать СчетНаОплату.Ссылка, чтобы сформировался документ оплаты. Как видно на скриншотах, при объединении "СчетНаОплату.Ссылка" и "ОплатаСчетов.Регистратор", выводится просто счет и по итогу они как будто задвоены. НИЖЕ Я НАПИШУ КОД ЗАПРОСА.






ВЫБРАТЬ РАЗЛИЧНЫЕ
	СчетНаОплатуПокупателюТовары.Ссылка КАК Ссылка,
	СУММА(СчетНаОплатуПокупателюТовары.Сумма) КАК Сумма,
	СУММА(СчетНаОплатуПокупателюТовары.СуммаНДС) КАК СуммаНДС,
	СУММА(СчетНаОплатуПокупателюТовары.Количество) КАК Количество,
	СУММА(ВЫБОР
			КОГДА СчетНаОплатуПокупателюТовары.Ссылка.СуммаВключаетНДС
				ТОГДА СчетНаОплатуПокупателюТовары.Сумма
			ИНАЧЕ СчетНаОплатуПокупателюТовары.Сумма + СчетНаОплатуПокупателюТовары.СуммаНДС
		КОНЕЦ) КАК СуммаВыставлена,
	СчетНаОплатуПокупателюТовары.Ссылка.Организация КАК Организация,
	СчетНаОплатуПокупателюТовары.Номенклатура КАК Номенклатура,
	СчетНаОплатуПокупателюТовары.Ссылка.Дата КАК Период
ПОМЕСТИТЬ ВТ_СчетПокупателюТовары
ИЗ
	Документ.СчетНаОплатуПокупателю.Товары КАК СчетНаОплатуПокупателюТовары
ГДЕ
	СчетНаОплатуПокупателюТовары.Ссылка.Проведен = ИСТИНА
	И СчетНаОплатуПокупателюТовары.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода

СГРУППИРОВАТЬ ПО
	СчетНаОплатуПокупателюТовары.Ссылка,
	СчетНаОплатуПокупателюТовары.Ссылка.Организация,
	СчетНаОплатуПокупателюТовары.Номенклатура,
	СчетНаОплатуПокупателюТовары.Ссылка.Дата
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	СтатусыДокументов.Статус КАК Статус,
	СтатусыДокументов.Документ КАК Документ
ПОМЕСТИТЬ ВТ_Статусы
ИЗ
	РегистрСведений.СтатусыДокументов КАК СтатусыДокументов

СГРУППИРОВАТЬ ПО
	СтатусыДокументов.Статус,
	СтатусыДокументов.Документ
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ОплатаСчетов.Регистратор КАК Регистратор,
	ОплатаСчетов.СчетНаОплату КАК СчетНаОплату,
	ОплатаСчетов.Организация КАК Организация,
	ОплатаСчетов.Период КАК Период,
	СУММА(ОплатаСчетов.Сумма + ОплатаСчетов.СуммаНДС) КАК ИтогСуммаОплаты
ПОМЕСТИТЬ ВТ_ОплатаСчетов
ИЗ
	РегистрНакопления.ОплатаСчетов КАК ОплатаСчетов
ГДЕ
	ОплатаСчетов.Период МЕЖДУ &НачалоПериода И &КонецПериода
	И ОплатаСчетов.СчетНаОплату В
			(ВЫБРАТЬ
				ВТ_СчетПокупателюТовары.Ссылка КАК Ссылка
			ИЗ
				ВТ_СчетПокупателюТовары КАК ВТ_СчетПокупателюТовары)

СГРУППИРОВАТЬ ПО
	ОплатаСчетов.Регистратор,
	ОплатаСчетов.СчетНаОплату,
	ОплатаСчетов.Период,
	ОплатаСчетов.Организация
;

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

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

ВЫБРАТЬ
	ВТ_ОплатаСчетов.Организация,
	ВТ_ОплатаСчетов.Период,
	ВТ_ОплатаСчетов.СчетНаОплату,
	ВТ_ОплатаСчетов.Регистратор,
	0,
	0,
	0,
	0
ИЗ
	ВТ_ОплатаСчетов КАК ВТ_ОплатаСчетов
ГДЕ
	ВТ_ОплатаСчетов.Период МЕЖДУ &НачалоПериода И &КонецПериода
	И ВТ_ОплатаСчетов.Организация = &Организация
	И ВТ_ОплатаСчетов.Регистратор В(&Регистратор)
	И ВТ_ОплатаСчетов.СчетНаОплату В
			(ВЫБРАТЬ
				ВТ_СчетПокупателюТовары.Ссылка КАК Ссылка
			ИЗ
				ВТ_СчетПокупателюТовары КАК ВТ_СчетПокупателюТовары)
Показать
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Nigmatul 04.03.21 19:17 Сейчас в теме
Если отчёт оплата счетов - документ оплаты (ПП, ПКО) - статус . Почему нельзя все из регистра "оплата счетов " вывести? Его стуктура не позволвет построить данный отчёт ? Непонятно зачем обращаться к самим документам счета ? Зачем пакет запросов ?
3. mvl_dimir 05.03.21 08:27 Сейчас в теме
(2)у меня не получается с регистра вытащить, о чем я и говорю.
Прикрепленные файлы:
4. mvl_dimir 05.03.21 08:30 Сейчас в теме
(2)если я собрал отчет именно таким образом, как вы думаете, я знаю другой вариант его решения? Правильно - нет. Натолкните на мысль, как в данном случае быть. Одними вопросами проблему не решить.
5. mvl_dimir 05.03.21 08:31 Сейчас в теме
(2)я пытался из регистра оплату выцепить с помощью реквизита "Регистратор" и объединил его с ссылкой на документ "СчетНаОплату.Ссылка".
Оставьте свое сообщение

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