用途
该技能用于在 TOTVS Protheus 环境中生成新的 ADVPL(.prw)与 TLPP(.tlpp)代码。当用户请求创建新代码时激活,包括:新函数、TLPP 类、MVC 屏幕、REST 端点、SOAP Web 服务、入口点(ponto de entrada)、报表、批处理作业,或任何新的 .prw/.tlpp 文件。
主要能力
技能提供生成代码所需的模式、模板与强制结构规则,具体包括:
- 命名约定:模块前缀、匈牙利命名法。
- 强制的 User Function 骨架,包含 Protheus.doc 头与错误处理。
- 变量作用域规则。
- TLPP 命名空间约定:custom.<agrupador>.<servico>。
- 标识符长度限制:按构造类型分别为 8/10/255 字符。
技能附带多个参考与模式文件,按生成代码类型读取对应文件,而非依赖记忆:
- reference.md:始终阅读,包含概览、命名约定、强制 User Function 结构、命名空间规则、标识符长度限制、常见错误。
- templates-classes.md:生成 TLPP 类(数据、方法、构造函数)。
- patterns-mvc.md:生成 MVC 屏幕(ModelDef/ViewDef/MenuDef)。
- patterns-rest.md:生成 REST API 端点(WsRestFul 或 TLPP @Get/@Post 注解)。
- patterns-soap.md:生成 SOAP Web 服务。
- patterns-treport.md:生成基于 TReport 且内嵌 SQL 的报表。
- patterns-pontos-entrada.md:生成传统(非 MVC)入口点。
- patterns-pontos-entrada-mvc.md:生成基于 MVC 的入口点。
- patterns-workflow.md:生成 Protheus 工作流例程。
- patterns-jobs.md:生成计划/后台作业。
- patterns-fwmsprinter.md:使用 FWMsPrinter 生成基于坐标的 PDF 报表。
- patterns-fwformbrowse.md:使用 FWFormBrowse 生成浏览屏幕。
- catalogo-top-50-pes.md:在创建重复项之前查找已有的知名入口点。
使用方式
当用户请求创建新代码时激活该技能。根据要生成的代码类型,阅读对应的模式文件,并遵循其中的模板与结构规则。reference.md 应始终阅读。
适用场景
适用于新建 ADVPL/TLPP 代码,包括函数、类、MVC 屏幕、REST 端点、SOAP Web 服务、入口点、报表、批处理作业及新文件。
限制
该技能不覆盖以下场景:审查现有代码(见 advpl-code-review)、修复现有代码中的错误(见 advpl-debugging)、在不添加功能的情况下改进现有代码结构(见 advpl-refactoring)、将传统 .prw 转换为 .tlpp(见 advpl-to-tlpp-migration)。