mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-24 13:41:01 +03:00
The section duplicated ## Команда examples in slash-command format that the model never needs — it receives arguments directly. Second example paths moved into ## Команда as additional command lines. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
49 lines
3.3 KiB
Markdown
49 lines
3.3 KiB
Markdown
---
|
|
name: skd-validate
|
|
description: Валидация схемы компоновки данных 1С (СКД). Используй после создания или модификации СКД для проверки корректности
|
|
argument-hint: <TemplatePath> [-Detailed] [-MaxErrors 20]
|
|
allowed-tools:
|
|
- Bash
|
|
- Read
|
|
- Glob
|
|
---
|
|
|
|
# /skd-validate — валидация СКД (DataCompositionSchema)
|
|
|
|
Проверяет структурную корректность Template.xml схемы компоновки данных. Выявляет ошибки формата, битые ссылки, дубликаты имён.
|
|
|
|
## Параметры
|
|
|
|
| Параметр | Обяз. | Умолч. | Описание |
|
|
|--------------|:-----:|---------|---------------------------------------------------------|
|
|
| TemplatePath | да | — | Путь к Template.xml или каталогу макета |
|
|
| Detailed | нет | — | Показывать [OK] для каждой проверки |
|
|
| MaxErrors | нет | 20 | Остановиться после N ошибок |
|
|
| OutFile | нет | — | Записать результат в файл |
|
|
|
|
## Команда
|
|
|
|
```powershell
|
|
powershell.exe -NoProfile -File .claude/skills/skd-validate/scripts/skd-validate.ps1 -TemplatePath "src/МойОтчёт/Templates/ОсновнаяСхема"
|
|
powershell.exe -NoProfile -File .claude/skills/skd-validate/scripts/skd-validate.ps1 -TemplatePath "Catalogs/Номенклатура/Templates/СКД/Ext/Template.xml"
|
|
```
|
|
|
|
## Проверки (~30)
|
|
|
|
| Группа | Что проверяется |
|
|
|--------|-----------------|
|
|
| **Root** | XML parse, корневой элемент `DataCompositionSchema`, default namespace, ns-префиксы |
|
|
| **DataSource** | Наличие, name не пуст, type валиден (Local/External), уникальность имён |
|
|
| **DataSet** | Наличие, xsi:type валиден, name не пуст, уникальность, ссылка на dataSource, query не пуст |
|
|
| **Fields** | dataPath не пуст, field не пуст, уникальность dataPath в наборе |
|
|
| **Links** | source/dest ссылаются на существующие наборы, expressions не пусты |
|
|
| **CalcFields** | dataPath не пуст, expression не пуст, уникальность, коллизии с полями наборов |
|
|
| **TotalFields** | dataPath не пуст, expression не пуст |
|
|
| **Parameters** | name не пуст, уникальность |
|
|
| **Templates** | name не пуст, уникальность |
|
|
| **GroupTemplates** | template ссылается на существующий template, templateType валиден |
|
|
| **Variants** | Наличие, name не пуст, settings element присутствует |
|
|
| **Settings** | selection/filter/order ссылаются на известные поля, comparisonType валиден, structure items типизированы |
|
|
|
|
Exit code: 0 = OK, 1 = есть ошибки. По умолчанию краткий вывод. `-Detailed` для поштучной детализации.
|