关于 advpl-code-generation
面向 TOTVS Protheus 开发者的 ADVPL 和 TLPP 代码生成技能,适用于创建新例程和文件。它结合结构规则与常见 Protheus 构造的模板。
主要功能
- 01ADVPL 和 TLPP 生成规则
- 02命名与命名空间约定
- 03类和界面模板
- 04API、报表与作业模式
- 05标识符长度限制
适用场景
- 01创建新的 Protheus 函数
- 02构建 MVC 界面或 REST 端点
- 03生成报表或后台作业
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ thalysjuvenal/ advpl-specialist --skill advpl-code-generation安装后在 Claude Code 中输入/advpl-code-generation确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
catalogo-top-50-pes.mdpatterns-fwformbrowse.mdpatterns-fwmsprinter.mdpatterns-jobs.mdpatterns-mvc.mdpatterns-pontos-entrada-mvc.mdpatterns-pontos-entrada.mdpatterns-rest.mdpatterns-soap.mdpatterns-treport.mdpatterns-workflow.mdreference.mdtemplates-classes.md详细介绍
ADVPL/TLPP 代码生成
此技能提供为 TOTVS Protheus 生成新的 ADVPL(.prw)和 TLPP(.tlpp)代码所需的模式、模板和强制结构规则。内容涵盖命名约定(模块前缀、匈牙利命名法)、带有 Protheus.doc 标头和错误处理的强制 User Function 骨架、变量作用域规则、TLPP 命名空间约定(custom.<agrupador>.<servico>),以及按构造类型划分的 8/10/255 个字符标识符长度限制。
当用户要求创建新代码时,请启用此技能:新函数、TLPP 类、MVC 界面、REST 端点、SOAP Web 服务、入口点、报表、批处理作业,或任何新的 .prw/.tlpp 文件。此技能不涵盖审查现有代码(参见 advpl-code-review)、修复现有代码中的错误(参见 advpl-debugging)、在不添加功能的情况下改进现有代码结构(参见 advpl-refactoring),或将旧版 .prw 转换为 .tlpp(参见 advpl-to-tlpp-migration)。
以下参考和模式文件包含具体模板——请阅读与要生成的代码类型相匹配的特定模式文件,而不要依赖记忆。
| 参考文件 | 阅读时机 |
|---|---|
| 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)入口点(ponto de entrada)时 |
| 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 | 创建重复项目前,查找已有的知名入口点时 |
评论
支持 Markdown