From 7ebb749143525de824b6b24f630dafdfe936963e Mon Sep 17 00:00:00 2001 From: Nick Shirokov Date: Tue, 22 Sep 2026 20:47:33 +0300 Subject: [PATCH] =?UTF-8?q?test(form-decompile):=20=D0=BE=D1=81=D0=BC?= =?UTF-8?q?=D1=8B=D1=81=D0=BB=D0=B5=D0=BD=D0=BD=D1=8B=D0=B9=20=D0=B7=D0=B0?= =?UTF-8?q?=D0=BF=D1=80=D0=BE=D1=81=20=D0=B2=20=D0=BA=D0=B5=D0=B9=D1=81?= =?UTF-8?q?=D0=B5=20dl-parameter-title-case?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Кейс сравнивал числовые литералы со строковыми параметрами («ГДЕ 1 = &ОрганизацииВЕТИС» при "type": "string") и обходился без таблицы. На проверяемое поведение это не влияет — навык заголовки читает, а текст запроса переносит строкой, и платформа при загрузке конфигурации запрос не разбирает (verify-snapshots проходил и на прежнем варианте). Но кейс читают как образец, поэтому запрос теперь нормальный: динамический список над справочником, строковые параметры сравниваются со строковыми полями. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01SSyRNwSiuAAEQCLSCUGEzQ --- .../dl-parameter-title-case.json | 9 +- .../Catalogs/Организации.xml | 91 +++++++++++++++++++ .../Catalogs/Организации/Ext/ObjectModule.bsl | 0 .../dl-parameter-title-case/Configuration.xml | 1 + .../Регистр/Forms/Форма/Ext/Form.xml | 4 +- .../dl-parameter-title-case/draft.json | 4 +- 6 files changed, 103 insertions(+), 6 deletions(-) create mode 100644 tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Catalogs/Организации.xml create mode 100644 tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Catalogs/Организации/Ext/ObjectModule.bsl diff --git a/tests/skills/cases/form-decompile/dl-parameter-title-case.json b/tests/skills/cases/form-decompile/dl-parameter-title-case.json index 80cbd5470..78bf45706 100644 --- a/tests/skills/cases/form-decompile/dl-parameter-title-case.json +++ b/tests/skills/cases/form-decompile/dl-parameter-title-case.json @@ -6,6 +6,11 @@ "input": { "type": "DataProcessor", "name": "Регистр" }, "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" } }, + { + "script": "meta-compile/scripts/meta-compile", + "input": { "type": "Catalog", "name": "Организации" }, + "args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" } + }, { "script": "form-add/scripts/form-add", "args": { "-ObjectPath": "{workDir}/DataProcessors/Регистр.xml", "-FormName": "Форма" } @@ -20,8 +25,8 @@ "name": "Список", "type": "DynamicList", "settings": { - "query": "ВЫБРАТЬ 1 КАК Поле ГДЕ 1 = &ОрганизацииВЕТИС И 2 = &СуммаДокумента", - "keyType": "RowNumber", + "mainTable": "Catalog.Организации", + "query": "ВЫБРАТЬ Т.Ссылка КАК Ссылка, Т.Наименование КАК Наименование ИЗ Справочник.Организации КАК Т ГДЕ Т.Наименование ПОДОБНО &ОрганизацииВЕТИС И Т.Код ПОДОБНО &СуммаДокумента", "parameters": [ { "name": "ОрганизацииВЕТИС", "title": "Организации ВетИС", "type": "string" }, { "name": "СуммаДокумента", "title": " ", "type": "string" } diff --git a/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Catalogs/Организации.xml b/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Catalogs/Организации.xml new file mode 100644 index 000000000..28cbab2df --- /dev/null +++ b/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Catalogs/Организации.xml @@ -0,0 +1,91 @@ + + + + + + UUID-002 + UUID-003 + + + UUID-004 + UUID-005 + + + UUID-006 + UUID-007 + + + UUID-008 + UUID-009 + + + UUID-010 + UUID-011 + + + + Организации + + + ru + Организации + + + + false + HierarchyFoldersAndItems + false + 2 + true + true + + ToItems + 9 + 25 + String + Variable + WholeCatalog + false + true + AsDescription + + Auto + InDialog + false + BothWays + + Catalog.Организации.StandardAttribute.Description + Catalog.Организации.StandardAttribute.Code + + Begin + DontUse + Directly + + + + + + + + + + + false + + + Managed + Use + + + + + + Use + Auto + DontUse + false + false + + + + \ No newline at end of file diff --git a/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Catalogs/Организации/Ext/ObjectModule.bsl b/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Catalogs/Организации/Ext/ObjectModule.bsl new file mode 100644 index 000000000..e69de29bb diff --git a/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Configuration.xml b/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Configuration.xml index f03cdbdb0..23ab14e3f 100644 --- a/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Configuration.xml +++ b/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/Configuration.xml @@ -246,6 +246,7 @@ Русский + Организации Регистр diff --git a/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/DataProcessors/Регистр/Forms/Форма/Ext/Form.xml b/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/DataProcessors/Регистр/Forms/Форма/Ext/Form.xml index f58b0cfb1..9baa9a910 100644 --- a/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/DataProcessors/Регистр/Forms/Форма/Ext/Form.xml +++ b/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/DataProcessors/Регистр/Forms/Форма/Ext/Form.xml @@ -28,7 +28,7 @@ true true - ВЫБРАТЬ 1 КАК Поле ГДЕ 1 = &ОрганизацииВЕТИС И 2 = &СуммаДокумента + ВЫБРАТЬ Т.Ссылка КАК Ссылка, Т.Наименование КАК Наименование ИЗ Справочник.Организации КАК Т ГДЕ Т.Наименование ПОДОБНО &ОрганизацииВЕТИС И Т.Код ПОДОБНО &СуммаДокумента ОрганизацииВЕТИС @@ -65,7 +65,7 @@ true - RowNumber + Catalog.Организации Normal diff --git a/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/draft.json b/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/draft.json index ac45fd228..059506853 100644 --- a/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/draft.json +++ b/tests/skills/cases/form-decompile/snapshots/dl-parameter-title-case/draft.json @@ -6,8 +6,8 @@ "name": "Список", "type": "DynamicList", "settings": { - "keyType": "RowNumber", - "query": "ВЫБРАТЬ 1 КАК Поле ГДЕ 1 = &ОрганизацииВЕТИС И 2 = &СуммаДокумента", + "mainTable": "Catalog.Организации", + "query": "ВЫБРАТЬ Т.Ссылка КАК Ссылка, Т.Наименование КАК Наименование ИЗ Справочник.Организации КАК Т ГДЕ Т.Наименование ПОДОБНО &ОрганизацииВЕТИС И Т.Код ПОДОБНО &СуммаДокумента", "parameters": [ { "name": "ОрганизацииВЕТИС", "title": "Организации ВетИС", "type": "string" }, { "name": "СуммаДокумента", "title": " ", "type": "string" }