|
Как программно определить ИМЯ переданного типа. | ☑ | ||
---|---|---|---|---|
0
SeiOkami
11.09.14
✎
15:54
|
Понятно, что можно сделать так: Метаданные.НайтиПоТипу(ТипЗначения).Имя, однако, не сработает если тип будет, например, СписокЗначений. А мне необходимо получить строковое представление имени типа для последующего выполнения в Новый("ИмяТипа"). Если же при отсутствии типа в метаданных просто приводить его к строке, то я получу не имя типа, а его представление "Список значений".
|
|||
1
viraboy
11.09.14
✎
15:59
|
Привет, тип, тебя как зовут?
ТипЗнч(), не? |
|||
2
SeiOkami
11.09.14
✎
16:01
|
(1), не
ТипЗнч(Тип("СписокЗначений")) вернет "Тип" |
|||
3
sf
11.09.14
✎
16:02
|
(0) ты, видимо, какой-то изврат задумал. но если очень нужно, пробуй сделать сначала ОписаниеТипов, а оттуда через Типы() все что нужно
и вообще вроде Новый(типЗначения) |
|||
4
Зойч
11.09.14
✎
16:03
|
Новый (Тип) разве не работает?
|
|||
5
SeiOkami
11.09.14
✎
16:05
|
(3), оттуда через Типы() я получу тип, а мне нужно его имя
(4), мне нужно получить именно строковое представление имени |
|||
6
SeiOkami
11.09.14
✎
16:20
|
уп
|
|||
7
SeiOkami
11.09.14
✎
16:24
|
На крайний случай можно так, но всё же это не есть цивильно
МетаданныеТипа = Метаданные.НайтиПоТипу(МойТип); Если МетаданныеТипа <> Неопределено Тогда ТипСтрокой = МетаданныеТипа.Имя; Иначе ТипСтрокой = СтрЗаменить(Строка(МойТип), " ", ""); КонецЕсли; |
|||
8
Jaap Vduul
11.09.14
✎
16:31
|
(7)Неверный подход.
У типов 1цэ имя и строковое представление не всегда похожи. |
|||
9
Зойч
11.09.14
✎
16:33
|
Зачем тебе это?
|
|||
10
SeiOkami
11.09.14
✎
16:39
|
(8), Например?
|
|||
11
SeiOkami
11.09.14
✎
16:39
|
(9), генерирую код на 1С в режиме предприятия
|
|||
12
Зойч
11.09.14
✎
16:40
|
Вот тебе заняться нечем )))
|
|||
13
Ненавижу 1С
гуру
11.09.14
✎
16:41
|
(11) Зачем?
|
|||
14
Jaap Vduul
11.09.14
✎
16:42
|
(10)
Тип("ОбъединениеНедопустимыхПодстановкиXS") |
|||
15
Ненавижу 1С
гуру
11.09.14
✎
16:43
|
(10) посмотри в табло на выражение Строка(Тип("СписокЗначений"))
|
|||
16
SeiOkami
11.09.14
✎
16:44
|
(14), действительно... Просто не знаю пока как иначе
(15), и? "Список значений" |
|||
17
Ненавижу 1С
гуру
11.09.14
✎
16:45
|
(16) это не имя типа))
|
|||
18
SeiOkami
11.09.14
✎
16:46
|
(17), ну я как бы и об этом) Читай (0)
|
|||
19
Jaap Vduul
11.09.14
✎
16:48
|
(16)
>>Просто не знаю пока как иначе А никак. Только если составить таблицу всех имеющихся типов и при каждом обновлении платформы её проверять на предмет изменений. |
|||
20
Зойч
11.09.14
✎
16:48
|
(19) у автора инструментов разаработчика чтото типо такого уже есть
|
|||
21
SeiOkami
11.09.14
✎
16:49
|
(19), то есть типового метода всё же нет, да?
|
|||
22
Jaap Vduul
11.09.14
✎
16:50
|
(21)>>всё же нет, да?
Нет, да. |
|||
23
SeiOkami
11.09.14
✎
16:52
|
(22), грусть-доска. Спасибо за помощь!
|
|||
24
Rebelx
11.09.14
✎
16:56
|
(0) ТипЗначенияXML
или что-то вроде |
|||
25
SeiOkami
11.09.14
✎
16:57
|
(24), XMLТип()
пробовал, но ничего не возвращает |
|||
26
Fragster
гуру
11.09.14
✎
17:05
|
Синтаксис (вариант 2):
Новый(<Тип>[, <ПараметрыКонструктра>]) Параметры: Тип Имя типа или значение типа Тип ПараметрыКонструктора Массив параметров конструктора Описание: Оператор позволяет создать значение указанного типа. Допустим только для тех типов, для которых разрешено создание с помощью данного оператора (подробнее см. описание объектов языка). Для прикладных объектов необходимо использовать функциональную форму оператора Новый (вариант 2), так как при проверке модулей в конфигураторе не определены типы для прикладных объектов. |
|||
27
Fragster
гуру
11.09.14
✎
17:06
|
Имя типа или значение типа Тип
|
|||
28
Fragster
гуру
11.09.14
✎
17:06
|
значение типа Тип
|
|||
29
SeiOkami
12.09.14
✎
08:00
|
(26), (27), (28), офигенная привычка не читать (0) =)
|
|||
30
Fragster
гуру
12.09.14
✎
10:35
|
(29) я прочитал в (0) вот что: "для последующего выполнения в Новый("ИмяТипа")."
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |