|
Можно как-то узнать значение (представление) перечисления в 1с77 из 1с82? | ☑ | ||
---|---|---|---|---|
0
palpetrovich
08.05.13
✎
15:09
|
Подключаюсь так:
База77 = Новый COMОбъект("V77.Application"); может как-то через Метаданные? не найду решения пока |
|||
1
zharkin
08.05.13
✎
15:11
|
я так делал
Функция ПолучитьЗначениеПеречисления(ИмяПеречисления, COMЗначение) Если Метаданные["Перечисления"][ИмяПеречисления].ЗначенияПеречисления.Найти(COMИсточник.XMLString(COMЗначение)) = Неопределено Тогда Возврат Неопределено; КонецЕсли; Возврат Перечисления[ИмяПеречисления][COMИсточник.XMLString(COMЗначение)]; КонецФункции // ПолучитьЗначениеПеречисления() |
|||
2
zharkin
08.05.13
✎
15:12
|
сорри, это 8->8
|
|||
3
palpetrovich
08.05.13
✎
15:13
|
(1) угу, я для 8->8 тоже XMLString пользовался
|
|||
4
zharkin
08.05.13
✎
15:13
|
вот так делал
Функция ПолучитьЗначениеПеречисления(ИмяПеречисления, COMЗначение) Экспорт Если Метаданные["Перечисления"][ИмяПеречисления].ЗначенияПеречисления.Найти(COMЗначение.Идентификатор()) = Неопределено Тогда Возврат Неопределено; КонецЕсли; Возврат Перечисления[ИмяПеречисления][COMЗначение.Идентификатор()]; КонецФункции // ПолучитьЗначениеПеречисления() |
|||
5
palpetrovich
08.05.13
✎
15:14
|
+(0) тулю горбатого: База77.Метаданные.Перечисление([Спр77.ВидКонтрагента]).Значение()
гворит - "ожидается выражение" :) |
|||
6
palpetrovich
08.05.13
✎
15:16
|
(4) меня терзают смутные сомненья по поводу: Возврат Перечисления[ИмяПеречисления][COMЗначение.Идентификатор()];
...ну какие еще "Перечисления" |
|||
7
zharkin
08.05.13
✎
15:18
|
ты что хочешь получить на выходе?
|
|||
8
zharkin
08.05.13
✎
15:19
|
у тебя перенос данных из 8 в 7?
|
|||
9
palpetrovich
08.05.13
✎
15:20
|
(8) наоборот
Спасибо, натолкнул, банально вот это: Спр77.ВидКонтрагента.Идентификатор() дает нужный результат |
|||
10
palpetrovich
08.05.13
✎
15:20
|
+9 то-бишь в твоей пункуации: COMЗначение.Идентификатор() :)
|
|||
11
1Сергей
08.05.13
✎
15:20
|
не нужно обращаться к метаданным тут вообще
|
|||
12
zharkin
08.05.13
✎
15:21
|
(10) - аха
|
|||
13
palpetrovich
08.05.13
✎
15:23
|
(11) та да, оказывается тут проще чем в 8+8 :)
|
|||
14
Ковычки
08.05.13
✎
15:30
|
EvalExpr ?
|
|||
15
Ковычки
08.05.13
✎
15:31
|
Дак нужно значение, идентификатор или представление ?
|
|||
16
palpetrovich
08.05.13
✎
15:48
|
(15) точного совпадения нет, поэтому приходится так:
Если Спр77.ВидКонтрагента.Идентификатор() = "Организация" Тогда НовыйОбъект.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ЮрЛицо; Иначе НовыйОбъект.ЮрФизЛицо = Перечисления.ЮрФизЛицо.ФизЛицо; КонецЕсли; |
|||
17
drongo-god
08.05.13
✎
16:01
|
(16) Так же релизовывал. По другому не получалось.
|
|||
18
Ковычки
08.05.13
✎
16:07
|
БазаОле.глПеременная=БазаОле.Метаданные.Перечисление(1).Значение(1);
Сообщить(БазаОле.EvalExpr("глПеременная.Представление")); |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |