Files
cc-1c-skills/tests/skills/cases/form-compile/additional-columns.json
T
Nick Shirokov 330447c95f feat(form-decompile,form-compile): системные перечисления в choiceList + footerDataPath/footerText/editMode на labelField/radio + AdditionalColumns empty self-closing
Четыре находки из rt-iter2 (формы Хозрасчётный/ФормаСчёта, СпецификацииНоменклатуры):

1. **Системные перечисления в choiceList** (ent: namespace, напр. ent:AccountType=ВидСчёта):
   значение несёт xsi:type="ent:AccountType", компилятор эмитил xs:string (терял тип).
   Per-item ключ `valueType` (как у фильтра): декомпилятор сохраняет не-примитивный
   не-DesignTimeRef xsi:type, компилятор эмитит его вместо авто-детекта.
2. **footerDataPath/footerText на LabelField** — были только у InputField, на поле-надписи
   (колонка таблицы) терялись. Добавлены (decompile + compile, позиция по корпусу).
3. **editMode у RadioButtonField** — не ловился/не эмитился (форма ВидСчёта). Добавлен.
4. **Пустая AdditionalColumns** (table-ref без колонок) — компилятор эмитил пустую пару
   <AdditionalColumns table="X"></...>, платформа — self-closing. Фикс: self-closing при
   пустых columns.

Зеркало py. Обе формы → match. Кейсы radio-tumbler-strings (+ent:AccountType +editMode),
picture-field (labelField-колонка +footerDataPath/footerText), additional-columns
(+пустая группа) сертифицированы в 1С. Регресс 43/43 (ps1+py).

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

41 lines
1.6 KiB
JSON

{
"name": "Доп. колонки табличной части объекта (AdditionalColumns)",
"preRun": [
{
"script": "meta-compile/scripts/meta-compile",
"input": {
"type": "DataProcessor",
"name": "ДопКолонки",
"tabularSections": [
{ "name": "Прочее", "attributes": [ { "name": "Значение", "type": "String", "length": 50 } ] },
{ "name": "ЕщёТаблица", "attributes": [ { "name": "Поле", "type": "String", "length": 10 } ] }
]
},
"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": "Доп. колонки",
"elements": [
{ "label": "Подпись", "title": "Форма с доп. колонками табличной части" }
],
"attributes": [
{ "name": "Объект", "type": "DataProcessorObject.ДопКолонки", "main": true,
"additionalColumns": [
{ "table": "Объект.Прочее", "columns": [
{ "name": "Доступность", "type": "boolean" },
{ "name": "Служебная", "type": "string" }
]},
{ "table": "Объект.ЕщёТаблица", "columns": [] }
]
}
]
}
}