/form-validate — Валидатор формы
Проверяет Form.xml управляемой формы на структурные ошибки: уникальность ID, наличие companion-элементов, корректность ссылок DataPath и команд.
Использование
/form-validate <FormPath>
Параметры
Параметр Обязательный По умолчанию Описание
FormPath да — Путь к файлу Form.xml
MaxErrors нет 30 Остановиться после N ошибок
Команда
powershell.exe -NoProfile -File .claude/skills/form-validate/scripts/form-validate.ps1 -FormPath "<путь>"
Выполняемые проверки
Проверка Серьёзность
1 Корневой элемент <Form> , version="2.17" ERROR / WARN
2 <AutoCommandBar> присутствует, id="-1" ERROR
3 Уникальность ID элементов (отдельный пул) ERROR
4 Уникальность ID реквизитов (отдельный пул) ERROR
5 Уникальность ID команд (отдельный пул) ERROR
6 Companion-элементы (ContextMenu, ExtendedTooltip, и др.) ERROR
7 DataPath → ссылается на существующий реквизит ERROR
8 CommandName кнопок → ссылается на существующую команду ERROR
9 События имеют непустые имена обработчиков ERROR
10 Команды имеют Action (обработчик) ERROR
11 Не более одного MainAttribute ERROR
Вывод
=== Validation: ФормаДокумента ===
[OK] Root element: Form version=2.17 [OK] AutoCommandBar: name='ФормаКоманднаяПанель', id=-1 [OK] Unique element IDs: 96 elements [OK] Unique attribute IDs: 38 entries [OK] Unique command IDs: 5 entries [OK] Companion elements: 86 elements checked [OK] DataPath references: 53 paths checked [OK] Command references: 2 buttons checked [OK] Event handlers: 41 events checked [OK] Command actions: 5 commands checked [OK] MainAttribute: 1 main attribute
Total: 96 elements, 38 attributes, 5 commands All checks passed.
Код возврата: 0 = все проверки пройдены, 1 = есть ошибки.
Когда использовать
-
После /form-compile : проверить корректность сгенерированной формы
-
После ручного редактирования Form.xml: убедиться что ID уникальны, companions на месте, ссылки валидны
-
При отладке: выявить ошибки в структуре формы до сборки EPF