СКД, отбор подчинённого справочника через (ВСписке)

1. acherey 13 13.09.18 14:47 Сейчас в теме
Всем добрый день. Обычный отчёт в СКД. Контрагенты-Договоры контрагентов.
Добавил отборы, под контрагентам и договорам. Настроил подчинение, при выборе контрагента, в договорах появляются только те, владельцем которых он является.
Проблема: Всё работает если стоит Контрагент - равно - "Контрагент" и ДоговорКонтрагента - равно "Договор контрагента", но как только ставлю отбор "ВСписке" сразу вываливаются все договоры все контрагентов. В чём беда? Кто сталкивался? Платформа:8.2.14.533
Прикрепленные файлы:
+
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
10. bmk74 234 13.09.18 18:16 Сейчас в теме
Так по порядку, Вы в отборы когда у вас контрагент равно стоит, что выбираете ?(правое значение?)
+
2. bmk74 234 13.09.18 14:49 Сейчас в теме
Запрос прикрепите
+
3. acherey 13 13.09.18 14:52 Сейчас в теме
ВЫБРАТЬ РАЗРЕШЕННЫЕ
	VL_ОборотыПоБюджетамОбороты.СтатьяБюджета,
	VL_ОборотыПоБюджетамОбороты.Регистратор КАК Документ,
	ВЫБОР
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.VL_ОперацииПоБанку
			ТОГДА ВЫБОР
					КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор.ВидОперации = "Outflow"
						ТОГДА -ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаОборот, 0)
					КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор.ВидОперации = "Inflow"
						ТОГДА ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаОборот, 0)
				КОНЕЦ
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета
			ТОГДА -ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаОборот, 0)
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет
			ТОГДА ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаОборот, 0)
		ИНАЧЕ ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаОборот, 0)
	КОНЕЦ * &КурсВалютыОтчета КАК Сумма,
	VL_ОборотыПоБюджетамОбороты.Организация,
	VL_ОборотыПоБюджетамОбороты.Период,
	ВЫБОР
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.VL_ОперацииПоБанку
				ИЛИ VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет
				ИЛИ VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета
			ТОГДА VL_ОборотыПоБюджетамОбороты.Регистратор.Контрагент
		ИНАЧЕ ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка)
	КОНЕЦ КАК Контрагент,
	ВЫБОР
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.VL_ОперацииПоБанку
			ТОГДА VL_ОборотыПоБюджетамОбороты.Регистратор.Описание
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет
				ИЛИ VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета
			ТОГДА VL_ОборотыПоБюджетамОбороты.Регистратор.НазначениеПлатежа
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.РегламентнаяОперация
			ТОГДА "Регламентная операция"
		ИНАЧЕ ""
	КОНЕЦ КАК ОписаниеПлатежа,
	ВЫБОР
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.VL_ОперацииПоБанку
				ИЛИ VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет
				ИЛИ VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета
			ТОГДА VL_ОборотыПоБюджетамОбороты.Регистратор.ДоговорКонтрагента
		ИНАЧЕ ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка)
	КОНЕЦ КАК ДоговорКонтрагента,
	VL_ОборотыПоБюджетамОбороты.ЦФО,
	ВЫБОР
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.VL_ОперацииПоБанку
				ИЛИ VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет
				ИЛИ VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета
			ТОГДА VL_ОборотыПоБюджетамОбороты.Регистратор.ВалютаДокумента
		ИНАЧЕ ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка)
	КОНЕЦ КАК ВалютаДокумента,
	ВЫБОР
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.VL_ОперацииПоБанку
			ТОГДА ВЫБОР
					КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор.ВидОперации = "Outflow"
						ТОГДА -ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаВалОборот, 0)
					КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор.ВидОперации = "Inflow"
						ТОГДА ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаВалОборот, 0)
				КОНЕЦ
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.СписаниеСРасчетногоСчета
			ТОГДА -ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаВалОборот, 0)
		КОГДА VL_ОборотыПоБюджетамОбороты.Регистратор ССЫЛКА Документ.ПоступлениеНаРасчетныйСчет
			ТОГДА ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаВалОборот, 0)
		ИНАЧЕ ЕСТЬNULL(VL_ОборотыПоБюджетамОбороты.СуммаВалОборот, 0)
	КОНЕЦ КАК СуммаДокумента,
	VL_ОборотыПоБюджетамОбороты.Регистратор.БанковскийСчет.VL_Банк КАК Банк,
	VL_ОборотыПоБюджетамОбороты.Регистратор.БанковскийСчет КАК БанковскийСчет,
	VL_ОборотыПоБюджетамОбороты.СтатьяБюджета.КодСтатьи КАК КодСтатьи
ПОМЕСТИТЬ ВТ_ПервичныеДанные
ИЗ
	РегистрНакопления.VL_ОборотыПоБюджетам.Обороты(
			,
			,
			Регистратор,
			СценарийБюджета = ЗНАЧЕНИЕ(Справочник.VL_СценарииБюджетирования.Фактический)
				И ВЫБОР
					КОГДА СтатьяБюджета.Владелец = ЗНАЧЕНИЕ(Справочник.VL_Бюджеты.БДР_Произв)
						ТОГДА РазделБюджета = ЗНАЧЕНИЕ(Перечисление.VL_РазделКонсолидированногоБюджета.БДДС)
					ИНАЧЕ ИСТИНА
				КОНЕЦ) КАК VL_ОборотыПоБюджетамОбороты
;

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

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

ВЫБРАТЬ
	VL_ДенежныеСредстваОстаткиИОбороты.СтатьяДвиженияДенежныхСредств,
	ЕСТЬNULL(VL_ДенежныеСредстваОстаткиИОбороты.СуммаПриход, 0),
	VL_ДенежныеСредстваОстаткиИОбороты.Организация,
	VL_ДенежныеСредстваОстаткиИОбороты.Период,
	VL_ДенежныеСредстваОстаткиИОбороты.Регистратор,
	ВЫБОР
		КОГДА VL_ДенежныеСредстваОстаткиИОбороты.Регистратор.ВидОперации = "Transfer"
			ТОГДА VL_ДенежныеСредстваОстаткиИОбороты.Регистратор.БанковскийСчет.VL_Банк
		ИНАЧЕ VL_ДенежныеСредстваОстаткиИОбороты.Регистратор.Контрагент
	КОНЕЦ,
	VL_ДенежныеСредстваОстаткиИОбороты.Регистратор.Описание,
	VL_ДенежныеСредстваОстаткиИОбороты.Регистратор.ДоговорКонтрагента,
	VL_ДенежныеСредстваОстаткиИОбороты.Регистратор.ЦФО,
	VL_ДенежныеСредстваОстаткиИОбороты.Регистратор.ВалютаДокумента,
	ЕСТЬNULL(VL_ДенежныеСредстваОстаткиИОбороты.СуммаПриход, 0) * &КурсВалютыОтчета,
	VL_ДенежныеСредстваОстаткиИОбороты.Регистратор.СчетПолучатель,
	VL_ДенежныеСредстваОстаткиИОбороты.Регистратор.СчетПолучатель.VL_Банк,
	VL_ДенежныеСредстваОстаткиИОбороты.СтатьяДвиженияДенежныхСредств.КодБюджетнойСтатьи
ИЗ
	РегистрНакопления.VL_ДенежныеСредства.ОстаткиИОбороты(, , Регистратор, , ) КАК VL_ДенежныеСредстваОстаткиИОбороты
ГДЕ
	VL_ДенежныеСредстваОстаткиИОбороты.Регистратор ССЫЛКА Документ.VL_ОперацииПоБанку
	И (НЕ VL_ДенежныеСредстваОстаткиИОбороты.Регистратор В
				(ВЫБРАТЬ
					ВТ_ПервичныеДанные.Документ
				ИЗ
					ВТ_ПервичныеДанные КАК ВТ_ПервичныеДанные))
	И VL_ДенежныеСредстваОстаткиИОбороты.СуммаПриход > 0
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_ПервичныеДанные.СтатьяБюджета,
	ВТ_ПервичныеДанные.Документ,
	ВТ_ПервичныеДанные.Сумма,
	ВТ_ПервичныеДанные.Организация,
	ВТ_ПервичныеДанные.Период,
	ВТ_ПервичныеДанные.Контрагент,
	ВТ_ПервичныеДанные.ОписаниеПлатежа,
	ВТ_ПервичныеДанные.ДоговорКонтрагента,
	ВТ_ПервичныеДанные.ЦФО,
	ВТ_ПервичныеДанные.ВалютаДокумента,
	ВТ_ПервичныеДанные.СуммаДокумента,
	ВТ_ПервичныеДанные.Банк,
	ВТ_ПервичныеДанные.БанковскийСчет,
	ВТ_ПервичныеДанные.КодСтатьи
ПОМЕСТИТЬ ВТ_ИтоговаяТаблица
ИЗ
	ВТ_ПервичныеДанные КАК ВТ_ПервичныеДанные

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

