Páginas filhas
  • 1. Nomenclatura das Funções

Versões comparadas

Chave

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

O conteúdo relacionado na página abaixo foi substituído e será descontinuado em releases futuras.

A nova técnica para desenvolvimento de API poderá ser consultada através do seguinte endereço (http://tdn.totvs.com/x/6BE4Fw) e esta disponível a partir da release 12.1.22 do Logix.

...


A declaração do nome da função terá fundamental importância neste desenvolvimento, pois é este isso que definirá se a função da API ficará pública e como será a execução da função a partir de serviços web. Segue abaixo um exemplo de definição:

...

Abaixo seguem maiores detalhes de sobre como cada uma das informações acima devem ser declaradascitadas anteriormente deve ser declarada.

1.

...

2 Nome da API

Seguindo o padrão de desenvolvimento atual, todas as funções da API devem iniciar com o nome do objeto de negócio correspondente.

Exemplos:

Objeto de NegócioFunção
supr4
supr0004
supr4
supr0004_pub_update_item, supr4_pub_delete_item
manr99
manr0099
manr99
manr0099_pub_delete_estrutura, manr99_verifica_estrutura
obfr21
obfr0021
obfr21
obfr0021_atualiza_nota, obfr21_process_emiteNota

1.

...

3 Identificador de Publicação

O identificador _pub_ indica que a função ficará exposta publicamente para execução a partir de outros serviços externos, independente de produto ou tecnologia. Uma função dentro da API sem este identificador será considerada como interna sendo acessível apenas pelo produto Logix.

Informações
titleFunções Privadas

A partir da versão do build 7.00.131227A, a tecnologia 4GL passa a suportar funções "privadas" acessíveis apenas por funções que estejam dentro do mesmo código fonte. Para mais informações consulte o link Implementação PRIVATE FUNCTION.

1.

...

4 Método de

...

Execução

O método de execução indica como será realizada a chamada da função através de um serviço web, ou seja, qual método de requisição HTTP terá que ser será utilizado para sua execução. Os métodos de requisições HTTP podem ser consultados através deste link: http://www.w3schools.com/tags/ref_httpmethods.asp.O método de execução deve ser definido conforme  Esta informação deve estar de acordo com o objetivo da função 4GL , indicando a ação que será realizada na mesma.

Abaixo , abaixo segue a tabela de conversão dos métodos HTTP para o tipo método de execução que deverá ser definida no nome da função das funções 4GL:

Método de ExecuçãoMétodo HTTPObjetivo
createPOSTCriação de um ou mais registros.
processPOSTProcessamento de dados ou geração de relatórios.
update

PUT

Atualização de um ou mais registros.
getGETConsulta a um ou mais registros.
deleteDELETEExclusão de um ou mais registros.

...

Os métodos de requisições HTTP existentes podem ser consultados através deste link: http://www.w3schools.com/tags/ref_httpmethods.asp.

1.5 Nome da Função

O nome da função 4GL irá definir o entry point de execução através de um serviço web e indica o objeto de negócio que será manipulado.

Nota

Para nomes de funções com mais de uma palavra evite utilizar delimitadores. Utilize sempre , use o formato de nome de classe , sendo a primeira palavra em minúscula e o restando apenas restante com a primeira letra maiúscula, isto . Isto fará com que a URL de execução da função fique mais clara.

Exemplo:

logr3FUNCTION logr0003_pub_create_inclusaoDimensaoEmpresa
obfr10FUNCTION obfr0010_pub_process_enviaEmailTransportadora
supr10FUNCTION supr0010_pub_process_centralizaConsultaEstoqueProprio

Segue abaixo exemplo de definição de funções e como será realizada a requisição web de execução destas funções:

FunçãoRequisição

FUNCTION logr0003_pub_create_inclusaoDimensao()

POST /logix-rest/logr3/inclusaoDimensao

FUNCTION obfr0010_pub_process_emailTransportadora()POST /logix-rest/obfr10/emailTransportadora
FUNCTION supr0010_pub_update_estoqueProprio() PUT /logix-rest/supr10/estoqueProprio 
FUNCTION manr0021_pub_get_apontamento_horas() GET /logix-rest/manr21/apontamento_hora