mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-27 12:35:54 +03:00
fix(meta-edit): remove-* у обычного объекта без элемента свойства-списка — отказ
add/set на файле без элемента уже отказывали («файл не из выгрузки платформы?»), а remove печатал WARN и выходил с кодом 0. У заимствованного объекта отсутствие элемента по-прежнему значит «удалять нечего» — предупреждение. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
0ff848784e
commit
b95dcd8f13
@@ -1,4 +1,4 @@
|
||||
# meta-edit v1.58 — Edit existing 1C metadata object XML
|
||||
# meta-edit v1.59 — Edit existing 1C metadata object XML
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
[CmdletBinding(PositionalBinding=$false)]
|
||||
param(
|
||||
@@ -3605,10 +3605,11 @@ function Get-ListPropertyElement([string]$propName, [bool]$create) {
|
||||
Die "Свойство '$propName' заимствованного объекта $($script:objType).$($script:objName) расширение не меняет — значение берётся из основной конфигурации"
|
||||
}
|
||||
$propEl = Find-PropertyElement $propName
|
||||
if ($propEl -or -not $create) { return $propEl }
|
||||
if ($propEl) { return $propEl }
|
||||
if (-not $isAdopted) {
|
||||
Die "В Properties объекта $($script:objType).$($script:objName) нет элемента '$propName' — файл не из выгрузки платформы?"
|
||||
}
|
||||
if (-not $create) { return $null }
|
||||
$newNodes = Import-Fragment "<$propName/>"
|
||||
Insert-PropertyInOrder $script:propertiesEl $newNodes[0] $null $propName
|
||||
return $newNodes[0]
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env python3
|
||||
# meta-edit v1.58 — Edit existing 1C metadata object XML
|
||||
# meta-edit v1.59 — Edit existing 1C metadata object XML
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
|
||||
import argparse
|
||||
@@ -3541,10 +3541,12 @@ def get_list_property_element(prop_name, create):
|
||||
if is_adopted and obj_type not in (map_entry or {}).get("adopted", []):
|
||||
die(f"Свойство '{prop_name}' заимствованного объекта {obj_type}.{obj_name} расширение не меняет — значение берётся из основной конфигурации")
|
||||
prop_el = find_property_element(prop_name)
|
||||
if prop_el is not None or not create:
|
||||
if prop_el is not None:
|
||||
return prop_el
|
||||
if not is_adopted:
|
||||
die(f"В Properties объекта {obj_type}.{obj_name} нет элемента '{prop_name}' — файл не из выгрузки платформы?")
|
||||
if not create:
|
||||
return None
|
||||
new_nodes = import_fragment(f"<{prop_name}/>")
|
||||
insert_property_in_order(properties_el, new_nodes[0], None, prop_name)
|
||||
return new_nodes[0]
|
||||
|
||||
Reference in New Issue
Block a user