Files
cc-1c-skills/tests/skills/cases/meta-edit/modify-attribute-structural.json
T
Nick Shirokov 39dc3fc1e7 feat(meta-edit): структурное свойство ChoiceParameters + фикс namespace app (Фаза 2 Шаг 3b-2a, v1.16)
modify-attribute/-dimension/-resource: ChoiceParameters ([{name, type?, value?}]) —
порт Emit-ChoiceParameters + полный кластер fill-ref машинерии в meta-edit
(fillRefRoots/fillRefKindRoot/fillEmptyRefWords/accountTypeValues, Normalize-FillRef,
Normalize-ChoiceValue/T, Expand-ChoiceRefValue, ConvertFrom-ChParamShorthand,
ConvertTo-ChScalar, Format-FillNum). Значение → app:value с xsi:type (bool/decimal/
DesignTimeRef); массив → v8:FixedArray/v8:Value; type разворачивает голые ref-имена
(EnumRef.X + "Оптовая" → Enum.X.EnumValue.Оптовая).

КРИТИЧНО: Import-Fragment (ps1+py) теперь объявляет xmlns:app + xmlns:ent — иначе
app:item/app:value падали бы "undeclared prefix". app/ent объявлены в корне 1С-файлов
→ вставка без per-element xmlns.

Cert декомпиляцией: выход meta-edit БАЙТ-В-БАЙТ = meta-compile (ps1 и py; включая
v8:FixedArray и DesignTimeRef-разворот). verify-snapshots --case modify-attribute-structural
(расширен ChoiceParameters bool+EmptyRef) грузится в 1С. meta-edit 14/14 ps1+py.

Остаток Шага 3: fillValue явный (нужна экстракция типа реквизита из XML).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-12 10:41:52 +03:00

34 lines
1.4 KiB
JSON

{
"name": "modify-attribute: структурные свойства Format/EditFormat/ToolTip/ChoiceForm",
"setup": "empty-config",
"preRun": [
{
"script": "meta-compile/scripts/meta-compile",
"input": { "type": "Catalog", "name": "Спр", "attributes": ["Дата: Date", "Контр: CatalogRef.Спр", "Сумма: Number(15,2)"] },
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
},
{
"script": "form-add/scripts/form-add",
"args": { "-ObjectPath": "{workDir}/Catalogs/Спр.xml", "-FormName": "ФормаВыбора" }
}
],
"params": { "objectPath": "Catalogs/Спр" },
"input": {
"modify": {
"attributes": {
"Дата": { "Format": "ДФ=dd.MM.yyyy", "EditFormat": "ДФ=dd.MM.yyyy", "ToolTip": "Дата документа" },
"Контр": {
"ChoiceForm": "Catalog.Спр.Form.ФормаВыбора",
"ChoiceParameterLinks": ["Отбор.Владелец=Ссылка"],
"LinkByType": { "dataPath": "Ссылка", "linkItem": 0 },
"ChoiceParameters": [
{ "name": "Отбор.ПометкаУдаления", "value": false },
{ "name": "Отбор.Ссылка", "value": "Catalog.Спр.EmptyRef" }
]
},
"Сумма": { "MinValue": 0, "MaxValue": 1000000 }
}
}
}
}