mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-18 17:20:22 +03:00
Эталоны Issue66Example7 и 7_1 (три формы, оба режима) показали, что прошлая правка была неполной в двух местах. 1. Путь на СТАНДАРТНОЕ поле объекта («Объект.Owner», «Объект.Date», «Объект.Ref») текстом не разрешается даже при заимствованном основном реквизите: платформа отвергает загрузку «Неверный путь к данным». Мы такой путь оставляли текстом. Конфигуратор оставляет ссылку на сам реквизит — «1». Теперь так же: реквизит объекта (есть в ChildObjects) остаётся читаемым текстом, стандартное поле сводится к id основного реквизита. Проверено загрузкой: было падение, стало успешно; выход совпал с эталоном 7_1 дословно. 2. Пути «Items.<Элемент>.CurrentData.<Поле>» при заимствованном основном реквизите разрешаются текстом — элементы формы на месте, а их данные доступны через основной реквизит. Конфигуратор их и не трогает. Прошлая правка вырезала их в обоих режимах, то есть теряла рабочие связи. Теперь вырезаются только без заимствования основного реквизита, где они действительно не разрешаются. Уточнение по кодировке для будущей работы: без заимствования Конфигуратор кодирует стандартное поле как «1/-N» (Owner у справочника и Ref у документа дали -5, Date у документа -3), а Items-путь — как «<id элемента>:02023637-7868-4a5f-8576-835a76e0c9ba/0:<uuid поля>». Таблицу отрицательных индексов по трём точкам не построить, поэтому в скелетном режиме обе разновидности по-прежнему вырезаются с предупреждением. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
107 lines
2.8 KiB
JSON
107 lines
2.8 KiB
JSON
{
|
|
"name": "Связь на стандартное поле объекта: с основным реквизитом остаётся ссылка на сам реквизит",
|
|
"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.Ячейки"
|
|
}
|
|
]
|
|
},
|
|
"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": "Объект.Ячейка",
|
|
"choiceParameterLinks": [
|
|
{
|
|
"name": "Отбор.Владелец",
|
|
"dataPath": "Объект.Ref"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"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.ФормаДокумента"
|
|
},
|
|
"expect": {
|
|
"fileContains": {
|
|
"file": "ext/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml",
|
|
"text": "<xr:Link>"
|
|
},
|
|
"fileNotContains": {
|
|
"file": "ext/Documents/Размещение/Forms/ФормаДокумента/Ext/Form.xml",
|
|
"text": "<xr:DataPath xsi:type=\"xs:string\">Объект.Ref</xr:DataPath>"
|
|
}
|
|
},
|
|
"args_extra": [
|
|
"-BorrowMainAttribute",
|
|
"Form"
|
|
]
|
|
}
|