关于 db-load-xml
db-load-xml 是将 XML 格式的 1C 配置源加载到信息库的技能。开发者可加载完整配置或指定文件,也可加载扩展配置。
主要功能
- 01完整或部分加载 XML
- 02指定部分加载的文件
- 03加载指定扩展
- 04可选更新数据库配置
- 05从项目配置解析数据库设置
适用场景
- 01从 XML 替换信息库配置
- 02开发时加载指定对象
- 03加载配置扩展
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ nikolay-shirokov/ cc-1c-skills --skill db-load-xml安装后在 Claude Code 中输入/db-load-xml确认已加载。
附带文件scripts/db-load-xml.ps1scripts/db-load-xml.py
README 原文English
来自项目 READMEREADME 暂无中文译文,以下为英文原文;中文介绍见上方。
/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