mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-23 18:55:53 +03:00
Повторный вызов на существующем макете безусловно отказывал, поэтому второй язык приходилось добавлять руками — дописывать <Page> в дескриптор и заводить файл страницы. Случай не редкий: в выгрузке ERP 54 макета из 70 двуязычные. Теперь при -TemplateType HTML существующий макет — повод добавить страницу, а не отказать. Порядок <Page> — по коду языка (в ERP так во всех 54). Версия формата берётся из самого дескриптора, чтобы правка чужой выгрузки не меняла формат. Метаданные макета и ChildObjects не трогаются: перезапись сменила бы UUID. Отказ остался там, где он по делу: тот же язык повторно, нехтмловый макет под тем же именем, любой не-HTML тип. Макет в старой раскладке (Ext/Template.html) мигрируется с громким [WARN]: платформа такую раскладку игнорирует, то есть состояние и так нерабочее, а создать её могла только версия навыка без -Lang — значит это страница на языке по умолчанию. Проверено на 8.3.27.1859: двуязычный макет доходит до базы и возвращается обратно байт в байт — и дескриптор, и обе страницы. Попутно измерено: страницу на языке, не объявленном в Languages/, платформа принимает — поэтому состав языков не проверяем. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
37 lines
1.5 KiB
JSON
37 lines
1.5 KiB
JSON
{
|
|
"name": "HTML-макет в старой раскладке: страница переносится, язык добавляется",
|
|
"preRun": [
|
|
{
|
|
"script": "epf-init/scripts/init",
|
|
"args": { "-Name": "МояОбработка", "-SrcDir": "{workDir}" }
|
|
},
|
|
{
|
|
"script": "template-add/scripts/add-template",
|
|
"args": {
|
|
"-ObjectName": "МояОбработка",
|
|
"-TemplateName": "МакетHTML",
|
|
"-TemplateType": "HTML",
|
|
"-SrcDir": "{workDir}"
|
|
}
|
|
},
|
|
{ "deletePath": "МояОбработка/Templates/МакетHTML/Ext/Template" },
|
|
{ "deletePath": "МояОбработка/Templates/МакетHTML/Ext/Template.xml" },
|
|
{
|
|
"writeFile": {
|
|
"path": "МояОбработка/Templates/МакетHTML/Ext/Template.html",
|
|
"content": "<!DOCTYPE html>\n<html><body>\nСТАРОЕ_СОДЕРЖИМОЕ\n</body></html>"
|
|
}
|
|
}
|
|
],
|
|
"params": { "objectName": "МояОбработка", "templateName": "МакетHTML", "templateType": "HTML" },
|
|
"args_extra": ["-Lang", "en"],
|
|
"expect": {
|
|
"stdoutContains": ["[WARN]", "старой раскладке", "Добавлена страница макета"],
|
|
"filesAbsent": ["МояОбработка/Templates/МакетHTML/Ext/Template.html"],
|
|
"fileContains": {
|
|
"file": "МояОбработка/Templates/МакетHTML/Ext/Template/ru.html",
|
|
"text": "СТАРОЕ_СОДЕРЖИМОЕ"
|
|
}
|
|
}
|
|
}
|