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
- 01Full and partial XML loading
- 02Select files for partial loading
- 03Load a named extension
- 04Optional database configuration update
- 05Resolve database settings from project config
Use cases
- 01Replace an infobase configuration from XML
- 02Load selected objects during development
- 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-xmlAfter 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 из корня проекта и разреши базу:
- Если пользователь указал параметры подключения (путь, сервер) — используй напрямую
- Если указал базу по имени — ищи по id / alias / name в
.v8-project.json - Если не указал — сопоставь текущую ветку Git с
databases[].branches - Если ветка не совпала — используй
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