mcpField
D
db-load-xml

db-load-xml

github.com/nikolay-shirokovDevelopment74153 installsUpdated today
Repository

About db-load-xml

db-load-xml is a skill for loading 1C configuration sources from XML into an infobase. Developers can load a full configuration or selected files, including extension configurations.

Key features

  1. 01Full and partial XML loading
  2. 02Select files for partial loading
  3. 03Load a named extension
  4. 04Optional database configuration update
  5. 05Resolve database settings from project config

Use cases

  1. 01Replace an infobase configuration from XML
  2. 02Load selected objects during development
  3. 03Load a configuration extension

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/nikolay-shirokov/cc-1c-skills --skill db-load-xml

After installing, type/db-load-xmlin Claude Code to confirm it loaded.

Bundled filesscripts/db-load-xml.ps1scripts/db-load-xml.py

Details

From the project README

/db-load-xml — Загрузка конфигурации из XML

Загружает конфигурацию в информационную базу из XML-файлов (исходников). Поддерживает полную и частичную загрузку.

Usage

/db-load-xml <configDir> [database]
/db-load-xml src/config dev
/db-load-xml src/config dev -Mode Partial -Files "Catalogs/Номенклатура.xml,Catalogs/Номенклатура/Ext/ObjectModule.bsl"

Внимание: полная загрузка заменяет всю конфигурацию в базе. Перед выполнением запроси подтверждение у пользователя.

Параметры подключения

Прочитай .v8-project.json из корня проекта и разреши базу:

  1. Если пользователь указал параметры подключения (путь, сервер) — используй напрямую
  2. Если указал базу по имени — ищи по id / alias / name в .v8-project.json
  3. Если не указал — сопоставь текущую ветку Git с databases[].branches
  4. Если ветка не совпала — используй default Платформа — v8path найденной записи базы, иначе корневой v8path. Не задан ни там, ни там — -V8Path не передавай. Если файла нет — предложи /db-list add. Если использованная база не зарегистрирована — после выполнения предложи добавить через /db-list add. Если в записи базы указан configSrc — используй как каталог загрузки по умолчанию. Для -Extension каталог берётся из extensions[].src записи базы, если он там указан.

Команда

powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-xml.ps1" <параметры>
Параметры скрипта
ПараметрОбязательныйОписание
-V8Path <путь>нетКаталог bin платформы, или полный путь к 1cv8.exe / ibcmd.exe
-InfoBasePath <путь>*Файловая база
-InfoBaseServer <сервер>*Сервер 1С (для серверной базы)
-InfoBaseRef <имя>*Имя базы на сервере
-UserName <имя>нетИмя пользователя
-Password <пароль>нетПароль
-ConfigDir <путь>даКаталог XML-исходников
-Mode <режим>нетFull (по умолч.) / Partial
-Files <список>для PartialОтносительные пути файлов через запятую
-ListFile <путь>для PartialПуть к файлу со списком (альтернатива -Files)
-Extension <имя>нетЗагрузить в расширение
-AllExtensionsнетЗагрузить все расширения (только полностью; частями — по одному через -Extension)
-NoApplyCheckнетНе проверять применимость расширения после загрузки
-Format <формат>нетHierarchical (по умолч.) / Plain
-UpdateDBнетПосле загрузки сразу обновить конфигурацию БД (/UpdateDBCfg)
-AdditionalV8Arguments <список>нетДоп. аргументы запуска 1cv8.exe через запятую, напр. /UseHwLicenses+
-AdditionalIbcmdArguments <список>нетДоп. аргументы ibcmd через запятую, в форме --ключ=значение

* — нужен либо -InfoBasePath, либо пара -InfoBaseServer + -InfoBaseRef

Режимы загрузки
РежимОписание
FullПолная загрузка — замена всей конфигурации из каталога XML
PartialЧастичная — перечисленные объекты вместе с их дочерними (формы, макеты) и Ext/

Если в список файлов включить Configuration.xml, платформа выполнит полную загрузку конфигурации, а не только перечисленных объектов.

Формат файла списка (listFile)

Файл содержит относительные пути к файлам в каталоге выгрузки (один на строку), кодировка UTF-8 с BOM:

Catalogs/Номенклатура.xml
Catalogs/Номенклатура/Ext/ObjectModule.bsl
Documents/Заказ.xml
Documents/Заказ/Forms/ФормаДокумента.xml

После выполнения

Если -UpdateDB не был указан — предложи выполнить /db-update для применения изменений к БД

Примеры

# Полная загрузка
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-xml.ps1" -V8Path "C:\Program Files\1cv8\8.3.25.1257\bin" -InfoBasePath "C:\Bases\MyDB" -UserName "Admin" -ConfigDir "C:\WS\cfsrc" -Mode Full

# Частичная загрузка конкретных файлов
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-xml.ps1" -InfoBasePath "C:\Bases\MyDB" -UserName "Admin" -ConfigDir "C:\WS\cfsrc" -Mode Partial -Files "Catalogs/Номенклатура.xml,Catalogs/Номенклатура/Ext/ObjectModule.bsl"

# Загрузка расширения
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-xml.ps1" -InfoBasePath "C:\Bases\MyDB" -UserName "Admin" -ConfigDir "C:\WS\ext_src" -Mode Full -Extension "МоёРасширение"

# Загрузка + обновление БД в одном запуске
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/db-load-xml.ps1" -InfoBasePath "C:\Bases\MyDB" -UserName "Admin" -ConfigDir "C:\WS\cfsrc" -Mode Full -UpdateDB

Comments

Markdown supported