Метаданные 1С
Метаданные 1С — это совокупность формализованных описаний структуры, свойств и взаимосвязей объектов конфигурации, хранящаяся в составе информационной базы платформы «1С:Предприятие». Метаданные определяют логику прикладного решения: состав справочников, документов, регистров, отчётов, алгоритмы их поведения, формы ввода и вывода, а также права доступа. В отличие от данных, которые представляют собой конкретные значения (например, наименование товара или сумма документа), метаданные описывают, как эти данные организованы и обрабатываются.
Архитектура и структура метаданных
Метаданные в 1С организованы иерархически и образуют дерево метаданных. Каждый элемент этого дерева называется объектом метаданных и принадлежит к определённому типу. Корнем дерева является сама конфигурация, которая может содержать подчинённые объекты: справочники, документы, регистры, перечисления, отчёты, обработки и другие.
Основные типы объектов метаданных
Платформа «1С:Предприятие» поддерживает фиксированный набор типов объектов метаданных, каждый из которых предназначен для решения определённых задач:
- Справочники — для хранения условно-постоянной информации (списки товаров, контрагентов, сотрудников).
- Документы — для отражения хозяйственных операций (приходная накладная, счёт на оплату, приказ о приёме на работу).
- Регистры — для накопления и анализа данных (регистры остатков, оборотов, сведений).
- Перечисления — для задания фиксированных наборов значений (виды оплат, статусы заказов).
- Отчёты и обработки — для формирования выходных данных и выполнения сервисных действий.
- Планы видов характеристик — для создания пользовательских аналитик (например, дополнительные реквизиты товаров).
- Планы обмена — для настройки синхронизации данных между информационными базами.
- Бизнес-процессы и задачи — для автоматизации workflow (согласование заявок, утверждение документов).
Каждый объект метаданных, в свою очередь, содержит набор свойств (реквизитов), табличных частей, форм, макетов и команд. Например, справочник «Номенклатура» может иметь реквизиты «Наименование», «Артикул», «Единица измерения», а также табличную часть «Цены» для хранения истории цен.
Свойства и реквизиты
Реквизиты объекта метаданных определяют структуру хранимых данных. Для каждого реквизита задаётся:
- Имя — идентификатор для обращения из кода.
- Тип — строка, число, дата, ссылка на другой объект метаданных (например, ссылка на справочник «Контрагенты»).
- Синоним — представление для пользователя.
- Длина, точность — для строковых и числовых типов.
- Режим редактирования — доступность изменения в форме.
Разработка и редактирование метаданных
Метаданные создаются и изменяются разработчиком в среде «Конфигуратор», входящей в состав платформы «1С:Предприятие». Конфигуратор предоставляет визуальный интерфейс для работы с деревом метаданных, а также редактор кода на встроенном языке 1С. После внесения изменений в метаданные (например, добавления нового реквизита или документа) необходимо выполнить обновление конфигурации базы данных, чтобы изменения вступили в силу.
Объектная модель
Внутренне метаданные представляют собой набор программных объектов, доступных для чтения и модификации из встроенного языка. Разработчик может программно обходить дерево метаданных, получать информацию о типах объектов, их реквизитах и формах. Например, конструкция Метаданные.Справочники.Номенклатура.Реквизиты.Артикул возвращает объект, описывающий реквизит «Артикул» справочника «Номенклатура». Это позволяет создавать универсальные алгоритмы, работающие с произвольными конфигурациями.
Хранение и сериализация
Метаданные хранятся в составе информационной базы в служебных таблицах. При выгрузке конфигурации в файл (формат .cf) метаданные сериализуются в XML-подобную структуру. Это позволяет передавать конфигурации между разными базами, версионировать их с помощью систем контроля версий (например, Git) и выполнять автоматизированное тестирование.
Версионирование и сравнение
Платформа поддерживает механизмы сравнения и объединения конфигураций, основанные на анализе различий в метаданных. Разработчик может увидеть, какие объекты были добавлены, изменены или удалены в новой версии, и принять решение о применении изменений. Это особенно важно при работе в команде, когда несколько разработчиков вносят правки в одну конфигурацию.
Применение метаданных
Метаданные являются основой для функционирования всех механизмов платформы:
- Формы — автоматически строятся на основе метаданных. Например, форма элемента справочника генерируется исходя из состава его реквизитов. Разработчик может дорабатывать формы вручную, но платформа всегда учитывает метаданные при отображении.
- Запросы — язык запросов 1С оперирует именами объектов метаданных (например,
Справочник.Номенклатура). Платформа автоматически подставляет фактические имена таблиц базы данных. - Права доступа — настройка ролей и прав производится на уровне объектов метаданных: можно запретить чтение справочника, редактирование документа или просмотр отчёта.
- Обмен данными — правила обмена (планы обмена) задают, какие объекты метаданных участвуют в синхронизации и как сопоставляются их реквизиты.
Отличия от метаданных в других системах
В отличие от реляционных СУБД, где метаданные обычно описывают только структуру таблиц и связей, метаданные 1С включают гораздо более широкий спектр информации: бизнес-логику (проведение документов, движения по регистрам), пользовательские интерфейсы (формы, командные интерфейсы), права доступа и алгоритмы. Это делает платформу «1С:Предприятие» примером метаданных-ориентированной архитектуры, где прикладное решение в значительной степени описывается метаданными, а не только программным кодом.
Интересные факты
- Метаданные 1С могут быть выгружены в формат XML, что позволяет анализировать их сторонними инструментами, например, для автоматической генерации документации.
- Существуют специализированные утилиты (например, «Конфигуратор-Сравнение»), которые позволяют сравнивать метаданные двух конфигураций без загрузки в платформу.
- В версиях платформы 8.3 появилась возможность расширения метаданных без изменения основной конфигурации — механизм расширений конфигурации. Это позволяет добавлять новые объекты и изменять существующие, не затрагивая исходную поставку.
Источники
- Радченко М.Г., Хрусталёва Е.Ю. «1С:Предприятие 8.3. Практическое пособие разработчика». — М.: 1С-Паблишинг, 2020.
- Официальная документация фирмы «1С»: «Архитектура платформы 1С:Предприятие 8.3».
- Гончаров Д.И. «Разработка и администрирование информационных систем на платформе 1С:Предприятие». — СПб.: Питер, 2019.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →