mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-27 23:21:02 +03:00
MDObjectRef ссылается на ОБЪЕКТ метаданных (Catalog.Валюты), а не на тип ссылки. Эмиттеры пропускали значение как есть, если в нём была точка, поэтому "CatalogRef.Валюты" доходил до XML без изменений → при загрузке конфигурации платформа отвечала «Неизвестный объект метаданных». Инструкция вела в баг сама: reference/catalog.md документировал owners: ["CatalogRef.Контрагенты"]. Тестами не ловилось — все кейсы использовали каноническую форму. - Normalize-MDObjectRef расширена ссылочными формами (англ. *Ref + рус. *Ссылка); вида метаданных, оканчивающегося на Ref, не существует → схлопывание однозначно. В ТИПАХ реквизитов запись CatalogRef.X верна — там мапа не применяется. - Добавлен параметр defaultRoot (голое имя без точки), инлайн-подстановка "Catalog.$ownerRef" в owners убрана — логика теперь в одном месте. - Нормализация применена в 4 местах, где её не было: owners, basedOn, registerRecords, baseCalculationTypes. - Кейс catalog-inputbystring-datalock переведён на неканонический вход: снэпшот не изменился ни на байт — прямое доказательство нормализации. Регресс 73/73 ps1+py, полная сюита 566/566. Живая проверка на 8.3.27: подчинённый справочник с owners CatalogRef./СправочникСсылка. грузится чисто. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
23 lines
1019 B
JSON
23 lines
1019 B
JSON
{
|
|
"name": "InputByString / DataLockFields / BasedOn каталога (+нормализация MDObjectRef: CatalogRef./рус. → Catalog.)",
|
|
"input": {
|
|
"type": "Catalog",
|
|
"name": "ДоговорыКонтрагентов",
|
|
"owners": ["CatalogRef.Контрагенты"],
|
|
"codeLength": 11,
|
|
"descriptionLength": 100,
|
|
"inputByString": ["Код", "Наименование", "НомерДоговора"],
|
|
"dataLockFields": ["Организация", "Контрагент", "Владелец"],
|
|
"basedOn": ["Справочник.Контрагенты", "DocumentRef.ЗаказПоставщику"],
|
|
"attributes": [
|
|
"Организация: CatalogRef.Организации",
|
|
"Контрагент: CatalogRef.Контрагенты",
|
|
"НомерДоговора: String(20) | index"
|
|
]
|
|
},
|
|
"validatePath": "Catalogs/ДоговорыКонтрагентов",
|
|
"expect": {
|
|
"files": ["Catalogs/ДоговорыКонтрагентов.xml"]
|
|
}
|
|
}
|