Árvore de páginas

Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físico

abp/abapi002

 

Considerações Gerais

 

Objetivo

A API, faz a atualização das fichas de apontamento de abastecimento / lubrificação, através dos valores padrões do equipamento ou pelos valores informados pelo usuário.

 

Funcionamento

A API, valida as fichas chamando a ABAPI001 (abp\abapi001.p), que lhe retorna a temp-table ttDocLib, onde estão contidas as fichas validadas.

Com estas informações, a API verifica o tipo de aprovação escolhido (Padrão ou Usuário) e assim, atualiza as fichas com os status:

 

22 Apontamento liberado consumo

23 Apontamento liberado usuário

               

Após a atualização, é gerada a quilometragem  do equipamento. Para então atualizar a vida dos equipamentos (abp\abapi003.p).

A execução da API só ocorre na forma persistente.

A sintaxe para executar a API/BO em modo persistente é:

 

run abp/abapi002.p persistent set h-handle.

A variável denominada h-handle irá receber o “handle” do programa, permitindo o acesso aos “métodos” internos da API.

 

Tabelas Temporárias

 

Nos atributos das tabelas temporárias de entrada e saída:

ttDocLib

Entrada/Saída

Contém os registros que deverão ser liberados pelo usu´rio ou pelo padrão.

Entrada

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

num-docto

integer

>>>,>>>,>>9

Número do documento

Sim

001

consumo-padrao

decimal

padrão

Valor do consumo padrão do apontamento

Sim

001

consumo-real

decimal

padrão

Valor do consumo real do apontamento

Sim

001

uso-real

decimal

padrão

Valor da kilometragem percorrida no apontamento

Sim

001

uso-real-sec

decimal

padrão

Validação contador Secundário

Sim

001

tp-consumo

integer

padrão

Tipo de consumo do combustível

1 - Sem Consumo

2 - Percurso/Qtd

3 - Qtd/Percurso

 

 

qtd-abast

decimal

padrão

Quantidade abastecida na ficha de apontamento

Sim

001

log-abast

logical

yes/no

Indicador para documento com abastecimento ou não

Sim

001

idi-consist

integer

padrão

Verifica se documento está consistido

Sim

001

r-rowid

rowid

padrão

Rowid da ficha de apontamento

Sim

001

log-primario

logical

yes\no

Indica se apontamento é de abastecimento primário ou não

Sim

001

RowErrors

Entrada/Saída

Contém os erros ocorridos na API (Mesma temp-table utilizada para gerar erros pelas BOs)

Saída

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

ErrorSequence

integer

padrão

Seqüência dos erros

Sim

001

ErrorNumber

integer

padrão

Número do erro

Sim

001

ErrorDescription

char

padrão

Descrição do erro

Sim

001

ErrorParameters

char

padrão

Parâmetros passados para criar mensagem

Não

001

ErrorType

char

padrão

Tipo do erro: WARNING: Aviso

ERROR: Erro

Sim

001

ErrorHelp

char

padrão

Texto de ajuda do erro

Sim

001

ErrorSubType

char

padrão

Sub Tipo da mensagem de erro

Não

001

 

Métodos

 

Quando a API/BO for executada em modo persistente, os seguintes métodos estarão disponíveis para execução:

 

Método Básico

 

finalizaHandle

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run finalizaHandle in h-handle.

Descrição

Elimina os handles utilizados na API

Parâmetros

Descrição

Não contém

 

Retorno

A API irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

initializeHandle

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run initializeHandle in h-handle.

Descrição

Inicializa os handles utilizados na API

Parâmetros

Descrição

Não contém

 

Retorno

A API irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

emptyErros

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run emptyErros in h-handle.

Descrição

Limpa a temp-table de erros da API.

Parâmetros

Descrição

Não contém

 

Retorno

A API irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors

getErros

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run getErros in h-handle (output table RowErrors).

Descrição

Devolve a temp-table com os erros ocorridos dentro da API.

Parâmetros

Descrição

Não contém

 

Retorno

A API irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

piRecebeTT

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run piRecebeTT in h-handle (input table ttDocLib).

Descrição

Envia para API a temp-table que contém as fichas que devem ser atualizadas de acordo com o tipo de correção escolhido (usuário ou padrão).

Parâmetros

Descrição

Temp-Table ttDocLib

Temp-table de documentos a serem liberados

Retorno

A API irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

piValida

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run piValida in h-handle.

Descrição

Valida se os parâmetros de abastecimento estão cadastrados corretamente.

Parâmetros

Descrição

Não Contém

 

Retorno

A API irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

piCriaErro

Requisito

Nenhum

Sintaxe

run piCriaErro in this-procedure (input <integer>,

                                  input <character>,

                                  input <character>).

Descrição

Cria os erros ocorridos dentro da API.

Parâmetros

Descrição

pErrorNumber

Número do erro do EMS.

pErrorType

Tipo de Erro (EMS, sistema, Progress).

pErrorParameters

Parâmetros passados as mensagens EMS.

Retorno

A API irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

 

Método Negócio

 

piQuantidade

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run piQuantidade in h-handle (input <integer>,

                                                input <integer>,

                                                input <decimal>,

                                                input <decimal>).

Descrição

Valida a quantidade abastecida no equipamento e o percurso decorrido.

Parâmetros

Descrição

pDoc

Número do Documento

pTipo

Tipo de consumo do equipamento

pQtd

Quantidade abastecida

pCons

Consumo do apontamento

Retorno

A API irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

piLiberacao

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run piLiberacao in h-handle (input <integer>).

Descrição

Libera os apontamentos conforme tipo de atualização passada.

2 – Padrão

3 – Usuário

Parâmetros

Descrição

pLibera

Tipo de atualização

Retorno

A API irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

piAtualizaDocumento

Requisito

Deve ser chamada pela piLiberacao.

Sintaxe

run piAtualizaDocumento in this-procedure (input <integer>

                                                                      input <decimal>).

Descrição

Atualiza o Status da ficha de abastecimento/lubrificação:

22 Apontamento liberado consumo

23 Apontamento liberado usuário

Conforme status passado para a procedure.

Parâmetros

Descrição

pStatus

Variável inteira que atualiza o status da ficha de apontamento, conforme lista já descrita.

pKM

Variável decimal que é carregada com Quilometragem do percurso atualizada

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

piKilometragem

Requisito

Deve ser chamada pela piSemConsumo ou pela piComConsumo.

Sintaxe

run piKilometragem in this-procedure (input <integer>,

                                      input <integer>,

                                      input <integer>,

                                      input <logical>).

Descrição

Cria ou atualiza o histórico de quilometragem somente para as fichas de apontamento que tiveram status de correto (maiores que 20). Para fichas com status menor que 20, o histórico de quilometragem é eliminado.

Parâmetros

Descrição

pDocto

Documento de Origem

pStatus

Status da ficha de apontamento

pOrigem

Origem da criação do histórico de quilometragem

1 – MAB

2 – PNP

pLog

Indica se abastecimento é primário

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

piEvento

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run piEvento in h-handle (input  <character>,

                          output <integer>).

Descrição

Cria a temp-table de movimento de evento e valida se já existe movimento cadastrado para equipamento.

Parâmetros

Descrição

pUsuario

Código do usuário do sistema

pDoc

Número do documento já cadastrado

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

piCriaEvento

Requisito

API deve estar rodando persistente na varável h-handle.

Sintaxe

run piCriaEvento in h-handle.

Descrição

Cria registro de movimento de eventos.

Parâmetros

Descrição

Não contém

 

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

piBaixaMovtoEvento

Requisito

Deve ser chamada pela piAtualizaDocumento.

Sintaxe

run piBaixaMovtoEvento in this-procedure (input <integer>,

                                          input <date>,

                                          input <character>,

                                          input <character>,

                                          input <logical>).

Descrição

Conforme a consistência das fichas, conclui movimentos de eventos (mab-movto-event), atualizando a data e hora de término, vinculando o documento de origem ao movimento de eventos e incluindo uma descrição de conclusão na narrativa do movimento.

Se a ficha não estiver consistida ou foi desconsistida, procura os movimentos de eventos que foram concluídos para reabri-los.

Parâmetros

Descrição

pDocto

Documento de Origem

pData

Data do Movimento

pHoraIni

Horário de Início do Movimento

pHoraFim

Horário de Término do Movimento

pConsist

Indica se ficha Abastecimento/Lubrificação está consistida

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.

SendMessageEAI

Requisito

Chamada pela piAtualizaDocumento.

Sintaxe

RUN sendMessageEAI (INPUT TABLE tt-mab-abastec-lubrific-eai).                                     

Descrição

Cria mensagem EAI para apontamentos de abastecimentos e lubrificação.

Parâmetros

Descrição

tt-mab-abastec-lubrific-eai

temp-table usada para integração EAI

Retorno

A API/BO irá setar o return-value de forma a informar ao programa “chamador” se a execução foi realizada com sucesso ou não. Os valores possíveis para o return-value são: OK (execução correta) e NOK (execução com problemas). Os motivos para a rejeição do movimento de reporte são especificados na temp-table RowErrors.