SuperAPI AI 工具集

advpl-to-tlpp-migration

编程与开发

查看项目

更新于 10-16 02:11

技能介绍

用途

本技能用于将 TOTVS Protheus 平台上的遗留 ADVPL 过程式代码迁移、转换、兼容化或现代化为 TLPP 面向对象类。当用户希望把现有的过程式例程转换为 TLPP、需要帮助决定命名空间,或正在将多个 #Include 指令现代化为 .th 包含文件时,可激活本技能。

主要能力

  • 将遗留 .prw 过程式代码(User Functions、Static Functions、Private/Public 变量)转换为现代 .tlpp 类,包含命名空间声明、数据属性以及公有/私有方法。
  • 遵循 TOTVS 官方命名规范:小写点分隔命名空间、PascalCase 类名、camelCase 方法名、不使用下划线。
  • 定义迁移工作流:分析 -> 识别 -> 映射到类设计 -> 用户批准 -> 生成 -> 检查清单 -> 验证。
  • 强制保留原始 .prw User Function 作为薄薄的向后兼容包装器,委托给新类。

使用方式

技能通过迁移工作流引导操作:先分析现有代码,识别可迁移的构造,映射到类设计,获得用户批准后生成代码,再依据检查清单进行验证。技能附带参考文件,按需读取:

  • reference.md:始终阅读,包含概览、迁移策略流程、核心转换规则表、TLPP 命名规范、完整的前后对比示例、关键迁移决策、常见错误。
  • migration-rules.md:当需要完整的 ADVPL 构造(预处理器指令、数据库操作、错误处理、UI 元素)到 TLPP 等价物的映射时阅读。
  • migration-checklist.md:在宣布迁移完成前,用于验证迁移是否彻底。

适用场景

  • 用户希望将现有过程式例程转换为 TLPP。
  • 用户需要帮助决定命名空间。
  • 用户正在将多个 #Include 指令现代化为 .th 包含文件。

限制

本技能不覆盖以下情况:

  • 生成没有 ADVPL 前身的全新 TLPP 代码(参见 advpl-code-generation)。
  • 对仍保留在 ADVPL 中的代码进行保持行为的清理(参见 advpl-refactoring)。
  • 迁移前审计代码质量(参见 advpl-code-review)。
  • 修复迁移期间或迁移后遇到的错误(参见 advpl-debugging)。