
Справочник в 1С предназначен для хранения постоянного списка объектов с уникальными идентификаторами, такими как контрагенты, номенклатура или сотрудники. Каждый элемент справочника имеет реквизиты и может содержать дополнительные характеристики. Важно учитывать, что справочники поддерживают иерархическую структуру, позволяя строить вложенные группы, что облегчает классификацию и поиск объектов в системе.
Регистры сведений используются для хранения динамических данных, отражающих состояние или свойства объектов во времени. Они не формируют единую иерархию, а позволяют фиксировать изменения по ключам, например, остатки на складах, цены или статусы заказов. В отличие от справочников, регистры сведений поддерживают накопление информации и ведение истории, что критично для аналитики и отчетности.
При проектировании конфигурации следует различать задачи: справочник подходит для структурированных справочных данных, которые редко меняются, а регистр сведений эффективен для фиксирования изменений и аналитических расчетов. В практике 1С рекомендуется использовать справочники для объектов, с которыми работают в документах, а регистры – для расчета показателей и хранения информации, зависящей от времени и контекста.
Назначение справочников и регистров сведений в учете данных

Справочники в 1С предназначены для хранения статической информации, которая используется повторно в различных документах и процессах. Они обеспечивают централизованное управление справочными данными, предотвращают дублирование и упрощают внесение изменений. Например, справочник «Контрагенты» хранит юридические и контактные данные клиентов и поставщиков, что позволяет автоматически заполнять реквизиты в счетах и накладных.
Регистры сведений служат для хранения динамических данных, которые изменяются во времени и характеризуют состояние объектов учета. Они фиксируют параметры, свойства или показатели, влияющие на процессы анализа, отчетности и расчетов. Например, регистр сведений «Цены номенклатуры» содержит информацию о стоимости товаров по датам, обеспечивая корректное формирование документов реализации и закупки.
Справочники и регистры сведений различаются по структуре и назначению:
| Параметр | Справочник | Регистр сведений |
|---|---|---|
| Тип данных | Статические справочные объекты | Динамические показатели и свойства |
| Обновление | Ручное или программное изменение реквизитов | Автоматическое при событиях, изменениях документа |
| Применение | Заполнение документов, справочная информация | Контроль состояния объектов, аналитика и расчеты |
| История изменений | Обычно не ведется | Фиксируется с указанием даты и условий |
Рекомендуется использовать справочники для данных, которые меняются редко и служат основой для документации, а регистры сведений – для показателей, которые требуют учета изменений во времени и анализа состояния объектов. Корректная организация этих объектов повышает точность расчетов, упрощает обработку данных и снижает риск ошибок при формировании отчетности.
Типы данных, которые хранятся в справочниках и регистрах сведений
Справочники в 1С предназначены для хранения структурированных справочных данных, таких как номенклатура, контрагенты, сотрудники, организации. Основные типы данных включают строковые значения для наименований, числовые поля для кодов и идентификаторов, булевы поля для признаков активности и даты для отслеживания сроков действия. Также справочники могут содержать ссылки на другие справочники, что обеспечивает иерархическую структуру данных и возможность построения связей между объектами.
Регистры сведений используются для хранения информации, не являющейся справочной, например: характеристики объектов, состояния учетных единиц, дополнительные параметры. Типы данных включают числовые и строковые значения для количественных и описательных данных, булевы поля для отметок или признаков, даты и интервалы времени для хранения актуальности информации. Регистры могут содержать составные элементы – измерения и реквизиты, где измерения определяют уникальность записи, а реквизиты хранят детализированные значения.
При проектировании важно учитывать типы данных: строки и числа в справочниках должны поддерживать быстрый поиск и сортировку, в регистрах сведений числовые поля рекомендуется использовать для суммирования и аналитики. Ссылочные типы данных позволяют создавать взаимосвязи между объектами и обеспечивают целостность информации. Дата и время в регистрах обеспечивают контроль актуальности и историчности сведений.
Выбор типа данных влияет на производительность и точность обработки. Например, для справочника «Товары» числовой код и строковое наименование ускоряют поиск, а в регистре сведений «Остатки на складах» числовое поле обеспечивает точное суммирование и формирование отчетов. Структура данных должна быть согласована с назначением объекта: справочник фиксирует справочную информацию, регистр сведений – изменяющиеся и аналитические данные.
Механизм создания и редактирования записей в справочниках

Редактирование выполняется выбором существующей записи и внесением изменений в поля формы. Для массовых обновлений используется метод SetValue() или пакетная загрузка через Обработка «Загрузка из файла». Важно соблюдать уникальность кода и корректность ссылочных реквизитов, чтобы избежать ошибок интеграции с другими объектами системы.
Справочники поддерживают иерархическую структуру. Для подчинённых элементов используется реквизит Родитель, который обеспечивает автоматическое формирование дерева. При изменении родителя обновляются связанные пути, что важно учитывать при построении отчетов и отборов.
При редактировании записей следует учитывать типы данных реквизитов: например, числовые поля можно ограничить диапазоном через свойства Минимальное значение и Максимальное значение, а текстовые – через Длину строки. Использование проверок корректности и проверок уникальности на уровне формы предотвращает создание некорректных данных.
Для автоматизации создаются стандартные процедуры: ПередЗаписью и ПриЗаписи, которые позволяют проверять значения, формировать дополнительные реквизиты и регистрировать события изменения. Это обеспечивает целостность данных без вмешательства пользователя и снижает риск дублирования.
Механизм создания и редактирования записей в регистрах сведений
Записи в регистрах сведений создаются через объект Регистратор с указанием даты и значений измерений. Каждое измерение формирует уникальный ключ записи, реквизиты определяют дополнительные данные, которые фиксируются на указанную дату. Метод Записать() сохраняет запись, при этом 1С проверяет уникальность комбинации измерений и периода.
Редактирование осуществляется выборкой существующей записи по ключу измерений и дате, изменением реквизитов и повторной записью через Записать(). При изменении данных создается новая версия записи с актуальной датой, что сохраняет историю и исключает потерю информации.
Для массового обновления применяется объект ОбъектРегистраСведений с циклом по выборке записей. Перед записью рекомендуется проверять наличие существующей записи методом НайтиПоКлючу() или фильтром по измерениям, чтобы избежать дублирования.
Методы Добавить и Удалить позволяют управлять записями в рамках транзакции. Ограничения типа «Обязательное заполнение» и «Уникальность по измерениям» обеспечивают корректность данных. Рекомендуется использовать внешние формы или обработки для редактирования записей, особенно в регистрах с большим числом измерений и зависимостей, чтобы предотвратить ошибки в учетных данных.
Связи между элементами справочника и их использование в документах

Элементы справочника в 1С могут быть связаны между собой с помощью подчинённых и взаимосвязанных элементов, что позволяет выстраивать иерархии и поддерживать корректные ссылки в документах. Использование таких связей обеспечивает целостность данных и автоматизацию расчетов.
Примеры связей:
- Иерархическая связь – родительские и дочерние элементы справочника (например, «Склад» и «Секции склада»).
- Взаимосвязь по типу – элементы разных справочников могут быть связаны через реквизиты (например, «Контрагент» и «Договор» через реквизит «Контрагент»).
- Группировка – объединение элементов по категориям для удобства фильтрации и отбора в документах.
Использование связей в документах:
- Автозаполнение реквизитов. При выборе элемента справочника, связанного с другими справочниками, автоматически подставляются реквизиты, что ускоряет ввод данных.
- Контроль корректности. Документ не может ссылаться на несуществующий элемент, что предотвращает ошибки при проведении операций.
- Фильтрация и отбор. Связанные элементы позволяют строить отчеты с учетом иерархий и категорий, например, показывать движение товаров по конкретным секциям склада.
- Поддержка регистров. Связанные элементы справочника автоматически учитываются в регистрах сведений и накопления, обеспечивая точность аналитики.
Рекомендации по работе со связями:
- Структурировать справочники с учетом будущих документов и отчетов.
- Использовать уникальные коды для элементов, чтобы ссылки оставались корректными при изменении наименований.
- Применять иерархии только там, где это повышает удобство ведения документов и аналитики.
- Регулярно проверять целостность ссылок через стандартные обработки 1С.
Корректное использование связей между элементами справочников снижает риск ошибок при документообороте и обеспечивает точное формирование аналитических данных.
Условия ведения истории изменений в регистрах сведений

В регистрах сведений 1С история изменений фиксируется только при включении соответствующего флага в настройках объекта. Для каждого измерения можно определить, будет ли отслеживаться изменение значений показателей. История формируется автоматически при добавлении, изменении или удалении записей.
Ведение истории требует указания периодичности актуальности данных. Если запись регистрового документа актуальна на определённый момент времени, при изменении значения создаётся новая запись с изменённой датой, а старая сохраняется. Это позволяет сохранять полный хронологический контекст.
Рекомендуется включать историю для ключевых измерений, влияющих на аналитические отчёты и расчёты. Необоснованное включение ведения истории для всех полей увеличивает нагрузку на базу данных и замедляет операции обновления.
Для контролируемых показателей можно использовать ограничения на изменения. Например, запрет модификации старых записей или сохранение изменений только после проведения документа. Это исключает искажение аналитических данных и упрощает аудит.
Регистры сведений с историей поддерживают восстановление состояния на любую дату. Для этого важно правильно настроить индексы по измерениям и дате, чтобы запросы на выборку исторических данных выполнялись быстро и корректно.
Ограничения и проверки уникальности данных в справочниках и регистрах

Регистры сведений отличаются тем, что уникальность записей формируется комбинацией нескольких реквизитов, включая измерения и период. Для проверки корректности данных можно использовать механизм уникальных индексов, задаваемых в конфигураторе. Индекс контролирует, чтобы одна и та же комбинация измерений не появлялась повторно.
В справочниках можно ограничивать значения через проверки при записи. Например, для реквизита «ИНН» можно использовать обработку события ПередЗаписью и проверять формат, длину и уникальность. В регистрах сведений аналогично применяются проверки уникальности записей в процедурах перед добавлением строки.
При проектировании важно учитывать, что регистры сведений не поддерживают автоматическое устранение дубликатов. Все проверки ложатся на код обработки или встроенные индексы. Для справочников допустимо использовать свойства реквизитов «Обязательное» и «Уникальное», что снижает вероятность ошибок при массовой загрузке данных.
Для повышения надежности рекомендуется комбинировать уникальные индексы и события ПередЗаписью. Это позволяет контролировать не только техническую уникальность, но и логическую корректность информации, например, исключать совпадения по нескольким реквизитам одновременно.
Примеры практического применения справочников и регистров сведений

Справочники в 1С применяются для хранения статических данных, к которым регулярно обращаются документы и отчеты. Примеры:
- Сотрудники: хранение ФИО, должностей, подразделений и контактной информации. Используется при формировании табелей, расчетах зарплаты и распределении задач.
- Контрагенты: данные о клиентах и поставщиках, включая ИНН, реквизиты и банковские счета. Обеспечивает корректное оформление счетов и договоров.
- Номенклатура: информация о товарах и услугах, их характеристиках, единицах измерения, ценах и категориях. Применяется для формирования заказов и остатков на складах.
Регистры сведений используются для учета динамических данных и хранения связей, которые изменяются со временем. Примеры:
- Регистры сведений о лицензиях: хранение информации о сроках действия лицензий сотрудников или программного обеспечения, уведомления о необходимости продления.
- Регистры тарифов и цен: учет изменения цен на товары или услуги по датам и категориям клиентов, автоматическое применение актуальных тарифов при расчете документа.
- Регистры сведений о расписании: хранение смен, графиков работы сотрудников, плановых ремонтов оборудования. Используется для контроля занятости и планирования ресурсов.
Рекомендации по практическому использованию:
- Справочники создаются для объектов, данные о которых редко меняются, и которые повторно используются в документах.
- Регистры сведений подходят для учета событий, изменений и отношений между объектами с привязкой ко времени.
- Для ускорения работы системы рекомендуется объединять справочники с индексами по ключевым полям и использовать регистры для хранения только актуальной информации, удаляя устаревшие записи.
- Использовать регистры сведений для контроля изменений, чтобы анализировать динамику данных и строить отчеты без дублирования информации в справочниках.
Вопрос-ответ:
В чем основное различие между справочником и регистром сведений в 1С?
Справочник предназначен для хранения статических данных, таких как номенклатура, контрагенты или сотрудники. Он позволяет создавать отдельные элементы с уникальными характеристиками и быстро их искать. Регистр сведений хранит динамические данные, связанные с изменениями во времени, например, тарифы, графики отпусков или остатки материалов. В отличие от справочника, регистр может фиксировать историю изменений и имеет возможность учета периода действия записей.
Можно ли использовать справочник для учета остатков товаров вместо регистра сведений?
Использовать справочник для учета остатков товаров можно, но это неудобно и небезопасно. Справочник не хранит историю изменений и не учитывает периоды действия записей, поэтому корректное отражение остатков при движениях по складу будет затруднено. Для таких целей лучше применять регистр сведений или регистр накопления, которые рассчитаны на фиксацию динамических данных с возможностью анализа по датам.
Какие типы данных лучше хранить в регистре сведений, а не в справочнике?
В регистре сведений лучше хранить данные, которые меняются со временем и требуют истории изменений. Например, тарифные ставки, сведения о лицензиях, начисления или индивидуальные условия для клиентов. Если данные стабильны и редко изменяются, их целесообразнее хранить в справочнике, так как регистр не предназначен для длительного хранения статических объектов.
Как поведение справочника отличается от регистра при поиске и фильтрации данных?
Справочник позволяет быстро находить элемент по коду, наименованию или другим реквизитам, он оптимизирован для прямого поиска. Регистры сведений ориентированы на выборки по периодам и условиям, поэтому поиск в них строится с учетом временных интервалов и дополнительных измерений. Это делает регистры удобными для анализа динамики и формирования отчетов, но менее удобными для одиночного обращения к конкретному элементу.
Можно ли связать справочник и регистр сведений между собой?
Да, связь между справочником и регистром сведений возможна. Обычно в регистре в качестве измерения или реквизита используют ссылку на элемент справочника. Например, в регистре тарифов можно хранить ссылку на справочник сотрудников или номенклатуры. Это позволяет объединять статические данные и динамические показатели, сохраняя при этом структуру и корректность информации.
