6.0 KiB
name, description, argument-hint, allowed-tools
| name | description | argument-hint | allowed-tools | ||||
|---|---|---|---|---|---|---|---|
| epf-build | Собрать внешнюю обработку 1С (EPF/ERF) из XML-исходников. Используй когда пользователь просит собрать, скомпилировать обработку или получить EPF/ERF файл из исходников | <ProcessorName> |
|
/epf-build — Сборка обработки
Usage
/epf-build <ProcessorName> [SrcDir] [OutDir]
| Параметр | Обязательный | По умолчанию | Описание |
|---|---|---|---|
| ProcessorName | да | — | Имя обработки (имя корневого XML) |
| SrcDir | нет | src |
Каталог исходников |
| OutDir | нет | build |
Каталог для результата |
Параметры подключения (опционально)
Предпочтительно использовать конкретную базу — это надёжнее. Временная база всё равно поднимается под проверку исходников, если она не отключена.
- Прочитай
.v8-project.jsonиз корня проекта. Возьмиv8pathи разреши базу: - Если пользователь указал параметры подключения (путь, сервер) — используй напрямую
- Если указал базу по имени — ищи по id / alias / name в
.v8-project.json - Если не указал — сопоставь текущую ветку Git с
databases[].branches - Если ветка не совпала — используй
default - Если
.v8-project.jsonнет или база не найдена — не указывай параметры подключения: скрипт автоматически создаст временную базу. Для EPF со ссылочными типами (CatalogRef, DocumentRef и т.д.) генерируются заглушки метаданных. Временная база удаляется после сборки.
Если v8path не задан — скрипт сам попытается определить платформу (.v8-project.json → Program Files).
Если использованная база не зарегистрирована — после выполнения предложи добавить через /db-list add.
Команда
powershell.exe -NoProfile -File ".codeassistant/skills/epf-build/scripts/epf-build.ps1" <параметры>
Параметры скрипта
| Параметр | Обязательный | Описание |
|---|---|---|
-V8Path <путь> |
нет | Каталог bin платформы, или полный путь к 1cv8.exe / ibcmd.exe |
-InfoBasePath <путь> |
* | Файловая база |
-InfoBaseServer <сервер> |
* | Сервер 1С (для серверной базы) |
-InfoBaseRef <имя> |
* | Имя базы на сервере |
-UserName <имя> |
нет | Имя пользователя |
-Password <пароль> |
нет | Пароль |
-SourceFile <путь> |
да | Путь к корневому XML-файлу исходников |
-OutputFile <путь> |
да | Путь к выходному EPF/ERF-файлу |
-Checks <список> |
нет | Что проверить перед сборкой: modules, handlers, unreferenced, empty-handlers, config; off — не проверять. По умолчанию modules,handlers |
-Context <список> |
нет | Контексты проверки modules: ThinClient, Server, ExternalConnection, ThickClientOrdinaryApplication. По умолчанию ThinClient,Server |
-AdditionalV8Arguments <список> |
нет | Доп. аргументы запуска 1cv8.exe через запятую, напр. /UseHwLicenses+ |
-AdditionalIbcmdArguments <список> |
нет | Доп. аргументы ibcmd через запятую, в форме --ключ=значение |
*— опционально. Если не указано — автоматически создаётся временная база со заглушками метаданных
Проверка перед сборкой
Перед сборкой исходники проверяет платформа — синтаксис модулей и наличие обработчиков форм.
Если она нашла проблемы, сборка отменяется и файл не создаётся; в выводе — сообщение
платформы со строкой и колонкой и путь к файлу исходника. Отключается -Checks off
или ключом "externalCheck": false в .v8-project.json.
Проверка идёт на отдельной временной базе, даже если база указана: чужую конфигурацию навык не трогает.
Примеры
# Сборка обработки (файловая база)
powershell.exe -NoProfile -File ".codeassistant/skills/epf-build/scripts/epf-build.ps1" -InfoBasePath "C:\Bases\MyDB" -SourceFile "src/МояОбработка.xml" -OutputFile "build/МояОбработка.epf"
# Серверная база
powershell.exe -NoProfile -File ".codeassistant/skills/epf-build/scripts/epf-build.ps1" -InfoBaseServer "srv01" -InfoBaseRef "MyDB" -UserName "Admin" -Password "secret" -SourceFile "src/МояОбработка.xml" -OutputFile "build/МояОбработка.epf"