Разработка и Конфигурация · 11 мин
Как создать объект «Справочник» в 1С и описать его структуру
Пошаговая инструкция: как создать объект «Справочник» в конфигураторе 1С, описать реквизиты, табличные части, иерархию, коды и настроить структуру данных.
Справочник — один из базовых объектов конфигурации 1С, предназначенный для хранения условно-постоянной нормативно-справочной информации: номенклатуры, контрагентов, сотрудников, складов, валют. Элементы справочника многократно используются в документах и отчётах, поэтому правильно спроектированная структура справочника напрямую влияет на удобство учёта.
Создание справочника выполняется в конфигураторе и состоит из двух этапов: добавления самого объекта в дерево конфигурации и описания его структуры — кода, наименования, реквизитов, табличных частей, иерархии и подчинённости. Ниже разобран каждый шаг с указанием свойств, которые стоит настроить сразу, чтобы не переделывать структуру после заполнения базы данными.
Инструкция ориентирована на платформу 1С:Предприятие 8.3 и управляемые формы, но общая логика справедлива и для обычного приложения — отличается в основном внешний вид палитры свойств.
Где создаётся справочник: открытие конфигуратора и дерева конфигурации
Запустите конфигуратор и откройте конфигурацию через меню «Конфигурация → Открыть конфигурацию». Если конфигурация открывается впервые, платформа предложит создать пустую заготовку — согласитесь. Рабочим инструментом станет дерево конфигурации, которое отображается в левой части окна.
В дереве найдите ветку «Справочники». Здесь перечислены все справочники конфигурации: в типовых решениях их десятки, в пустой конфигурации ветка будет пустой. Щёлкните по ветке правой кнопкой мыши и выберите «Добавить» — откроется окно редактирования нового объекта с закладками «Основные», «Данные», «Иерархия», «Владельцы», «Нумерация» и другими.
Если конфигурация находится на поддержке без возможности изменения (типовая с закрытым замком), добавить объект не получится — потребуется включить возможность изменения или использовать расширение конфигурации. В расширениях добавление собственных справочников поддерживается начиная с версий платформы 8.3.11 и выше.
Основные свойства: имя, синоним и представление объекта
На закладке «Основные» задайте Имя — идентификатор объекта на встроенном языке. Имя пишется латиницей или кириллицей без пробелов, например Номенклатура или Склады. Именно по имени к справочнику обращаются в коде: Справочники.Номенклатура. Переименование после того, как на объект завязан код и другие объекты, потребует рефакторинга, поэтому выбирайте имя сразу.
Синоним — это представление объекта для пользователя, оно отображается в интерфейсе, списках и отчётах. Синоним заполняется автоматически по имени, но его можно поправить: например, «Склады (места хранения)». Дополнительно настройте представления объекта и списка — они используются в заголовках форм и кнопках создания.
Здесь же определяется длина кода и наименования. По умолчанию код имеет длину 9 символов, наименование — 25. Для наименований товаров 25 символов почти всегда мало — сразу увеличьте до 100–150. Уменьшить длину после заполнения базы проблематично: платформа потребует обрезать существующие значения.
Код и наименование: стандартные реквизиты справочника
У каждого справочника есть два стандартных реквизита, которые нельзя удалить: Код и Наименование. Код — уникальный идентификатор элемента в пределах справочника, по умолчанию числовой с автонумерацией. Наименование — основное текстовое представление элемента.
На закладке «Нумерация» управляются свойства кода: тип (число или строка), автонумерация, контроль уникальности и периодичность. Строковый код нужен, когда коды формируются по внешним правилам — например, артикулы поставщика или штрихкоды. Если включён контроль уникальности, платформа не даст записать два элемента с одинаковым кодом.
Наименование может быть отключено совсем (длина 0) — это уместно для служебных справочников, где элемент идентифицируется только кодом или реквизитом. Но в большинстве случаев наименование оставляют: именно оно выводится при выборе элемента в документах.
Реквизиты: как добавить дополнительные поля
Реквизиты — это дополнительные поля элемента справочника: артикул, ставка НДС, единица измерения, ИНН контрагента. Добавляются они на закладке «Данные» кнопкой «Добавить реквизит». Для каждого реквизита задаются имя, синоним и тип данных.
Тип может быть примитивным (строка, число, дата, булево) или ссылочным — ссылкой на другой справочник, документ, перечисление. Например, реквизит «Основной склад» в справочнике «Номенклатура» будет иметь тип СправочникСсылка.Склады. Составной тип (несколько типов одновременно) допустим, но замедляет работу и усложняет запросы — используйте его только при реальной необходимости.
Полезные свойства реквизита: «Проверка заполнения» (выдавать ошибку при пустом значении), «Индексировать» (ускоряет поиск по реквизиту в больших списках), «Значение заполнения» (значение по умолчанию для новых элементов). Для строковых реквизитов задавайте осмысленную длину — неограниченные строки нельзя использовать в индексах и части запросов.
- 1Откройте справочник в дереве конфигурации двойным щелчком
- 2Перейдите на закладку «Данные»
- 3Нажмите «Добавить реквизит» и введите имя без пробелов
- 4Выберите тип данных: примитивный или ссылку на другой объект
- 5Настройте длину, проверку заполнения и значение по умолчанию
- 6Обновите конфигурацию базы данных (F7) и проверьте форму элемента
Табличные части: когда одного списка полей недостаточно
Табличная часть — это набор строк, привязанный к элементу справочника. Классический пример: у контрагента несколько банковских счетов, у товара — несколько единиц измерения. Табличная часть добавляется на закладке «Данные» кнопкой «Добавить табличную часть», а её колонки описываются так же, как реквизиты.
Используйте табличную часть, когда данные повторяются внутри одного элемента и не имеют самостоятельной жизни. Если же строки должны использоваться в документах как самостоятельные объекты (например, договоры контрагента, на которые ссылаются заказы), правильнее создать отдельный подчинённый справочник — он задаётся на закладке «Владельцы» и обеспечивает ссылочную целостность.
Табличная часть или подчинённый справочник
Подходит для простых списков внутри элемента: контакты, единицы измерения. Ограничение: на строки нельзя ссылаться из документов.
Нужен, когда строки используются как самостоятельные объекты: договоры, банковские счета, цены. Требует отдельной структуры и форм.
Иерархия, подчинённость и предопределённые элементы
На закладке «Иерархия» включается древовидная структура справочника. Доступны два вида: иерархия групп и элементов (группы не участвуют в учёте, как папки в номенклатуре) и иерархия элементов (любой элемент может быть родителем, как в справочнике подразделений). Для номенклатуры и контрагентов почти всегда выбирают первый вариант.
Подчинённость настраивается на закладке «Владельцы»: укажите справочник-владелец, и каждый элемент будет жёстко привязан к элементу владельца. Пример — справочник «Договоры» с владельцем «Контрагенты»: при выборе договора в документе платформа покажет только договоры выбранного контрагента.
Предопределённые элементы создаются в конфигураторе на закладке «Прочее → Предопределённые данные». Они существуют в базе всегда, их нельзя удалить в пользовательском режиме, и к ним можно обращаться из кода по имени: Справочники.Валюты.Рубль. Используйте их для значений, от которых зависит логика программы.
НовыйЭлемент = Справочники.Номенклатура.СоздатьЭлемент();
НовыйЭлемент.Наименование = "Тестовый товар";
НовыйЭлемент.Артикул = "Т-001";
НовыйЭлемент.Записать();Формы, публикация структуры и обновление базы данных
После описания структуры платформа автоматически генерирует формы элемента и списка. Если расположение полей не устраивает, создайте основную форму элемента вручную: закладка «Формы» → добавить → выбрать тип «Форма элемента». В конструкторе формы перетащите реквизиты в нужном порядке, сгруппируйте их по страницам.
Финальный обязательный шаг — обновление конфигурации базы данных: клавиша F7 или меню «Конфигурация → Обновить конфигурацию базы данных». Платформа покажет список изменений (новая таблица, новые поля) и выполнит реструктуризацию. Добавление реквизитов — безопасная операция, но на больших базах она может занять время и требует монопольного доступа.
Проверьте результат в режиме «1С:Предприятие»: откройте список справочника, создайте элемент, заполните реквизиты и табличную часть, убедитесь, что срабатывает контроль заполнения и автонумерация. Если справочник не виден в интерфейсе, проверьте, что он включён хотя бы в одну подсистему (закладка «Подсистемы» или командный интерфейс).
Частые вопросы по созданию справочников
Чем справочник отличается от перечисления?
Перечисление — это фиксированный список значений, заданный в конфигураторе; пользователь не может его пополнять. Справочник заполняется в режиме предприятия и может содержать сколько угодно элементов. Если список значений закрыт и используется в логике кода (виды операций, статусы) — выбирайте перечисление, иначе справочник.
Можно ли изменить структуру справочника, когда база уже заполнена?
Да, добавление реквизитов и табличных частей безопасно. Опасны обратные операции: удаление реквизитов, сокращение длины строк, смена типа на несовместимый — платформа предупредит о потере данных, и отменить это после обновления нельзя. Перед такими изменениями делайте выгрузку базы.
Как сделать, чтобы код заполнялся автоматически?
На закладке «Нумерация» включите свойство «Автонумерация» — платформа сама присвоит следующий номер. Для числового кода также обычно включают контроль уникальности. Если нужна сложная логика кодирования (префиксы, даты), её реализуют в обработчике «ПриУстановкеНовогоКода» модуля объекта.
Нужно ли создавать формы вручную?
Нет: если формы не заданы, платформа генерирует их автоматически по структуре объекта. Ручная разработка нужна, когда требуется нестандартное расположение полей, группировка по страницам, программная логика на форме или особый вид списка.
Что такое предопределённые элементы и когда они нужны?
Это элементы, созданные в конфигураторе и присутствующие в базе всегда. Они нужны, когда код программы опирается на конкретное значение: валюта учёта, основная единица измерения, служебный контрагент. К ним обращаются по имени через менеджер справочника, и пользователь не может их удалить.
Можно ли добавить справочник, не снимая типовую конфигурацию с поддержки?
Да, через механизм расширений конфигурации — в современных версиях платформы расширения позволяют добавлять собственные справочники. Это предпочтительный путь: типовая конфигурация остаётся на поддержке и обновляется штатно, а ваши доработки живут отдельно.
Что важно запомнить
Справочник создаётся в дереве конфигурации: задайте имя, длину наименования с запасом, настройте код и нумерацию, добавьте реквизиты и табличные части, при необходимости включите иерархию и подчинённость. Завершайте работу обновлением конфигурации базы данных и проверкой в пользовательском режиме, а перед изменением структуры рабочей базы делайте резервную копию.