mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-23 13:11:05 +03:00
fix(skd-info): -Mode full на схеме без DataSetQuery
Show-Query/show_query при отсутствии DataSetQuery делал exit 1, что обрывало full режим после Show-Overview — секции fields/resources/ params/variant пользователь не видел. Теперь в full проверяем наличие Query-набора и при отсутствии печатаем "(no query datasets)" и продолжаем. Прямой -Mode query сохраняет прежнее поведение. Воспроизводилось на схемах-приёмниках с одним DataSetObject (например, ЖурналОшибок в ERP). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.7
parent
b3c2602439
commit
eda7279de0
@@ -1,4 +1,4 @@
|
||||
# skd-info v1.1 — Analyze 1C DCS structure
|
||||
# skd-info v1.2 — Analyze 1C DCS structure
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
param(
|
||||
[Parameter(Mandatory=$true)]
|
||||
@@ -1349,7 +1349,8 @@ if ($Mode -eq "variant") {
|
||||
elseif ($Mode -eq "full") {
|
||||
Show-Overview
|
||||
$lines.Add(""); $lines.Add("--- query ---"); $lines.Add("")
|
||||
Show-Query
|
||||
$hasQuery = $root.SelectNodes("descendant::s:dataSet[@xsi:type='DataSetQuery']", $ns).Count -gt 0
|
||||
if ($hasQuery) { Show-Query } else { $lines.Add("(no query datasets)") }
|
||||
$lines.Add(""); $lines.Add("--- fields ---"); $lines.Add("")
|
||||
Show-Fields
|
||||
$lines.Add(""); $lines.Add("--- resources ---"); $lines.Add("")
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/usr/bin/env python3
|
||||
# skd-info v1.1 — Analyze 1C DCS structure
|
||||
# skd-info v1.2 — Analyze 1C DCS structure
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
|
||||
import argparse
|
||||
@@ -1662,7 +1662,10 @@ def main():
|
||||
lines.append("")
|
||||
lines.append("--- query ---")
|
||||
lines.append("")
|
||||
show_query()
|
||||
if root.findall(".//s:dataSet[@xsi:type='DataSetQuery']", NSMAP):
|
||||
show_query()
|
||||
else:
|
||||
lines.append("(no query datasets)")
|
||||
lines.append("")
|
||||
lines.append("--- fields ---")
|
||||
lines.append("")
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
"name": "Полный режим на схеме без Query (только DataSetObject)",
|
||||
"args_extra": ["-Mode", "full"],
|
||||
"preRun": [
|
||||
{
|
||||
"script": "skd-compile/scripts/skd-compile",
|
||||
"input": {
|
||||
"dataSets": [{
|
||||
"name": "ВнешниеДанные",
|
||||
"objectName": "ЖурналОшибок",
|
||||
"fields": [
|
||||
{ "field": "ТекстСообщения", "title": "Текст сообщения", "type": "string(150)" },
|
||||
{ "field": "Расшифровка", "title": "Описание", "type": "CatalogRef.Контрагенты" }
|
||||
]
|
||||
}]
|
||||
},
|
||||
"args": { "-DefinitionFile": "{inputFile}", "-OutputPath": "{workDir}/Template.xml" }
|
||||
}
|
||||
],
|
||||
"params": { "templatePath": "Template.xml" },
|
||||
"expect": { "stdoutContains": "ВнешниеДанные" }
|
||||
}
|
||||
Reference in New Issue
Block a user