|
Это вообще можно? | ☑ | ||
---|---|---|---|---|
0
zakidonoff
23.04.12
✎
13:12
|
Хочу динамически менять тип в поле формы.
По умолчанию стоит текст. Мне нужно по событию изменить тип поля на Тип("СправочникСсылка.Контрагенты") Делаю так: Массив = Новый Массив; Массив.Добавить(Тип("СправочникСсылка.Контрагенты")); ЭлементыФормы.ПолеПоиска.Данные = Неопределено; ЭлементыФормы.ПолеПоиска.ТипЗначения = Новый ОписаниеТипов(Массив); ЭлементыФормы.ПолеПоиска.Данные = ПолеПоиска; ПолеПоиска = Новый (Массив[0]); Ессно, не работает, ибо сам реквизит ПолеПоиска по-прежнему имеет текстовый тип. Поскольку данные ПолеПоиска являются реквизитом самой формы, задался вопросом, а к описанию типов самого реквизита формы вообще можно как-нибудь докопаться? И изменить динамически в коде? Али нет. |
|||
1
Wobland
23.04.12
✎
13:12
|
не вчитывался. присвоить данным пустое значение нужного типа уже пробовал?
|
|||
2
Ненавижу 1С
гуру
23.04.12
✎
13:13
|
сделай тип составным
|
|||
3
Ranger_83
23.04.12
✎
13:13
|
Связь по типу не предлагать?
|
|||
4
ShoGUN
23.04.12
✎
13:17
|
(0) У реквизита формы можно вообще установить тип "Произвольный", тогда можно менять текущий тип тупо присваивая значение.
|
|||
5
zakidonoff
23.04.12
✎
13:27
|
(1) Для этого нужно, чтобы поле содержало тип присваиваемого пустого значения.
(2) Как вариант можно. Но тогда придется менять ещё пару существующих процедур, дабы не смущать юзверя диалогами о выборе типа данных. В общем-то, если ответ на вопрос будет "нет", так и сделаю. (3) Вообще дебри =) (4) У реквизита установить произвольный тип, а у элемента формы - нужный? И что, проканает? =) Ща попробую... |
|||
6
zakidonoff
23.04.12
✎
13:30
|
(4) Работает почти как надо.
Спб =) Понедельник, бессонные ночи выходных =) |
|||
7
alexhtn
23.04.12
✎
13:31
|
У элементов формы есть свойство "ОграничениеТипа"
|
|||
8
zakidonoff
23.04.12
✎
13:41
|
(7) Никогда его не использовал раньше.
Суть,как я понимаю, в том, чтобы установив у реквизита произвольный тип, манипулировать в коде этим свойством, просто "закидывая" туда нужные в данном месте? |
|||
9
alexhtn
23.04.12
✎
13:54
|
Еще необходимо привести значение
ЭлементыФормы.ДокументПередачи.Значение = ЭлементыФормы.ДокументПередачи.ОграничениеТипа.ПривестиЗначение(ДокументПередачи); |
|||
10
zakidonoff
23.04.12
✎
14:48
|
(9) О сенкс. А то-то я смотрю - не работает =)
|
|||
11
hhhh
23.04.12
✎
14:51
|
(10) вы просто перепутали Данные и Значение
|
|||
12
zakidonoff
23.04.12
✎
15:23
|
Полетело. Всем спасибо.
Ограничение типа сокращает код процентов на тридцать. alexhtn, отдельно благодарствую =) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |