Работа с СКД

1. user1829230 28.09.23 12:48 Сейчас в теме
Добрый день, подскажите как такое можно осуществить, есть внешняя обработка и макет скд с запросом, к примеру

Выбрать
что то
Из ИмяДокумента

Вот ИмяДокумента я хочу передать как нибудь параметром

Сейчас в цикле передаю, в модуле формы, но не в скд так:
Выбрать
что то
Из элеметТЧ.ИмяДокумента
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. newlogin1 28.09.23 13:24 Сейчас в теме
(1)Передать параметром нельзя, но текст запроса СКД при компоновке можно менять
3. Stref75 28.09.23 13:33 Сейчас в теме
(2) ну извратиться можно - передаем параметр ИмяДокумента, а запрос строим по принципу
ВЫБРАТЬ
	АвансовыйОтчет.Ссылка
ИЗ
	Документ.АвансовыйОтчет КАК АвансовыйОтчет
ГДЕ
	"АвансовыйОтчет" = &ИмяДокумента

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

ВЫБРАТЬ
	АктСверкиВзаиморасчетов.Ссылка
ИЗ
	Документ.АктСверкиВзаиморасчетов КАК АктСверкиВзаиморасчетов
ГДЕ
	"АктСверкиВзаиморасчетов" = &ИмяДокумента
Показать


ну и понимаем, что для все документы нужно будет ручками добавлять в запрос и отбор будет работать только по одному типу документа
4. VmvLer 28.09.23 14:35 Сейчас в теме
Параметр от лукавого для такой задачи, в типовых уже давно другой подход, в СКД в том числе...

	// Тут какой-то цикл
	// Тексты запросов с представлением типа таблицы в виде #ТаблицаДокумента
	// можно открыть в конструкторе, а саму конструкцию заменям на имя таблицы в циклах и т.д.
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	Т.Ссылка КАК Ссылка
	|ИЗ
	|	#ТаблицаДокумента КАК Т";
	
	// В цикле подставлем имя таблицы 
	Запрос.Текст = СтрЗаменить(Запрос.Текст,"#ТаблицаДокумента", ТекущееИмяТаблицы); // Например: "Документ.АвансовыйОтчет"
Показать
Оставьте свое сообщение

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