feat(form-compile): роль по GUID в xr-флаге — без префикса Role. (заимствованные/расширение)

Роль в xr-флаге (userVisible/view/edit/use, объектная форма {common,roles}) может
ссылаться по GUID (<xr:Value name="<guid>"> без префикса Role. — заимствованная роль
или расширение), а не по имени. Emit-XrFlag всегда добавлял Role. → Role.<guid>
(форма Сотрудники/ВыплатыУчётЗатрат: 4 ADDED Role.GUID + 4 LOST). Фикс: ключ-роль,
совпадающий с GUID-паттерном, эмитится как есть (без Role.). Декомпилятор GUID и так
сохранял верно (нет префикса для снятия). Зеркало py.

Форма Сотрудники → match. Кейс attributes-types (+edit с ролью по GUID) сертифицирован
в 1С (платформа принимает неизвестную GUID-роль). Регресс 43/43 (ps1+py).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-06-11 21:10:14 +03:00
parent 2ab1b5bc14
commit bdd38691aa
5 changed files with 13 additions and 8 deletions
@@ -24,7 +24,7 @@
"attributes": [
{ "name": "Объект", "type": "DataProcessorObject.Типы", "main": true },
{ "name": "Строка", "type": "string(200)", "view": false, "save": true, "fillCheck": true },
{ "name": "Число", "type": "decimal(10,0,nonneg)", "edit": false },
{ "name": "Число", "type": "decimal(10,0,nonneg)", "edit": { "common": false, "roles": { "a1b2c3d4-1111-2222-3333-444455556666": true } } },
{ "name": "Дата", "type": "dateTime", "title": "" },
{ "name": "Булево", "type": "boolean" },
{ "name": "Период", "type": "СтандартныйПериод", "save": ["Период", "EndDate", "StartDate", "Variant"] },
@@ -79,6 +79,7 @@
</Type>
<Edit>
<xr:Common>false</xr:Common>
<xr:Value name="UUID-001">true</xr:Value>
</Edit>
</Attribute>
<Attribute name="Дата" id="16">