Имя: Пароль:
1C
1С v8
Правильное название объекта метаданных, в данном случае, Перечисления.
0 dim-mich
 
20.05.26
19:48
Казалось бы, простой вопрос, но... Какой из трех вариантов кода 1С правильный с точки зрения 1С:Платформы 8 при обращении к элементам перечисления и как получить правильное название типа данных итератора в первом цикле "ВремяГода"?

для эксперимента имена значениям перечисления ВременаГода дал: Зима, Лето, Осень, Весна, а в синонима каждому прибавил (синоним), например: Зима (синоним). После этого выполнил вышеприведенный код, вот его результат:

&НаСервереБезКонтекста
Процедура ВыводПеречисленияВременаГодаНаСервере()
    ВременаГода = Перечисления.ВременаГода;
    Сообщить("1-й способ:");
    Для каждого ВремяГода из ВременаГода Цикл
        Сообщить(ВремяГода);
    КонецЦикла;    
    
    Сообщить("2-й способ:");
    ВременаГода = Метаданные.Перечисления.ВременаГода;
    Для каждого ВремяГода из ВременаГода.ЗначенияПеречисления Цикл
        Сообщить(ВремяГода.Синоним);
    КонецЦикла;

    Сообщить("3-й способ:");
    ВременаГода = Метаданные.Перечисления.ВременаГода;
    Для каждого ВремяГода из ВременаГода.ЗначенияПеречисления Цикл
        Сообщить(Перечисления.ВременаГода[ВремяГода.Имя]);
    КонецЦикла;
КонецПроцедуры

1-й способ:
Зима (синоним) Перечисление.ВременаГода
Зима (синоним) ВременаГода
Весна (синоним) Перечисление.ВременаГода
Весна (синоним) ВременаГода
Лето (синоним) Перечисление.ВременаГода
Лето (синоним) ВременаГода
Осень (синоним) Перечисление.ВременаГода
Осень (синоним) ВременаГода
2-й способ:
Зима (синоним) Строка
Весна (синоним) Строка
Лето (синоним) Строка
Осень (синоним) Строка
3-й способ:
Зима (синоним) ВременаГода
Весна (синоним) ВременаГода
Лето (синоним) ВременаГода
Осень (синоним) ВременаГода

В первом цикле итератор ВремяГода имеет в отладчике тип "ПеречислениеСсылка.ВременаГода", но получить это значения я не смог, как видно из кода, представленного выше.
Можете объяснить, что не так я делаю и чего я в платфоме не понимаю и ткнуть что покурить?
1 Волшебник
 
20.05.26
19:50
Опять тупой бот
2 agres
 
20.05.26
20:03
(0)    
    Для Каждого ВремяГода из Перечисления.ВременаГода Цикл
        Сообщить(xmlСтрока(ВремяГода));
    КонецЦикла;
3 Волшебник
 
20.05.26
20:02
&НаСервереБезКонтекста
Процедура ВыводПеречисления
   Сообщить...

кому?
4 Волшебник
 
20.05.26
20:03
вышеприведенный
а код ниже

тупой бот!
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший