mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-03 08:40:52 +03:00
docs(meta-edit): самодостаточные таблицы structural modify-ключей (Фаза 2 Шаг 5)
child-operations.md: компактная таблица структурных свойств реквизита (Format/EditFormat/ ToolTip/ChoiceForm/MinValue/MaxValue/FillValue/LinkByType/ChoiceParameterLinks/ ChoiceParameters) + поведение create-if-missing/ошибка на опечатке. properties-reference.md: modify-property create-if-missing + типо-гард. Без отсылок к meta-compile (автономность), формат — таблицы. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
0d02159a34
commit
356258e9c1
@@ -107,10 +107,34 @@ Batch через `;;` — можно указать разные ТЧ: `"Тов
|
|||||||
|
|
||||||
Формат: `ИмяЭлемента: ключ=значение, ключ=значение`
|
Формат: `ИмяЭлемента: ключ=значение, ключ=значение`
|
||||||
|
|
||||||
Ключи: `name` (rename), `type`, `synonym`, `indexing`, `fillChecking`, `use` и др.
|
**Спец-операции** (строчные ключи): `name` (переименование), `type` (смена типа), `synonym`.
|
||||||
|
|
||||||
|
**Скалярные свойства** — по PascalCase XML-имени (как в выгрузке): `Indexing`, `FillChecking`, `Use`,
|
||||||
|
`FullTextSearch`, `DataHistory`, `PasswordMode`, `MultiLine`, `Mask`, `CreateOnInput`, `QuickChoice` и др.
|
||||||
|
Отсутствующее в XML свойство **создаётся** (в канонической позиции); неизвестное имя (опечатка) → **ошибка**.
|
||||||
|
|
||||||
```powershell
|
```powershell
|
||||||
-Operation modify-attribute -Value "СтароеИмя: name=НовоеИмя, type=Строка(500)"
|
-Operation modify-attribute -Value "СтароеИмя: name=НовоеИмя, type=Строка(500)"
|
||||||
-Operation modify-attribute -Value "Комментарий: indexing=Index"
|
-Operation modify-attribute -Value "Комментарий: Indexing=Index, FullTextSearch=Use"
|
||||||
-Operation modify-enumValue -Value "СтароеЗначение: name=НовоеЗначение"
|
-Operation modify-enumValue -Value "СтароеЗначение: name=НовоеЗначение"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Структурные свойства реквизита
|
||||||
|
|
||||||
|
По PascalCase-имени; сложные значения — через JSON DSL (`{ "modify": { "attributes": { "Имя": { ... } } } }`).
|
||||||
|
Отсутствующее свойство создаётся; существующее — заменяется.
|
||||||
|
|
||||||
|
| Ключ | Значение | Пример (JSON) |
|
||||||
|
|------|----------|---------------|
|
||||||
|
| `Format` / `EditFormat` / `ToolTip` | строка (мультиязычная) | `"Format": "ДФ=dd.MM.yyyy"` |
|
||||||
|
| `ChoiceForm` | путь формы | `"ChoiceForm": "Catalog.Товары.Form.ФормаВыбора"` |
|
||||||
|
| `MinValue` / `MaxValue` | число или строка | `"MinValue": 0, "MaxValue": 100` |
|
||||||
|
| `FillValue` | значение по типу реквизита | `"FillValue": "EmptyRef"` · `true` · `10` · `{"nil": true}` |
|
||||||
|
| `LinkByType` | `{dataPath, linkItem?}` | `"LinkByType": {"dataPath": "Вид", "linkItem": 0}` |
|
||||||
|
| `ChoiceParameterLinks` | `[{name, dataPath, valueChange?}]` | `["Отбор.Организация=Организация"]` |
|
||||||
|
| `ChoiceParameters` | `[{name, type?, value?}]` | `[{"name": "Отбор.ЭтоГруппа", "value": false}]` |
|
||||||
|
|
||||||
|
- `FillValue`: `"EmptyRef"` → пустая ссылка по типу реквизита; `{"emptyRef": true}` / `{"nil": true}` — явные маркеры.
|
||||||
|
- `ChoiceParameters` value: булево/число/строка/ссылочный путь/массив; `type` (напр. `EnumRef.СтавкиНДС`) разворачивает
|
||||||
|
короткие имена значений (`"Оптовая"` → `Enum.…EnumValue.Оптовая`).
|
||||||
|
- Пути данных (`LinkByType`/`ChoiceParameterLinks`) принимают короткое имя реквизита — разворачивается в полный путь объекта.
|
||||||
|
|||||||
@@ -4,12 +4,17 @@
|
|||||||
|
|
||||||
## modify-property
|
## modify-property
|
||||||
|
|
||||||
Изменение скалярных свойств объекта. Формат: `Ключ=Значение` (batch через `;;`):
|
Изменение скалярных свойств объекта по PascalCase XML-имени (как в выгрузке). Формат: `Ключ=Значение`
|
||||||
|
(batch через `;;`):
|
||||||
```powershell
|
```powershell
|
||||||
-Operation modify-property -Value "CodeLength=11 ;; DescriptionLength=150"
|
-Operation modify-property -Value "CodeLength=11 ;; DescriptionLength=150"
|
||||||
-Operation modify-property -Value "Hierarchical=true"
|
-Operation modify-property -Value "Hierarchical=true"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Отсутствующее в XML свойство **создаётся** (типовые опущенные свойства вроде `FullTextSearch`, `DataHistory`);
|
||||||
|
неизвестное имя свойства (опечатка) → **ошибка** (а не тихий no-op). Набор допустимых имён — свойства
|
||||||
|
соответствующего типа объекта.
|
||||||
|
|
||||||
## Complex properties
|
## Complex properties
|
||||||
|
|
||||||
Свойства со вложенной XML-структурой. Поддерживаются через inline `add-*` / `remove-*` / `set-*` и через JSON `modify.properties`.
|
Свойства со вложенной XML-структурой. Поддерживаются через inline `add-*` / `remove-*` / `set-*` и через JSON `modify.properties`.
|
||||||
|
|||||||
Reference in New Issue
Block a user