Initial SFERA platform baseline

This commit is contained in:
2026-05-16 19:03:49 +03:00
commit 3b845c8fce
282 changed files with 55045 additions and 0 deletions
+411
View File
@@ -0,0 +1,411 @@
# Структура объектов метаданных 1С для дерева SFERA
Дата фиксации: 2026-05-09.
Назначение документа: единая опорная модель для загрузчика метаданных из 1С и дерева SFERA IDE. Реальные объекты, имена и состав узлов должны приходить из выгрузки конфигурации 1С/SIR. В коде интерфейса допустимо хранить только типы объектов, правила группировки, иконки и шаблоны подчинённых узлов.
## Источники
- 1C:Enterprise 8.3.23 Developer Guide, "Configuration objects": https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_8.3.23_Developer_Guide/Chapter_1._General_concepts/1.3._Basic_concepts/1.3.2._Configuration_objects/
- 1C:Enterprise 8.3.23 Developer Guide, "The concept of configuration": https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_8.3.23_Developer_Guide/Chapter_1._General_concepts/1.3._Basic_concepts/1.3.1._The_concept_of__configuration_/
- 1C:Enterprise 8.3.23 Developer Guide, "Modules": https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_8.3.23_Developer_Guide/Chapter_1._General_concepts/1.3._Basic_concepts/1.3.5._Modules/
- 1C:Enterprise 8.3.23 Developer Guide, "Common attributes": https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_8.3.23_Developer_Guide/Chapter_5._Configuration_objects/5.3.__Common__configuration_branch/5.3.5._Common_attributes/
- 1C:Enterprise 8.3.23 Developer Guide, "Functional options": https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_8.3.23_Developer_Guide/Chapter_5._Configuration_objects/5.3.__Common__configuration_branch/5.3.10._Functional_options_and_functional_option_parameters/
- 1C:Enterprise 8.3.23 Developer Guide, "Commands": https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_8.3.23_Developer_Guide/Chapter_6._Command_interface/6.2._Global_command_interface_structure/6.2.2._Commands/
- 1C:Enterprise 8.3.23 Developer Guide, "Templates": https://kb.1ci.com/1C_Enterprise_Platform/Guides/Developer_Guides/1C_Enterprise_8.3.23_Developer_Guide/Chapter_1._General_concepts/1.3._Basic_concepts/1.3.6._Templates/
Отдельной публичной документации `1C:Enterprise 8.5 Developer Guide` на kb.1ci.com при проверке не найдено. До появления официальной ветки 8.5 используем модель 8.3 как базовую и оставляем место под версионные отличия.
## Принципы дерева
1. В Designer/Конфигураторе типы объектов метаданных сгруппированы в дереве конфигурации.
2. Объект метаданных описывает структуру и поведение, но не хранит конкретные пользовательские данные.
3. Внутри объектов есть подчинённые объекты: реквизиты, табличные части, формы, команды, макеты, модули, измерения, ресурсы, права и т.д.
4. SFERA не должна создавать плоский список. Дерево строится по типу объекта и подчинённым коллекциям.
5. Узел `Задачи 1С` внутри конфигуратора является типом метаданных 1С. Узел `Задачи` верхнего уровня SFERA является системой разработки.
## Корневые ветки конфигурации
```text
Конфигурация
├── Общие
├── Константы
├── Справочники
├── Документы
├── Журналы документов
├── Перечисления
├── Отчеты
├── Обработки
├── Планы видов характеристик
├── Планы счетов
├── Планы видов расчета
├── Регистры сведений
├── Регистры накопления
├── Регистры бухгалтерии
├── Регистры расчета
├── Бизнес-процессы
├── Задачи
├── Внешние источники данных
└── Расширения конфигурации
```
## Ветка "Общие"
```text
Общие
├── Подсистемы
├── Общие модули
├── Параметры сеанса
├── Роли
├── Общие реквизиты
├── Планы обмена
├── Критерии отбора
├── Подписки на события
├── Регламентные задания
├── Функциональные опции
├── Параметры функциональных опций
├── Определяемые типы
├── Хранилища настроек
├── Общие команды
├── Группы команд
├── Общие формы
├── Общие макеты
├── Общие картинки
├── XDTO-пакеты
├── Web-сервисы
├── HTTP-сервисы
├── WS-ссылки
├── WebSocket-клиенты
├── Сервисы интеграции
├── Цвета палитры
├── Элементы стиля
├── Стили
└── Языки
```
## Шаблоны подчинённых узлов
### Справочник
```text
Справочники
└── <ИмяСправочника>
├── Реквизиты
├── Табличные части
│ └── <ИмяТабличнойЧасти>
│ ├── Реквизиты
│ └── Индексы
├── Формы
├── Команды
├── Макеты
├── Модуль объекта
├── Модуль менеджера
├── Права
├── Предопределенные данные
└── SFERA: Версии / Проверки / Инциденты / Знания
```
### Документ
```text
Документы
└── <ИмяДокумента>
├── Реквизиты
├── Табличные части
│ └── <ИмяТабличнойЧасти>
│ ├── Реквизиты
│ └── Индексы
├── Формы
├── Команды
├── Макеты
├── Движения
│ ├── Регистры сведений
│ ├── Регистры накопления
│ ├── Регистры бухгалтерии
│ └── Регистры расчета
├── Последовательности
├── Нумераторы
├── Модуль объекта
├── Модуль менеджера
├── Права
└── SFERA: Версии / Проверки / Инциденты / Знания
```
### Журнал документов
```text
Журналы документов
└── <ИмяЖурнала>
├── Графы
├── Формы
├── Команды
├── Макеты
├── Модуль менеджера
└── Права
```
### Перечисление
```text
Перечисления
└── <ИмяПеречисления>
├── Значения
├── Формы
├── Команды
├── Макеты
├── Модуль менеджера
└── Права
```
### Отчет
```text
Отчеты
└── <ИмяОтчета>
├── СКД
│ ├── Наборы данных
│ ├── Запросы
│ ├── Поля
│ ├── Ресурсы
│ ├── Группировки
│ ├── Отборы
│ └── Варианты
├── Реквизиты
├── Табличные части
├── Формы
├── Команды
├── Макеты
├── Модуль объекта
├── Модуль менеджера
└── Права
```
### Обработка
```text
Обработки
└── <ИмяОбработки>
├── Реквизиты
├── Табличные части
├── Формы
├── Команды
├── Макеты
├── Модуль объекта
├── Модуль менеджера
└── Права
```
### План видов характеристик
```text
Планы видов характеристик
└── <ИмяПВХ>
├── Реквизиты
├── Табличные части
├── Формы
├── Команды
├── Макеты
├── Модуль объекта
├── Модуль менеджера
├── Предопределенные данные
└── Права
```
### План счетов
```text
Планы счетов
└── <ИмяПланаСчетов>
├── Признаки учета
├── Признаки учета субконто
├── Табличные части
├── Формы
├── Команды
├── Макеты
├── Модуль объекта
├── Модуль менеджера
├── Предопределенные данные
└── Права
```
### План видов расчета
```text
Планы видов расчета
└── <ИмяПВР>
├── Реквизиты
├── Табличные части
├── Вытесняющие виды расчета
├── Ведущие виды расчета
├── Базовые виды расчета
├── Формы
├── Команды
├── Макеты
├── Модуль объекта
├── Модуль менеджера
└── Права
```
### Регистр сведений
```text
Регистры сведений
└── <ИмяРегистра>
├── Измерения
├── Ресурсы
├── Реквизиты
├── Формы
├── Команды
├── Макеты
├── Модуль набора записей
├── Модуль менеджера
├── Кто пишет
├── Кто читает
└── Права
```
### Регистр накопления
```text
Регистры накопления
└── <ИмяРегистра>
├── Измерения
├── Ресурсы
├── Реквизиты
├── Формы
├── Команды
├── Макеты
├── Модуль набора записей
├── Модуль менеджера
├── Кто пишет
├── Кто читает
└── Права
```
### Регистр бухгалтерии
```text
Регистры бухгалтерии
└── <ИмяРегистра>
├── Измерения
├── Ресурсы
├── Реквизиты
├── Признаки учета
├── Признаки учета субконто
├── Формы
├── Команды
├── Макеты
├── Модуль набора записей
├── Модуль менеджера
└── Права
```
### Регистр расчета
```text
Регистры расчета
└── <ИмяРегистра>
├── Измерения
├── Ресурсы
├── Реквизиты
├── Перерасчеты
├── Формы
├── Команды
├── Макеты
├── Модуль набора записей
├── Модуль менеджера
└── Права
```
### Бизнес-процесс
```text
Бизнес-процессы
└── <ИмяБизнесПроцесса>
├── Реквизиты
├── Табличные части
├── Карта маршрута
├── Точки маршрута
├── Формы
├── Команды
├── Макеты
├── Модуль объекта
├── Модуль менеджера
└── Права
```
### Задача 1С
```text
Задачи
└── <ИмяЗадачи>
├── Реквизиты
├── Табличные части
├── Адресация
├── Формы
├── Команды
├── Макеты
├── Модуль объекта
├── Модуль менеджера
└── Права
```
### Внешний источник данных
```text
Внешние источники данных
└── <ИмяИсточника>
├── Таблицы
│ └── <ИмяТаблицы>
│ └── Поля
├── Кубы
├── Функции
├── Формы
├── Команды
└── Макеты
```
## Универсальные подчинённые узлы
Эти узлы могут встречаться у разных типов объектов. Загрузчик должен брать фактический состав из 1С, а не создавать все узлы всегда.
- `Реквизиты`
- `Табличные части`
- `Формы`
- `Команды`
- `Макеты`
- `Модуль объекта`
- `Модуль менеджера`
- `Модуль набора записей`
- `Права`
- `Предопределенные данные`
- `Измерения`
- `Ресурсы`
- `Графы`
- `Значения`
- `Перерасчеты`
- `Движения`
- `Адресация`
- `СКД`
- `URL-шаблоны`
- `Методы`
- `Контракты`
- `Обработчики`
## Правило для SFERA
Загрузчик метаданных должен сохранять:
- `metadata_type`: тип объекта 1С;
- `name`: имя объекта из конфигурации;
- `synonym`: синоним;
- `qualified_name`: полное имя вида `Документ.Имя`, `Справочник.Имя.Форма.ФормаЭлемента`;
- `parent`: родительский узел;
- `children`: подчинённые коллекции;
- `module_kind`: тип модуля, если узел является модулем;
- `rights`: права/ограничения доступа;
- `extension_origin`: основная конфигурация или расширение;
- `version_origin`: снимок/версия/задача;
- `sfera_overlays`: проверки, инциденты, знания, владельцы, runtime-события.
UI-дерево обязано строиться из этой структуры. Любые демонстрационные имена объектов должны быть заменены данными из SIR после подключения реального загрузчика.