/form-add — Добавление формы к объекту конфигурации
Создаёт управляемую форму (metadata XML + Form.xml + Module.bsl) и регистрирует её в корневом XML объекта конфигурации (Document, Catalog, InformationRegister и др.).
Usage
/form-add <ObjectPath> <FormName> [Purpose] [Synonym] [--set-default]
| Параметр |
Обязательный |
По умолчанию |
Описание |
| ObjectPath |
да |
— |
Путь к XML-файлу объекта (Documents/Док.xml) |
| FormName |
да |
— |
Имя формы (ФормаДокумента) |
| Purpose |
нет |
Object |
Назначение: Object, List, Choice, Record |
| Synonym |
нет |
= FormName |
Синоним формы |
| --set-default |
нет |
авто |
Установить как форму по умолчанию |
Команда
powershell.exe -NoProfile -File .claude/skills/form-add/scripts/form-add.ps1 -ObjectPath "<ObjectPath>" -FormName "<FormName>" [-Purpose "<Purpose>"] [-Synonym "<Synonym>"] [-SetDefault]
Purpose — назначение формы
| Purpose |
Допустимые типы объектов |
Основной реквизит |
DefaultForm-свойство |
| Object |
Document, Catalog, DataProcessor, Report, ExternalDataProcessor, ExternalReport, ChartOf*, ExchangePlan, BusinessProcess, Task |
Объект (тип: *Object.Имя) |
DefaultObjectForm (DefaultForm для DataProcessor/Report/ExternalDataProcessor/ExternalReport) |
| List |
Все кроме DataProcessor |
Список (DynamicList) |
DefaultListForm |
| Choice |
Document, Catalog, ChartOf*, ExchangePlan, BusinessProcess, Task |
Список (DynamicList) |
DefaultChoiceForm |
| Record |
InformationRegister |
Запись (InformationRegisterRecordManager) |
DefaultRecordForm |
Что создаётся
<ObjectDir>/Forms/
├── <FormName>.xml # Метаданные формы (UUID)
└── <FormName>/
└── Ext/
├── Form.xml # Описание формы (logform namespace)
└── Form/
└── Module.bsl # BSL-модуль с 5 регионами + ПриСозданииНаСервере
Что модифицируется
<ObjectPath> — добавляется <Form> в ChildObjects (перед <Template> или <TabularSection>), обновляется Default*Form (автоматически если пустое, или явно при --set-default)
Поддерживаемые типы объектов
Document, Catalog, DataProcessor, Report, ExternalDataProcessor, ExternalReport, InformationRegister, ChartOfAccounts, ChartOfCharacteristicTypes, ExchangePlan, BusinessProcess, Task
Примеры
# Форма документа
/form-add Documents/АвансовыйОтчет.xml ФормаДокумента --purpose Object
# Форма списка каталога
/form-add Catalogs/Контрагенты.xml ФормаСписка --purpose List
# Форма записи регистра сведений
/form-add InformationRegisters/КурсыВалют.xml ФормаЗаписи --purpose Record
# Форма выбора с синонимом
/form-add Catalogs/Номенклатура.xml ФормаВыбора --purpose Choice --synonym "Выбор номенклатуры"
# Установить как форму по умолчанию
/form-add Documents/Заказ.xml ФормаДокументаНовая --purpose Object --set-default
Workflow
/form-add — создать каркас формы
/form-compile или /form-edit — наполнить Form.xml элементами
/form-validate — проверить корректность
/form-info — проанализировать результат
1---2name: form-add3description: Этот скилл MUST быть вызван когда нужно добавить управляемую форму к существующему объекту конфигурации (справочник, документ, обработка). SHOULD также вызывать после meta-compile когда объекту нужны формы. Do NOT использовать для создания формы из JSON-определения — используй form-compile; для добавления к EPF — используй epf-add-form.4---56# /form-add — Добавление формы к объекту конфигурации78Создаёт управляемую форму (metadata XML + Form.xml + Module.bsl) и регистрирует её в корневом XML объекта конфигурации (Document, Catalog, InformationRegister и др.).910## Usage1112```13/form-add <ObjectPath> <FormName> [Purpose] [Synonym] [--set-default]14```1516| Параметр | Обязательный | По умолчанию | Описание |17|-------------|:------------:|--------------|----------------------------------------------|18| ObjectPath | да | — | Путь к XML-файлу объекта (Documents/Док.xml) |19| FormName | да | — | Имя формы (ФормаДокумента) |20| Purpose | нет | Object | Назначение: Object, List, Choice, Record |21| Synonym | нет | = FormName | Синоним формы |22| --set-default | нет | авто | Установить как форму по умолчанию |2324## Команда2526```powershell27powershell.exe -NoProfile -File .claude/skills/form-add/scripts/form-add.ps1 -ObjectPath "<ObjectPath>" -FormName "<FormName>" [-Purpose "<Purpose>"] [-Synonym "<Synonym>"] [-SetDefault]28```2930## Purpose — назначение формы3132| Purpose | Допустимые типы объектов | Основной реквизит | DefaultForm-свойство |33|---------|-------------------------|-------------------|---------------------|34| Object | Document, Catalog, DataProcessor, Report, ExternalDataProcessor, ExternalReport, ChartOf*, ExchangePlan, BusinessProcess, Task | Объект (тип: *Object.Имя) | DefaultObjectForm (DefaultForm для DataProcessor/Report/ExternalDataProcessor/ExternalReport) |35| List | Все кроме DataProcessor | Список (DynamicList) | DefaultListForm |36| Choice | Document, Catalog, ChartOf*, ExchangePlan, BusinessProcess, Task | Список (DynamicList) | DefaultChoiceForm |37| Record | InformationRegister | Запись (InformationRegisterRecordManager) | DefaultRecordForm |3839## Что создаётся4041```42<ObjectDir>/Forms/43├── <FormName>.xml # Метаданные формы (UUID)44└── <FormName>/45 └── Ext/46 ├── Form.xml # Описание формы (logform namespace)47 └── Form/48 └── Module.bsl # BSL-модуль с 5 регионами + ПриСозданииНаСервере49```5051## Что модифицируется5253- `<ObjectPath>` — добавляется `<Form>` в `ChildObjects` (перед `<Template>` или `<TabularSection>`), обновляется Default*Form (автоматически если пустое, или явно при `--set-default`)5455## Поддерживаемые типы объектов5657Document, Catalog, DataProcessor, Report, ExternalDataProcessor, ExternalReport, InformationRegister, ChartOfAccounts, ChartOfCharacteristicTypes, ExchangePlan, BusinessProcess, Task5859## Примеры6061```62# Форма документа63/form-add Documents/АвансовыйОтчет.xml ФормаДокумента --purpose Object6465# Форма списка каталога66/form-add Catalogs/Контрагенты.xml ФормаСписка --purpose List6768# Форма записи регистра сведений69/form-add InformationRegisters/КурсыВалют.xml ФормаЗаписи --purpose Record7071# Форма выбора с синонимом72/form-add Catalogs/Номенклатура.xml ФормаВыбора --purpose Choice --synonym "Выбор номенклатуры"7374# Установить как форму по умолчанию75/form-add Documents/Заказ.xml ФормаДокументаНовая --purpose Object --set-default76```7778## Workflow79801. `/form-add` — создать каркас формы812. `/form-compile` или `/form-edit` — наполнить Form.xml элементами823. `/form-validate` — проверить корректность834. `/form-info` — проанализировать результат