mcpField
A
advpl-to-tlpp-migration

advpl-to-tlpp-migration

github.com/thalysjuvenalDevelopment19147 installsUpdated 6w ago
Repository

About advpl-to-tlpp-migration

A skill for modernizing legacy ADVPL `.prw` routines into TLPP classes while preserving compatibility through a wrapper. It guides developers through analysis, design approval, generation, and validation using TOTVS naming conventions.

Key features

  1. 01ADVPL-to-TLPP conversion workflow
  2. 02Mapping procedural code to classes
  3. 03TOTVS namespace and naming conventions
  4. 04Backward-compatible User Function wrapper
  5. 05Migration rules and completion checklist

Use cases

  1. 01Converting a legacy `.prw` routine to TLPP
  2. 02Planning namespaces and class structure
  3. 03Updating `#Include` directives to `.th`
  4. 04Checking a migration before completion

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/thalysjuvenal/advpl-specialist --skill advpl-to-tlpp-migration

After installing, type/advpl-to-tlpp-migrationin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

migration-checklist.md
migration-rules.md
reference.md

Details

From the project README

ADVPL to TLPP Migration

This skill guides the conversion of legacy .prw procedural code (User Functions, Static Functions, Private/Public variables) into modern .tlpp classes with namespace declarations, data properties, and public/private methods -- following the official TOTVS naming conventions (lowercase dot-separated namespaces, PascalCase classes, camelCase methods, no underscores). It defines the migration workflow (analyze -> identify -> map to class design -> user approval -> generate -> checklist -> validate) and mandates keeping the original .prw User Function as a thin backward-compatible wrapper delegating to the new class.

Activate this skill when the user wants an existing procedural routine converted to TLPP, needs help deciding a namespace, or is modernizing multiple #Include directives to .th includes. It does not cover generating brand-new TLPP code that has no ADVPL predecessor (see advpl-code-generation), behavior-preserving cleanup of code that stays in ADVPL (see advpl-refactoring), auditing code quality before migration (see advpl-code-review), or fixing errors encountered during or after migration (see advpl-debugging).

Reference fileRead when
reference.mdAlways -- overview, migration strategy flow, core conversion rules table, TLPP naming conventions, full before/after example, key migration decisions, common mistakes
migration-rules.mdNeeding the complete mapping of every ADVPL construct (preprocessor directives, database operations, error handling, UI elements) to its TLPP equivalent
migration-checklist.mdVerifying a completed migration is thorough before declaring it done

Comments

Markdown supported