Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Pagetitle
Sobre a linguagem
Sobre a linguagem

Extrair

Inclusão de trecho
AdvPL
AdvPL
nopaneltrue
 (Advanced Protheus Language) é uma linguagem de programação padrão xBase (Clipper, Visual Objects e depois Fivewin) com comandos, funções, operadores, estruturas de controle de fluxo e palavras reservadas que permite o desenvolvimento de programas seguidos do paradigma de orientação a objetos ou procedural.

Informações

O

Inclusão de trecho
AdvPL
AdvPL
nopaneltrue
é uma linguagem de programação desenvolvida criada em 1994 para o desenvolvimento de sistemas de gestão empresarial ERP do grupo TOTVS.

Quando compilados, todos os arquivos de código fonte tornam-se unidades de inteligência básicas, chamadas de APO´s (Advanced Protheus Objects). Esses APO´s são mantidos em um repositório e carregados dinamicamente pelo servidor de aplicação (

Inclusão de trecho
Application Server
Application Server
nopaneltrue
) para a execução. No entanto, não existe linkedição ou união física do código compilado a um determinado ambiente ou aplicação, o que permite executar funções criadas em
Inclusão de trecho
AdvPL
AdvPL
nopaneltrue
 em qualquer ponto do ambiente ERP.

O compilador e o interpretador da linguagem

Inclusão de trecho
AdvPL
AdvPL
nopaneltrue
 é o próprio servidor de aplicação (Application Server), e existe um ambiente visual para desenvolvimento integrado (Development Studio) onde o código-fonte pode ser criado, compilado e depurado.

Os programas desenvolvidos na linguagem

Inclusão de trecho
AdvPL
AdvPL
nopaneltrue
, podem conter comandos ou funções de interface com o usuário com as seguintes características:

  • Programação com interface própria com o usuário

    Os programas com interface própria com o usuário são desenvolvidos para serem executados através do terminal remoto, o 

    Inclusão de trecho
    SmartClient
    SmartClient
    nopaneltrue
    . O 
    Inclusão de trecho
    SmartClient
    SmartClient
    nopaneltrue
     é a aplicação, desenvolvida pela TOTVS, encarregada da interface e da interação com usuário, ou seja, todo o processamento do código fonte em 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     e o acesso ao banco de dados. Já o gerenciamento das conexões é efetuado pelo o 
    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
    .

    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
     é o principal meio de acesso a execução de rotinas desenvolvidas em 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     no sistema de gestão . Através desta aplicação os códigos fontes, com ou sem interface com o usuário, são executados. No entanto, nesse tipo de desenvolvimento, são considerados apenas os programas que realizam algum tipo de interface remota utilizando um protocolo de comunicação do sistema.

  • Programação sem interface própria com o usuário
    A rotinas criadas sem interface, tem uma utilização mais específica do que um processo adicional ou relatório. Essas rotinas não tem interface com usuário através do 
    Inclusão de trecho
    SmartClient
    SmartClient
    nopaneltrue
     e qualquer tentativa (como a criação de uma janela padrão) ocasionará uma exceção em tempo de execução. Desta forma, essas rotinas são apenas processos ou Jobs executados no 
    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
    . No entanto, a interface fica a cargo das aplicações externas, desenvolvidas em outras linguagens, responsáveis por iniciar os processos no servidor através dos meios disponíveis de integração e conectividade no sistema.

Ao utilizar um meio de conectividade, as rotinas desenvolvidas são subcategorizadas da seguinte forma:

  • Programação por processos
    As rotinas desenvolvidas em 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     podem ser iniciadas como processos individuais (sem interface), no
    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
    , por outra rotina através de funções ou automaticamente na inicialização do
    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
     (quando configurado).
  • Programação de RPC
    A programação de RPC – Remote Procedure Call (Chamada de Procedimentos Remota) é realizada por bibliotecas de funções disponíveis no sistema (uma API de comunicação), que permite executar rotinas escritas em 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     diretamente no 
    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
     em modo blind (sem interface). Com isso, o 
    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
     pode executar rotinas em 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     em outros servidores através da conexão TCP/IP direta utilizando o conceito de RPC.
  • Programação Web
    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
     pode ser executado como servidor Web respondendo as requisições HTTP. No momento dessas requisições, é possível executar rotinas escritas em 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     como processos individuais, enviando o resultado das funções como retorno das requisições para o cliente HTTP (como, por exemplo, uma browser de internet). No entanto, qualquer rotina escrita em 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     que não contenha comandos de interface pode ser executada através de requisições HTTP. Pois, o 
    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
     permite compilar arquivos HTML que contenham código 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     embutido. Os chamados arquivos 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     ASP, para criação de páginas dinâmicas.
  • Programação TelNet
    Programação TelNet faz parta da gama de protocolos TCP/IP que permite a conexão a um computador remoto através de uma aplicação cliente desse protocolo. O 
    Inclusão de trecho
    Application Server
    Application Server
    nopaneltrue
     emula um terminal TelNet, através da execução de rotinas escritas em 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
    , ou seja, rotinas 
    Inclusão de trecho
    AdvPL
    AdvPL
    nopaneltrue
     cuja interface final será um terminal TelNet ou coletor de dados móvel.