Árvore de páginas

 

Documento de API

Produto:

Datasul

Ocorrência:

Documentação de API

Nome Físico

 pnp/pnapi001

 

Objetivo

A API, consiste e atualiza os apontamentos de movimentos de pneus, atualizando a vida, os sulcos e o equipamento atual do pneu, como também gerar a quilometragem do equipamento.

 

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 as informações conforme seleção.

Ao buscar as informações, verificando os parâmetros utilizados, a API cria uma tabela temporária auxiliar com todos os pneus que devem ser lidos.

Então a API percorre a tabela temporária de pneus e assim lê os apontamentos de movimentos deste pneu conforme seleção.

Busca-se o apontamento anterior ao apontamento lido, para validar se este está consistido ou não. Caso não esteja consistido, o apontamento atual é atualizado com “6 - Ficha anterior não consistida”.

Senão, é verificada a situação do pneu no apontamento atual, se não foi informado, busca-se a situação do serviço do apontamento. Caso a situação seja “Inativa”, o apontamento atual é atualizado com “8 - Pneu desativado”.

Senão, é verificada se a origem do pneu está correta digitada na ficha. Caso a empresa ou o equipamento esteja incorreto, atualizar o apontamento com “2 - Equipamento origem inválido”. Caso a posição do pneu esteja incorreta, atualizar o apontamento com “3 - Posição origem inválida”. Caso o estabelecimento esteja incorreto, atualizar o apontamento com “4 - Estabelecimento origem inválido”.

Senão se o serviço informado no apontamento atualizar a vida do pneu e a reforma feita no pneu não foi recusada, deve-se verificar se a durabilidade do novo desenho do pneu está cadastrada. Caso não esteja cadastrada, atualizar o apontamento com “5 - Durabilidade Estimada Não Cadastrada”.

Senão, o apontamento é atualizado como correto “21 - Apontamento correto”.

Se o apontamento não estava correto, todas os apontamentos posteriores ao atual serão desconsistidos “1 - Ficha não consistida”, e serão eliminadas as vidas criadas por estes apontamentos e atualizado o pneu com o último equipamento de destino da última ficha consistida e os valores dos sulcos serão atualizados com os valores da última ficha de medição de sulco consistida..

Senão, será criada uma tabela temporária somente com os documentos que estão corretos, será verificada a necessidade de criar a quilometragem do equipamento origem e do destino, caso tenha sido informado um valor para o contador.

Após ler todos os apontamentos de movimentos do pneu, serão atualizados a vida do pneu e os valores dos sulcos e a localização atual do pneu.

A API após atualizar todos os pneus, utilizará os mesmos parâmetros, para atualizar a quilometragem dos pneus (APAPI002).

Tabela dos Status do Apontamento

1

Ficha não consistida

2

Equipamento origem inválido

3

Posição origem inválida

4

Estabelecimento origem inválido

5

Durabilidade Estimada Não Cadastrada

6

Ficha anterior não consistida

7

Localização destino incorreta

8

Pneu desativado

21

Apontamento correto

 

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\pnapi001.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

docIni

integer

>>>,>>>,>>9

Documento Inicial

Não

001

docFim

integer

>>>,>>>,>>9

Documento Final

Não

001

dataIni

date

99/99/9999

Data Inicial

Sim

001

dataFim

date

99/99/9999

Data Final

Sim

001

pneuIni

char

x(12)

Pneu Inicial

Sim

001

pneuFim

char

x(12)

Pneu Final

Sim

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

tag-ini

char

x(16)

TAG Inicial

Sim

001

tag-fim

char

x(16)

TAG Final

Sim

001

cc-ini

char

x(20)

Centro de Custo Inicial

Sim

001

cc-fim

char

x(20)

Centro de Custo Inicial

Sim

001

iConsist

integer

padrão

Tipo de Consistência

Sim

001

descConsist

char

x(40)

Descrição da Consistência

Não

001

lConsist

logical

yes/no

Consistir fichas anteriores

Não

001

codServico

char

x(4)

Código Serviço

Não

001

rRowid

rowid

padrão

Rowid do Apontamento

Não

001

lEstoque

logical

yes/no

Verificar Pneus em Estoque

Sim

001

lEquipamentos

logical

yes/no

Visualizar Pneus em Equipamentos

Sim

001

lAtivos

logical

yes/no

Validação para pneus Ativos

Sim

001

lInativos

logical

yes/no

Validação para pneus Inativos

Sim

001

lRadial

logical

yes/no

Ler somente pneus Radiais

Sim

001

lDiagonal

logical

yes/no

Ler somente pneus Diagonais

Sim

001

lMacico

logical

yes/no

Ler somente pneus Maciços

Sim

001

unid-negoc-ini

char

x(3)

Unidade de Negócio Inicial

Sim

001

unid-negoc-fim

char

x(3)

Unidade de Negócio Final

Sim

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 de apontamentos.

 

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 dos apontamentos de movimentos de pneu. Lê os pneus e seus apontamentos.

 

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.

piBusca

Requisito

Deve ser chamada pela piProcessaAtualizacao.

Sintaxe

run piBusca in this-procedure.

Descrição

Utilizando a seleção informada, busca os pneus que devem ser atualizados.

 

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.

piBuscaHistoricoEqpto

Requisito

Deve ser chamada pela piBusca.

Sintaxe

run piBuscaHistoricoEqpto in this-procedure.

Descrição

Busca último histórico (do equipamento) anterior a data de movimentação 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.

piCriaTTPneu

Requisito

Deve ser chamada pela piBusca.

Sintaxe

run piCriaTTPneu in this-procedure.

Descrição

Cria a tabela temporária ttPneu, que contém os pneus que deverão ser lidos na API.

 

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.

piPrincipal

Requisito

Deve ser chamada pela piProcessaAtualizacao.

Sintaxe

run piPrincipal in this-procedure.

Descrição

Faz as validações necessárias 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.

atualizaDocumento

Requisito

Deve ser chamada pela piPrincipal.

Sintaxe

run atualizaDocumento in this-procedure (input <integer>).

Descrição

Atualiza o status do apontamento de movimento de pneus. Cria a tabela temporária ttDocumentos, que será utilizada para atualizar a vida do pneu.

1  Ficha não consistida

2  Equipamento origem inválido

3  Posição origem inválida

4  Estabelecimento origem inválido

5  Durabilidade Estimada Não Cadastrada

6  Ficha anterior não consistida

7  Localização destino incorreta

8  Pneu desativado

21 Apontamento correto

Conforme status passado para a procedure.

 

Parâmetros

Descrição

 

pStatus

Status que a ficha receberá.

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 atualizaDocumento.

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.

eliminaHistoricoApontamento

Requisito

Deve ser chamada pela atualizaDocumento.

Sintaxe

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

                                                   input <integer>,

                                                   input <decimal>,

                                                   input <logical>).

Descrição

Desconsiste todos os apontamentos posteriores ao apontamento passado como parâmetro, assim se estes apontamentos geraram vida para o pneu e/ou atualizaram o atual do pneu, estas informações são eliminadas e serão buscadoas as últimas informações consistentes para o pneu.

 

Parâmetros

Descrição

 

pPneu

Código do Pneu

 

pDoc

Número Documento do Apontamento

 

pInvertida

Valor da Data/Hora invertida

 

pSulco

Indica se apontamento é de medição de sulco

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.

piKMPneu

Requisito

Deve ser chamada pela piProcessaAtualizacao.

Sintaxe

run piKMPneu in this-procedure.

Descrição

Cria os parâmetros necessários para chamar a APAPI002. São utilizados os mesmos parâmetros de seleção da API atual.

A API chamada irá atualizar a quilometragem que o 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.

piKMEqpto

Requisito

Deve ser chamada pela atualizaDocumento

Sintaxe

run piKMEqpto in this-procedure (input <decimal>,

                                 input <integer>

                                 input <character>,

                                 input <integer>).

Descrição

Criação da temp-table ttDocumento utilizada pela piKilometragem da ABAPI001, a qual cria os registros de quilometragem do equipamento.

Chama a API de atualização da quilometragem ABAPI003, utilizando os registros da ttDocumento.

 

Parâmetros

Descrição

 

pContador

Valor do Contador do Equipamento

 

pEmpresa

Código da Empresa do Equipamento

 

pEqpto

Código do Equipamento

 

pStatus

Status de atualização.

> 20 = Criação / Alteração

< 20 = Eliminação

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 tt-erro....