Merge branch 'dev'

This commit is contained in:
Nick Shirokov
2026-02-10 14:11:58 +03:00
3 changed files with 10 additions and 2 deletions
+8
View File
@@ -61,6 +61,14 @@ allowed-tools:
$v8 = Get-ChildItem "C:\Program Files\1cv8\*\bin\1cv8.exe" | Sort-Object -Descending | Select-Object -First 1
```
## Ссылочные типы и выбор базы
Пустая ИБ (`V8_BASE`) подходит для сборки, если формы используют только базовые типы (`xs:string`, `xs:boolean` и т.д.) или тип самой обработки (`ExternalDataProcessorObject.Имя`).
Если обработка использует ссылочные типы конфигурации (`CatalogRef.XXX`, `DocumentRef.XXX` и т.д.) — в реквизитах объекта, табличных частях или реквизитах форм — **сборка в пустой базе упадёт** с ошибкой XDTO. Платформа не может резолвить типы, отсутствующие в конфигурации базы.
**Решение**: собирать в базе с целевой конфигурацией. Если конфигурация неизвестна — спросить пользователя путь к базе.
## Пример полного цикла
```powershell
+1 -1
View File
@@ -406,4 +406,4 @@ powershell.exe -NoProfile -File .claude\skills\form-compile\scripts\form-compile
- **Тип главного реквизита**: `ExternalDataProcessorObject.ИмяОбработки` (не `DataProcessorObject`)
- **DataPath**: используйте реквизиты формы (`ИмяРеквизита`), а не `Объект.ИмяРеквизита` — у внешних обработок нет реквизитов объекта в метаданных
- **Ссылочные типы**: `CatalogRef.XXX`, `DocumentRef.XXX` и т.д. могут не собраться в пустой базе — используйте `string` или базовые типы для автономной сборки
- **Ссылочные типы**: `CatalogRef.XXX`, `DocumentRef.XXX` допустимы в XML, но для сборки EPF потребуется база с целевой конфигурацией (см. `/epf-build`)
+1 -1
View File
@@ -58,7 +58,7 @@
## Примечания
- Пустая ИБ достаточна для сборки, если обработка не ссылается на объекты конфигурации.
- Если обработка использует ссылочные типы конфигурации (`СправочникСсылка.*` и т.п.), при выгрузке/загрузке нужна база с соответствующей конфигурацией — иначе типы сохраняются как UUID.
- Если обработка использует ссылочные типы конфигурации (`CatalogRef.*`, `DocumentRef.*` и т.п.) — в реквизитах объекта, табличных частях или реквизитах форм — **сборка в пустой базе упадёт** с ошибкой XDTO. Платформа не может резолвить типы, отсутствующие в конфигурации. Необходима база с целевой конфигурацией.
- Путь к `1cv8.exe` зависит от установленной версии платформы (например, `C:\Program Files\1cv8\8.3.27.1859\bin\1cv8.exe`).
- `/DisableStartupDialogs` — подавляет интерактивные диалоги (например, «ИБ не обнаружена»), без него конфигуратор может зависнуть в ожидании пользовательского ввода.
- Первый аргумент `/LoadExternalDataProcessorOrReportFromFiles` — путь к корневому XML-файлу, а **не** к каталогу.