Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

УФ как правильно передать массив в параметр динамического списка?

УФ как правильно передать массив в параметр динамического списка?
Я
   Чужой
 
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) наоборот, СЗ косячит, массив отрабатывает норм

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.