mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-27 04:25:54 +03:00
WARN с кодом 0 означал «не смог»: в пакетном прогоне это выглядело как успех. Теперь предупреждение остаётся только там, где нужное уже есть (элемент уже добавлен, удалять нечего, позиция after/before не найдена — добавлено в конец). Остальное — ошибка в stderr и код 1: неизвестный ключ или операция, неверный формат, недопустимый у типа ребёнок, изменение несуществующего элемента, формы и макеты (их делают form-add/template-add). Отказ атомарен: побочные файлы (таблица внешнего источника, модуль команды, предопределённые) пишутся после основного XML, так что отказ посреди определения не оставляет на диске ни одного изменения. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
61 lines
1.4 KiB
JSON
61 lines
1.4 KiB
JSON
{
|
|
"name": "Реквизит в таблицу внешнего источника: отказ, поля из того же определения тоже не записаны",
|
|
"setup": "empty-config",
|
|
"preRun": [
|
|
{
|
|
"script": "meta-compile/scripts/meta-compile",
|
|
"input": {
|
|
"type": "ExternalDataSource",
|
|
"name": "PG",
|
|
"tables": {
|
|
"products": {
|
|
"keyFields": [
|
|
"id"
|
|
],
|
|
"fields": [
|
|
"id: Number(10,0)",
|
|
"name: String(150)"
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"args": {
|
|
"-JsonPath": "{inputFile}",
|
|
"-OutputDir": "{workDir}"
|
|
}
|
|
}
|
|
],
|
|
"params": {
|
|
"objectPath": "ExternalDataSources/PG/Tables/products.xml"
|
|
},
|
|
"input": {
|
|
"add": {
|
|
"fields": [
|
|
"barcode: String(20) | nullable",
|
|
{
|
|
"name": "cost",
|
|
"type": "Number(15,2)",
|
|
"nameInDataSource": "cost_net",
|
|
"readOnly": true
|
|
}
|
|
],
|
|
"attributes": [
|
|
"Лишний: String(10)"
|
|
]
|
|
}
|
|
},
|
|
"expect": {
|
|
"fileNotContains": [
|
|
{
|
|
"file": "ExternalDataSources/PG/Tables/products.xml",
|
|
"text": [
|
|
"<Attribute uuid=",
|
|
"barcode",
|
|
"cost_net"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"expectError": "attributes not allowed for Table"
|
|
}
|