Você está na página 1de 16

ADVPL PARA LEIGOS 1.

0
COMANDOS BÁSICOS EM ADVPL I
Rogério Onishi Candisani
ADVPL – Comandos Básicos

• Declaração e atribuição de variáveis


– Tipo de Dados
• Numérico
– Não diferencia inteiros de pontos flutuantes
– Pode conter numero de 18 digitos no intervalo
» 2.2250738585072014 E–308 até 1.7976931348623158 E+308
• Lógico
– .T. ou .F. (maiúsculos ou minúsculos)
• Caractere
– Identificados por aspas simples (‘texto’) ou aspas duplas (“texto”)
– Máximo de 1 MB (1048576 caracteres)
ADVPL – Comandos Básicos

• Declaração e atribuição de variáveis


– Tipo de Dados
• Data
– ADVPL tem um tipo de dados específico para campo data
– Internamente são armazenados como data Juliana
– Devem ser declaradas através de CTOD(), STOD()
• Array
– É uma matriz (linhas e colunas)
– O ADVPL suporta
» Arrays unidimensionais (vetores)
» Arrays bidimensionais (matrizes)
ADVPL – Comandos Básicos

• Declaração e atribuição de variáveis


– Bloco de código
• Tipo de dados especial para armazenar instruções escritas em
ADVPL
• Declaração de variáveis
– Escopo de variáveis
» Não é uma linguagem rígida
» Pode declarar a variável em qualquer ponto do
programa
» Por boas práticas declaramos no início
ADVPL – Comandos Básicos

• Declarações de variáveis
– Contexto
• Local
– Escopo da função em que foi declarada
– Protheus Versão 12 (usar esta por boas práticas)
• Static
– Basicamente como escopo Local
– Depende de onde são declaradas
– Funcionando apenas aonde foi declarada
ADVPL – Comandos Básicos

• Declarações de variáveis
– Contexto
• Private (versão 12 Protheus – boas práticas não usar)
– Poderá ser usada no programa todo
– Geralmente declarada no início do programa
• Public (cuidado)
– Continuará acessivel até a finalização de uma thread
(seção) do Protheus
– Erros comuns
• “variable does not exist”
ADVPL - Operadores

• Matemáticos
ADVPL - Operadores

• Strings

+ Concatenação de strings
- Concatenação de strings com eliminação
dos brancos finais das strings
intermediárias
$ Comparação de strings
ADVPL - Operadores

• Relacionais
ADVPL - Operadores

• Lógicos
ADVPL - Operadores

• Incremento e decremento

++ Incremento Pós ou Pré-fixado


-- Decremento Pós ou Pré-fixado
ADVPL - Operadores

• Especiais

() Agrupamento ou função
[] Elemento ou matriz
{} Definição de matriz
-> Identificador de apelido
& Macro substituição
@ Passagem de parâmetro por referência
|| Passagem de parâmetro por valor
ADVPL - Operadores

• Atribuição
Resumo
• Comandos básico em ADVPL I
Próxima aula

• Comandos básicos em ADVPL II


Recursos

• Wikipedia
• TOTVS

Você também pode gostar