mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-15 15:25:16 +03:00
feat(meta-compile,meta-decompile): поддержка типов Report + DataProcessor (v1.52/v0.43)
14-й/15-й типы, 2546 объектов acc+erp. Рерайт Emit-ReportProperties/ Emit-DataProcessorProperties на общие хелперы (был легаси-хардкод Comment/ UseStandardCommands/формы/презентации). Декомпилятор: снят гейт +оба; Report-специфика (defaultForm/mainDataCompositionSchema/*SettingsForm/ defaultVariantForm/variantsStorage/settingsStorage/extendedPresentation), DataProcessor-специфика (defaultForm/auxiliaryForm/extendedPresentation). Общие фиксы (не только Report/DataProcessor): - Emit-VerbatimRef: ссылки форм/схем/хранилищ без Normalize-FormRef — имя формы может быть буквально «Форма» (Normalize перевёл бы имя-сегмент Форма→Form). - Пустой <Type/> (реквизит без типа): маркер typeEmpty (декомпилятор type:"", компилятор <Type/> + FillValue nil вместо xs:string). Отличаем present-"" от absent. - Платформенные типы v8:-префикса (ValueTable/ValueTree/ValueList/StandardPeriod/…), current-config cfg:-типы (ConstantsSet/ReportBuilder/*Object.X), выделенные ns (Chart/SettingsComposer/SpreadsheetDocument) — компилятор возвращал голое имя. - Expand-DataPath: голый (отрицательный) индекс-маркер (-8 в ChoiceParameterLinks) verbatim. Class-2: UseStandardCommands дефолт true (совместно с пользователем — авторски- безопасно: доступность через стандартный командный интерфейс; при false и без переопределения размещения команд объект доступен лишь по навигационной ссылке). Декомпилятор явно фиксирует false. У DataProcessor мода корпуса и так true. ПОЛНЫЙ КОРПУС 2546: match 2546/2546, TOTAL 0, byte-exact order-preserved (сверено с реальными 1С-файлами). Регресс 52/52 ps1+py, ps1==py identical. spec §7.11/§7.12, кейсы report-full/data-processor-full. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"name": "Обработка — полный набор возможностей",
|
||||
"input": {
|
||||
"type": "DataProcessor",
|
||||
"name": "ЗагрузкаТаблиц",
|
||||
"comment": "(Демо)",
|
||||
"useStandardCommands": false,
|
||||
"defaultForm": "DataProcessor.ЗагрузкаТаблиц.Form.Форма",
|
||||
"attributes": [
|
||||
{ "name": "Таблица", "type": "ValueTree" },
|
||||
{ "name": "Произвольные", "type": "" }
|
||||
],
|
||||
"tabularSections": {
|
||||
"Строки": ["Наименование: String(100)", { "name": "Значение", "type": "" }]
|
||||
}
|
||||
},
|
||||
"validatePath": "DataProcessors/ЗагрузкаТаблиц",
|
||||
"expect": {
|
||||
"files": ["DataProcessors/ЗагрузкаТаблиц.xml"]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user