Files
cc-1c-skills/tests/skills/cases/form-compile/radio-tumbler-strings.json
T
Nick Shirokov 6e4fdb443a feat(form-decompile,form-compile): батч скаляров (IncompleteChoiceMode/EqualColumnsWidth/ChildrenAlign/ImageScale/Zoomable/Shape/PictureLocation) + форменные ShowCloseButton/HorizontalAlign/ChildrenAlign/ShowTitle + PictureDecoration NonselectedPictureText + ShowTitle factual
Из топа list-iter2 (формы из корпуса):
- Generic-скаляры (input/radio/group/picDecoration/button через Emit-Layout): IncompleteChoiceMode,
  EqualColumnsWidth(bool), ChildrenAlign, ImageScale, Zoomable(bool), Shape, PictureLocation.
- Форменные свойства → KNOWN_FORM_PROPS (декомпилятор) + авто-PascalCase Emit-Properties:
  ShowCloseButton, HorizontalAlign, ChildrenAlign, ShowTitle.
- PictureDecoration NonselectedPictureText (ML, как у picField; после Title).
- ShowTitle factual у UsualGroup/Page/ColumnGroup — раньше ловили/эмитили только false,
  явный <ShowTitle>true> терялся (8989 в корпусе); теперь true/false при наличии.

⚠️ Table HeaderHeight/FooterHeight/CurrentRowUse НЕ добавлены: строгий Table-XSD требует точной
позиции тегов (Representation→…→HeaderHeight→Footer→…→CurrentRowUse→RowFilter), generic-позиция
ломает загрузку (XDTO exception) — отдельная задача по позициям в Emit-Table.

Зеркало py. Выборка 82 формы: 0 корневых утечек батч-тегов (остаток — CFE-форма с потерянным
контейнером расширения, не связано). Кейсы table/radio-tumbler-strings/groups/element-appearance/
input-fields расширены и сертифицированы в 1С (явный ShowTitle=true, форменные props, picDecoration
NPT, button Shape/PictureLocation). Регресс 43/43 (ps1+py).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-11 22:09:32 +03:00

49 lines
1.9 KiB
JSON

{
"name": "RadioButtonField Tumbler + строковые значения с автогенерацией презентации",
"preRun": [
{
"script": "meta-compile/scripts/meta-compile",
"input": { "type": "DataProcessor", "name": "ТестТумблер", "attributes": [
{ "name": "ОтборСтрок", "type": "string(50)" }
]},
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
},
{
"script": "form-add/scripts/form-add",
"args": { "-ObjectPath": "{workDir}/DataProcessors/ТестТумблер.xml", "-FormName": "Форма" }
}
],
"params": { "outputPath": "DataProcessors/ТестТумблер/Forms/Форма/Ext/Form.xml" },
"validatePath": "DataProcessors/ТестТумблер/Forms/Форма/Ext/Form.xml",
"input": {
"title": "Радио — Tumbler",
"attributes": [
{ "name": "Объект", "type": "DataProcessorObject.ТестТумблер", "main": true },
{ "name": "ОтборСтрок", "type": "string(50)" }
],
"elements": [
{
"radio": "ОтборСтрок",
"path": "ОтборСтрок",
"radioButtonType": "Tumbler",
"editMode": "EnterOnInput",
"warningOnEdit": "Смена отбора перезагрузит список",
"choiceList": [
{ "value": "Рекомендуемые" },
{ "value": "Все" }
]
},
{
"radio": "ВидСчета",
"equalColumnsWidth": true,
"columnsCount": 1,
"choiceList": [
{ "value": "Active", "valueType": "ent:AccountType", "presentation": "Активный" },
{ "value": "Passive", "valueType": "ent:AccountType", "presentation": "Пассивный" },
{ "value": "ActivePassive", "valueType": "ent:AccountType", "presentation": "Активный/Пассивный" }
]
}
]
}
}