From 2c500307890762df2b28210ffcf180ae41171ec0 Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Sun, 5 Jul 2026 20:40:19 +0300 Subject: [PATCH] =?UTF-8?q?test(meta-compile):=20=D1=80=D0=B5=D0=B3=D1=80?= =?UTF-8?q?=D0=B5=D1=81=D1=81=20=D1=81=D1=83=D0=B1=D0=BA=D0=BE=D0=BD=D1=82?= =?UTF-8?q?=D0=BE/=D0=BF=D1=80=D0=B8=D0=B7=D0=BD=D0=B0=D0=BA=D0=BE=D0=B2?= =?UTF-8?q?=20=D0=9F=D0=A1=20+=201=D0=A1-=D1=81=D0=B5=D1=80=D1=82=20=D1=87?= =?UTF-8?q?=D0=B5=D1=80=D0=B5=D0=B7=20preRun=20=D0=9F=D0=92=D0=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Кейс chart-of-accounts расширен до полного: ext-dim (maxExtDimensionCount + extDimensionTypes), признаки учёта и субконто-признаки, предопределённые счета с субконто (короткая запись + токен Turnover, обе формы Turnover=false/true). Раньше кейс был урезан (maxExtDimensionCount:0) из-за 1С-серта. Ключ к серту (идея из обсуждения): нужный ПВХ видов субконто создаётся в `preRun` с типизированными предопределёнными видами (String(100), в пределах valueType плана), а основной ввод явно задаёт `extDimensionTypes` → авто-стаб/hostEdit харнеса не срабатывают (правки verify-snapshots не понадобились). Так решены оба прежних блокера: пустой авто-стаб ПВХ и ордеринг hostEdit. Байт-регресс 47/47 ps1+py (ps1↔py identical). 1С-cert ✓ (грузится в 8.3.24). Co-Authored-By: Claude Opus 4.8 (1M context) --- .../cases/meta-compile/chart-of-accounts.json | 25 ++++- .../ChartsOfAccounts/Хозрасчетный.xml | 78 ++++++++++++++- .../Хозрасчетный/Ext/Predefined.xml | 20 +++- .../ВидыСубконто.xml | 97 +++++++++++++++++++ .../ВидыСубконто/Ext/ObjectModule.bsl | 0 .../ВидыСубконто/Ext/Predefined.xml | 29 ++++++ .../chart-of-accounts/Configuration.xml | 1 + 7 files changed, 243 insertions(+), 7 deletions(-) create mode 100644 tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто.xml create mode 100644 tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто/Ext/ObjectModule.bsl create mode 100644 tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто/Ext/Predefined.xml diff --git a/tests/skills/cases/meta-compile/chart-of-accounts.json b/tests/skills/cases/meta-compile/chart-of-accounts.json index 1fe8ab83..d01b717c 100644 --- a/tests/skills/cases/meta-compile/chart-of-accounts.json +++ b/tests/skills/cases/meta-compile/chart-of-accounts.json @@ -1,5 +1,17 @@ { - "name": "План счетов: признаки учёта и предопределённые счета", + "name": "План счетов: субконто, признаки учёта и предопределённые счета", + "preRun": [ + { + "script": "meta-compile/scripts/meta-compile", + "input": { + "type": "ChartOfCharacteristicTypes", + "name": "ВидыСубконто", + "valueType": "String(100)", + "predefined": ["Номенклатура: String(100)", "Склады: String(100)"] + }, + "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" } + } + ], "input": { "type": "ChartOfAccounts", "name": "Хозрасчетный", @@ -7,12 +19,17 @@ "codeLength": 8, "descriptionLength": 120, "codeMask": "@@@.@@.@", - "maxExtDimensionCount": 0, + "extDimensionTypes": "ChartOfCharacteristicTypes.ВидыСубконто", + "maxExtDimensionCount": 2, "checkUnique": true, "accountingFlags": [ { "name": "Валютный", "synonym": "Валютный учет", "tooltip": "Ведется валютный учет" }, "Количественный" ], + "extDimensionAccountingFlags": [ + { "name": "Суммовой", "fillValue": true }, + "Валютный" + ], "predefined": [ { "name": "ОсновныеСредства", @@ -21,6 +38,7 @@ "accountType": "Active", "order": " 01", "flags": ["Количественный"], + "subconto": ["Номенклатура | Суммовой"], "childItems": [ { "name": "ОсновныеСредстваВОрганизации", @@ -28,7 +46,8 @@ "description": "Основные средства в организации", "accountType": "Active", "order": " 01.01", - "flags": ["Количественный"] + "flags": ["Количественный"], + "subconto": ["Номенклатура | Turnover, Суммовой"] } ] }, diff --git a/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfAccounts/Хозрасчетный.xml b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfAccounts/Хозрасчетный.xml index aa71ef28..7e23e462 100644 --- a/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfAccounts/Хозрасчетный.xml +++ b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfAccounts/Хозрасчетный.xml @@ -47,8 +47,8 @@ true false - - 0 + ChartOfCharacteristicTypes.ВидыСубконто + 2 @@@.@@.@ 8 120 @@ -288,6 +288,80 @@ Use + + + Суммовой + + + ru + Суммовой + + + + + xs:boolean + + false + + + + false + + false + false + + + false + true + DontCheck + Items + + + Auto + Auto + + + Auto + Use + + + + + Валютный + + + ru + Валютный + + + + + xs:boolean + + false + + + + false + + false + false + + + false + + DontCheck + Items + + + Auto + Auto + + + Auto + Use + + diff --git a/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfAccounts/Хозрасчетный/Ext/Predefined.xml b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfAccounts/Хозрасчетный/Ext/Predefined.xml index b4291c7c..e7862717 100644 --- a/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfAccounts/Хозрасчетный/Ext/Predefined.xml +++ b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfAccounts/Хозрасчетный/Ext/Predefined.xml @@ -11,7 +11,15 @@ false true - + + + false + + true + false + + + ОсновныеСредстваВОрганизации @@ -24,7 +32,15 @@ false true - + + + true + + true + false + + + diff --git a/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто.xml b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто.xml new file mode 100644 index 00000000..af6b9707 --- /dev/null +++ b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто.xml @@ -0,0 +1,97 @@ + + + + + + UUID-002 + UUID-003 + + + UUID-004 + UUID-005 + + + UUID-006 + UUID-007 + + + UUID-008 + UUID-009 + + + UUID-010 + UUID-011 + + + UUID-012 + UUID-013 + + + + ВидыСубконто + + + ru + Виды субконто + + + + true + false + + + xs:string + + 100 + Variable + + + false + true + 9 + Variable + 100 + WholeCharacteristicKind + true + true + AsDescription + + Auto + InDialog + false + BothWays + + ChartOfCharacteristicTypes.ВидыСубконто.StandardAttribute.Description + ChartOfCharacteristicTypes.ВидыСубконто.StandardAttribute.Code + + DontUse + Begin + Directly + DontUse + Auto + + + + + + + + + + + + + Managed + Use + + + + + + DontUse + false + false + + + + diff --git a/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто/Ext/ObjectModule.bsl b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто/Ext/ObjectModule.bsl new file mode 100644 index 00000000..e69de29b diff --git a/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто/Ext/Predefined.xml b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто/Ext/Predefined.xml new file mode 100644 index 00000000..08b3bddf --- /dev/null +++ b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/ChartsOfCharacteristicTypes/ВидыСубконто/Ext/Predefined.xml @@ -0,0 +1,29 @@ + + + + Номенклатура + + Номенклатура + + xs:string + + 100 + Variable + + + false + + + Склады + + Склады + + xs:string + + 100 + Variable + + + false + + diff --git a/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/Configuration.xml b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/Configuration.xml index 2dfd33d3..51e7edc8 100644 --- a/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/Configuration.xml +++ b/tests/skills/cases/meta-compile/snapshots/chart-of-accounts/Configuration.xml @@ -246,6 +246,7 @@ Русский + ВидыСубконто Хозрасчетный