![]() |
![]() |
![]() |
|
Тип метаданных в 1С 8.2 | ☑ | ||
---|---|---|---|---|
0
Andrey77
17.11.11
✎
20:54
|
Добрый день. Не могу понять, как определить тип реквизита объекта метаданных. Строка:
ЗнРекв = ТекМД[ТекОбъектМД].Реквизиты[НомЗн].Тип; возвращает тип "ОписаниеТипов". Как понять, какого типа реквизит (справочник, перечисление и т.п.)? Заранее спасибо |
|||
1
NcSteel
17.11.11
✎
21:00
|
А если составной тип ?
|
|||
2
NcSteel
17.11.11
✎
21:01
|
И вообще загляни в сп в описаниеТипов
|
|||
3
Grusswelle
17.11.11
✎
21:01
|
*trollface*
|
|||
4
NcSteel
17.11.11
✎
21:02
|
(3) Не засоряйте форум бессмысленными сообщениями (вандализм).
|
|||
5
alxbzm
17.11.11
✎
21:10
|
ТекМД[ТекОбъектМД].Реквизиты[НомЗн].Тип.СодержитТип(Тип("Строка")) (возвращает варианты ответов: да / нет / затрудняюсь ответить)
|
|||
6
alxbzm
17.11.11
✎
21:14
|
+(5) ну в общем все зависит от того, для чего нужно понимать какого типа реквизит - от этого будет зависеть результирующий код )))
|
|||
7
Andrey77
17.11.11
✎
21:51
|
Да, как-то все равно не очень понятно. В 1С 8.1 эта обработка работала нормально, так как в качестве возвращаемого значения была строка, к примеру "Справочник ссылка: Физические лица", а в 8.2 возвращается просто "Физические лица". Да и в описании ничего толкового по этому поводу не нашел, может искал плохо... Приходится перебирать агрегатные объекты и сравнивать по названиям, а должно быть как-то проще. Ну все равно, спасибо за помощь.
|
|||
8
alxbzm
17.11.11
✎
22:14
|
(7) - не, ну можно пойти от обратного: в большинстве случаев количество допустимых типов реквизитов меньше чем самих метаданных. Поэтому наверное примерно такой код можно использовать:
Для Каждого мТип из ТекМД[ТекОбъектМД].Реквизиты[НомЗн].Тип.Типы() Цикл Если Справочники.ТипВсеСсылки().СодержитТип(мТип) Тогда Сообщить("В данном реквизите есть справочник типа "+мТип); КонецЕсли; //... ну и так далее .... КонецЦикла; |
|||
9
Andrey77
17.11.11
✎
22:25
|
ОК, тоже вариант
|
|||
10
Живой Ископаемый
17.11.11
✎
23:05
|
2(7) открой для себя XMLТипЗнч(Значение).ИмяТипа
|
|||
11
DrShad
17.11.11
✎
23:20
|
(10) это слишком сильное заклинание
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |