Back to top

Перечисления в языке 1С 8.3, 8.2 (в примерах)

Опубликовано e-1c@mail.ru - вт, 05/16/2017 - 17:38

Перечисления являются средством для работы с элементами данных, список возможных значений которых жестоко задан в данной прикладной задаче. Ссылки на элементы перечисления могут быть использованы в реквизитах объектов конфигурации.

Например, в конфигурации можно задать перечисление "ВидыКонтрагентов", определяющее допустимые виды контрагентов, со значениями "Организация" и "ФизЛицо".

Набор значений перечисления задается при конфигурировании.

/// Как вывести все значения перечисления в 1с 8.3, 8.2
 
&НаСервере
Процедура КакВывестиВсеЗначенияПеречисленияНаСервере()
 
    ВременаГода = Перечисления.ВременаГода;
 
    // первый способ
    Для Каждого Время Из ВременаГода Цикл
        Сообщить(Время);
    КонецЦикла;
 
    // второй способ
    Для Индекс = 0 По ВременаГода.Количество() - 1 Цикл
        Сообщить(ВременаГода.Получить(Индекс));
    КонецЦикла;
 
КонецПроцедуры
 
/// Как открыть форму списка значений перечисления в 1с 8.3, 8.2
 
&НаКлиенте
Процедура КакОткрытьСписокЗначенийПеречисления(Команда)
 
    ОткрытьФорму("Перечисление.ВременаГода.ФормаСписка");
 
КонецПроцедуры
 
/// Как открыть форму выбора значений перечисления в 1с 8.3, 8.2
 
&НаКлиенте
Процедура КакОткрытьФормуВыбораЗначенияПеречисления(Команда)
 
    ОповещениеОЗакрытии = Новый ОписаниеОповещения("ПослеВыбораПеречисления",
        ЭтотОбъект);
 
    ОткрытьФорму("Перечисление.ВременаГода.ФормаВыбора",,,,,,
        ОповещениеОЗакрытии);
 
КонецПроцедуры
 
&НаКлиенте
Процедура ПослеВыбораПеречисления(РезультатЗакрытия,
    ДополнительныеПараметры) Экспорт
 
    Если ЗначениеЗаполнено(РезультатЗакрытия) Тогда
        Сообщить(РезультатЗакрытия);
    КонецЕсли;
 
КонецПроцедуры