Árvore de páginas

 

Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físico

 pnp/pnapi002

 

Objetivo

A API, atualiza a quilometragem do pneu na vida e no apontamento de movimentos de pneus.

 

Funcionamento

A API conforme os parâmetros de seleção passados, valida a existência dos parâmetros necessários para sua execução, posteriormente começa a buscar os pneus conforme seleção.

A API percorre os pneus, buscando para cada pneu, o último apontamento consistido. Para este apontamento é verificado qual a vida em que este se encontra.

Se for de uma vida anterior a atual, deverá ser ignorado este apontamento e utilizar como coordenada os valores iniciais da vida corrente do pneu naquela data.

Então são lidos os apontamentos de movimentos de pneus posteriores a data inicial do apontamento ou da vida.

Para cada apontamento, são verificados os dados de origem do pneu no apontamento. Se forem em branco, significa que o pneu estava no estoque, assim não deve-se adicionar quilometragem para pneu, pois este estava parado. Senão, será calculado o valor percorrido do pneu.

Ao final, deve-se verificar qual a localização atual do pneu, para calcular a quilometragem do período que não conteve apontamentos de pneus.

Os valores totais percorridos, são gravados na vida do pneu, já o valor atual é gravado para cada apontamento.

No pneu é gravado a somatória dos valores percorridos por cada vida do pneu.

Na forma padrão, realiza-se a chamada através de um comando RUN normal, passando-se as temp-tables carregadas com as informações necessárias.

A sintaxe para a chamada da API é:

run pnp\pnapi002.p (input  table tt-param,

                    output table RowErrors).

A execução na forma persistente não existe para esta API.

 

Tabelas Temporárias

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

Tabela Temporária

Descrição

Entrada/Saída

tt-param

Contém os campos para se fazer a seleção dos registros na API

Entrada

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

destino

integer

padrão

Destino do relatório

Não

001

arquivo

char

x(35)

Nome do arquivo do relatório

Não

001

usuario

char

x(12)

Nome do usuário corrente

Não

001

data-exec

date

99/99/9999

Data de execução do relatório

Não

001

hora-exec

integer

padrão

Hora de execução do relatório

Não

001

empIni

integer

>>9

Empresa Inicial

Sim

001

empFim

integer

>>9

Empresa Final

Sim

001

eqptoIni

char

x(16)

Equipamento Inicial

Sim

001

eqptoFim

char

x(16)

Equipamento Final

Sim

001

estabIni

char

x(3)

Estabelecimento Inicial

Sim

001

estabFim

char

x(3)

Estabelecimento Final

Sim

001

pneuIni

char

x(12)

Pneu Inicial

Sim

001

pneuFim

char

x(12)

Pneu Final

Sim

001

dataIni

date

99/99/9999

Data Inicial

Não

001

numDias

integer

padrão

Número de Dias

Sim

001

rRowid

rowid

padrão

Rowid do Apontamento

Não

001

Tabela Temporária

Descrição

Entrada/Saída

RowErrors

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

Como a API não é rodada persistente, não existem métodos disponíveis para execução.

 

Método Básico

piValidaInicial

Requisito

Nenhum

Sintaxe

run piValidaInicial in this-procedure.

Descrição

Faz as Validações Iniciais para atualizações dos pneus.

 

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

 

Método   Negócio

piProcessaAtualizacao

Requisito

Nenhum.

Sintaxe

run piProcessaAtualizacao in this-procedure.

Descrição

Processa as atualizações das quilometragens nos pneus. Percorre os pneus e calcula a quilometragem verificando os apontamentos de movimentos de pneus e a localização atual do pneu.

 

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.

piCalculo

Requisito

Deve ser chamada pela piProcessaAtualizacao.

Sintaxe

run piCalculo in this-procedure (input <character>,

                                 input <integer>,

                                 input <character>,

                                 input <decimal>,

                                 input <decimal>).

Descrição

Busca os movimentos de quilometragem do equipamento ao qual o pneu estava locado nas datas passadas e calcula a durabilidade do pneu (diferença entre a quilometragem final menos a inicial do equipamento, verificando a porcentagem de suspensão do eixo, conforme cadastrado no equipamento).

 

Parâmetros

Descrição

 

pPosicao  

Posição origem do pneu

 

pEmp

Empresa origem do pneu

 

pEqpto

Equipamento origem do pneu

 

pInvFinal

Data/Hora invertida para buscar a quilometragem final

 

pInvInicial

Data/Hora invertida para buscar a quilometragem inicial

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.

buscaKM

Requisito

Deve ser chamada pela piCalculo.

Sintaxe

run piCalculo in this-procedure input  <integer>,

                                input  <character>,

                                input  <decimal>,

                                output <decimal>).

Descrição

Busca a quilometragem do equipamento na data/hora passadas como parâmetro, se não encontrar, retorna a quilometragem inicial do equipamento.

 

Parâmetros

Descrição

 

pEmp

Empresa

 

pEqpto

Equipamento

 

pInvertida

Data/Hora invertida para buscar a quilometragem

 

pKM

Valor da quilometragem

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.

piAtualizaDurabilidade

Requisito

Deve ser chamada pela piProcessaAtualizacao.

Sintaxe

run piAtualizaDurabilidade in this-procedure.

Descrição

Atualiza os valores percorridos na vida e no apontamento.

 

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.

piPneuTotal

Requisito

Deve ser chamada pela piProcessaAtualizacao.

Sintaxe

run piPneuTotal in this-procedure.

Descrição

Percorre todas as vidas do pneu, acumulando o valor percorrido por cada uma e atualizando este valor no valor percorrido total da carcaça do pneu.

 

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.

piCalculoRessulcagem

Requisito

Deve ser chamada pela piAtualizaDurabilidade.

Sintaxe

run piCalculoRessulcagem in this-procedure (input <character>,

                     input <integer>,

                        input <character>,

                       input <decimal>,

                        input <decimal>).

Descrição

Busca os movimentos de quilometragem do equipamento ao qual o pneu estava locado nas datas passadas e calcula a durabilidade do pneu (diferença entre a quilometragem final menos a inicial do equipamento, verificando a porcentagem de suspensão do eixo, conforme cadastrado no equipamento) até a data da ressulcagem.

 

Parâmetros

Descrição

 

pPosicao  

Posição origem do pneu

 

pEmp

Empresa origem do pneu

 

pEqpto

Equipamento origem do pneu

 

pInvFinal

Data/Hora invertida para buscar a quilometragem final

 

pInvInicial

Data/Hora invertida para buscar a quilometragem inicial

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.