![]() |
![]() |
![]() |
|
О перечислении | ☑ | ||
---|---|---|---|---|
0
Atashka
07.09.07
✎
21:07
|
Как у перечисления взять значение. То есть, пусть в Элемент содержится значение перечисления, а как взять имя значения?
|
|||
1
marvak
07.09.07
✎
21:28
|
эх, у меня всегда слабость перед женским полом :)
|
|||
2
Wladimir_spb
07.09.07
✎
21:30
|
"Документацию сперли?" (С) Salvador Limones
|
|||
3
marvak
07.09.07
✎
21:32
|
ДОКУМЕНТАЦИЯ РУЛИТ -АДНАЗНАЧА!
|
|||
4
Wladimir_spb
07.09.07
✎
21:36
|
Потом ведь будет спрашивать, как по имени восстановить ссылку на значение перечисления, что бы в документ подставить... :)
|
|||
5
Atashka
07.09.07
✎
21:38
|
(4) тогда можешь сразу отвечать на два вопроса. Даже спросить уже нельзя, сразу нападают......
|
|||
6
Wladimir_spb
07.09.07
✎
21:40
|
Могу, но не хочу :)
|
|||
7
marvak
07.09.07
✎
21:40
|
(5) пративные.. ;)
|
|||
8
Atashka
07.09.07
✎
21:44
|
(6) неужели так сложно?
(7) и не говори |
|||
9
marvak
07.09.07
✎
21:46
|
(8) ну как, нужна фотка! ;)
|
|||
10
Wladimir_spb
07.09.07
✎
21:47
|
(8) Подобные вопросы решаются не на форуме, а в конфигураторе с помощью СП.
|
|||
11
Atashka
07.09.07
✎
21:47
|
(9) нет так нет. как малые дети...
|
|||
12
Atashka
07.09.07
✎
21:48
|
(10)что такое СП?
|
|||
13
Wladimir_spb
07.09.07
✎
21:49
|
Синтаксис-Помошник, он же "дядька в шапке".
|
|||
14
marvak
07.09.07
✎
21:53
|
ПеречислениеМенеджер.<Имя перечисления> (EnumManager.<Имя перечисления>)
|
|||
15
Atashka
07.09.07
✎
22:14
|
А как зная синоним значения перечисления, получить имя значения перечисления?
|
|||
16
marvak
07.09.07
✎
22:16
|
(15) атлатчег выручит, посмотри там его свойства
|
|||
17
Atashka
07.09.07
✎
22:22
|
ну не получается у меня. можно мне четкий код?или я сильно много прошу и об этом не спрашивают на форуме и все такое......................
|
|||
18
Wladimir_spb
07.09.07
✎
22:25
|
На форуме все подряд спрашивают. Иногда и по резче отвечают...
v8: как групп открыть? |
|||
19
Atashka
07.09.07
✎
22:32
|
(18) ну мне значит пока везет. Меня еще открыто не посылали
|
|||
20
marvak
07.09.07
✎
22:32
|
(18) Володь, извини, я пьян :(
подскажи девушке - как :) |
|||
21
Atashka
07.09.07
✎
22:34
|
(20) +++++++++++++++
|
|||
22
Wladimir_spb
07.09.07
✎
22:39
|
(20) Сегодня ж тяпница! )))
(15) Зачем тебе имя, получи индекс и сохрани куда нужно. Потом восстанавливать проще будет. |
|||
23
marvak
07.09.07
✎
22:42
|
(21) Прекрасная! заходи завтра, и мы тебе фсе объясним! ;)
седня - тяпница! (см 22) |
|||
24
Atashka
07.09.07
✎
22:42
|
(22) как получить индекс? только не издевайся. если объяснишь и заработает, то это на сегодня мой последний вопрос
|
|||
25
Wladimir_spb
07.09.07
✎
22:45
|
(24) Условия ставишь? ))) Может сама разберешься?
|
|||
26
Wladimir_spb
07.09.07
✎
22:45
|
Найди в СП: "ПеречислениеМенеджер" там все есть. Если не научишься использовать СП, то и форум мало поможет...
|
|||
27
ShoGUN
07.09.07
✎
22:47
|
(24) СП рулит, честно. Ты не представляешь, как людей здесь напрягает быть заменой документации...
|
|||
28
Atashka
07.09.07
✎
22:48
|
(26)(21) спасибо, что не сорвались. хорошего вечера
|
|||
29
СП
07.09.07
✎
22:49
|
ПеречислениеМенеджер.<Имя перечисления> (EnumManager.<Имя перечисления>)
Индекс (IndexOf) Синтаксис: Индекс(<Значение перечисления>) Параметры: <Значение перечисления> (обязательный) Тип: ПеречислениеСсылка. Ссылка на значение перечисления, положение которого определяет данный метод. Если переданный параметр не является ссылкой на значение перечисления или значение принадлежит другому перечислению, генерируется исключение. Возвращаемое значение: Тип: Число. Индекс указанного элемента в коллекции. Если не найдено, то возвращается -1. Описание: Получает индекс перечисления в списке перечислений. |
|||
30
Сюзи
07.09.07
✎
22:50
|
По-моему у Радченко есть такой пример, посмотри в "Практическое пособие разработчика"
|
|||
31
Wladimir_spb
07.09.07
✎
22:53
|
(30) Привет!
|
|||
32
marvak
07.09.07
✎
22:55
|
(30) блин, люблю женщин :)
счас постараюсь все решить |
|||
33
Atashka
07.09.07
✎
22:55
|
говорит, что Переменная не определена (Индекс)
|
|||
34
Сюзи
07.09.07
✎
22:56
|
(31)Привет:)
|
|||
35
Wladimir_spb
07.09.07
✎
22:57
|
(32) Ей ничего решать не надо. Она Радченко читала(!). И уверен, что умеет пользоваться синтаксис-помошником)
|
|||
36
Wladimir_spb
07.09.07
✎
22:58
|
(33) Он прав! Потому что это не переменная, а метод.
|
|||
37
Сюзи
07.09.07
✎
22:58
|
(35)Еще раз спасибо за поддержку!
|
|||
38
ShoGUN
07.09.07
✎
22:59
|
(33) Жжош! Это метод! :) В коде выглядит как:
ПеречислениеМенеджер.ИмяПеречисления.Индекс(СсылкаНаЗначениеПеречисления); |
|||
39
Wladimir_spb
07.09.07
✎
23:00
|
(38) Нельзя так сразу. Разрушаешь интригу!
|
|||
40
ShoGUN
07.09.07
✎
23:03
|
(39) Не вели казнить, великий гусударь!
|
|||
41
Wladimir_spb
07.09.07
✎
23:06
|
(40) Ничего, думаю, сейчас последует возмущенное заявление о том, что переменная "ПеречислениеМенеджер" не обнаружена :)
|
|||
42
Atashka
07.09.07
✎
23:08
|
(41)не последует. Я просто не поняла!!!!!!!!!!!!!!
|
|||
43
Wladimir_spb
07.09.07
✎
23:10
|
ПеречисленияМенеджер (EnumsManager)
Элементы коллекции: ПеречислениеМенеджер Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются менеджеры перечислений. Возможно обращение к менеджеру перечисления посредством оператора [...]. В качестве аргумента передается имя перечисления, как оно задано в конфигурации. Свойства: <Имя перечисления> Методы: ТипВсеСсылки (AllRefsType) Описание: Предназначен для управления перечислениями и предоставляет доступ к значениям типа ПеречислениеМенеджер. Доступ к объекту осуществляется через свойство глобального контекста Перечисления. Возможен обмен с сервером. Пример: ВидКонтрагента = Перечисления.ВидыКонтрагентов.Организация; См. также: Глобальный контекст, свойство Перечисления |
|||
44
Сюзи
07.09.07
✎
23:10
|
Попробуй так
ИмяПеречисления = ЗначениеПеречисления.Метаданные().Имя; ИндексЗначенияПеречисления = Перечисления[ИмяПеречисления].Индекс(ЗначениеПеречисления); ИмяЗначенияПеречисления = Метаданные.Перечисления[ИмяПеречисления].ЗначенияПеречисления[ИндексЗначенияПеречисления].Имя; |
|||
45
ShoGUN
07.09.07
✎
23:12
|
(42)
hochoolaski Брюнетка, у тебя ник такой чтобы на твои фразы не задавали вопрос "Ты блондинка?" Брюнетка НЕТ БРЮНЕТКА hochoolaski ясно (с) Bash.org.ru |
|||
46
Wladimir_spb
07.09.07
✎
23:13
|
(44) Это даже слишком много)
|
|||
47
Wladimir_spb
07.09.07
✎
23:14
|
+(46)"Во многом знании - много печали" (с) (приписывают Лао Цзы)
|
|||
48
ShoGUN
07.09.07
✎
23:19
|
(47) В Священном Писании, в книге Екклесиаста они звучат немного иначе («во многой мудрости много печали; и кто умножает познания, умножает скорбь» [Еккл.1, 18])
|
|||
49
Atashka
07.09.07
✎
23:22
|
(44) Ошибка при вызове метода контекста (Индекс): Несоответствие типов (параметр номер "1")
|
|||
50
Wladimir_spb
07.09.07
✎
23:22
|
(48) Видимо, он был тайным даосом :)
|
|||
51
Wladimir_spb
07.09.07
✎
23:23
|
(49) Опять ты! Дай нормально пообщаться!)))
А что ты передаешь в качестве параметра? |
|||
52
Atashka
07.09.07
✎
23:26
|
(51)
Использую код,который Сюзи дала. ИмяПеречисления = ЗначениеПеречисления.Метаданные().Имя; ИндексЗначенияПеречисления = Перечисления[ИмяПеречисления].Индекс(ЗначениеПеречисления); ИмяЗначенияПеречисления = Метаданные.Перечисления[ИмяПеречисления].ЗначенияПеречисления[ИндексЗначенияПеречисления].Имя; |
|||
53
Сюзи
07.09.07
✎
23:28
|
У тебя что в ЗначениеПеречисления?
|
|||
54
Atashka
07.09.07
✎
23:30
|
(53) Синоним значения перечисления
|
|||
55
Сюзи
07.09.07
✎
23:32
|
(54)Напиши твой код полностью
|
|||
56
Wladimir_spb
07.09.07
✎
23:34
|
(54) Передавай ЗНАЧЕНИЕ реквизита твоего документа
|
|||
57
Atashka
07.09.07
✎
23:39
|
Текст = Новый ТекстовыйДокумент;
Для Каждого Реквизит из МетаданныеДокумента.Реквизиты Цикл ИмяРеквизита = Реквизит.Имя; Если Найти(ТипЗнч(ДокОбъект[ИмяРеквизита]),"Перечисление") Тогда ИмяяПеречисления = ДокОбъект[ИмяРеквизита].Метаданные().Имя; ИндексЗначенияПеречисления = Перечисления[ИмяПеречисления].Индекс(ТабСтрока[ИмяРеквизита]); ИмяЗначенияПеречисления = Метаданные.Перечисления[ИмяПеречисления].ЗначенияПеречисления[ИндексЗначенияПеречисления].Имя; Текст.ДобавитьСтроку(ИмяЗначенияПеречисления); КонецЕсли; |
|||
58
Wladimir_spb
07.09.07
✎
23:42
|
ИндексЗначенияПеречисления = Перечисления[ИмяПеречисления].Индекс(ТабСтрока[ИмяРеквизита]);
ИндексЗначенияПеречисления = Перечисления[ИмяПеречисления].Индекс(ДокОбъект[ИмяРеквизита]); |
|||
59
Atashka
07.09.07
✎
23:43
|
Текст = Новый ТекстовыйДокумент;
Для Каждого Реквизит из МетаданныеДокумента.Реквизиты Цикл ИмяРеквизита = Реквизит.Имя; Если Найти(ТипЗнч(ДокОбъект[ИмяРеквизита]),"Перечисление") Тогда ИмяПеречисления = ДокОбъект[ИмяРеквизита].Метаданные().Имя; ИндексЗначенияПеречисления = Перечисления[ИмяПеречисления].Индекс(ДокОбъект[ИмяРеквизита]); ИмяЗначенияПеречисления = Метаданные.Перечисления[ИмяПеречисления].ЗначенияПеречисления[ИндексЗначенияПеречисления].Имя; Текст.ДобавитьСтроку(ИмяЗначенияПеречисления); КонецЕсли; Первый раз немного не то скопировала.... |
|||
60
Atashka
07.09.07
✎
23:44
|
(58) ну не такая же я дура?????????????????
|
|||
61
Atashka
07.09.07
✎
23:45
|
(58) еще и эту строку не заметил
ИмяяПеречисления = ДокОбъект[ИмяРеквизита].Метаданные().Имя; |
|||
62
Wladimir_spb
07.09.07
✎
23:48
|
(60) Не знаю... не уверен, поэтому про "ИмяяПеречисления" в (58) писать не стал.
(59) У тебя реквизит заполнен? |
|||
63
Atashka
07.09.07
✎
23:51
|
Да. Заполнен. ИмяПеречисления точно определяется. Проверяла, скидывая его в файл
|
|||
64
Atashka
07.09.07
✎
23:52
|
да и ДокОбъект[ИмяРеквизита] тоже определяется тем, что надо. Что не так???
|
|||
65
Wladimir_spb
07.09.07
✎
23:55
|
Что в этот момент в ДокОбъект[ИмяРеквизита]?
|
|||
66
Atashka
07.09.07
✎
23:58
|
значение реквизита документа в нем находится
|
|||
67
Wladimir_spb
08.09.07
✎
00:01
|
Какое?
Сообщить(ДокОбъект[ИмяРеквизита]); |
|||
68
Atashka
08.09.07
✎
00:01
|
а данные в реквизите - есть ссылкаперечисления
|
|||
69
zbv
08.09.07
✎
00:05
|
у-лю на Вас нет...
:-))) |
|||
70
marvak
08.09.07
✎
00:07
|
блинн когда то я был профи по перечислениям :)
тока пяаный я счас :) |
|||
71
marvak
08.09.07
✎
00:08
|
кароче -отлатчег рулит в восьмерке
там все сразу видно ;) |
|||
72
Wladimir_spb
08.09.07
✎
00:09
|
(71) Отладчик может и рулит, но ты полчаса будешь объяснять как им пользоваться.
Хотя можешь попробовать))) Пьяным море по колено? |
|||
73
Atashka
08.09.07
✎
00:09
|
(67)
А - класс |
|||
74
zbv
08.09.07
✎
00:16
|
(73) Mercedes-?
|
|||
75
marvak
08.09.07
✎
00:22
|
можно так
элементыформы.реквизит1["Имя"] |
|||
76
Wladimir_spb
08.09.07
✎
00:22
|
Тогда все правильно. Ты на одном документе попробуй и посмотри на каком точно реквизите выскакивает ошибка
|
|||
77
Wladimir_spb
08.09.07
✎
00:23
|
(75) Еще формы здесь не хватало))) В конец девушку замучить решил?
|
|||
78
marvak
08.09.07
✎
00:24
|
эхх, скорпы - на, на, на, на, на нау!
а потом - динамит! |
|||
79
marvak
08.09.07
✎
00:26
|
вернее так элементыформы.реквизит1["значение"]
|
|||
80
marvak
08.09.07
✎
00:28
|
то есть имя в 75, а значение в 79 :)
|
|||
81
Wladimir_spb
08.09.07
✎
00:28
|
(79) )))
|
|||
82
marvak
08.09.07
✎
00:29
|
(81) эхх, маладой ты исо ;)
|
|||
83
marvak
08.09.07
✎
00:30
|
(81) я ж счас по отлатчегу сматрю ;)
|
|||
84
Wladimir_spb
08.09.07
✎
00:32
|
(83) Заранее скажу, что (75) и (79) не сработают. Даже с учетом (80).
))) |
|||
85
marvak
08.09.07
✎
00:32
|
кароч, дэушка видимо сама не знает чего хочет :)
|
|||
86
Wladimir_spb
08.09.07
✎
00:34
|
Девушка уже спит, наверное)
|
|||
87
marvak
08.09.07
✎
00:35
|
(84) тады вопрос - "Элемент" в (0) это что?
|
|||
88
marvak
08.09.07
✎
00:37
|
а в питере счас исчо тока вечер :)
я вообще то в питере родился на васильевском острове бывшая больница вайсмана - у меня даже медаль есть :) |
|||
89
Wladimir_spb
08.09.07
✎
00:40
|
Медаль за рождение? )
В Питере сейчас 0:40 - совпадает со временем форума. |
|||
90
marvak
08.09.07
✎
00:42
|
(89) Именно! за рождение
там на одной стороне Ленин, на другой - Медный всадник и моя фаилия а,счас таких в Питере не дают? |
|||
91
marvak
08.09.07
✎
00:43
|
мальчикам давали синюю, девочкам - розовую
|
|||
92
Wladimir_spb
08.09.07
✎
00:45
|
Мне не давали. Видимо ничего особенно героического в моем рождении не было. Да и Ленин сейчас как-то не в моде.
|
|||
93
marvak
08.09.07
✎
00:48
|
что сказать...
батя в питере учился в аспирантуре и меня там заделал :) а тебе просто повезло :) |
|||
94
Atashka
08.09.07
✎
07:31
|
Текст = Новый ТекстовыйДокумент;
Для Каждого Реквизит из МетаданныеДокумента.Реквизиты Цикл ИмяРеквизита = Реквизит.Имя; Если Найти(ТипЗнч(ДокОбъект[ИмяРеквизита]),"Перечисление") Тогда ИмяПеречисления = ДокОбъект[ИмяРеквизита].Метаданные().Имя; ИндексЗначенияПеречисления = Перечисления[ИмяПеречисления].Индекс(ДокОбъект[ИмяРеквизита]); ИмяЗначенияПеречисления = Метаданные.Перечисления[ИмяПеречисления].ЗначенияПеречисления[ИндексЗначенияПеречисления].Имя; Текст.ДобавитьСтроку(ИмяЗначенияПеречисления); КонецЕсли; Когда первый раз заходит в цикл, то все делается нормально, а на втором разу выдает такую вот ошибку Ошибка при вызове метода контекста (Индекс): Несоответствие типов (параметр номер "1") ИндексЗначенияПеречисления = Перечисления[ИмяПеречисления].Индекс(ДокОбъект[ИмяРеквизита]); по причине: Несоответствие типов (параметр номер "1") Хотя данные абсолютно идентичны. |
|||
95
Wladimir_spb
08.09.07
✎
08:39
|
Бодрое утро!
Смотри, что продставляется на втором круге. Сообщить("Имя:" + ИмяРеквизита + " Значение:" + ДокОбъект[ИмяРеквизита]); |
|||
96
Atashka
08.09.07
✎
09:47
|
Имя:ABCКлассификация Значение:A - класс
Имя:ABCКлассификацияСтарая Значение: |
|||
97
Сюзи
08.09.07
✎
09:53
|
Привет всем!
|
|||
98
Atashka
08.09.07
✎
09:56
|
(97) Привет. (95) ПР.
|
|||
99
Сюзи
08.09.07
✎
10:01
|
Уверена что реквизит ABCКлассификацияСтарая заполнен?
|
|||
100
Atashka
08.09.07
✎
10:05
|
(99) Не, я поняла, он не заполнен. В нем ничего нет.
|
|||
101
Сюзи
08.09.07
✎
10:11
|
Все?, уже проблем нет?
|
|||
102
Atashka
08.09.07
✎
10:17
|
(101) Да, пока с этой частью вроде разобралась. Спасибо тебе большое, очень помогла
|
|||
103
Сюзи
08.09.07
✎
10:19
|
Удачи:)
|
|||
104
Wladimir_spb
08.09.07
✎
15:21
|
Замечу, что реквизиты типа ПеречислениеСсылка тоже можно проверять на пустое значение.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |