Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físicobcp\bcapi001.p

Considerações Gerais

 

Objetivo: Gerar os registros de transações de coleta de dados que serão utilizados pelo Módulo de Coleta de Dados.


Considerações Gerais:


- Deve ser passada 2 temp-tables com informações e parâmetros para a criação de transações.


- Todas as temp-tables são passadas como parâmetro através do comando INPUT-OUTPUT, pois além de passar parâmetros, elas retornam informações para o programa chamador.

Parâmetros de Entrada

 Temp-table tt-trans: nesta temp-table deverão ser armazenadas todas as informações com relação a transação a ser criada.


TEMP-TABLE TT-PARAM

Atributo

Tipo

Formato

Valor Inicial

Cod-versao-integracao

Integer

"999"


i-sequen

Integer

“999”


cd-trans

Character

“x(8)”


Conteudo-trans

Raw



Detalhe

Character

“x(60)”


Nr-trans

Decimal

“zzzzzzzzz9”

0

Usuario

Character

“x(12)”


Atualizada

Logical

“Sim/Não”



Temp-table tt-erro: nesta temp-table são armazenados os possíveis erros que ocorreram durante a criação das transações.


TEMP-TABLE TT-ERRO

Atributo

Tipo

Formato

Valor Inicial

i-sequen

Integer

“999”


cd-erro

integer

“>>>>9”


Mensagem

character

“x(256)”



Funcionamento

Esta API pode ser executada de forma persistente ou não

A sintaxe para a chamada da API/BO é:


Chamada da API de forma não Persistente:

    run bcp/bcapi001.p ( input-output table tt-trans,
                                      input-output table tt-erro).


Chamada da API de forma Persistente:

  define var h-bcapi001 as handle no-undo.

/*chama o programa bcapi001.p persistente*/
    run bcp/bcapi001.p PERSISTENT SET h-bcapi001 ( input-output table tt-trans,
                                                                                     input-output table tt-erro).



Execução

 

Execução: O programa bcp/bcapi001.i irá executar basicamente as seguintes validações:



Parâmetros de Saída

 

No retorno da execução do bcp/bcapi001.p, será retornado um dos valores abaixo:


NOK: execução com sucesso, porém, algum registro da temp-table está com problema

OK: execução com sucesso


A temp-table tt-erro conterá todos os erros que ocorreram na criação das transações.


OBS.: Quando a chamada da API for de forma Persistente, ao término da execução do programa específico, é necessário implementar a chamada da procedure "piFinalizaAPI", antes de eliminar a instância (handle), para que o programa elimine os handles e libere a licença novamente.


Exemplo:

Corpo programa específico:

define var h-bcapi001 as handle no-undo.

/*chama o programa bcapi001.p persistente*/
    run bcp/bcapi001.p PERSISTENT SET h-bcapi001 ( input-output table tt-trans,
                                                                                     input-output table tt-erro).

rotinas especificas...

/*Faz a liberação do consumo de licença*/
RUN piFinalizaAPI in h-bcapi001.


IF VALID-HANDLE(h-bcapi001) THEN
    DELETE OBJECT h-bcapi001 NO-ERROR.


fim programa.


Para maiores informações sobre o controle de consumo de licença acesse: 2484605 DLOGWMDTS-2278 DT Técnica Para Consumo de Licença no Coletor de Dados