mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-10-01 14:35:54 +03:00
41 lines
3.3 KiB
Markdown
41 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 | нет | — | Подробный вывод (все проверки, включая успешные) |
|
||
| MaxErrors | нет | 20 | Остановиться после N ошибок |
|
||
| OutFile | нет | — | Записать результат в файл |
|
||
|
||
## Команда
|
||
|
||
```powershell
|
||
powershell.exe -NoProfile -File ".opencode/skills/skd-validate/scripts/skd-validate.ps1" -TemplatePath "src/МойОтчёт/Templates/ОсновнаяСхема"
|
||
powershell.exe -NoProfile -File ".opencode/skills/skd-validate/scripts/skd-validate.ps1" -TemplatePath "Catalogs/Номенклатура/Templates/СКД/Ext/Template.xml"
|
||
```
|
||
|
||
## Проверка по XSD
|
||
|
||
Порядок элементов, типы и значения дополнительно сверяются с XSD-схемами платформы, если они скачаны в проект. Иначе итоговая строка заканчивается на `XSD not checked: <причина>` — это не «проверено всё». Когда проверка нужна (например, платформа пишет «нарушен порядок следования»), скачай схемы версии формата выгрузки — атрибут `version` в `Configuration.xml` — через `/v8-xsd-fetch -Versions <версия>` и запусти снова. То же при `[WARN] XSD: no schemas for format <версия>`.
|
||
|
||
Нарушение: `XSD <версия>, line N: <родитель>/<элемент>: <что не так>`.
|
||
|
||
- `must come before <X>` — перенеси элемент непосредственно перед `<X>`, содержимое не меняй. `duplicate` — удали повтор. `not allowed in <P>` — элементу здесь не место. Иначе — текст о недопустимом значении.
|
||
- `[WARN]` с `(no schemas for <версия>)` — сверено по схемам более новой версии: ориентир, не вердикт.
|
||
- Если шаблон ты только что собрал или изменил `/skd-compile` или `/skd-edit`, нарушение — дефект навыка: сообщи о нём пользователю.
|