/meta-edit — точечное редактирование метаданных 1С
Атомарные операции модификации существующих XML объектов метаданных.
Команда
Inline mode (простые операции)
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/meta-edit.ps1" -ObjectPath "<path>" -Operation <op> -Value "<val>"
JSON mode (сложные/комбинированные)
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/meta-edit.ps1" -DefinitionFile "<json>" -ObjectPath "<path>"
| Параметр |
Описание |
| ObjectPath |
XML-файл или директория объекта (обязательный, авторезолв <dirName>.xml) |
| Operation |
Inline-операция (альтернатива DefinitionFile) |
| Value |
Значение для inline-операции |
| DefinitionFile |
JSON-файл с операциями (альтернатива Operation) |
| NoValidate |
Не запускать meta-validate после правки |
Частые операции
Batch через ;; во всех операциях.
| Операция |
Формат Value |
Пример |
add-attribute |
Имя: Тип | флаги |
"Сумма: Число(15,2) | req, index" |
add-dimension |
Имя: Тип | флаги |
"Организация: CatalogRef.Организации | master" |
add-resource |
Имя: Тип |
"Сумма: Число(15,2)" |
add-column |
Имя: Тип |
"Тип: EnumRef.ТипыДокументов" |
add-ts |
ТЧ: Рекв1: Тип1, Рекв2: Тип2 |
"Товары: Ном: CatalogRef.Ном, Кол: Число(15,3)" |
add-ts-attribute |
ТЧ.Имя: Тип |
"Товары.Скидка: Число(15,2)" |
remove-* |
Имя |
"СтарыйРеквизит ;; ЕщёОдин" |
remove-ts-attribute |
ТЧ.Имя |
"Товары.УстаревшийРекв" |
modify-attribute |
Имя: ключ=значение |
"СтароеИмя: name=НовоеИмя, type=Строка(500)" |
modify-ts-attribute |
ТЧ.Имя: ключ=значение |
"Товары.Рекв: name=НовоеИмя" |
modify-ts |
ТЧ: ключ=значение |
"Товары: synonym=Товарный состав" |
modify-property |
Ключ=Значение |
"CodeLength=11 ;; DescriptionLength=150" |
Позиционная вставка: "Склад: CatalogRef.Склады >> after Организация".
Составной тип — через +: "Значение: Строка + Число(15,2) + Дата".
Быстрые примеры
# Добавить реквизиты
-Operation add-attribute -Value "Комментарий: Строка(200) ;; Сумма: Число(15,2) | index"
# Добавить ТЧ с реквизитами
-Operation add-ts -Value "Товары: Ном: CatalogRef.Ном | req, Кол: Число(15,3), Цена: Число(15,2)"
# Удалить реквизит
-Operation remove-attribute -Value "УстаревшийРеквизит"
# Переименовать + сменить тип
-Operation modify-attribute -Value "СтароеИмя: name=НовоеИмя, type=Строка(500)"
# Изменить свойства объекта
-Operation modify-property -Value "CodeLength=11 ;; DescriptionLength=150"
# Владельцы справочника
-Operation set-owners -Value "Catalog.Контрагенты ;; Catalog.Организации"
Индекс: что правишь → файл
| Что нужно |
Файл |
Реквизит, измерение, ресурс, графа: флаги, составные типы, структурные свойства (Format, ChoiceParameters, FillValue, …) |
reference/attributes.md |
| Табличная часть и её реквизиты |
reference/tabular-sections.md |
| Свойства самого объекта, списочные свойства (владельцы, движения, основание, ввод по строке) |
reference/properties.md |
| Предопределённые элементы |
reference/predefined.md |
| Значения перечисления, команды |
reference/other-children.md |
| Внешний источник данных: поля, таблицы, функции |
reference/external-data-source.md |
| Комбинированные операции в одном JSON, синонимы ключей и типов, какие дети допустимы у типа объекта |
reference/json-dsl.md |
Форму добавляет и удаляет навык form-add / form-remove, макет — навык template-add /
template-remove: кроме записи в ChildObjects у них есть собственные файлы, и meta-edit их не трогает.
Верификация
/meta-validate <ObjectPath> — валидация после редактирования
/meta-info <ObjectPath> — визуальная сводка
1---2name: meta-edit3description: Точечное редактирование объекта метаданных 1С. Используй когда нужно добавить, удалить или изменить реквизиты, табличные части, измерения, ресурсы или свойства существующего объекта конфигурации4---56# /meta-edit — точечное редактирование метаданных 1С78Атомарные операции модификации существующих XML объектов метаданных.910## Команда1112### Inline mode (простые операции)1314```powershell15powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/meta-edit.ps1" -ObjectPath "<path>" -Operation <op> -Value "<val>"16```1718### JSON mode (сложные/комбинированные)1920```powershell21powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/meta-edit.ps1" -DefinitionFile "<json>" -ObjectPath "<path>"22```2324| Параметр | Описание |25|----------|----------|26| ObjectPath | XML-файл или директория объекта (обязательный, авторезолв `<dirName>.xml`) |27| Operation | Inline-операция (альтернатива DefinitionFile) |28| Value | Значение для inline-операции |29| DefinitionFile | JSON-файл с операциями (альтернатива Operation) |30| NoValidate | Не запускать meta-validate после правки |3132## Частые операции3334Batch через `;;` во всех операциях.3536| Операция | Формат Value | Пример |37|----------|-------------|--------|38| `add-attribute` | `Имя: Тип \| флаги` | `"Сумма: Число(15,2) \| req, index"` |39| `add-dimension` | `Имя: Тип \| флаги` | `"Организация: CatalogRef.Организации \| master"` |40| `add-resource` | `Имя: Тип` | `"Сумма: Число(15,2)"` |41| `add-column` | `Имя: Тип` | `"Тип: EnumRef.ТипыДокументов"` |42| `add-ts` | `ТЧ: Рекв1: Тип1, Рекв2: Тип2` | `"Товары: Ном: CatalogRef.Ном, Кол: Число(15,3)"` |43| `add-ts-attribute` | `ТЧ.Имя: Тип` | `"Товары.Скидка: Число(15,2)"` |44| `remove-*` | `Имя` | `"СтарыйРеквизит ;; ЕщёОдин"` |45| `remove-ts-attribute` | `ТЧ.Имя` | `"Товары.УстаревшийРекв"` |46| `modify-attribute` | `Имя: ключ=значение` | `"СтароеИмя: name=НовоеИмя, type=Строка(500)"` |47| `modify-ts-attribute` | `ТЧ.Имя: ключ=значение` | `"Товары.Рекв: name=НовоеИмя"` |48| `modify-ts` | `ТЧ: ключ=значение` | `"Товары: synonym=Товарный состав"` |49| `modify-property` | `Ключ=Значение` | `"CodeLength=11 ;; DescriptionLength=150"` |5051Позиционная вставка: `"Склад: CatalogRef.Склады >> after Организация"`.5253Составной тип — через `+`: `"Значение: Строка + Число(15,2) + Дата"`.5455## Быстрые примеры5657```powershell58# Добавить реквизиты59-Operation add-attribute -Value "Комментарий: Строка(200) ;; Сумма: Число(15,2) | index"6061# Добавить ТЧ с реквизитами62-Operation add-ts -Value "Товары: Ном: CatalogRef.Ном | req, Кол: Число(15,3), Цена: Число(15,2)"6364# Удалить реквизит65-Operation remove-attribute -Value "УстаревшийРеквизит"6667# Переименовать + сменить тип68-Operation modify-attribute -Value "СтароеИмя: name=НовоеИмя, type=Строка(500)"6970# Изменить свойства объекта71-Operation modify-property -Value "CodeLength=11 ;; DescriptionLength=150"7273# Владельцы справочника74-Operation set-owners -Value "Catalog.Контрагенты ;; Catalog.Организации"75```7677## Индекс: что правишь → файл7879| Что нужно | Файл |80|-----------|------|81| Реквизит, измерение, ресурс, графа: флаги, составные типы, структурные свойства (`Format`, `ChoiceParameters`, `FillValue`, …) | `reference/attributes.md` |82| Табличная часть и её реквизиты | `reference/tabular-sections.md` |83| Свойства самого объекта, списочные свойства (владельцы, движения, основание, ввод по строке) | `reference/properties.md` |84| Предопределённые элементы | `reference/predefined.md` |85| Значения перечисления, команды | `reference/other-children.md` |86| Внешний источник данных: поля, таблицы, функции | `reference/external-data-source.md` |87| Комбинированные операции в одном JSON, синонимы ключей и типов, какие дети допустимы у типа объекта | `reference/json-dsl.md` |8889Форму добавляет и удаляет навык `form-add` / `form-remove`, макет — навык `template-add` /90`template-remove`: кроме записи в `ChildObjects` у них есть собственные файлы, и `meta-edit` их не трогает.9192## Верификация9394```95/meta-validate <ObjectPath> — валидация после редактирования96/meta-info <ObjectPath> — визуальная сводка97```