Files
sfera/docs/1c-metadata-structure.md
2026-05-16 19:03:49 +03:00

15 KiB
Raw Permalink Blame History

Структура объектов метаданных 1С для дерева SFERA

Дата фиксации: 2026-05-09.

Назначение документа: единая опорная модель для загрузчика метаданных из 1С и дерева SFERA IDE. Реальные объекты, имена и состав узлов должны приходить из выгрузки конфигурации 1С/SIR. В коде интерфейса допустимо хранить только типы объектов, правила группировки, иконки и шаблоны подчинённых узлов.

Источники

Отдельной публичной документации 1C:Enterprise 8.5 Developer Guide на kb.1ci.com при проверке не найдено. До появления официальной ветки 8.5 используем модель 8.3 как базовую и оставляем место под версионные отличия.

Принципы дерева

  1. В Designer/Конфигураторе типы объектов метаданных сгруппированы в дереве конфигурации.
  2. Объект метаданных описывает структуру и поведение, но не хранит конкретные пользовательские данные.
  3. Внутри объектов есть подчинённые объекты: реквизиты, табличные части, формы, команды, макеты, модули, измерения, ресурсы, права и т.д.
  4. SFERA не должна создавать плоский список. Дерево строится по типу объекта и подчинённым коллекциям.
  5. Узел Задачи 1С внутри конфигуратора является типом метаданных 1С. Узел Задачи верхнего уровня SFERA является системой разработки.

Корневые ветки конфигурации

Конфигурация
├── Общие
├── Константы
├── Справочники
├── Документы
├── Журналы документов
├── Перечисления
├── Отчеты
├── Обработки
├── Планы видов характеристик
├── Планы счетов
├── Планы видов расчета
├── Регистры сведений
├── Регистры накопления
├── Регистры бухгалтерии
├── Регистры расчета
├── Бизнес-процессы
├── Задачи
├── Внешние источники данных
└── Расширения конфигурации

Ветка "Общие"

Общие
├── Подсистемы
├── Общие модули
├── Параметры сеанса
├── Роли
├── Общие реквизиты
├── Планы обмена
├── Критерии отбора
├── Подписки на события
├── Регламентные задания
├── Функциональные опции
├── Параметры функциональных опций
├── Определяемые типы
├── Хранилища настроек
├── Общие команды
├── Группы команд
├── Общие формы
├── Общие макеты
├── Общие картинки
├── XDTO-пакеты
├── Web-сервисы
├── HTTP-сервисы
├── WS-ссылки
├── WebSocket-клиенты
├── Сервисы интеграции
├── Цвета палитры
├── Элементы стиля
├── Стили
└── Языки

Шаблоны подчинённых узлов

Справочник

Справочники
└── <ИмяСправочника>
    ├── Реквизиты
    ├── Табличные части
    │   └── <ИмяТабличнойЧасти>
    │       ├── Реквизиты
    │       └── Индексы
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль объекта
    ├── Модуль менеджера
    ├── Права
    ├── Предопределенные данные
    └── SFERA: Версии / Проверки / Инциденты / Знания

Документ

Документы
└── <ИмяДокумента>
    ├── Реквизиты
    ├── Табличные части
    │   └── <ИмяТабличнойЧасти>
    │       ├── Реквизиты
    │       └── Индексы
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Движения
    │   ├── Регистры сведений
    │   ├── Регистры накопления
    │   ├── Регистры бухгалтерии
    │   └── Регистры расчета
    ├── Последовательности
    ├── Нумераторы
    ├── Модуль объекта
    ├── Модуль менеджера
    ├── Права
    └── SFERA: Версии / Проверки / Инциденты / Знания

Журнал документов

Журналы документов
└── <ИмяЖурнала>
    ├── Графы
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль менеджера
    └── Права

Перечисление

Перечисления
└── <ИмяПеречисления>
    ├── Значения
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль менеджера
    └── Права

Отчет

Отчеты
└── <ИмяОтчета>
    ├── СКД
    │   ├── Наборы данных
    │   ├── Запросы
    │   ├── Поля
    │   ├── Ресурсы
    │   ├── Группировки
    │   ├── Отборы
    │   └── Варианты
    ├── Реквизиты
    ├── Табличные части
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль объекта
    ├── Модуль менеджера
    └── Права

