Files
cc-1c-skills/tests/skills/cases/meta-compile/catalog-tabparts.json
T
Nick Shirokov 03de2dc86d feat(meta-compile,meta-decompile): объектная форма табличной части (синоним/подсказка/комментарий ТЧ) (v1.23/v0.8)
Раундтрип-находка: синоним ТЧ кастомный/мультиязычный у 84% (корпус 1728 ТЧ: multi 1032, custom-ru 417,
auto лишь 279), ToolTip у 24% (413). Компилятор хардкодил синоним=Split-CamelCase, Comment/ToolTip пусто.

DSL: значение ТЧ — массив колонок (синоним авто) ЛИБО объект {synonym, tooltip, comment, attributes/columns}
(по образцу реквизита: shorthand vs object). synonym/tooltip — ML.

- meta-compile (дуал-порт): нормализация ТЧ → {columns, synonym, tooltip, comment}; Emit-TabularSection
  параметризован (synonym через Emit-MLText, Comment/ToolTip из DSL).
- meta-decompile: ТЧ → объектная форма при кастомном синониме/подсказке/комментарии, иначе массив.
- spec §5.

Валидация: PS==PY; TS-категории ~0 (item 4566→6, ToolTip 2188→44); −10067 (89687→79620); регресс 37/37;
1С-cert зелёный. Остаток TabularSection>Synonym (~50) — станд. реквизит LineNumber ТЧ (отдельная категория).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-03 15:33:18 +03:00

30 lines
961 B
JSON

{
"name": "Справочник с табличной частью",
"input": {
"type": "Catalog",
"name": "Товары",
"attributes": [
{ "name": "Артикул", "type": "String", "length": 25 }
],
"tabularSections": [
{
"name": "Штрихкоды",
"attributes": [
{ "name": "Штрихкод", "type": "String", "length": 128 }
]
},
{
"name": "Характеристики",
"synonym": { "ru": "Характеристики", "en": "Features" },
"tooltip": "Дополнительные характеристики товара",
"comment": "ТЧ характеристик",
"attributes": [ "Свойство: String(100)", "Значение: String(200)" ]
}
]
},
"validatePath": "Catalogs/Товары",
"expect": {
"files": ["Catalogs/Товары.xml", "Catalogs/Товары/Ext/ObjectModule.bsl"]
}
}