Войти Регистрация
Корзина 0 позиций
на сумму 0 ₽
8 (495) 128-66-56
Время работы:
Пн-Пт 09:00 - 18:00

Справочники

Что такое справочник 1С и зачем он нужен?

Справочники в 1С – объекты для хранения однородно постоянной и условно постоянной информации. В справочниках системы 1С Предприятие 8.3 обычно хранят:

  • список физических лиц
  • список сотрудников
  • виды документов
  • номенклатуру
  • список организаций и т.п.

Каждая запись в справочнике называется элементом справочника.

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

Добавление справочника в конфигурацию 1С 8.3.

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

Для примера добавим новый справочник и на открытой вкладке “Основные” в поле “Имя” введем название: “ПримерСправочника”. Как мы зададим поле “Имя” справочника, так мы сможем обратиться к нему из кода в конфигураторе 1C. Синоним зададим “(Softrema) Пример справочника”.

Синоним – это название справочника, которое мы будем видеть в пользовательском режиме.

Вкладка “Подсистемы”.

На этой вкладке можем отметить к каким подсистемам относится справочник, например, подсистемы могут быть: “Закупки”, “Продажи”, “Казначейство”, “Бюджетирование” и т.п.

Подсистемы служат для того, чтобы логически разделить предназначение объекта метаданных. Не редки случаи, когда один справочник относится к нескольким подсистемам, например, “Продажи”, и к подсистеме “Закупки”, примером служит справочник “Партнеры” в УТ (Управлении торговлей).

Вкладка “Иерархия”.

Содержит настройки для создания справочника иерархичным.

Вид иерархии справочника может выбран один из списка:

  • Иерархия групп и элементов. Является классическим вариантом, который содержит папки и вложенные в них элементы.
  • Иерархия элементов. При данной настройке элементы справочника могут выступать еще и родителями дочерних записей.

Отличия данных настроек приведены на картинках.

Вкладка “Владельцы”.

У справочника может быть владелец, что бы понять смысл данной опции, представим, что у нас есть два справочника, “Регион” и “Офис”. В справочнике “Регион” перечислены регионы страны, а в справочнике “Офис” представлены офисы, входящие в данный регион. Т.к. “Офис” подчинен своему “Региону”, справочник “Регион” будет владельцем справочника “Офис”.

Вкладка “Данные”.

На данной вкладке можно добавить новые реквизиты справочника и табличные части. На данной вкладке нужно внимательно отнестись к полям “Длина кода” и “Длина наименования” справочника. Длина наименования может быть максимум 150 символов.

Вкладка “Формы”.

Объект метаданных “Справочник” поддерживает следующие формы:

  • форма элемента
  • форма группы
  • форма списка
  • форма выбора
  • форма выбора группы

Рассмотрим некоторые из них.

Форма элемента открывается тогда, когда мы открываем элемент справочника из 1С Предприятия. Что бы программно открыть новую форму элемента справочника достаточно написать код:

ОткрытьФорму("Справочник. ПримерСправочника.ФормаОбъекта");

Если необходимо открыть форму справочника модально, нужно написать следующий код:

ОткрытьФорму("Справочник. ПримерСправочника.ФормаОбъекта",, ЭтаФорма);

В третьем параметром указываем значение “ЭтаФорма”, это будет означать, что текущая форма является владельцем открываемой формы. Оба примера необходимо выполнять в функции или процедуре с директивой “&НаКлиенте”, т.к. формы открываются только на клиенте.

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

ОткрытьФорму("Справочник. ПримерСправочника.ФормаСписка");

Форма выбора справочника. Форма выбора справочника открывается, тогда, когда мы выбираем элемент, например, если мы принимаем на работу сотрудника, мы кликаем по реквизиту “Сотрудник” из документа “Прием на работу” и перед нами открывается форма со списком сотрудников, именно эта форма и называется формой выбора справочника.

Как создать новую группу справочника?

Для создания новой группы справочника нужно выполнить код на 1С:

НоваяГруппаСправочника = Справочники.ПримерСправочника. СоздатьГруппу();
НоваяГруппаСправочника.Наименование = "Новая группа справочника";
НоваяГруппаСправочника.Записать();

Как создать элемент справочника программно?

Новый элемент справочника создается аналогично предыдущему примеру:

НовыйЭлементСправочника = Справочники.ПримерСправочника. СоздатьЭлемент();
НовыйЭлементСправочника.Наименование = "Имя нового элемента справочника";
НовыйЭлементСправочника.Записать();

Как создать элемент справочника в группе?

Для того, чтобы разместить новый элемент справочника в группе, достаточно в предыдущем примере при создании элемента указать строчку перед вызовом функции “Записать()”:

НовыйЭлементСправочника.Родитель = НоваяГруппаСправочника.Ссылка;

Как получить нужное нам значение справочника?

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

Запросы к справочникам 1С.

Описываются через конструкцию “Запрос”, например, выберем из справочника значения реквизитов Ссылка, Владелец и Родитель:

Запрос = Новый Запрос("ВЫБРАТЬ
| ПримерСправочника.Ссылка КАК Ссылка,
| ПримерСправочника.Владелец КАК Владелец,
| ПримерСправочника.Родитель КАК Родитель
|ИЗ
| Справочник.ПримерСправочника КАК ПримерСправочника");
ЗапросВыборка = Запрос.Выполнить().Выбрать();
Пока ЗапросВыборка.Следующий() Цикл
ЗначениеЭлементаСправочника = ЗапросВыборка.Ссылка;
ВладелецЭлементаСправочника = ЗапросВыборка.Владелец;
РодительЭлементаСправочника = ЗапросВыборка.Родитель;
КонецЦикла;

Функции поиска элементов, поддерживаемые самим справочником.

Что бы найти нужный нам элемент, можно воспользоваться функциями:

НайтиПоКоду(“Код справочника”);

В параметрах нужно указать код искомого элемента справочника

Или
НайтиПоНаименованию (“Наименование элемента”);

В данном случае необходимо указать название искомого элемента.

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

Вернуться назад
Войти Регистрация
Корзина 0 позиций
на сумму 0 ₽