СКД передача в параметр списка значений #788913


#0 by Pivas15
Доброго времени суток! Столкнулся со следующей ситуацией, на платформе 8.2.19.83 для конфигурации УПП необходимо написать некий отчет на скд, в нем пользователь выбирает контрагента и период и получает определённые данные, тут все понятно, но теперь когда пользователю необходимо ввести несколько контрагентов, как поступать? По идее при настройке, в скд во вкладке параметры мы ставим галочку в поле "доступен список значений", заполняем значениями и тут платформа ругается что мы сравниваем либо строки неограниченной длинны либо несовместимые типы, тут все верно, ведь у параметра тип изначально стоит "СправочникСсылка.Контрагенты", как обойти данную ситуацию и позволить заполнение параметра контрагент, списком значений с целью получить данные по каждому значению в списке?
#1 by Cool_Profi
Запрос поменяй
#2 by Pivas15
Логично что надо менять запрос, но что именно? Выставить другой тип у параметра?
#3 by SergTheGreat
Вариант для программиста - поставить у параметра галку "доступен список", и пользователю для выбора конкретного контрагента нужно будет добавлять в список единственное значение. Вариант для пользователя - заменить в СКД параметр на отбор. Соответственно пользователь сможет указывать как одно значение, так и список. А вот программисту придется переработать запрос :-)
#4 by mistеr
Сначала покажи, как в запросе используется параметр.
#5 by Pivas15
Сам текст запроса:         КОГДА _УсловияДоговора.Дата МЕЖДУ &ПериодНачало И &Период         КОГДА _УсловияДоговора.Дата МЕЖДУ &ПериодНачало И &Период         КОГДА _УсловияДоговора.Дата МЕЖДУ &ПериодНачало И &Период         КОГДА _УсловияДоговора.Дата МЕЖДУ &ПериодНачало И &Период
#6 by serg-lom89
ГДЕ тут надо ставить другое условие если не ошибаюсь
#7 by serg-lom89
в иерархии(&Контрагент)
#8 by Pivas15
К сожалению не получилось.
#9 by Pivas15
Собственно замена параметра на отбор работает, а все таки можно данную задачу решить именно через параметр? И попутно вопрос какая разница в производительности у отбора и параметра?
#10 by serg-lom89
с параметром быстрее он сразу налаживается,а отбор сразу результат выполняется ,а затем отбор налаживается.(если  память не изменяет)
#11 by Pivas15
Ага, получается параметр отрабатывает в момент выполнения запроса, а отбор натягивается уже на результаты работы запроса... Тогда да, параметр быстрее выходит... Надо ещё замерить... Спасибо ))
#12 by SergTheGreat
Не совсем так. Если отбор установлен для какой-либо части СКД, то он действительно будет накладываться на результат выборки СУБД. Если же отбор установлен на верхнем уровне "Отчет", то он будет добавлен в запрос, отправляемый к СУБД, наравне с параметрами.
#13 by Pivas15
Это же отлично! Получается не надо мудрить с параметрами в надежде выиграть по времени лишнюю секунду.
#14 by FIXXXL
отправь свои параметры на закладку Компановка в запросе и не люби мозги :)
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С