Choose your language
ADVPL Course
More than 2 million students worldwide

ADVPL Course

Master ADVPL development from the ground up and build real, production-ready customizations inside the Totvs Protheus ERP. This course takes you from environment setup through advanced REST APIs, object-oriented design, and secure database operations. If you work with Protheus and need to write code that actually holds up in production, this is your complete technical reference.

Dedika for Business

What you will learn:

You will learn to configure the Totvs development environment, write structured ADVPL programs, and perform full database operations on Protheus tables. The course covers user interface development using dialogs, grids, and the MVC framework, as well as report generation with FWMSPrinter. You will implement points of entry to customize standard Protheus screens and business rules without modifying core code. Advanced topics include REST API development, external web service consumption, scheduled background jobs, and object-oriented programming in ADVPL. Security, performance tuning, testing strategies, and version control round out the curriculum.

How you study in practice ADVPL Course

How you practise ADVPL Course

For companies looking to train their team

With Dedika for Business, the course includes exercises and examples tailored to your own business and the way your company needs.

Click here

Course Content

8 Chapters • 37 LessonsDuration between 4 and 360 hours (you decide)

Chapter 1See details

Introduction to ADVPL and Totvs

  • Lesson 1 • Compiling and Running Programs

    Explains the compile-link-run cycle specific to ADVPL. Students execute their first programs and interpret runtime output.

  • Lesson 2 • ADVPL Language Fundamentals

    Introduces ADVPL syntax, data types, and basic constructs. Builds the vocabulary needed for all programming tasks ahead.

  • Lesson 3 • Overview of Totvs Protheus

    Covers the Protheus ERP architecture and how ADVPL fits within it. Provides context for all subsequent development tasks.

  • Lesson 4 • Setting Up the Development Environment

    Guides installation and configuration of the IDE and application server. Ensures a working local environment before writing any code.

Chapter 2See details

Core Language Constructs

  • Lesson 1 • Functions and Procedures

    Defines user functions, static functions, and parameter passing conventions. Modular design principles are introduced here.

  • Lesson 2 • Operators and Expressions

    Covers arithmetic, relational, logical, and string operators. Establishes expression evaluation rules used throughout all programs.

  • Lesson 3 • Conditional Structures

    Teaches IF/ELSEIF/ELSE and DO CASE constructs for branching logic. Students implement decision-driven program flows.

  • Lesson 4 • Looping and Iteration

    Introduces FOR, WHILE, and DO WHILE loops for repetitive processing. Students control iteration with EXIT and LOOP commands.

  • Lesson 5 • Arrays and Data Structures

    Covers one-dimensional and multidimensional arrays and common manipulation functions. Students store and process collections of data.

Chapter 3See details

String, Date, and Numeric Processing

  • Lesson 1 • String Manipulation Functions

    Covers SUBSTR, ALLTRIM, UPPER, LOWER, STRTRAN, and related functions. Students transform and validate text data reliably.

  • Lesson 2 • Type Conversion and Validation

    Covers VAL, STR, VALTYPE, and input validation patterns. Students prevent runtime errors from mismatched data types.

  • Lesson 3 • Numeric Formatting and Math

    Teaches ROUND, INT, MOD, and formatting functions for numeric output. Ensures accurate financial and statistical calculations.

  • Lesson 4 • Date and Time Functions

    Introduces CTOD, DTOC, DATE, TIME, and date arithmetic. Students handle scheduling and period-based business logic.

Chapter 4See details

Database Access and Table Operations

  • Lesson 1 • Protheus Database Architecture

    Explains the SX-table metadata system and alias-based table access. Provides the conceptual model for all database operations.

  • Lesson 2 • Inserting, Updating, and Deleting Records

    Covers RECLOCK, DBAPPEND, field assignment, and DBDELETE. Students safely modify data with proper locking protocols.

  • Lesson 3 • Opening and Navigating Tables

    Covers DBUSE, DBGOTO, DBSKIP, and index-based navigation commands. Students move through records efficiently and correctly.

  • Lesson 4 • Querying with SEEK and Filters

    Teaches DBSEEK, DBSETFILTER, and DBSETORDER for targeted data retrieval. Students locate specific records without full table scans.

  • Lesson 5 • Embedded SQL in ADVPL

    Introduces TCQUERY, TCSQLEXEC, and parameterized queries for SQL-based access. Students choose between xBase and SQL approaches appropriately.

Chapter 5See details

