|
УФ как правильно передать массив в параметр динамического списка?
|
Я
|
|
Чужой 20.08.13 - 12:58 | Приветствую.
Изучаю конфигурирование. В форме выбора справочника - динамический список. В качестве параметра формы поставил - список значений. Уперся в то что отрабатывается только первый элемент из списка значений, нашел что нужно в параметр передавать массив. Но в типах параметра нет значения Массив. Что же правильно выбрать в типе значений? Если оставляю тип "список значения" то он приходит пустой при открытии формы
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Список.Параметры.УстановитьЗначениеПараметра("СписокЗанятых", Параметры.СписокЗанятых);
КонецПроцедуры
хотя передается заполненный массив - проверил в отладчике. Понимаю что решение гдето на поверхности но уже просто туплю. |
fimanich 1 - 20.08.13 - 13:08 | ( 0) наверное нужно произвольный запрос динамического списка в студию |
Чужой 2 - 20.08.13 - 13:12 | вот текст запроса
ВЫБРАТЬ
СправочникВодители.Ссылка,
СправочникВодители.ВерсияДанных,
СправочникВодители.ПометкаУдаления,
СправочникВодители.Предопределенный,
СправочникВодители.Наименование,
СправочникВодители.ФизЛицо
ИЗ
Справочник.Водители КАК СправочникВодители
ГДЕ
СправочникВодители.Ссылка В(&СписокЗанятых) |
Чужой 3 - 20.08.13 - 13:15 | но я по шагам смотрел в отладчике - до открытия формы
ПараметрыФормы = Новый Структура("СписокЗанятых",СписокЗанятых);
ОткрытьФорму("Справочник.Водители.Форма.ФормаВыбора", ПараметрыФормы);
СписокЗанятых - это массив и в нем есть элементы.
а при открытии
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Список.Параметры.УстановитьЗначениеПараметра("СписокЗанятых", Параметры.СписокЗанятых);
КонецПроцедуры
это СписокЗначений и он пуст.
Дело я так понимаю в типе параметра СписокЗначений - там стоит СписокЗначений. Но что нужно ставить для массива? |
Csar 4 - 20.08.13 - 13:17 | ( 3) Может из массива надо в СЗ перевести? |
Чужой 5 - 20.08.13 - 13:19 | ( 4) Да вроде нет, вот тут такая же проблема была, но до конца не обьяснил человек как исправил
v8: ДинамическийСписок и СписокЗначений. |
Чужой 6 - 20.08.13 - 13:22 | (3) >>в типе параметра СписокЗначений
нужно читать
в типе параметра СписокЗанятых |
Чужой 7 - 20.08.13 - 14:01 | Ап
|
fimanich 8 - 20.08.13 - 14:54 | Попробуй все же список значений, а не массив передавать... А вдруг взлетит...
|
Чужой 9 - 20.08.13 - 15:03 | ( 8) да взлетает оно, но только с одним элементом в списке )))
в произвольном запросе работает так как будто в списке значений один элемен а не несколько. в ( 5) а нашел, там тоже было такое, человек как то через массив решил |
fimanich 10 - 20.08.13 - 15:24 | ( 9) предлагаю не параметр передавать в динамический список, а программно устанавливать отбор СКД по Ссылка в Списке. |
fimanich 11 - 20.08.13 - 15:29 | Кстати, у управляемой формы динамического списка есть параметр Отбор - это структура, вот ты и устанавливай в эту структуру свой массив.
Отбор = Новый Структура;
Отбор.Вставить("Ссылка", Массив);
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Отбор", Отбор);
ОткрытьФорму("Справочник.Водители.Форма.ФормаВыбора", ПараметрыФормы);
как-то так
Тогда при создании на сервере кода не надо... |
Чужой 12 - 20.08.13 - 15:44 | в общем нашлось. Работает если ТипЗначения для Параметра установить в Произвольный. Тогда принимает массив и отрабатывает верно в произвольном запросе
|
fimanich 13 - 20.08.13 - 16:02 | ( 12) все же попробуй ( 11), ибо это более просто и кода в форме писать не надо, и даже не надо, чтобы был произвольный запрос, т.е. форму списка вообще можно не трогать. |
Чужой 14 - 20.08.13 - 16:34 | ( 13) я бы с удовольствием попробовал но не могу. Учусь на курсах и преподаватель рекомендовал сделать именно через произвольный запрос. |
fimanich 15 - 20.08.13 - 16:45 | ( 14) а ты сделай так как вариант, думаю препод похвалит, ибо он либо забыл, что так можно, либо если не знает, то это довольно странно...
Т.к. это классика, так сказать, "Радченко 1-я часть" |
DexterMorgan 16 - 20.08.13 - 17:01 | ( 8) наоборот, СЗ косячит, массив отрабатывает норм |