名称: epf-validate 描述: 验证1С外部处理 (EPF)。在创建或修改处理后使用,以检查正确性 参数提示: <ObjectPath> [-MaxErrors 30] 允许的工具:
- Bash
- 读取
- 通配符
/epf-validate — 验证外部处理 (EPF)
检查外部处理的XML源文件的结构正确性:根结构、InternalInfo、属性、ChildObjects、属性、表格部分、名称唯一性、表单和模板文件的存在。
该脚本也适用于外部报告 (ERF) — 根据元素类型自动确定。参见 /erf-validate。
使用
/epf-validate <ObjectPath>
参数
| 参数 | 必填 | 默认值 | 描述 |
|---|---|---|---|
| ObjectPath | 是 | — | 指向根XML或处理目录的路径 |
| MaxErrors | 否 | 30 | 在N个错误后停止 |
| OutFile | 否 | — | 将结果写入文件 (UTF-8 BOM) |
ObjectPath 自动解析:如果指定目录 — 寻找 <dirName>/<dirName>.xml。
命令
powershell.exe -NoProfile -File .claude/skills/epf-validate/scripts/epf-validate.ps1 -ObjectPath "<路径>"
执行的检查
| # | 检查 | 严重性 |
|---|---|---|
| 1 | 根结构: MetaDataObject/ExternalDataProcessor | 错误 |
| 2 | InternalInfo: ClassId, ContainedObject, GeneratedType | 错误 / 警告 |
| 3 | 属性: Name (标识符), Synonym | 错误 / 警告 |
| 4 | ChildObjects: 允许的类型, 顺序 | 错误 / 警告 |
| 5 | 交叉引用: DefaultForm → Form, AuxiliaryForm | 错误 / 警告 |
| 6 | 属性: UUID, Name, Type | 错误 |
| 7 | 表格部分: UUID, Name, GeneratedType, Attributes | 错误 / 警告 |
| 8 | 名称唯一性 (属性, TS, 表单, 模板, 命令) | 错误 |
| 9 | 文件: 表单 (.xml + Ext/Form.xml), 模板 | 错误 |
| 10 | 表单描述符: 根结构, uuid, Name, FormType | 错误 / 警告 |
输出
=== 验证: EPF.我的处理 ===
[OK] 1. 根结构: MetaDataObject/ExternalDataProcessor, 版本 2.17
[OK] 2. InternalInfo: ClassId 正确, 1 GeneratedType
[OK] 3. 属性: Name="我的处理", Synonym 存在, DefaultForm 设置
[OK] 4. ChildObjects: 属性(3), 表格部分(1), 表单(1)
[OK] 5. 交叉引用: DefaultForm 有效
[OK] 6. 属性: 3 检查 (UUID, Name, Type)
[OK] 7. 表格部分: 1 部分, 5 内部属性
[OK] 8. 名称唯一性: 6 名称, 全部唯一
[OK] 9. 文件存在: 3 文件已验证
[OK] 10. 表单描述符: 1 检查
=== 结果: 0 错误, 0 警告 ===
返回码: 0 = 所有检查通过, 1 = 有错误。
验证
/epf-init <名称> — 创建处理
/epf-validate src/<名称>.xml — 检查结果
/epf-build <名称> — 构建 EPF
何时使用
- 在
/epf-init后: 检查脚手架 - 在添加表单/模板后: 确保 ChildObjects、文件和引用正确
- 在手动编辑 XML 后: 在构建前发现结构错误
- 在调试构建时: 找到 Designer 错误的原因