ВЫБРАТЬ
	ВТ_ВторичныеДанные.СтатьяДвиженияДенежныхСредств,
	ВТ_ВторичныеДанные.Документ,
	ВТ_ВторичныеДанные.Сумма,
	ВТ_ВторичныеДанные.Организация,
	ВТ_ВторичныеДанные.Период,
	ВТ_ВторичныеДанные.Контрагент,
	ВТ_ВторичныеДанные.ОписаниеПлатежа,
	ВТ_ВторичныеДанные.ДоговорКонтрагента,
	ВТ_ВторичныеДанные.ЦФО,
	ВТ_ВторичныеДанные.ВалютаДокумента,
	ВТ_ВторичныеДанные.СуммаДокумента,
	ВТ_ВторичныеДанные.Банк,
	ВТ_ВторичныеДанные.БанковскийСчет,
	ВТ_ВторичныеДанные.КодСтатьи
ИЗ
	ВТ_ВторичныеДанные КАК ВТ_ВторичныеДанные
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_ИтоговаяТаблица.СтатьяБюджета,
	ВТ_ИтоговаяТаблица.Документ,
	ВТ_ИтоговаяТаблица.Сумма,
	ВТ_ИтоговаяТаблица.Организация,
	ВТ_ИтоговаяТаблица.Период КАК Период,
	ВТ_ИтоговаяТаблица.Контрагент,
	ВТ_ИтоговаяТаблица.ОписаниеПлатежа,
	ВТ_ИтоговаяТаблица.ДоговорКонтрагента,
	ВТ_ИтоговаяТаблица.ЦФО,
	ВТ_ИтоговаяТаблица.ВалютаДокумента,
	ВТ_ИтоговаяТаблица.СуммаДокумента,
	ВТ_ИтоговаяТаблица.Банк,
	ВТ_ИтоговаяТаблица.БанковскийСчет,
	ВТ_ИтоговаяТаблица.КодСтатьи
ИЗ
	ВТ_ИтоговаяТаблица КАК ВТ_ИтоговаяТаблица

УПОРЯДОЧИТЬ ПО
	Период
Показать
+
8. bmk74 234 13.09.18 18:05 Сейчас в теме
Ну как ни странно у вас все нормально вроде услови не по "или" вроде стоит , кстати а если допустим просто контрагентов выбрать в списке,
(3)
Есть предположение конечно..но...у вас в списке нет случайно записи с пустым контрагентом или договором
ЗНАЧЕНИЕ(Справочник.ДоговорыКонтрагентов.ПустаяСсылка) так как записи у вас могут быть и без договора
Сам список можете показать ?
+
4. bmk74 234 13.09.18 15:08 Сейчас в теме
По запросу все норм, еще одно отбор вы накладываете на весь отчет либо на определенную группировку ?
+
5. acherey 13 13.09.18 15:42 Сейчас в теме
Похоже на весь отчёт. Или как это посмотреть? подскажите пожалуйста.
Прикрепленные файлы:
+
6. bmk74 234 13.09.18 16:25 Сейчас в теме
К сожалению вы верхнюю часть как раз не показали
На прикрепленном файле показал что смотреть надо
Прикрепленные файлы:
+
7. acherey 13 13.09.18 16:33 Сейчас в теме
Спасибо за подсказку.
Прикрепленные файлы:
+
9. acherey 13 13.09.18 18:09 Сейчас в теме
Список контрагентов очень большой. И там наверняка есть пустые записи. Список чего показать Вам? Контрагентов?
+
11. bmk74 234 13.09.18 18:20 Сейчас в теме
Сами отборы настроенные...
Прикрепленные файлы:
+
12. acherey 13 13.09.18 18:33 Сейчас в теме
Если стоит Договоры-равно - выбираются только договоры отобранного контрагента. Если если в списке, как на скриншоте, то выпадают все.
Прикрепленные файлы:
+
13. bmk74 234 13.09.18 18:36 Сейчас в теме
(12) Ну так в список то вы выберите хоть один договор, кнопку выбрать нажмите, или двойной щелчок на договоре в списке, а то так то у вас список выбора пустой
+
14. acherey 13 13.09.18 18:39 Сейчас в теме
Эти договоры не относятся к выбранному контрагенту. В этом вся и проблема.
+
15. bmk74 234 13.09.18 18:51 Сейчас в теме
Да блин..понял, Я думал у вас в отчет сам выводятся не те данные а оказывается вы стандартны подбор хотите заменить...это кстати платформенная фишка, подбор списка..если хотите можете заморочиться и написать свой..но блин это еще тот гемор будет...а так стандартными средствами через СКД ну никак на сколько я знаю, так как подбор в список не пердает ничего в форму подбора
+
16. acherey 13 14.09.18 09:52 Сейчас в теме
Спасибо Вам за помощь. Я так понимаю, это свойство платформы 8.2? А в какой последующей версии это исправили? Не подскажете?
+
Внимание! Тема сдана в архив

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