From de7e943de1e6bd4409503e0bc7a161d348340f66 Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Wed, 11 Mar 2026 09:49:50 +0300 Subject: [PATCH] fix(cfe-borrow): strip DataPath from AutoCommandBar buttons in borrowed forms MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ERP catalog forms (e.g. Номенклатура.ФормаЭлемента) have buttons inside AutoCommandBar with Объект.Ref — causes "Неверный путь к данным" on load. DataPath was only stripped from form-level ChildItems but not from AutoCommandBar. Co-Authored-By: Claude Opus 4.6 --- .claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 | 2 ++ .claude/skills/cfe-borrow/scripts/cfe-borrow.py | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 b/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 index d0eb3dfd..e8c49180 100644 --- a/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 +++ b/.claude/skills/cfe-borrow/scripts/cfe-borrow.ps1 @@ -509,6 +509,8 @@ function Borrow-Form { $autoCmdXml = $autoCmdXml -replace 'true', 'false' # Strip ExcludedCommand (references to standard commands invalid in extension) $autoCmdXml = [regex]::Replace($autoCmdXml, '\s*[^<]*', '') + # Strip DataPath in AutoCommandBar buttons (e.g. Объект.Ref — invalid in extension) + $autoCmdXml = [regex]::Replace($autoCmdXml, '\s*[^<]*', '') } # ChildItems: copy full tree, clean up base-config references diff --git a/.claude/skills/cfe-borrow/scripts/cfe-borrow.py b/.claude/skills/cfe-borrow/scripts/cfe-borrow.py index 3fd990fc..f8dc220b 100644 --- a/.claude/skills/cfe-borrow/scripts/cfe-borrow.py +++ b/.claude/skills/cfe-borrow/scripts/cfe-borrow.py @@ -680,6 +680,8 @@ def main(): auto_cmd_xml = auto_cmd_xml.replace('true', 'false') # Strip ExcludedCommand (references to standard commands invalid in extension) auto_cmd_xml = re.sub(r'\s*[^<]*', '', auto_cmd_xml) + # Strip DataPath in AutoCommandBar buttons (e.g. Объект.Ref — invalid in extension) + auto_cmd_xml = re.sub(r'\s*[^<]*', '', auto_cmd_xml) # ChildItems: copy full tree, clean up base-config references child_items_xml = ""