Files
cc-1c-skills/tests/skills/cases/cfe-borrow/form-choice-param-links.json
T
Nick Shirokov 1bd0c7724e feat(cfe-borrow): ссылки параметров выбора по uuid реквизита
Заимствование формы без основного реквизита копировало
<ChoiceParameterLinks>/<xr:Link> как есть, с текстовым путём
«Объект.Партнер». В расширении такой путь не разрешается — платформа
отвергала загрузку: «Неверный путь к полю - Объект.Партнер». Привязка
лежит в <xr:DataPath> внутри xr:Link, и общий стриппинг её не видел.

Конфигуратор ссылку не выбрасывает, а переводит путь в непрозрачную форму
«1/0:<uuid реквизита объекта>» — связь остаётся рабочей. Делаем так же;
реквизит, которого в источнике нет, недоступен и по uuid — такую связь
вырезаем вместе с опустевшим контейнером. Путь односегментный во всём
корпусе УТ (285 из 285), глубже не бывает.

Результат совпал с эталоном Конфигуратора вплоть до uuid, E2E на UT_DEMO:
«Load completed successfully». Регресс 12/12 на обоих рантаймах.
2026-08-12 15:53:59 +03:00

54 lines
2.5 KiB
JSON

{
"name": "Заимствование формы без основного реквизита: связь параметров выбора переводится на uuid, висячая вырезается",
"preRun": [
{
"script": "meta-compile/scripts/meta-compile",
"input": { "type": "Catalog", "name": "Партнеры" },
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
},
{
"script": "meta-compile/scripts/meta-compile",
"input": { "type": "Catalog", "name": "КонтактныеЛица" },
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
},
{
"script": "meta-compile/scripts/meta-compile",
"input": {
"type": "Document", "name": "ЗаказПоставщику",
"attributes": [
{ "name": "Партнер", "type": "CatalogRef.Партнеры" },
{ "name": "КонтактноеЛицо", "type": "CatalogRef.КонтактныеЛица" }
]
},
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
},
{
"script": "form-add/scripts/form-add",
"args": { "-ObjectPath": "{workDir}/Documents/ЗаказПоставщику.xml", "-FormName": "ФормаДокумента" }
},
{
"script": "form-compile/scripts/form-compile",
"input": {
"title": "Заказ поставщику",
"elements": [
{ "input": "Партнер", "path": "Объект.Партнер" },
{
"input": "КонтактноеЛицо", "path": "Объект.КонтактноеЛицо",
"choiceParameterLinks": [
{ "name": "Отбор.Владелец", "dataPath": "Объект.Партнер" },
{ "name": "Отбор.Прочее", "dataPath": "Объект.НетТакогоРеквизита" }
]
}
],
"attributes": [ { "name": "Объект", "type": "DocumentObject.ЗаказПоставщику", "main": true } ]
},
"args": { "-JsonPath": "{inputFile}", "-OutputPath": "{workDir}/Documents/ЗаказПоставщику/Forms/ФормаДокумента/Ext/Form.xml" }
},
{
"script": "cfe-init/scripts/cfe-init",
"args": { "-Name": "Тест", "-OutputDir": "{workDir}/ext", "-ConfigPath": "{workDir}" }
}
],
"params": { "extensionPath": "ext", "object": "Document.ЗаказПоставщику.Form.ФормаДокумента" }
}