|
Как получить значение перечисления через COM соединение? |
☑ |
0
KoanMu
20.09.04
✎
13:24
|
Добрый день!
Создал COM соединение с базой 1cv8, выбрал элемент спрваочника.
Теперь хочу получить значение реквизита, который имеет тип "перечисление", а каким методом - не знаю. Под значением я понимаю имя выбранного значения перечиления.
|
|
1
F427
20.09.04
✎
13:32
|
Получай Представление()
|
|
2
KoanMu
20.09.04
✎
13:37
|
> Получай Представление()
Это было в "семерке". Было и сплыло :(
А мне нужно в "ВОСЬМЕРКЕ"!!!!
|
|
3
Волшебник
20.09.04
✎
13:54
|
(2) Как освобожусь, расскажу.
|
|
4
F427
20.09.04
✎
14:18
|
ну тогда через коллекцию и имя перечисления...
Синтаксис сам посмотри. У меня сейчас 8 под руками нет...
Смысл в том, что через ОЛЕ тебе бессмысленно получать ссылку. Ибо она работает для ОЛЕ базы. Чтобы ей сопоставить перечисление в своей базе - надо сравнивать имена... Вот это и подразумевалось в (1)
|
|
5
KoanMu
20.09.04
✎
14:28
|
> через ОЛЕ тебе бессмысленно получать ссылку
Это я и сам знаю. Мне нужно ИМЯ! (см. внимательнее первый вопрос) или хотя бы номер перечисления
|
|
6
Волшебник
20.09.04
✎
14:37
|
через Метаданные пробуй
|
|
7
KoanMu
20.09.04
✎
14:42
|
Если выбрать так:
ЭлементСправочника.Перечисление.Метаданные()
Тогда получаем ссылку на все варианты перечисления данного вида, а не на конкретное. :(
|
|
8
F427
20.09.04
✎
14:48
|
...... задумчиво чешет в затылке .....
ХЗ... нет под руками ничего... навскидку не помню... Попробуй по итланду пролезть - вроде там пример был....
|
|
9
KoanMu
20.09.04
✎
15:05
|
Там для COM объекта не нашел... :(
Мда... Похоже, что с этим в восьмерке "перемудрили" :(
|
|
10
Волшебник
20.09.04
✎
15:08
|
(9) Все нормально там. Просто надо посидеть в отладчике. Была еще статья на ИТС по этому поводу.
|
|
11
KoanMu
20.09.04
✎
15:55
|
Уфффф... Докопался. Всё как-то через Ж....
Ном = COM_ОбъектБД.Перечисления.ВидыТМЦ.Индекс(COM_ЭлементСправочника.Перечисление);
Имя = COM_ОбъектБД.Метаданные().Перечисления.ВидПеречисления.EnumValues.Get(Ном).Name;
Ура!
|
|
12
Волшебник
20.09.04
✎
15:57
|
(11) Можешь, когда захочешь. Я ж говорил, все просто. :)
|
|