|
|
|
Как получить текстовое представление перечисления из ОЛЕ базы? | ☑ | ||
|---|---|---|---|---|
|
0
Gucci76
24.02.09
✎
15:57
|
Как получить текстовое представление перечисления из ОЛЕ базы???? А то в печатной форме пишет ОЛЕ. Идентификатор нельзя подставить в печатную форму (там нет пробелов).
Строка(V7.Перечисление.ВидПеречисления.КонкретноеЗначениеПеречисления) выдает ОЛЕ |
|||
|
1
ДенисЧ
24.02.09
✎
15:58
|
Иденнтификатор()
|
|||
|
2
Gucci76
24.02.09
✎
16:01
|
В идентификаторе нет пробелов.
ОЛЕ перечисление используется при выводе на печать таблицы. |
|||
|
3
vde69
24.02.09
✎
16:05
|
ДругаяБаза.Строка(ДругаяБаза.ЗначениеПеречисления)
|
|||
|
4
ДенисЧ
24.02.09
✎
16:05
|
Метаданные.Перечисление(ИмяПеречисления).Значение(ИмЗначенияПеречисления).Представление
|
|||
|
5
ProxyInspector
24.02.09
✎
16:08
|
Добавь в базу ОЛЕ следующую функцию:
Функция глПредставление(Объект) Экспорт Возврат СокрЛП(Объект); КонецФункции После этого можно будет использовать: БазаОле.глПредставление(V7.Перечисление.ВидПеречисления.КонкретноеЗначениеПеречисления) БазаОле.глПредставление(ДокументОле) и тд. и тп. |
|||
|
6
Gucci76
24.02.09
✎
16:10
|
(5) нет возможности изменить конфигуратор оле базы.
|
|||
|
7
Gucci76
24.02.09
✎
16:16
|
ДругаяБаза.Строка(ДругаяБаза.ЗначениеПеречисления)
не прокатило, поругалось на Строка |
|||
|
8
vde69
24.02.09
✎
16:17
|
(5)(6) да приведение к представлению происходит автоматически при приведении к типу строка, по этому довольно (3)
|
|||
|
9
ДенисЧ
24.02.09
✎
16:18
|
(7) А чем тебе мой вариант не понравился?
|
|||
|
10
vde69
24.02.09
✎
16:18
|
ДругаяБаза.СокрЛП()
|
|||
|
11
Gucci76
24.02.09
✎
16:21
|
(3) ДругаяБаза.Строка(ДругаяБаза.ЗначениеПеречисления)
не прокатило, поругалось на Строка (9) я беру перечисление из ОЛЕ базы, в твоем варианте база не ОЛЕ и идентификатор передает значение БЕЗ ПРОБЕЛОВ |
|||
|
12
ДенисЧ
24.02.09
✎
16:21
|
(11) см (4)
|
|||
|
13
Gucci76
24.02.09
✎
16:22
|
(4) там есть про ОЛЕ.
Пытаюсь (4) переделать под использование ОЛЕ пишет типы не совпадают. |
|||
|
14
Gucci76
24.02.09
✎
16:23
|
(4) там есть про ОЛЕ????
|
|||
|
15
ДенисЧ
24.02.09
✎
16:24
|
(14) ДругаяБаза.Метаданные. И дальше по тексту
|
|||
|
16
Gucci76
24.02.09
✎
16:25
|
вот именно так и пытаюсь, пока не выходит
|
|||
|
17
rs_trade
24.02.09
✎
16:29
|
Можно так, хоть и не очень красиво...
Если базаОЛЕ.ТвойРеквизит = базаОЛЕ.Перечисление.ТвоеПеречисление.Значение Тогда представление = "бла-бла-бла" |
|||
|
18
Gucci76
24.02.09
✎
16:30
|
(17) видимо так и придется, раз другого пока не получается
|
|||
|
19
Gucci76
24.02.09
✎
16:34
|
(15) не выходит ругается на ПРЕДСТАВЛЕНИЕ, хотя до него нормально получаются данные. Как только пишешь Представление 1С ругается Типы не совпадают.
Буду делать (17) вариантом, благо надо только одно перечисление выводить. |
|||
|
20
v_rtex
24.02.09
✎
16:57
|
ответ в (4) с маленьким уточнением
ЗначСтр=БазаОЛЕ.Метаданные.Перечисление(ИмяПеречисления).Значение(ИДЗначенияПеречисления).Представление(); |
|||
|
21
dk
24.02.09
✎
17:02
|
извращенцы :)
ТетяОля.Метаданные.Перечисление(ТипаПеречисление.Вид()).Значение(ТипаПеречисление.ПорядковыйНомер()).Представление() |
|||
|
22
dk
24.02.09
✎
17:05
|
или так
ТетяОля.EvalExpr("СокрЛП("""+СтрЗаменить(ТетяОля.ЗначениеВСтроку(ТетяОля.Перечисление.ВидПеречисления.КонкретноеЗначениеПеречисления), """", """""")+""")"); |
|||
|
23
Gucci76
24.02.09
✎
17:24
|
(21) dk оказался прав:
ТетяОля.Метаданные.Перечисление(ТипаПеречисление.Вид()).Значение(ТипаПеречисление.ПорядковыйНомер()).Представление() Представление() должно быть со скобками, тогда работает!!!! :-) Всем откликнувшимся большое спасибо!!!! |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |