fix(template-add): HTML-макет в платформенной раскладке

Навык создавал Templates/<Макет>/Ext/Template.html. Платформа такой файл молча
игнорирует: загрузка проходит без ошибок и предупреждений, а макет в базе пустой.

HTML-макет платформа хранит парой, как справку: дескриптор Ext/Template.xml со
списком страниц и сама страница Ext/Template/<язык>.html (картинки — в _files/).
Раскладка снята с выгрузки acc_8.3.27: 136 HTML-макетов из 136, дескриптор во всех
байт в байт одинаков. Шапка страницы — в виде редактора платформы (одной строкой,
парный </meta>), чтобы первое сохранение в Конфигураторе не давало диффа.

Язык страницы задаётся параметром -Lang (дефолт ru) — как в help-add.
Вывод навыка теперь различает содержимое и дескриптор: «Содержимое» указывает на
страницу, иначе правка ушла бы в дескриптор.

Проверено на 8.3.27.1859: LoadConfigFromFiles + UpdateDBCfg + обратная выгрузка —
текст макета доходит до базы и возвращается байт в байт, дескриптор тоже.
Контроль — тот же макет в старой раскладке: в выгрузке из базы тела нет вовсе.
EPF: epf-build → epf-dump — раскладка возвращается с содержимым.

Диагноз и раскладка — из PR #98.

Co-Authored-By: Roman Syuzyov <rsyuzyov@gmail.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-09-22 16:45:50 +03:00
co-authored by Roman Syuzyov Claude Opus 5
parent 6eaf3211cc
commit 1e94b9236f
7 changed files with 108 additions and 43 deletions
@@ -6,5 +6,25 @@
"args": { "-Name": "МояОбработка", "-SrcDir": "{workDir}" }
}
],
"params": { "objectName": "МояОбработка", "templateName": "МакетHTML", "templateType": "HTML" }
"params": { "objectName": "МояОбработка", "templateName": "МакетHTML", "templateType": "HTML" },
"expect": {
"stdoutContains": ["Содержимое:", "ru.html", "Дескриптор:"],
"preserves": [
{
"file": "МояОбработка/Templates/МакетHTML/Ext/Template.xml",
"bom": true,
"eol": "crlf",
"encoding": "UTF-8",
"finalNewline": false,
"noCR13": true,
"selfClose": "tight"
},
{
"file": "МояОбработка/Templates/МакетHTML/Ext/Template/ru.html",
"bom": true,
"eol": "lf",
"finalNewline": false
}
]
}
}
@@ -1,9 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
</body>
</html>
@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<Help xmlns="http://v8.1c.ru/8.3/xcf/extrnprops" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.17">
<Page>ru</Page>
</Help>
@@ -0,0 +1,2 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta></head><body>
</body></html>