Файл целиком исключался из проверки ссылок как «чистится автоматически», хотя автоматически в нём чистится только ChildObjects. Ссылки уровня конфигурации (DefaultReportForm и соседи) после удаления общей формы оставались висеть и в отчёте не упоминались. Теперь такие слоты видны в списке ссылок, а с -Force очищаются — наравне со слотами других объектов и элементами начальной страницы. Ссылки на типы и вызовы в .bsl по-прежнему не трогаем: чем их заменить, неизвестно. Два полных обхода конфигурации свёрнуты в один, Get-ChildItem -Recurse заменён на Directory.EnumerateFiles: на большой конфигурации проход занимал 180 с против 47 с, а проходов было два. Общие паттерны ищутся в тексте без form-слотов — иначе файл со слотом попадал в список дважды, а пропуск файла целиком спрятал бы настоящую ссылку рядом со слотом. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
3.2 KiB
name, description, argument-hint, allowed-tools
| name | description | argument-hint | allowed-tools | ||||
|---|---|---|---|---|---|---|---|
| meta-remove | Удалить объект метаданных из конфигурации 1С. Используй когда нужно удалить, убрать объект из конфигурации | <ConfigDir> -Object <Type.Name> |
|
/meta-remove — удаление объекта метаданных
Безопасно удаляет объект из XML-выгрузки конфигурации. Перед удалением проверяет ссылки на объект в реквизитах, коде и других метаданных. Если ссылки найдены — удаление блокируется.
Использование
/meta-remove <ConfigDir> -Object <Type.Name>
Параметры
| Параметр | Обязательный | Описание |
|---|---|---|
| ConfigDir | да | Корневая директория выгрузки (где Configuration.xml) |
| Object | да | Тип и имя объекта: Catalog.Товары, Document.Заказ и т.д. |
| DryRun | нет | Только показать что будет удалено, без изменений |
| KeepFiles | нет | Не удалять файлы, только дерегистрировать |
| Force | нет | Удалить несмотря на найденные ссылки; ссылки на формы объекта при этом очищаются |
Команда
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/meta-remove.ps1" -ConfigDir "<путь>" -Object "Catalog.Товары"
Поддерживаемые типы
Catalog, Document, Enum, Constant, InformationRegister, AccumulationRegister, AccountingRegister, CalculationRegister, ChartOfAccounts, ChartOfCharacteristicTypes, ChartOfCalculationTypes, BusinessProcess, Task, ExchangePlan, DocumentJournal, Report, DataProcessor, CommonModule, ScheduledJob, EventSubscription, HTTPService, WebService, DefinedType, Role, Subsystem, CommonForm, CommonTemplate, CommonPicture, CommonAttribute, SessionParameter, FunctionalOption, FunctionalOptionsParameter, Sequence, FilterCriterion, SettingsStorage, XDTOPackage, WSReference, StyleItem, Language
Примеры
# Проверка ссылок + dry run
... -ConfigDir C:\WS\tasks\cfsrc\acc_8.3.24 -Object "Catalog.Устаревший" -DryRun
# Удалить объект без ссылок
... -ConfigDir C:\WS\tasks\cfsrc\acc_8.3.24 -Object "Catalog.Устаревший"
# Принудительно удалить несмотря на ссылки
... -ConfigDir C:\WS\tasks\cfsrc\acc_8.3.24 -Object "Catalog.Устаревший" -Force
# Только дерегистрировать (файлы оставить)
... -ConfigDir C:\WS\tasks\cfsrc\acc_8.3.24 -Object "Report.Старый" -KeepFiles
# Удалить общий модуль
... -ConfigDir src -Object "CommonModule.МойМодуль"