KD 3.1 - правила обмена EnterpriseData через MCP-toolkit
Скилл описывает работу с живой ИБ "Конвертация данных, редакция 3.1" (КД 3.1)
через MCP-toolkit HTTP API: исследование структуры правил, создание/правка
правил, настройка формата и получение артефактов для расширения формата
EnterpriseData - модуля менеджера обмена (общий модуль BSL) и XDTO-пакета
расширения / версии формата (XSD).
Относится к сборке КД 3.1.6.14 (платформа 8.5.1.1302).
Модель данных: КД 3.1 близка к КД 2.0 + слой формата
В этой сборке КД 3.1 по структуре похожа на КД 2.0:
- Теневая модель метаданных:
Релизы (версия загруженной структуры) -> Объекты
(Владелец=Релизы) -> Свойства/Значения (Владелец=Объекты). Конфигурации -
топ-контейнер, на который ссылаются Релизы (версии живут в Релизах).
- Правила в справочниках:
ПравилаКонвертацииОбъектов (ПКО),
ПравилаКонвертацииСвойств (ПКС, Владелец=ПКО - это справочник, не регистр),
ПравилаКонвертацииПредопределенныхДанных (ПКПД), ПравилаОбработкиДанных (ПОД),
ПравилаРегистрацииОбъектов (ПРО, Владелец=Регистрации). ПКО/ПОД/ПКПД -
топ-уровневые (без Владельца), связь с конвертацией - через СоставыКонвертаций.
ВАЖНО: у ПКО нет реквизита Наименование (идентификатор в Коде, искать НайтиПоКоду)
и ПКО НЕ иерархичен (нет ЭтоГруппа); ПКС иерархичен. Паттерн заполнения - 2 ПКО
на объект (<Объект>_Отправка + <Объект>_Получение), эталон в демо. См. bsl-templates.md.
- Дополнительно - слой формата EnterpriseData (цепочка справочников):
ВерсииФормата (ПространствоИмен, признак расширения) -> ОбъектыФормата
(Владелец=ВерсииФормата) -> СвойстваФормата -> ЗначенияФормата; типы - ТипыФормата.
Отличие результата от КД 2.0: КД 3.1 генерирует модуль менеджера обмена (BSL)
для движка ОбменДаннымиXDTO плюс работает с XDTO-пакетом/версией формата, а
не выгружает XML-правила для "Универсального обмена". Для КД 2.0 - скилл kd2-rules.
Архитектура работы
Claude (агент) --Bash+curl (payload через jq/python в файл)--> MCP-toolkit (КД 3.1, СЕРВЕРНЫЙ контекст)
-> справочники Конвертации/ПКО/ПКС/ПКПД/ПОД + теневая модель + слой формата
-> штатные обработки (ЗагрузкаСтруктурыКонфигурацииИзФайловXML, НастройкаПравилОбмена, ВыгрузкаМодуля)
-> артефакты: CommonModule (менеджер обмена) + XDTOPackage/XSD расширения
-> перенос в расширение конфигурации-приемника (например УНФ)
Эндпоинты toolkit (порт по умолчанию 6011):
POST /api/execute_query - запросы к справочникам/состоянию.
POST /api/execute_code - чтение метаданных, создание/правка элементов.
Серверный, без Возврат - результат через Результат = ....
GET /api/get_metadata?type=Configuration - метаданные.
Граница автоматизации
Через toolkit реально:
- Инспекция структуры и состояния (состав справочников, реквизиты, статус Конвертации, есть ли Релиз).
- Создание/правка правил как элементов справочников: Конвертация, ПКО, ПКС, ПКПД, ПОД,
СоставыКонвертаций (со снятой защитой записи в форме toolkit). ПКО/ПОД/ПКПД -
топ-уровневые, в конвертацию включаются записью СоставыКонвертаций.
- Точечная правка реквизитов и привязок.
- Загрузка структуры и генерация модуля - тоже программно: у форменных обработок есть
headless-точки входа (
ВыполнитьЗагрузкуМетаданных, ВыполнитьВыгрузкуМодулей),
вызываемые через фоновое задание. См. methods.md.
Удобнее интерактивно (через формы обработок КД 3.1), но НЕ обязательно:
- Загрузка структуры конфигурации (
ЗагрузкаСтруктурыКонфигурацииИзФайловXML) -
заполняет Релиз + Объекты/Свойства. Без нее правила привязывать не к чему.
Headless - methods.md п.1 (для большой конфигурации запускать через фон).
- Создание/расширение версии формата (
ВыгрузкаСтруктурыФормата / редакторы формата).
- Генерация модуля менеджера (
ВыгрузкаМодуля). Headless - methods.md п.2.
Перед массовой работой проверять, что Релизы загружены:
ВЫБРАТЬ КОЛИЧЕСТВО(*) ИЗ Справочник.Релизы (0 -> структура не загружена).
Карта references
| Документ |
Что внутри |
Когда читать |
references/data-schema.md |
проверенные справочники и реквизиты (Конвертации, ПКО, ПКС, ПКПД, ПОД, теневая модель, слой формата), фактические имена обработок |
нужны точные имена объектов/реквизитов |
references/bsl-templates.md |
BSL для execute_code: инспекция, состояние конвертации, создание ПКО/ПКС, привязка версии формата |
конкретная операция через toolkit |
references/format-extension.md |
расширение формата ED: версия формата с namespace, привязка к Конвертации, обработчики ПКО, генерация менеджера, перенос в расширение; workflow + контекст проекта |
разработка расширения формата и перенос артефактов |
references/methods.md |
программный API обработок (headless): загрузка структуры ВыполнитьЗагрузкуМетаданных, генерация модуля ВыполнитьВыгрузкуМодулей, прием вызова форменной обработки в обход UI, file:line |
нужно вызвать обработку КД программно через toolkit |
references/troubleshooting.md |
ограничения toolkit :6011 и КД 3.1 (кодировка, Количество(), тип коллекции метаданных, длины реквизитов, имена перечислений) |
при ошибке execute_code/execute_query |
Scripts
scripts/kd31_query.sh "<запрос>" [out.json] - execute_query.
scripts/kd31_exec.sh <файл.bsl> [out.json] - execute_code из BSL-файла.
Оба: payload через jq (fallback python) + curl --data-binary @файл, порт через
KD31_PORT (по умолчанию 6011). Если указан out.json - ответ в файл (читать
через Read: терминал портит кириллицу).
Демо-база КД 3.1 как эталон (НАСТОЯТЕЛЬНО)
Если доступна демо-база КД 3.1 (типовая поставка содержит готовую конвертацию,
напр. "БП->УП" - сотни ПКО, тысячи ПКС) - использовать ее как ЭТАЛОН заполнения
правил, а не угадывать. Демо идентична рабочей ИБ по структуре метаданных. Перед
созданием своего ПКО/ПКС снять образец аналогичного правила из демо (Код, как
заполнены ОбъектКонфигурации/ОбъектФормата, паттерн _Отправка/_Получение, как
оформлены прямые vs алгоритмические ПКС, ссылочные через ПравилоКонвертацииСвойства).
Порт демо задается при запуске ее toolkit (порт toolkit уточнять по своей
конфигурации). Чтение демо - KD31_PORT=<порт> bash scripts/kd31_query.sh "...".
Базовая проверка готовности
curl -s -o /dev/null -w "%{http_code}\n" "http://localhost:6011/api/get_metadata?type=Configuration" # 200
bash scripts/kd31_query.sh "ВЫБРАТЬ КОЛИЧЕСТВО(*) КАК К ИЗ Справочник.Конвертации"
bash scripts/kd31_query.sh "ВЫБРАТЬ КОЛИЧЕСТВО(*) КАК К ИЗ Справочник.Релизы"
# Релизы=0 -> структура конфигурации не загружена; для расширения проверить ЕстьРасширения
bash scripts/kd31_query.sh "ВЫБРАТЬ Наименование, ЕстьРасширения ИЗ Справочник.Релизы ГДЕ НЕ ЭтоГруппа"
Связанные скиллы
1c-mcp-toolkit - HTTP API к живой ИБ 1С (этот скилл - надстройка).
kd2-rules - аналог для КД 2.0 (та же идея, другой результат - XML-правила).
composing-1c-queries - синтаксис запросов для execute_query.
1---2name: kd31-rules3description: Программная работа с "Конвертация данных, редакция 3.1" (КД 3.1) через MCP-toolkit (HTTP API) к живой ИБ: инспекция и создание Конвертаций, ПКО, ПКС, ПКПД, ПОД, теневой модели метаданных (Конфигурации/Объекты/Свойства/Релизы) и слоя формата EnterpriseData (ВерсииФормата/ОбъектыФормата); расширение формата ED с собственным namespace; генерация модуля менеджера обмена и выгрузка XSD штатными обработками КД 3.1; перенос артефактов в расширение конфигурации. Содержит схему данных, BSL-шаблоны для execute_code, ограничения toolkit. Триггеры: "КД 3.1", "конвертация данных 3.1", "правила обмена EnterpriseData", "настроить ПКО ПКС ПКПД ПОД", "расширение формата ED", "модуль менеджера обмена", "обмен через универсальный формат", "подключить конфигурацию к КД". English: "1C Data Conversion 3.1", "KD 3.1", "EnterpriseData exchange rules", "conversion manager module".4---56# KD 3.1 - правила обмена EnterpriseData через MCP-toolkit78Скилл описывает работу с живой ИБ "Конвертация данных, редакция 3.1" (КД 3.1)9через `MCP-toolkit` HTTP API: исследование структуры правил, создание/правка10правил, настройка формата и получение артефактов для расширения формата11EnterpriseData - **модуля менеджера обмена** (общий модуль BSL) и **XDTO-пакета12расширения / версии формата** (XSD).1314Относится к сборке КД 3.1.6.14 (платформа 8.5.1.1302).1516## Модель данных: КД 3.1 близка к КД 2.0 + слой формата1718В этой сборке КД 3.1 по структуре похожа на КД 2.0:19- Теневая модель метаданных: `Релизы` (версия загруженной структуры) -> `Объекты`20 (Владелец=Релизы) -> `Свойства`/`Значения` (Владелец=Объекты). `Конфигурации` -21 топ-контейнер, на который ссылаются Релизы (версии живут в Релизах).22- Правила в справочниках: `ПравилаКонвертацииОбъектов` (ПКО),23 `ПравилаКонвертацииСвойств` (ПКС, Владелец=ПКО - **это справочник**, не регистр),24 `ПравилаКонвертацииПредопределенныхДанных` (ПКПД), `ПравилаОбработкиДанных` (ПОД),25 `ПравилаРегистрацииОбъектов` (ПРО, Владелец=Регистрации). ПКО/ПОД/ПКПД -26 **топ-уровневые** (без Владельца), связь с конвертацией - через `СоставыКонвертаций`.27 ВАЖНО: у ПКО **нет реквизита Наименование** (идентификатор в Коде, искать НайтиПоКоду)28 и ПКО **НЕ иерархичен** (нет ЭтоГруппа); ПКС иерархичен. Паттерн заполнения - **2 ПКО29 на объект** (`<Объект>_Отправка` + `<Объект>_Получение`), эталон в демо. См. bsl-templates.md.30- Дополнительно - слой формата EnterpriseData (цепочка справочников):31 `ВерсииФормата` (`ПространствоИмен`, признак расширения) -> `ОбъектыФормата`32 (Владелец=ВерсииФормата) -> `СвойстваФормата` -> `ЗначенияФормата`; типы - `ТипыФормата`.3334Отличие результата от КД 2.0: КД 3.1 генерирует **модуль менеджера обмена** (BSL)35для движка `ОбменДаннымиXDTO` плюс работает с **XDTO-пакетом/версией формата**, а36не выгружает XML-правила для "Универсального обмена". Для КД 2.0 - скилл `kd2-rules`.3738## Архитектура работы3940```41Claude (агент) --Bash+curl (payload через jq/python в файл)--> MCP-toolkit (КД 3.1, СЕРВЕРНЫЙ контекст)42 -> справочники Конвертации/ПКО/ПКС/ПКПД/ПОД + теневая модель + слой формата43 -> штатные обработки (ЗагрузкаСтруктурыКонфигурацииИзФайловXML, НастройкаПравилОбмена, ВыгрузкаМодуля)44 -> артефакты: CommonModule (менеджер обмена) + XDTOPackage/XSD расширения45 -> перенос в расширение конфигурации-приемника (например УНФ)46```4748Эндпоинты toolkit (порт по умолчанию 6011):49- `POST /api/execute_query` - запросы к справочникам/состоянию.50- `POST /api/execute_code` - чтение метаданных, создание/правка элементов.51 **Серверный, без `Возврат`** - результат через `Результат = ...`.52- `GET /api/get_metadata?type=Configuration` - метаданные.5354## Граница автоматизации5556Через toolkit реально:57- Инспекция структуры и состояния (состав справочников, реквизиты, статус Конвертации, есть ли Релиз).58- Создание/правка правил как элементов справочников: Конвертация, ПКО, ПКС, ПКПД, ПОД,59 СоставыКонвертаций (со снятой защитой записи в форме toolkit). ПКО/ПОД/ПКПД -60 топ-уровневые, в конвертацию включаются записью СоставыКонвертаций.61- Точечная правка реквизитов и привязок.62- Загрузка структуры и генерация модуля - тоже программно: у форменных обработок есть63 headless-точки входа (`ВыполнитьЗагрузкуМетаданных`, `ВыполнитьВыгрузкуМодулей`),64 вызываемые через фоновое задание. См. `methods.md`.6566Удобнее интерактивно (через формы обработок КД 3.1), но НЕ обязательно:67- Загрузка структуры конфигурации (`ЗагрузкаСтруктурыКонфигурацииИзФайловXML`) -68 заполняет Релиз + Объекты/Свойства. Без нее правила привязывать не к чему.69 Headless - `methods.md` п.1 (для большой конфигурации запускать через фон).70- Создание/расширение версии формата (`ВыгрузкаСтруктурыФормата` / редакторы формата).71- Генерация модуля менеджера (`ВыгрузкаМодуля`). Headless - `methods.md` п.2.7273Перед массовой работой проверять, что Релизы загружены:74`ВЫБРАТЬ КОЛИЧЕСТВО(*) ИЗ Справочник.Релизы` (0 -> структура не загружена).7576## Карта references7778| Документ | Что внутри | Когда читать |79|---|---|---|80| `references/data-schema.md` | проверенные справочники и реквизиты (Конвертации, ПКО, ПКС, ПКПД, ПОД, теневая модель, слой формата), фактические имена обработок | нужны точные имена объектов/реквизитов |81| `references/bsl-templates.md` | BSL для execute_code: инспекция, состояние конвертации, создание ПКО/ПКС, привязка версии формата | конкретная операция через toolkit |82| `references/format-extension.md` | расширение формата ED: версия формата с namespace, привязка к Конвертации, обработчики ПКО, генерация менеджера, перенос в расширение; workflow + контекст проекта | разработка расширения формата и перенос артефактов |83| `references/methods.md` | программный API обработок (headless): загрузка структуры `ВыполнитьЗагрузкуМетаданных`, генерация модуля `ВыполнитьВыгрузкуМодулей`, прием вызова форменной обработки в обход UI, file:line | нужно вызвать обработку КД программно через toolkit |84| `references/troubleshooting.md` | ограничения toolkit :6011 и КД 3.1 (кодировка, Количество(), тип коллекции метаданных, длины реквизитов, имена перечислений) | при ошибке execute_code/execute_query |8586## Scripts8788- `scripts/kd31_query.sh "<запрос>" [out.json]` - execute_query.89- `scripts/kd31_exec.sh <файл.bsl> [out.json]` - execute_code из BSL-файла.9091Оба: payload через jq (fallback python) + `curl --data-binary @файл`, порт через92`KD31_PORT` (по умолчанию 6011). Если указан `out.json` - ответ в файл (читать93через Read: терминал портит кириллицу).9495## Демо-база КД 3.1 как эталон (НАСТОЯТЕЛЬНО)9697Если доступна демо-база КД 3.1 (типовая поставка содержит готовую конвертацию,98напр. "БП->УП" - сотни ПКО, тысячи ПКС) - использовать ее как ЭТАЛОН заполнения99правил, а не угадывать. Демо идентична рабочей ИБ по структуре метаданных. Перед100созданием своего ПКО/ПКС снять образец аналогичного правила из демо (Код, как101заполнены ОбъектКонфигурации/ОбъектФормата, паттерн _Отправка/_Получение, как102оформлены прямые vs алгоритмические ПКС, ссылочные через ПравилоКонвертацииСвойства).103Порт демо задается при запуске ее toolkit (порт toolkit уточнять по своей104конфигурации). Чтение демо - `KD31_PORT=<порт> bash scripts/kd31_query.sh "..."`.105106## Базовая проверка готовности107108```bash109curl -s -o /dev/null -w "%{http_code}\n" "http://localhost:6011/api/get_metadata?type=Configuration" # 200110bash scripts/kd31_query.sh "ВЫБРАТЬ КОЛИЧЕСТВО(*) КАК К ИЗ Справочник.Конвертации"111bash scripts/kd31_query.sh "ВЫБРАТЬ КОЛИЧЕСТВО(*) КАК К ИЗ Справочник.Релизы"112# Релизы=0 -> структура конфигурации не загружена; для расширения проверить ЕстьРасширения113bash scripts/kd31_query.sh "ВЫБРАТЬ Наименование, ЕстьРасширения ИЗ Справочник.Релизы ГДЕ НЕ ЭтоГруппа"114```115116## Связанные скиллы117118- `1c-mcp-toolkit` - HTTP API к живой ИБ 1С (этот скилл - надстройка).119- `kd2-rules` - аналог для КД 2.0 (та же идея, другой результат - XML-правила).120- `composing-1c-queries` - синтаксис запросов для execute_query.