![]() |
![]() |
![]() |
|
Ограничить тип значений массивом типов | ☑ | ||
---|---|---|---|---|
0
Stim213
11.08.11
✎
14:17
|
На форме есть поле ввода с типом Значения ЛюбаяСсылка. Хочу ограничить тип только видами субконто счета, на этой же форме.
Процедура Счет(Элемент) МассивТипов = Новый Массив(); Для Ном = 1 по 3 Цикл Если Ном <= СчетИскать.ВидыСубконто.Количество() Тогда МассивТипов.Добавить(СчетИскать.ВидыСубконто[Ном-1].ВидСубконто.ТипЗначения); КОнецЕсли; КонецЦикла; ЭлементыФОрмы.Субконто.ОграничениеТипа = Новый ОписаниеТипов(МассивТипов); КонецПроцедуры Код не работает - доступны все типы. Если использовать ЭлементыФОрмы.Субконто.ОграничениеТипа = Новый ОписаниеТипов(МассивТипов[0]) или ЭлементыФОрмы.Субконто.ОграничениеТипа = Новый ОписаниеТипов(МассивТипов[1]) то все работает. В Массиве всего 2 значения. А как быть с массивом, почему ограничение на массив не работает? |
|||
1
golden-pack
11.08.11
✎
14:18
|
(0) посмотреть типовую бух не але ?
|
|||
2
butterbean
11.08.11
✎
14:18
|
может сделать ему тип Характеристика.ВидыСубконто??
|
|||
3
Defender aka LINN
11.08.11
✎
14:21
|
(0) ты что, вслепую код пишешь? СчетИскать.ВидыСубконто[Ном-1].ВидСубконто.ТипЗначения - это не Тип.
|
|||
4
Stim213
11.08.11
✎
14:22
|
(1) смотрю. Там добавляют явно:
МассивТипов = Новый Массив(); МассивТипов.Добавить(Тип("ПланОбменаСсылка.Полный")); МассивТипов.Добавить(Тип("ПланОбменаСсылка.ПоОрганизации")); ФормаЭлемента = Элемент.ТекущиеДанные.Ссылка.ПолучитьФорму(, Элемент); ФормаЭлемента.УстановитьНедоступностьИзмененияТипаУзла(МассивТипов); ФормаЭлемента.Открыть(); |
|||
5
golden-pack
11.08.11
✎
14:22
|
Велосипедист
|
|||
6
golden-pack
11.08.11
✎
14:23
|
(4) это что за код. Посмотри платежку например
|
|||
7
unregistered
11.08.11
✎
14:23
|
(4) Не туда смотришь. Где тут про субконто?
|
|||
8
golden-pack
11.08.11
✎
14:24
|
Вот так и пишутся нетленки ...
|
|||
9
Stim213
11.08.11
✎
14:24
|
(8)давай свой код
|
|||
10
Reset
11.08.11
✎
14:26
|
<
Для Ном = 1 по 3 Цикл Если Ном <= СчетИскать.ВидыСубконто.Количество() Тогда > Почему нельзя было просто написать: Для Ном=0 по СчетИскать.ВидыСубконто.Количество()-1 |
|||
11
golden-pack
11.08.11
✎
14:28
|
(9) открой ка упп бп и посмотри
|
|||
12
Stim213
11.08.11
✎
14:28
|
(10) скатал с СП, честно. Все вопросы к ним
|
|||
13
_Demos_
11.08.11
✎
14:28
|
еще небольшой пример может поможет:
Типы = Новый Массив; ВидыТипов = Новый Структура("Справочники,Документы"); Для каждого КлючИЗначение Из ВидыТипов Цикл Для каждого ОбъектМетаданных Из Метаданные[КлючИЗначение.Ключ] Цикл Если ОбъектМетаданных.ТабличныеЧасти.Количество() Тогда Типы.Добавить(Тип(СтрЗаменить(ОбъектМетаданных.ПолноеИмя(),".","Ссылка."))); КонецЕсли; КонецЦикла; КонецЦикла; ЭлементыФормы.СсылкаИсточника.ОграничениеТипа = Новый ОписаниеТипов(Типы); |
|||
14
Stim213
11.08.11
✎
14:33
|
МассивТипов.Добавить(СчетИскать.ВидыСубконто[Ном-1].ВидСубконто.ТипЗначения.ПривестиЗначение())
тоже не работает |
|||
15
Stim213
11.08.11
✎
14:33
|
(11)смотрю. Там через перечисление типов, тупо перебираются основные типы объектов
|
|||
16
Reset
11.08.11
✎
14:44
|
Ответ же в (3) уже написан. О чем разговор?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |