mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-20 17:40:59 +03:00
feat(form-compile): короткая форма для параметров выбора / связей / связи по типу
Входной сахар (декомпилятор по-прежнему пишет объектную модель): - choiceParameters: ["Отбор.Х=true", "Отбор.Вид=Enum.A, Enum.B"] — name=value, запятые → массив, литералы коэрсятся (true/false → bool, число → number, остальное → строка/ref через Normalize-ChoiceValue). - choiceParameterLinks: ["Отбор.Орг=ОбычноеПоле", "Отбор.Тип=Поле:DontChange"] — name=dataPath, опц. хвост :Clear/:DontChange (дефолт Clear). - typeLink: "ПолеПодсказка" или "ПолеПодсказка#0". Парсеры на входе каждого эмиттера (строка → объект), далее общий путь. Байт-в-байт идентично объектной форме (проверено ps1+py). Кейс input-fields: поле ПолеСвязиКратко на короткой форме рядом с объектным; снэпшот сертифицирован загрузкой в 1С. Версия компилятора синхронизирована (py 1.67→1.69). 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
0397d8f37e
commit
65f63fbc48
@@ -390,6 +390,19 @@ companion-панели с собственным контентом. Оба не
|
||||
- **`choiceParameterLinks`** — `[{ name, dataPath, valueChange? }]`. `valueChange`: `Clear` (дефолт, опускается) / `DontChange`; forgiving `очистить`/`неизменять`. Синонимы: `имя`/`путь`/`режимИзменения`.
|
||||
- **`typeLink`** — `{ dataPath, linkItem }`. `linkItem` — индекс (дефолт `0`). Синонимы: `путь`/`элементСвязи`.
|
||||
|
||||
**Короткая форма (shorthand)** — то же самое строками (эквивалентно объектной форме):
|
||||
|
||||
```json
|
||||
{ "input": "Контрагент", "path": "Объект.Контрагент",
|
||||
"choiceParameters": [ "Отбор.Активный=true", "Отбор.ВидПродукции=Enum.Виды.Агрохимикат, Enum.Виды.Пестицид" ],
|
||||
"choiceParameterLinks": [ "Отбор.Организация=Объект.Организация", "Отбор.Тип=Объект.Тип:DontChange" ],
|
||||
"typeLink": "Объект.ЗначениеДата" }
|
||||
```
|
||||
|
||||
- `choiceParameters`: `"name=value"`; значение с запятыми → массив; литералы коэрсятся (`true`/`false` → bool, число → number, остальное → строка/ref).
|
||||
- `choiceParameterLinks`: `"name=dataPath"`, опц. хвост `:Clear`/`:DontChange` (по умолчанию Clear).
|
||||
- `typeLink`: `"dataPath"` или `"dataPath#linkItem"`.
|
||||
|
||||
#### check — CheckBoxField
|
||||
|
||||
```json
|
||||
|
||||
Reference in New Issue
Block a user