Обработка

Обработки
└── <ИмяОбработки>
    ├── Реквизиты
    ├── Табличные части
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль объекта
    ├── Модуль менеджера
    └── Права

План видов характеристик

Планы видов характеристик
└── <ИмяПВХ>
    ├── Реквизиты
    ├── Табличные части
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль объекта
    ├── Модуль менеджера
    ├── Предопределенные данные
    └── Права

План счетов

Планы счетов
└── <ИмяПланаСчетов>
    ├── Признаки учета
    ├── Признаки учета субконто
    ├── Табличные части
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль объекта
    ├── Модуль менеджера
    ├── Предопределенные данные
    └── Права

План видов расчета

Планы видов расчета
└── <ИмяПВР>
    ├── Реквизиты
    ├── Табличные части
    ├── Вытесняющие виды расчета
    ├── Ведущие виды расчета
    ├── Базовые виды расчета
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль объекта
    ├── Модуль менеджера
    └── Права

Регистр сведений

Регистры сведений
└── <ИмяРегистра>
    ├── Измерения
    ├── Ресурсы
    ├── Реквизиты
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль набора записей
    ├── Модуль менеджера
    ├── Кто пишет
    ├── Кто читает
    └── Права

Регистр накопления

Регистры накопления
└── <ИмяРегистра>
    ├── Измерения
    ├── Ресурсы
    ├── Реквизиты
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль набора записей
    ├── Модуль менеджера
    ├── Кто пишет
    ├── Кто читает
    └── Права

Регистр бухгалтерии

Регистры бухгалтерии
└── <ИмяРегистра>
    ├── Измерения
    ├── Ресурсы
    ├── Реквизиты
    ├── Признаки учета
    ├── Признаки учета субконто
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль набора записей
    ├── Модуль менеджера
    └── Права

Регистр расчета

Регистры расчета
└── <ИмяРегистра>
    ├── Измерения
    ├── Ресурсы
    ├── Реквизиты
    ├── Перерасчеты
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль набора записей
    ├── Модуль менеджера
    └── Права

Бизнес-процесс

Бизнес-процессы
└── <ИмяБизнесПроцесса>
    ├── Реквизиты
    ├── Табличные части
    ├── Карта маршрута
    ├── Точки маршрута
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль объекта
    ├── Модуль менеджера
    └── Права

Задача 1С

Задачи
└── <ИмяЗадачи>
    ├── Реквизиты
    ├── Табличные части
    ├── Адресация
    ├── Формы
    ├── Команды
    ├── Макеты
    ├── Модуль объекта
    ├── Модуль менеджера
    └── Права

Внешний источник данных

Внешние источники данных
└── <ИмяИсточника>
    ├── Таблицы
    │   └── <ИмяТаблицы>
    │       └── Поля
    ├── Кубы
    ├── Функции
    ├── Формы
    ├── Команды
    └── Макеты

Универсальные подчинённые узлы

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

  • Реквизиты
  • Табличные части
  • Формы
  • Команды
  • Макеты
  • Модуль объекта
  • Модуль менеджера
  • Модуль набора записей
  • Права
  • Предопределенные данные
  • Измерения
  • Ресурсы
  • Графы
  • Значения
  • Перерасчеты
  • Движения
  • Адресация
  • СКД
  • URL-шаблоны
  • Методы
  • Контракты
  • Обработчики

Правило для SFERA

Загрузчик метаданных должен сохранять:

  • metadata_type: тип объекта 1С;
  • name: имя объекта из конфигурации;
  • synonym: синоним;
  • qualified_name: полное имя вида Документ.Имя, Справочник.Имя.Форма.ФормаЭлемента;
  • parent: родительский узел;
  • children: подчинённые коллекции;
  • module_kind: тип модуля, если узел является модулем;
  • rights: права/ограничения доступа;
  • extension_origin: основная конфигурация или расширение;
  • version_origin: снимок/версия/задача;
  • sfera_overlays: проверки, инциденты, знания, владельцы, runtime-события.

UI-дерево обязано строиться из этой структуры. Любые демонстрационные имена объектов должны быть заменены данными из SIR после подключения реального загрузчика.