Files
cc-1c-skills/tests/skills/cases/cfe-borrow/common-form.json
T
Nick ShirokovandClaude Opus 5.5 fdd3bfa42e feat(cfe-borrow): общая форма заимствуется вместе с содержимым
-Object CommonForm.X заимствовал только описание-оболочку, без тела формы и
модуля, — через расширение общую форму было не доработать. Теперь, как у
Конфигуратора: описание CommonForms/X.xml с корнем <CommonForm> (те же свойства,
что у формы объекта), тело CommonForms/X/Ext/Form.xml по тем же правилам (скелет,
BaseForm, связи, оформление, картинки), модуль, регистрация в Configuration.xml.
Повторное заимствование сохраняет uuid описания и модуль.

С -BorrowMainAttribute владельца у общей формы нет — он выводится из типа
основного реквизита: <Вид>Object.Имя → объект; DynamicList → объект из
<MainTable>; ConstantsSet → константы, на которые есть пути в форме (с типом как
есть, их ссылочные типы — оболочками); примитив или тип без имени → только сам
реквизит. Связь на константу набора не кодируется (код не измерен): без
основного реквизита вырезается с предупреждением.

Попутно (проявилось на общей форме, давний пробел форм списка): набор команд
таблицы самого основного реквизита при его заимствовании остаётся — Конфигуратор
его сохраняет (ФайлыВТоме, ЖурналСкладскихАктов); прочие вложенные — как раньше.

Эталоны Конфигуратора УТ: общая форма без основного реквизита (link) и пять с ним
(CommonMain: обработка, динамический список, набор констант, строка, отчёт без
имени) совпадают построчно в обоих портах; константы — как у Конфигуратора;
прежние 9 форм не сдвинулись. Оболочку таблицы из текста запроса
(Справочник.Пользователи) не заимствуем — платформа грузит и без неё, это
отдельный механизм. Оба порта, v1.43. Кейсы common-form, common-form-main.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-27 20:35:56 +03:00

116 lines
2.9 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{
"name": "Общая форма заимствуется вместе с содержимым: описание <CommonForm>, тело с BaseForm, модуль, регистрация",
"preRun": [
{
"script": "meta-compile/scripts/meta-compile",
"input": {
"type": "Catalog",
"name": "Склады"
},
"args": {
"-JsonPath": "{inputFile}",
"-OutputDir": "{workDir}"
}
},
{
"script": "meta-compile/scripts/meta-compile",
"input": {
"type": "CommonForm",
"name": "Подбор"
},
"args": {
"-JsonPath": "{inputFile}",
"-OutputDir": "{workDir}"
}
},
{
"script": "form-compile/scripts/form-compile",
"input": {
"title": "Подбор",
"elements": [
{
"check": "Режим",
"path": "Режим"
},
{
"table": "Таблица",
"path": "Таблица",
"columns": [
{
"input": "ТаблицаСклад",
"path": "Таблица.Склад",
"choiceParameterLinks": [
{
"name": "Отбор.Ссылка",
"dataPath": "Items.Таблица.CurrentData.Склад"
}
]
}
]
}
],
"attributes": [
{
"name": "Режим",
"type": "boolean"
},
{
"name": "Таблица",
"type": "ValueTable",
"columns": [
{
"name": "Склад",
"type": "CatalogRef.Склады"
}
]
}
]
},
"args": {
"-JsonPath": "{inputFile}",
"-OutputPath": "{workDir}/CommonForms/Подбор/Ext/Form.xml"
}
},
{
"script": "cfe-init/scripts/cfe-init",
"args": {
"-Name": "Тест",
"-OutputDir": "{workDir}/cfe",
"-ConfigPath": "{workDir}"
}
}
],
"params": {
"extensionPath": "cfe",
"object": "CommonForm.Подбор"
},
"expect": {
"files": [
"cfe/CommonForms/Подбор.xml",
"cfe/CommonForms/Подбор/Ext/Form.xml",
"cfe/CommonForms/Подбор/Ext/Form/Module.bsl"
],
"fileContains": [
{
"file": "cfe/CommonForms/Подбор.xml",
"text": [
"<CommonForm uuid=",
"<ObjectBelonging>Adopted</ObjectBelonging>",
"<FormType>Managed</FormType>"
]
},
{
"file": "cfe/CommonForms/Подбор/Ext/Form.xml",
"text": [
"<BaseForm",
":02023637-7868-4a5f-8576-835a76e0c9ba/"
]
},
{
"file": "cfe/Configuration.xml",
"text": "<CommonForm>Подбор</CommonForm>"
}
]
}
}