Estrutura de um Programa ADVPL

 

Um programa de computador nada mais é do que um grupo de comandos logicamente dispostos com o objetivo de executar determinada tarefa. Esses comandos são gravados em um arquivo texto que é transformado em uma linguagem executável por um computador através de um processo chamado compilação. A compilação substitui os comandos de alto nível (que os humanos compreendem) por instruções de baixo nível (compreendida pelo sistema operacional em execução no computador). No caso do ADVPL, não é o sistema operacional de um computador que irá executar o código compilado, mas sim o Protheus Server.

Dentro de um programa, os comandos e funções utilizados devem seguir regras de sintaxe da linguagem utilizada, pois caso contrário o programa será interrompido por erros. Os erros podem ser de compilação ou de execução.

Erros de compilação são aqueles encontrados na sintaxe que não permitem que o arquivo de código do programa seja compilado. Podem ser comandos especificados de forma errônea, utilização inválida de operadores, etc.

Erros de execução são aqueles que acontecem depois da compilação, quando o programa está sendo executado. Podem ocorrer por inúmeras razões, mas geralmente se referem as funções não existentes, ou variáveis não criadas ou inicializadas, etc.

Blogger Labels: Estrutura,Programa,ADVPL,computador,tarefa,Esses,texto,compilação,pelo,sistema,Protheus,Server,Dentro,funções,sintaxe,Erros,Podem,utilização


Linhas de Programa

As linhas existentes dentro de um arquivo texto de código de programa podem ser linhas de comando, linhas de comentário ou linhas mistas.

_ Linhas de Comando

Linhas de comando possuem os comandos ou instruções que serão executadas. Por exemplo:

  1. Local nCnt
  2. Local nSoma := 0
  3. For nCnt := 1 To 10
  4. nSoma += nCnt
  5. Next nCnt

_ Linhas de Comentário

Linhas de comentário possuem um texto qualquer, mas não são executadas. Servem apenas para documentação e para tornar mais fácil o entendimento do programa. Existem três formas de se comentar linhas de texto. A primeira delas é utilizar o sinal de * (asterisco) no começo da linha:

  1. * Programa para cálculo do total
  2. * Autor: Microsiga Software S.A.
  3. * Data: 2 de outubro de 2001

Todas as linhas iniciadas com um sinal de asterisco são consideradas como comentário. Podese utilizar a palavra NOTE ou dois símbolos da letra "e" comercial (&&) para realizar a função do sinal de asterisco. Porém todas estas formas de comentário de linhas são obsoletas e existem apenas para compatibilização com o padrão xBase. A melhor maneira de comentar linhas em ADVPL é utilizar duas barras transversais:

  1. // Programa para cálculo do total
  2. // Autor: Microsiga Software S.A.
  3. // Data: 2 de outubro de 2001

Outra forma de documentar textos é utilizar as barras transversais juntamente com o asterisco, podendo-se comentar todo um bloco de texto sem precisar comentar linha a linha:

  1. /*
  2. Programa para cálculo do total
  3. Autor: Microsiga Software S.A.
  4. Data: 2 de outubro de 2001
  5. */

Todo o texto encontrado entre a abertura (indicada pelos caracteres /*) e o fechamento (indicada pelos caracteres */) é considerado como comentário.

_ Linhas Mistas

O ADVPL também permite que existam linhas de comando com comentário. Isto é possível adicionando-se as duas barras transversais (//) ao final da linha de comando e adicionando-se o texto do comentário:

  1. Local nCnt
  2. Local nSoma := 0 // Inicializa a variável com zero para a soma
  3. For nCnt := 1 To 10
  4. nSoma += nCnt
  5. Next nCnt

_ Tamanho da Linha

Assim como a linha física, delimitada pela quantidade de caracteres que pode ser digitado no editor de textos utilizado, existe uma linha considerada linha lógica. A linha lógica, é aquela considerada para a compilação como uma única linha de comando.

A princípio, cada linha digitada no arquivo texto é diferenciada após o pressionamento da tecla <Enter>. Ou seja, a linha lógica, é a linha física no arquivo. Porém algumas vezes, por limitação física do editor de texto ou por estética, pode-se "quebrar" a linha lógica em mais de uma linha física no arquivo texto. Isto é efetuado utilizando-se o sinal de ponto-e-vírgula (;).

  1. If !Empty(cNome) .And. !Empty(cEnd) .And. ; <enter>
  2. !Empty(cTel) .And. !Empty(cFax) .And. ; <enter>
  3. !Empty(cEmail)
  4. GravaDados(cNome,cEnd,cTel,cFax,cEmail)
  5. Endif

Neste exemplo existe uma linha de comando para a checagem das variáveis utilizadas. Como a linha torna-se muito grande, pode-se dividi-la em mais de uma linha física utilizando o sinal de ponto-e-vírgula. Se um sinal de ponto-e-vírgula for esquecido nas duas primeiras linhas, durante a execução do programa ocorrerá um erro, pois a segunda linha física será considerada como uma segunda linha de comando na compilação. E durante a execução esta linha não terá sentido.

Nenhum comentário :

Postar um comentário