一键导入
form-edit
1C form - edit Form.xml elements, attributes, commands, events.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
1C form - edit Form.xml elements, attributes, commands, events.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Операционный слой разработки 1С — генерация и редактирование XML-артефактов. Сборка, тесты и работа с БД вынесены в skills-1c-project-v8runner
1C EPF - create empty XML scaffold for external processor.
1C ERF - create empty report XML scaffold.
1C form - add an empty managed form to a config object.
1C form - compile Form.xml from JSON or object metadata.
Декомпиляция управляемой формы 1С (Form.xml) в JSON-черновик в формате form-compile. Используй для scaffold новой формы по образцу или структурного рефакторинга. Не для точечных правок
| name | form-edit |
| description | 1C form - edit Form.xml elements, attributes, commands, events. |
Добавляет элементы, реквизиты и/или команды в существующий Form.xml. Автоматически выделяет ID из правильного пула, генерирует companion-элементы (ContextMenu, ExtendedTooltip, и др.) и обработчики событий.
$form-edit <FormPath> <JsonPath>
| Параметр | Обязательный | Описание |
|---|---|---|
| FormPath | да | Путь к существующему Form.xml |
| JsonPath | да | Путь к JSON с описанием добавлений |
python .agents/skills/form-edit/scripts/form-edit.py -FormPath "<путь>" -JsonPath "<путь>"
{
"into": "ГруппаШапка",
"after": "Контрагент",
"elements": [
{ "input": "Склад", "path": "Объект.Склад", "on": ["OnChange"] }
],
"attributes": [
{ "name": "СуммаИтого", "type": "decimal(15,2)" }
],
"commands": [
{ "name": "Рассчитать", "action": "РассчитатьОбработка" }
]
}
Для заимствованных форм (с <BaseForm>) автоматически активируется extension-режим: ID начинаются с 1000000+. Доступны дополнительные секции:
{
"formEvents": [
{ "name": "OnCreateAtServer", "handler": "Расш1_ПриСозданииПосле", "callType": "After" },
{ "name": "OnOpen", "handler": "Расш1_ПриОткрытии", "callType": "Before" }
],
"elementEvents": [
{ "element": "Банк", "name": "OnChange", "handler": "Расш1_БанкПриИзменении", "callType": "Before" }
],
"commands": [
{ "name": "Подбор", "action": "Расш1_ПодборПосле", "callType": "After" },
{ "name": "Запрос", "actions": [
{ "callType": "Before", "handler": "Расш1_ЗапросПеред" },
{ "callType": "After", "handler": "Расш1_ЗапросПосле" }
]}
],
"elements": [
{ "input": "Поле", "path": "Объект.Поле", "on": [{ "event": "OnChange", "callType": "After" }] }
]
}
| Ключ | По умолчанию | Описание |
|---|---|---|
into | корневой ChildItems | Имя группы/таблицы/страницы, куда вставлять |
after | в конец | Имя элемента, после которого вставлять |
Те же DSL-ключи, что в $form-compile:
| Ключ | XML тег | Companions |
|---|---|---|
input | InputField | ContextMenu, ExtendedTooltip |
check | CheckBoxField | ContextMenu, ExtendedTooltip |
label | LabelDecoration | ContextMenu, ExtendedTooltip |
labelField | LabelField | ContextMenu, ExtendedTooltip |
group | UsualGroup | ExtendedTooltip |
table | Table | ContextMenu, AutoCommandBar, Search*, ViewStatus* |
pages | Pages | ExtendedTooltip |
page | Page | ExtendedTooltip |
button | Button | ExtendedTooltip |
Группы и таблицы поддерживают children/columns для вложенных элементов.
"command": "ИмяКоманды" → Form.Command.ИмяКоманды"stdCommand": "Close" → Form.StandardCommand.Close"stdCommand": "Товары.Add" → Form.Item.Товары.StandardCommand.Add (стандартная команда элемента)on)Компилятор предупреждает об ошибках в именах событий. Основные:
OnChange, StartChoice, ChoiceProcessing, Clearing, AutoComplete, TextEditEndOnChangeOnStartEdit, OnEditEnd, OnChange, Selection, BeforeAddRow, BeforeDeleteRow, OnActivateRowClick, URLProcessingOnCurrentPageChangeClickstring, string(100), decimal(15,2), boolean, date, dateTime, CatalogRef.XXX, DocumentObject.XXX, ValueTable, DynamicList, Type1 | Type2 (составной).
| Секция | Назначение |
|---|---|
formEvents | События уровня формы с callType (Before/After/Override) |
elementEvents | События на существующих элементах заимствованной формы |
callType на commands | callType на Action команды |
callType на on | callType на событиях новых элементов (объектный формат) |
Все extension-секции опциональны — без них навык работает как с обычными формами.
$form-info — посмотреть текущую структуру формы$form-edit — добавить в форму$form-validate — проверить корректность$form-info — убедиться что добавилось правильно