Files
cc-1c-skills/.claude/skills/form-remove/SKILL.md
T
Nick ShirokovandClaude Opus 5 93d9511a46 fix(form-remove): проверка ссылок перед удалением формы
Форма могла удаляться, оставляя ссылки на себя в других объектах: платформа
затем отвергала загрузку с «Неизвестный объект метаданных». Навык правил
только файл своего объекта и про остальную конфигурацию не знал.

Теперь перед удалением конфигурация сканируется на ссылки на эту форму
(слоты Default*/Auxiliary*Form и ChoiceForm, ChoiceForm и SettingsStorage
внутри форм, элементы начальной страницы). Есть ссылки — удаление
останавливается со списком мест; с -Force форма удаляется, а ссылки
очищаются: слот пустеет, элемент начальной страницы вырезается.

Заодно починен матч ссылки: сравнение шло по хвосту «Form.<Имя>» без вида и
объекта, поэтому при удалении своей ФормаСписка обнулялась и ссылка на
DocumentJournal.Ж.Form.ФормаСписка в том же файле.

Сравнение путей переведено на длинную форму: Resolve-Path отдаёт короткое имя
8.3, перечисление файлов — длинное, из-за чего собственный файл объекта не
исключался из скана.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-20 20:10:50 +03:00

1.8 KiB

name, description, argument-hint, disable-model-invocation, allowed-tools
name description argument-hint disable-model-invocation allowed-tools
form-remove Удалить форму из объекта 1С (обработка, отчёт, справочник, документ и др.) <ObjectName> <FormName> true
Bash
Read
Write
Edit
Glob
Grep

/form-remove — Удаление формы

Удаляет форму и убирает её регистрацию из корневого XML объекта.

Usage

/form-remove <ObjectName> <FormName>
Параметр Обязательный По умолчанию Описание
ObjectName да Имя объекта
FormName да Имя формы для удаления
SrcDir нет src Каталог исходников
Force нет Удалить, даже если на форму ссылаются, и очистить ссылки

Команда

powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/remove-form.ps1" -ObjectName "<ObjectName>" -FormName "<FormName>" [-SrcDir "<SrcDir>"] [-Force]

Что удаляется

<SrcDir>/<ObjectName>/Forms/<FormName>.xml     # Метаданные формы
<SrcDir>/<ObjectName>/Forms/<FormName>/         # Каталог формы (рекурсивно)

Что модифицируется

  • <SrcDir>/<ObjectName>.xml — убирается <Form> из ChildObjects
  • Свойства объекта, указывавшие на удалённую форму — очищаются