kd31-rules

star 28

Программная работа с «Конвертация данных, редакция 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».

Desko77 By Desko77 schedule Updated 5/29/2026

name: kd31-rules description: > Программная работа с «Конвертация данных, редакция 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».

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) через toolkit, а не взяты из общих источников.

Модель данных: КД 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 (в проекте Пример - :7004, боевая - :6011; уточнять). Чтение демо - 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.
Install via CLI
npx skills add https://github.com/Desko77/claude-code-skills-1c --skill kd31-rules
Repository Details
star Stars 28
call_split Forks 6
navigation Branch main
article Path SKILL.md
More from Creator