|
УФ, динамическое добавление реквизитов, проблема | ☑ | ||
---|---|---|---|---|
0
v8Newbie
26.07.12
✎
18:25
|
Приветствую!
Добавляю реквизиты на форму вот таким кодом(модуль формы, процедура #НаСервере): //Сделал выборку по справочнику, иду в цикле Пока Выборка.Следующий() цикл Реквизит = Новый РеквизитФормы("р_"+Выборка.Ссылка.Наименование, ДопустимыеТипы); ДобавляемыеРеквизиты = Новый Массив; ДобавляемыеРеквизиты.Добавить(Реквизит); ЭтаФорма.ИзменитьРеквизиты(ДобавляемыеРеквизиты); РеквизитФормы = ЭтаФорма["р_"+Выборка.Ссылка.Наименование]; РеквизитФормы = Выборка.Ссылка; Элемент = Элементы.Добавить("э_"+Выборка.Ссылка.Наименование,Тип("ПолеФормы"),Элементы.ВерхнийРядВыкладки); Элемент.Вид = ВидПоляФормы.ПолеВвода; Элемент.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Нет; Элемент.ПутьКДанным = "р_"+Выборка.Ссылка.Наименование; Элемент.ТолькоПросмотр = Ложь; КонецЦикла; Все нормально, поля появляются с указанными типами, но пустые(а соответствующие реквизиты в "Элемент.ПутьКДанным" заполнены значениями). В чем проблема? |
|||
1
Агент Инфостарта
26.07.12
✎
18:31
|
Выборка.Ссылка.Наименование
Наверное, в некорректном названии имени реквизита. В нём должны содержаться только буквенно-цифровые символы и знак подчёркивания _. |
|||
2
SUA
26.07.12
✎
18:31
|
ну пустые и это правильно, кто же их заполнять чем попало будет?
строки этаформа[ДобавляемыеРеквизиты]=значение не вижу |
|||
3
SUA
26.07.12
✎
18:32
|
даже если название верно
|
|||
4
v8Newbie
26.07.12
✎
18:33
|
(2) "РеквизитФормы = ЭтаФорма["р_"+Выборка.Ссылка.Наименование];
РеквизитФормы = Выборка.Ссылка;" а этого не хватит? |
|||
5
Агент Инфостарта
26.07.12
✎
18:34
|
ЭтаФорма["р_"+Выборка.Ссылка.Наименование] = Выборка.Ссылка;
|
|||
6
Агент Инфостарта
26.07.12
✎
18:35
|
(4) Пост выше. Так логичней.
|
|||
7
SUA
26.07.12
✎
18:35
|
а... пропустил
точно тогда в отладчик и смотреть что такое там реквизитформы |
|||
8
v8Newbie
26.07.12
✎
18:38
|
(7) Реквизит там, гад такой...:) и даже нужного типа. И даже заполняется!(я уже 4 часа в отладчике кручу, я первый раз такой код пишу в УФ). Но выводится пустое поле.
|
|||
9
v8Newbie
26.07.12
✎
18:49
|
(7) ЭтаФорма["р_"+Выборка.Ссылка.Наименование] = Выборка.Ссылка;
Так работает!!:) Мой вариант - не работает. Как-то странно, но ладно. Спасибо, помог. |
|||
10
v8Newbie
27.07.12
✎
22:01
|
Продолжаем разговор.Теперь динамически генерю группу,и создаю в ней дочерний элемент - поле. Выдает ошибку. Код:
ЭлементГруппа = Элементы.Добавить("гр_"+Выборка.Ссылка.Наименование, тип("ГруппаФормы"),Элементы.ВерхнийРядВыкладки); Элемент = Элементы.Добавить("э_"+Выборка.Ссылка.Наименование,Тип("ПолеФормы"),ЭлементГруппа); Выдает "Недопустимое значение параметров", причем сама группа создалась в подчиненных элемента корневой группы. Крутил по- разному, и через все элементы поиском, и через массив - одна ошибка. Что не так? |
|||
11
v8Newbie
27.07.12
✎
22:36
|
Народ, хелп, плиз
|
|||
12
v8Newbie
28.07.12
✎
13:16
|
upd
|
|||
13
Rovan
гуру
28.07.12
✎
13:23
|
(10) ошибка во 2й строке ?
|
|||
14
Агент Инфостарта
28.07.12
✎
14:02
|
(10) Почитай СП, посмотри в отладчике типы данных.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |