Перечисления в 1С 8.3
Меню

Перечисления в 1С 8.3

Содержание статьи
  1. Элемент «Перечисление» в конфигураторе программы
  2. Отражение изменения списка перечисления в 1С
  3. Вид выбора значения перечисления

Работая в программе 1С Предприятие 8.3, при заполнении справочников, документов, отчетов и т.п. мы часто видим перечисление в запросе, который мы открыли, определенных значений. Например:

  • Ставка НДС

Ставка НДС
Ставка НДС
  • Группа основных средств, при заполнении элемента справочника

Группа основных средств, при заполнении элемента справочника
Группа основных средств, при заполнении элемента справочника
  • И другие виды перечислений, при заполнении данных

И другие виды перечислений, при заполнении данных
И другие виды перечислений, при заполнении данных

Работа с перечислениями также имеет место при выполнении какого-то действия, например, при выборе печати или создании на основании документа (Рис.4-5) и т.п.

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

Элемент «Перечисление» в конфигураторе программы

Рассмотрим, как выглядит перечисление в Конфигураторе программы 1С. Открыв конфигурацию, в дереве метаданных мы видим блок «Перечисления».

Открыв конфигурацию, в дереве метаданных мы видим блок «Перечисления»
Открыв конфигурацию, в дереве метаданных мы видим блок «Перечисления»

Возникает вопрос, зачем нужны перечисления, если можно сделать выбор тех же значений, используя справочник. Перечисления используются, когда нужно ограничить выбираемые пользователем значения предустановленными, без возможности добавления их в пользовательском режиме. К значению перечисления программа может обращаться напрямую, используя присвоенное ему имя.

Рассмотрим, как выглядят наши перечисления изнутри. Для примера, найдем перечисление «Ставки НДС» и откроем его. На закладке «Основные» указывается имя перечисления и синоним объекта, который используется для описания его в программе, т.е. так, как видит его пользователь.

Для примера, найдем перечисление «Ставки НДС»
Для примера, найдем перечисление «Ставки НДС»

На закладке «Данные» мы видим все значения перечисления, которые отображаются нам в форме выбора в программе. С помощью кнопки «Добавить» (зеленый кружок с плюсом), мы можем добавлять значения перечислений.

На закладке «Данные» мы видим все значения перечисления
На закладке «Данные» мы видим все значения перечисления

Лучше это предоставить разработчику программы, ведь все необходимые изменения вносятся обновлением программы, но для нашего примера рассмотрим создание перечислений.

Хотя все ставки уже введены, продолжим на этом примере. Чтобы добавить вариант значения перечисления нажимаем кнопку «Добавить» и в открывшемся окне задаем имя и синоним нового значения.

Добавляем вариант значения перечисления
Добавляем вариант значения перечисления

Задаем значение НашаСтавка (для примера) и видим, что оно появилось в нашем списке. Так можно ввести, например, новые ставки НДС, если у вас не обновлена программа (ставку 20% уж очень хочется видеть в ней).

Задаем значение НашаСтавка
Задаем значение НашаСтавка

Используя имя перечисления, к нему можно обращаться в коде программы напрямую (перечисления из примера – НДС10, НДС18, БезНДС, НДС0).


Если ПредставлениеСтавкаНДС = "НДС18" Тогда 
        СтавкаНДС = Перечисления.СтавкиНДС.НДС18; 
ИначеЕсли ПредставлениеСтавкаНДС = "НДС10" Тогда 
        СтавкаНДС = Перечисления.СтавкиНДС.НДС10; 
ИначеЕсли ПредставлениеСтавкаНДС = "НДСО" Тогда 
        СтавкаНДС = Перечисления.СтавкиНДС.НДСО; 
ИначеЕсли ПредставлениеСтавкаНДС = "ЕезНДС" Тогда

Фрагмент 1


Если ПредставлениеСтавкаНДС = "НДС18" Тогда 
       СтавкаНДС = Перечисления.СтавкиНДС.НДС18; 
ИначеЕсли ПредставлениеСтавкаНДС = "НДС10" Тогда 
       СтавкаНДС = Перечисления.СтавкиНДС.НДС10; 
ИначеЕсли ПредставлениеСтавкаНДС = "НДСО" Тогда 
       СтавкаНДС = Перечисления.СтавкиНДС.НДСО; 
ИначеЕсли ПредставлениеСтавкаНДС = "БезНДС" Тогда 
       СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;

Фрагмент 2

Основными параметрами перечисления являются ссылка на объект и порядок его отображения.

Основными параметрами перечисления являются ссылка на объект и порядок его отображения
Основными параметрами перечисления являются ссылка на объект и порядок его отображения

Формы выбора перечисления представлены формой списка и формой выбора. Каждому перечислению можно задать свою форму выбора и правила формирования списка и выбора перечисления.

Формы выбора перечисления представлены формой списка и формой выбора
Формы выбора перечисления представлены формой списка и формой выбора

Так выглядит перечисление изнутри. Сохраняем наши изменения в «Конфигурация-Сохранить конфигурацию» или просто при закрытии соглашаемся с изменениями.

Так выглядит перечисление изнутри
Так выглядит перечисление изнутри

И далее необходимо обновить конфигурацию базы данных. Или при открытии программы через отладчик, она сама напомнит о том, что данные изменены.

И далее необходимо обновить конфигурацию базы данных
И далее необходимо обновить конфигурацию базы данных

Объект изменен и принимаем предложение об изменении.

Объект изменен и принимаем предложение об изменении
Объект изменен и принимаем предложение об изменении

Отражение изменения списка перечисления в 1С

Открываем программу и проверяем, как отразилось наше изменение «Ввод нового значения перечисления ставки НДС». Откроем в документе «Счет» выбор значения ставок. Мы видим, что в значении выбора появилось созданное нами значение «Наша ставка».

Отражение изменения списка перечисления в 1С
Отражение изменения списка перечисления в 1С

Вид выбора значения перечисления

Рассмотрев, как происходит добавление перечисления в список значений, возникает вопрос: почему и как в некоторых формах мы выбираем из предложенного списка, а в некоторых – устанавливаем переключатель, и т.п. Ведь в самой форме настройки перечисления мы этого не увидели.

Если, например, ставки НДС в документе были представлены в виде открывающегося списка для выбора, то в справочнике «Сотрудники», при вводе нового сотрудника, нам предлагается установить переключатель «Пол». Это тоже элемент перечисление, т.к. мы выбираем из определенного списка – Мужской/Женский.

Вид выбора значения перечисления
Вид выбора значения перечисления

Если мы посмотрим на перечисление в Конфигураторе, то там увидим эти значения.

Перечисление в Конфигураторе
Перечисление в Конфигураторе

Для того чтобы посмотреть настройку их отображения, нам нужно обратиться к тому элементу, где это перечисление используется. В данном примере это справочник «Сотрудники». Открыв его, в дереве метаданных программы мы видим все его настройки, в том числе и выбор пола физического лица – ФизлицоПол, и вид – «Поле переключателя». Поэтому в справочнике мы видим его (перечисление) именно в таком виде.

Поле переключателя
Поле переключателя

Чтобы активировать это окно, в данном случае, мы открыли форму элемента для просмотра.

Откроем форму элемента для просмотра
Откроем форму элемента для просмотра

Сравним, как реализован ввод значения перечисления, которое мы рассматривали в примере – ставки НДС в документе «Счет на оплату покупателю». Для этого также найдем этот элемент в дереве метаданных, но уже в списке документов, и посмотрим форму документа.

Посмотрим форму документа
Посмотрим форму документа

Как видим, значение вида ставки НДС – Поле ввода. Обратите внимание, что при выборе реквизита, в форме этот элемент обведен синей рамкой (см. % НДС).

Для больших списков перечислений удобна такая настройка, а для перечислений, где выбор состоит из двух значений, более удобна настройка выбора в виде переключателя.

Рассказать друзьям
Предыдущая статья статья
Контролируемые сделки в 1С 8.3 Бухгалтерия
Следующая статья статья
1С:Управление торговлей 8 версия 11.5: обзор возможностей
Комментарии