mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-28 05:59:41 +03:00
feat(form-decompile,form-compile): Table refreshRequest + форм. collapseItemsByImportanceVariant/groupList (pass-through)
Раундтрип терял три скаляра (чистые двусторонние пробелы — не ловились ни декомпилятором, ни компилятором): - Table <RefreshRequest> (запрос обновления дин-списка; корпус acc+erp 8.3.24 — 33, всегда PullFromTop) - форм-уровень <CollapseItemsByImportanceVariant> (сворачивание по важности; 27: DontUse 26/Use 1) - форм-уровень <GroupList> (ссылка на группу списка, значение 2:<GUID>/имя; 30) Все три — pass-through (захват «как есть», зеркало платформы). RefreshRequest — в Emit-Table рядом с currentRowUse; форм-уровневые — через KNOWN_FORM_PROPS (decompile) + generic Emit-Properties (авто-PascalCase, compile ps1+py). Верификация: таргет-раундтрип 68 форм с этими тегами → три категории закрыты (0 LOST; остаток — другие категории valueType/HorizontalSpacing). Регресс form-compile 43/43 (ps1+py); 1С-cert кейса dynamic-list-form (все три тега, включая GroupList с GUID, грузятся в платформу). spec обновлён. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
569234b448
commit
e007233c91
@@ -1,4 +1,4 @@
|
||||
# form-compile v1.129 — Compile 1C managed form from JSON or object metadata
|
||||
# form-compile v1.130 — Compile 1C managed form from JSON or object metadata
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
param(
|
||||
[string]$JsonPath,
|
||||
@@ -4326,6 +4326,8 @@ function Emit-Table {
|
||||
Emit-PictureRef -val $el.rowsPicture -picTag 'RowsPicture' -indent $inner
|
||||
# Использование текущей строки таблицы (pass-through; в корпусе соседствует с блоком дин-списка)
|
||||
if ($el.currentRowUse) { X "$inner<CurrentRowUse>$($el.currentRowUse)</CurrentRowUse>" }
|
||||
# Запрос обновления дин-списка (pass-through; в корпусе всегда PullFromTop)
|
||||
if ($el.refreshRequest) { X "$inner<RefreshRequest>$($el.refreshRequest)</RefreshRequest>" }
|
||||
# Блок свойств дин-список-таблицы (помечена эвристикой 11b.4)
|
||||
if ($el.PSObject.Properties["_dynList"] -and $el._dynList) { Emit-DynListTableBlock -el $el -indent $inner }
|
||||
if ($el.viewStatusLocation) { X "$inner<ViewStatusLocation>$($el.viewStatusLocation)</ViewStatusLocation>" }
|
||||
|
||||
Reference in New Issue
Block a user