User Interface Development

  • Lesson 1 • Dialog and Window Basics

    Covers DEFINE DIALOG, ACTIVATE DIALOG, and window sizing. Establishes the container model for all UI components.

  • Lesson 2 • Grids and Browse Components

    Introduces MSBROWSE and grid controls for tabular data display. Students present record sets in structured, navigable grids.

  • Lesson 3 • MVC Pattern in Protheus

    Explains the Model-View-Controller architecture used in modern Protheus screens. Students separate data logic from presentation code.

  • Lesson 4 • Validation and User Feedback

    Covers field-level validation, HELP messages, and ALERT dialogs. Students enforce data integrity at the UI layer.

  • Lesson 5 • Standard Controls and Widgets

    Teaches SAY, GET, buttons, checkboxes, and combo boxes. Students populate dialogs with interactive input and display elements.

Chapter 6See details

Reports and Print Output

  • Lesson 1 • Defining Headers and Footers

    Covers HEADER, FOOTER, and page numbering commands. Students produce professional, consistently branded report pages.

  • Lesson 2 • Advanced Formatting with FWMSPrinter

    Introduces the FWMSPrinter class for pixel-level layout control. Students build complex, multi-column business documents.

  • Lesson 3 • Detail Lines and Grouping

    Teaches DETAIL, GROUP BY, and subtotal accumulation patterns. Students organize report data into meaningful sections.

  • Lesson 4 • Report Architecture in Protheus

    Explains the REPORT/ENDREPORT structure and the print spool pipeline. Provides the foundation for all report development tasks.

Chapter 7See details

Customization and Point of Entry

  • Lesson 1 • Customizing Standard Screens

    Teaches adding fields, changing validations, and modifying screen behavior via entry points. Students tailor standard forms to business requirements.

  • Lesson 2 • Implementing User Exits

    Covers writing and registering user exit functions for standard routines. Students intercept standard processes to add business logic.

  • Lesson 3 • Customizing Business Rules

    Covers intercepting save, delete, and process events to enforce custom rules. Students ensure data integrity beyond standard system behavior.

  • Lesson 4 • Testing and Maintaining Customizations

    Introduces strategies for testing entry points and managing them across upgrades. Students keep customizations stable through system updates.

  • Lesson 5 • Understanding Points of Entry

    Defines the point-of-entry mechanism and its role in safe customization. Students identify where and when custom code is invoked.

Chapter 8See details

Advanced ADVPL and Integration

  • Lesson 1 • Scheduled Jobs and Background Processing

    Teaches APSCHEDULER, STARTTALK, and multi-threading patterns for async tasks. Students offload long-running processes from the UI thread.

  • Lesson 2 • Consuming External Web Services

    Covers HTTPCLIENT, SOAP calls, and XML parsing for third-party integrations. Students connect Protheus to external platforms reliably.

  • Lesson 3 • REST API Development with ADVPL

    Introduces the FWRESTAREA framework for building and consuming REST endpoints. Students expose Protheus data to external systems securely.

  • Lesson 4 • Object-Oriented Programming in ADVPL

    Covers CLASS, METHOD, DATA, and inheritance syntax. Students design reusable, encapsulated components for complex applications.

  • Lesson 5 • Error Handling and Debugging

    Teaches BEGIN SEQUENCE/RECOVER, CONOUT logging, and the IDE debugger. Students diagnose and recover from runtime failures gracefully.

Certification

Your valid completion certificate

This course is for you:

  • Junior ADVPL developers: ready to move beyond copy-paste fixes into structured solutions.

  • ERP consultants: needing hands-on coding skills to handle client customization requests.

  • Systems analysts: wanting to read and write ADVPL code alongside their functional work.

  • IT professionals in Totvs shops: tasked with maintaining or extending Protheus modules.

  • Career changers from general programming: entering the Protheus ecosystem for the first time.

  • Business developers: building internal tools that connect Protheus data to other platforms.

What our students say

Your classes are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of interest without needing to switch platforms... I thank you for everything you do, I've already recommended you to other people...
Giulio Carlo
Giulio CarloDigital Marketing Student
I like how the lessons are straight to the point and how I can change chapters and skip content I don't need.
Mariana Ferres
Mariana FerresPhotography Student
I like the content and the presentation style and video transcription, which speeds up the process!
Luciana Alvarenga
Luciana AlvarengaNail Design Student
The platform is fast, simple to use. The diversity of content and complementary videos really help with learning.
André Felipe
André FelipePrompt Engineering Student

Top training programs

FAQ

Who is Dedika?

Is the certificate valid in Canada?

Are the courses free?

What is the course workload?

What are the courses like?

How do the courses work?

What is the duration of the courses?

What is the cost or price of the courses?

What is an EAD or online course and how does it work?

PDF Course