# Form Edit

Правка существующей управляемой формы 1С, элементы, реквизиты, команды и свойства...

- Repository: https://github.com/Nikolay-Shirokov/cc-1c-skills (750 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-10-31
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add Nikolay-Shirokov/cc-1c-skills --skill form-edit -g -a claude-code -y`
Codex: `npx skills add Nikolay-Shirokov/cc-1c-skills --skill form-edit -g -a codex -y`
Cursor: `npx skills add Nikolay-Shirokov/cc-1c-skills --skill form-edit -g -a cursor -y`
Gemini CLI: `npx skills add Nikolay-Shirokov/cc-1c-skills --skill form-edit -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add Nikolay-Shirokov/cc-1c-skills`

## Description

Правка существующей управляемой формы 1С, элементы, реквизиты, команды и свойства самой формы. Используй, когда нужно точечно изменить готовую форму

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# /form-edit, Правка формы

Точечно меняет существующий `Form.xml` по описанию правок в JSON; остальное в файле не трогает. Перенесённый или изменённый элемент сохраняет свой id, обработчики и обращения из модуля продолжают работать.

## Команда

| Параметр  | Обязательный | Описание                       |
|-----------|:------------:|--------------------------------|
| FormPath  | да           | Путь к существующему Form.xml  |
| JsonPath  | да           | Путь к JSON с описанием правок |

```powershell
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/form-edit.ps1" -FormPath "<путь>" -JsonPath "<путь>"
```

## Что можно править

| Ключ | Правка |
|------|--------|
| `elements` | Элементы: добавить, перенести, изменить, удалить, список операций, по порядку |
| `attributes` | Реквизиты: добавить, `set`, изменить, `rename`, переименовать, `remove`, удалить; колонка, путём `Таблица.Колонка` |
| `commands` | Команды: добавить, `set`, `rename`, `remove` |
| `parameters` | Параметры формы: добавить, `set`, `rename`, `remove` |
| `title` | Заголовок формы (строка или `{ru, en}`); `null`, убрать |
| `properties` | Свойства формы: `{ "windowOpeningMode": "LockOwnerWindow" }`; `null` у свойства, убрать (`references/form-properties.md`) |
| `events` | Обработчики событий формы: `{ "OnOpen": "ПриОткрытии" }` |
| `excludedCommands` | Исключить стандартные команды: `["Copy"]`; вернуть: `{ "remove": ["Copy"] }` |
| `conditionalAppearance` | Добавить правила условного оформления (`references/appearance.md`) |
| `commandInterface` | Добавить команды в панели формы (`references/command-interface.md`) |

Все ключи необязательны, в одной правке можно сочетать любые. Имена элементов, реквизитов и команд, из `/form-info`. Для обработчиков событий и команд, которых ещё нет в модуле формы, навык добавляет в `Module.bsl` пустые процедуры с нужной сигнатурой, остаётся написать тело.

## Элементы

Операцию задаёт ключ:

The rest: https://github.com/Nikolay-Shirokov/cc-1c-skills/blob/HEAD/.claude/skills/form-edit/SKILL.md
