mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-14 06:45:17 +03:00
feat(meta-compile,meta-decompile): кастомизация стандартных реквизитов — FillValue/ChoiceParameterLinks/… (v1.27/v0.18)
Внутри StandardAttributes стандартные реквизиты кастомизируются теми же свойствами, что и обычные — профиль их не захватывал. Расширен override: fillValue (DTR-путь/строка/bool через Normalize-ChoiceValue, дефолт nil), choiceParameterLinks/choiceParameters (переиспользованы эмиттеры реквизита с xr:-тегом; dataPath — self-резолв Ссылка→StandardAttribute.Ref), comment, mask, choiceForm. Декомпилятор: парсинг вынесен в Parse-ChoiceParameter* (namespace-параметр md:/xr:), захват в override. Закрыто на выборке: ChoiceParameterLinks/Parameters/Comment/Mask=0; FillValue — DTR-путь(863)/empty-string(150)/bool(21)/string(4). Регресс 45/45 ps1+py, ps1↔py identical. spec §7.1.1, кейс catalog-stdattr-custom. NOT COVERED (вырожденные, редкие): fillValue стандартного реквизита как xs:string из пробелов (119, теряется при PreserveWhitespace=false) и пустой xr:DesignTimeRef (49). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -360,7 +360,9 @@ JSON DSL для описания объектов метаданных конф
|
||||
|
||||
Формат: `standardAttributes` — объект `{ ИмяРеквизита: { переопределения } }`. Имена реквизитов — как в XML: `PredefinedDataName`, `Predefined`, `Ref`, `DeletionMark`, `IsFolder`, `Owner`, `Parent`, `Description`, `Code`.
|
||||
|
||||
Переопределяемые поля реквизита: `synonym` (ML — строка/`{ru,en}`), `tooltip` (ML), `fillChecking` (`DontCheck`|`ShowError`|`ShowWarning`), `fillFromFillingValue` (bool), `fullTextSearch` (`Use`|`DontUse`), `dataHistory` (`Use`|`DontUse`).
|
||||
Переопределяемые поля реквизита: `synonym` (ML — строка/`{ru,en}`), `tooltip` (ML), `fillChecking` (`DontCheck`|`ShowError`|`ShowWarning`), `fillFromFillingValue` (bool), `fullTextSearch` (`Use`|`DontUse`), `dataHistory` (`Use`|`DontUse`), `fillValue` (значение — DTR-путь/строка/bool; см. §4.2), `choiceParameterLinks` / `choiceParameters` (как у реквизита, §4.2), `comment`, `mask`, `choiceForm`.
|
||||
|
||||
> Не покрыты (редкие вырожденные формы `fillValue` стандартного реквизита): «пустое» значение с не-nil типом — `xs:string` из одних пробелов и пустой `xr:DesignTimeRef`.
|
||||
|
||||
**Профиль материализованного блока** (значения, которые платформа заполняет автоматически — задавать их в DSL не нужно):
|
||||
|
||||
|
||||
Reference in New Issue
Block a user