Простыми словами, перечисление — это заранее заданный список значений, который никогда не меняется в процессе работы. Это константы, которые делают ваш код чище и понятнее.
Классический пример: вам нужно хранить пол контрагента (физического лица). Вы можете:
Плохой способ: Завести реквизит «Пол» типа Строка и вводить туда "Мужской", "Женский", а кто-то напишет "Муж." или "M". Хаос и сложная проверка.
Хороший способ: Создать собственное перечисление «Полы» с двумя заранее предопределенными элементами: Мужской, Женской. В реквизите можно будет выбрать только одно из этих двух значений.
Но помимо ваших собственных, платформа 1С:Предприятие содержит богатый набор готовых системных перечислений.
Зачем нужны системные перечисления?
Системные перечисления унифицируют работу с механизмами платформы. Вместо того чтобы использовать «магические числа» или строки, вы используете понятные именованные константы. Это делает код:
Понятным: НаправлениеПоиска.СНачала читается лучше, чем просто 1.
Надежным: Компилятор проверяет, что вы используете существующее значение перечисления. Опечатка НапрвлениеПоиска будет сразу найдена.
Легко поддерживаемым: Если платформа улучшит механизм, ваш код, использующий перечисление, скорее всего, останется рабочим.
Обзор ключевых системных перечислений
Рассмотрим самые часто используемые системные перечисления.
1. СтатусСообщения — для работы с пользователем
Это перечисление используется при выводе сообщений пользователю через Сообщить() или Предупреждение(). Оно определяет иконку и поведение сообщения.
Пример использования:

2. НаправлениеПоиска — для поиска в коллекциях
Крайне важное перечисление для методов поиска в табличных частях, таблицах значений и т.д.

Пример использования:

3. ДатаВремя — для работы с частями даты
Позволяет легко манипулировать датами, добавляя или вычитая дни, месяцы, годы.

Пример использования:

4. РежимДиалогаВопрос — для задания кнопок в диалоге
Используется с функцией Вопрос() для настройки отображаемых кнопок.

Пример использования:

Как пользоваться перечислениями в коде?
Синтаксис работы с перечислениями простой и интуитивно понятный.
1. Обращение к элементу: ИмяПеречисления.ИмяЭлемента
2. Сравнение:

3. Использование в методах:

Практический совет: Создавайте свои перечисления!
Не ленитесь создавать собственные перечисления для статических списков в вашей конфигурации. Это окупится сторицей:
- Статусы документов (Черновик, НаСогласовании, Утвержден, Проведен, Отменен).
- Типы цен (Оптовая, Розничная, Закупочная).
- Виды контрагентов (Поставщик, Покупатель, Прочий).

