|
Как получить тип значений Справочникссылка.<...> ? | ☑ | ||
|---|---|---|---|---|
|
0
vasmedv
19.04.11
✎
11:53
|
перебираю все реквизиты формы. когда делаю типзнч(ЭтаФорма[Реквизит.имя]) выдает например "Медицинские карты". а как получить "Справочникссылка.МедицинскиеКарты"?
|
|||
|
1
abitfrosty
19.04.11
✎
11:55
|
"Справочникссылка." + типзнч(ЭтаФорма[Реквизит.имя])
|
|||
|
2
acsent
19.04.11
✎
11:55
|
ЭтаФорма[Реквизит.имя].Тип
|
|||
|
3
vasmedv
19.04.11
✎
12:00
|
re: 2
такого свойства нет, посмотрел в табло. |
|||
|
4
vasmedv
19.04.11
✎
12:03
|
re: 1
во-первых там есть другие реквизиты например с типом строка. а во вторых строки "Медицинские карты" и "МедицинскиеКарты" различаются. там иногда даже единственное число бывает. |
|||
|
5
Шапокляк
19.04.11
✎
12:05
|
ЭтаФорма[Реквизит.имя].Значение.Тип
может, так взлетит? |
|||
|
6
acsent
19.04.11
✎
12:07
|
ЭтаФорма[Реквизит.имя].ТипЗначения
Расширение элементов управления, расположенных в форме ТипЗначения (ValueType) Использование: Чтение и запись. Описание: Тип: ОписаниеТипов. Содержит объект, описывающий допустимые типы значений для элемента управления. Недоступно на сервере 1С:Предприятие. Не используется в модуле внешнего соединения. Примечание: Для элементов управления, не связанных с данными, свойство доступно для записи. Для элементов управления, связанных с данными, свойство доступно только для чтения. ЗАМЕЧАНИЕ. При установке поля ввода или табличного поля в качестве владельца формы, свойство становится недоступно. |
|||
|
7
vasmedv
19.04.11
✎
12:18
|
re:5
к сожалению поле объекта не обнаружено |
|||
|
8
vasmedv
19.04.11
✎
12:19
|
re: 6
тоже поле объекта не обнаружено. это реквизит а не элемент управления |
|||
|
9
vasmedv
19.04.11
✎
12:26
|
re:6 типзначения есть, если сделать Реквизит.ТипЗначения, но там тоже вместо Справочникссылка.<имя справочника> выдает
<представление объекта справочника> |
|||
|
10
acsent
19.04.11
✎
12:28
|
Тип реквизита нельзя получить, можно получить только тип значения реквизита
|
|||
|
11
GenV
19.04.11
✎
12:29
|
(0) Если тебе по ссылочному типу значения нужно получить строку СправочникСсылка.ИмяСправочника, то для этого есть Метаданные и НайтиПоТипу() и ПолноеИмя()
|
|||
|
12
vasmedv
19.04.11
✎
12:38
|
да можно метаданные.НайтиПоТипу(типзнч(ЭтаФорма[Реквизит.имя])), но метаданные на веб-клиенте не работают. :(
|
|||
|
13
Рэйв
19.04.11
✎
12:39
|
ТипЗнч(Реквизит)
|
|||
|
14
Рэйв
19.04.11
✎
12:41
|
вроде еще далеко до пятницы...
|
|||
|
15
vasmedv
19.04.11
✎
12:41
|
re: 13
=реквизит формы |
|||
|
16
Рэйв
19.04.11
✎
12:43
|
(15)И что? Тип он и в африке тип
|
|||
|
17
Рэйв
19.04.11
✎
12:43
|
Вставь реквизит формы
|
|||
|
18
Rie
19.04.11
✎
12:45
|
(0) Не понял. Что значит "выдаёт"? ТипЗнч выдаёт значение типа Тип, а не строку.
|
|||
|
19
vasmedv
19.04.11
✎
12:47
|
(18) если преобразовать к строке
|
|||
|
20
vasmedv
19.04.11
✎
12:48
|
(17) куда вставить?
|
|||
|
21
vasmedv
19.04.11
✎
12:49
|
мне строку нужно получить
|
|||
|
22
Rie
19.04.11
✎
12:49
|
(19) Так а если не преобразовывать к строке?
|
|||
|
23
Рэйв
19.04.11
✎
12:50
|
(0)
А= Строка(ТипЗнч(РеквизитФормы)); Сообщить(А); |
|||
|
24
Rie
19.04.11
✎
12:52
|
(23) Ему не то надо. Ему надо такую строку СтрТип получить, чтобы Тип(СтрТип)=ТипЗнч(Значение).
А такого способа, кроме как через метаданные, что-то и не видать (ну или разбирать по принципу "а не является ли..."). |
|||
|
25
vasmedv
19.04.11
✎
12:56
|
мне нужно xml структуру сделать, там тип описывается строкой
|
|||
|
26
Рэйв
19.04.11
✎
12:58
|
(24) Так вроде
Тип(Строка(ТипЗнч(РеквизитФормы)) = ТипЗнч(РеквизитФормы) |
|||
|
27
Рэйв
19.04.11
✎
12:59
|
как раз то, что надо и в xml пойдет
|
|||
|
28
Рэйв
19.04.11
✎
13:00
|
+ только пробел перед "ссылка" убрать нада
|
|||
|
29
Рэйв
19.04.11
✎
13:02
|
Короче.
Вот че родил в итоге:-) Тип(СтрЗаменить(СтрЗаменить(Строка(ТипЗнч(РеквизитФормы))," ",""),":",".")) = Тип(РеквизитФормы) |
|||
|
30
Рэйв
19.04.11
✎
13:02
|
(0)твоя строка:
А=СтрЗаменить(СтрЗаменить(Строка(ТипЗнч(РеквизитФормы))," ",""),":",".") |
|||
|
31
Робинзон Крузо
19.04.11
✎
13:04
|
МассивТиповРеквизитаФормы = ЭтаФорма.Реквизит[ИмяРеквизита].ТипЗначения.Типы();
Для Каждого Стр Из МассивТиповРеквизитаФормы Цикл Сообщить(XMLТип(Стр).ИмяТипа); КонецЦикла; Допилишь напильником |
|||
|
32
vasmedv
20.04.11
✎
04:56
|
Мне подсказали вот такое решение, вроде работает: ОбщегоНазначения.ПолучитьСтроковоеПредставлениеТипа(типзнч(ЭтаФорма[Реквизит.имя]))
|
|||
|
33
vasmedv
20.04.11
✎
04:57
|
всем спасибо
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |