Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de API |
Nome Físico | cop/coapi001 |
Objetivo
A API, atualiza a quilometragem do componente na vida e no apontamento de movimentos de componentes.
Funcionamento
A API percorre os componentes, buscando para cada um, o último movimento. Para este movimento é 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 componente naquela data.
Então são lidos os apontamentos de movimentos de componentes posteriores a data inicial do apontamento ou da vida.
Para cada apontamento, são verificados os dados de localização do componente no apontamento. Se forem em branco, significa que o componente estava no estoque, assim não deve-se adicionar quilometragem para o componente, pois este estava parado, também deve-se verificar que somente quando forem movimentos de retirada do componente do equipamento que calcularão a quilometragem. Senão, será calculado o valor percorrido do componente.
Ao final, deve-se verificar qual a localização atual do componente, para calcular a quilometragem do período que não conteve apontamentos de componentes.
Os valores totais percorridos, são gravados na vida do componente, já o valor atual é gravado para cada apontamento.
No componente é gravado a somatória dos valores percorridos por cada vida do componente.
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 cop\coapi001.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 |
usuário | 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 |
subIni | char | x(12) | Sub Sistema Inicial | Sim | 001 |
subFim | char | x(12) | Sub Sistema Final | Sim | 001 |
compIni | char | x(12) | Componente Inicial | Sim | 001 |
compFim | char | x(12) | Componente Final | Sim | 001 |
tag-ini | char | x(16) | Localização funcional | Não | 001 |
tag-fim | char | x(16) | Localização funcional | Não | 001 |
cc-ini | char | x(20) | Código do Centro de Custo | Sim | 001 |
cc-fim | char | x(20) | Código do Centro de Custo | Sim | 001 |
dataIni | date | 99/99/9999 | Data Inicial | Não | 001 |
lInativos | logical | yes/no | Verifica Componente Ddesativado | Sim | 001 |
numDias | integer | padrão | Número de Dias | Sim | 001 |
rRowid | rowid | padrão | Rowid do Apontamento | Não | 001 |
unidNegocIni | char | x(3) | Unidade de Negócio Inicial | Sim | 001 |
unidNegocFim | 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 dos componentes. |
| 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 componentes. Percorre os componentes e calcula a quilometragem verificando os apontamentos de movimentos de componentes e a localização atual do componente. |
| 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 <integer>, input <character>, input <decimal>, input <decimal>). |
Descrição | Busca os movimentos de quilometragem do equipamento ao qual o componente estava locado nas datas passadas e calcula a durabilidade do componente (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 |
| pEmp | Empresa |
| pEqpto | Equipamento |
| 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 buscaKM 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 do componente. |
| 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. |
piProcessaAtualizacaoPlano
Requisito | Nenhum. |
Sintaxe | run piProcessaAtualizacaoPlano in this-procedure. |
Descrição | Processa as atualizações das quilometragens dos planos de manutenção dos componentes. Busca os componentes que estão sendo lidos em piPricessaAtualizaPlano e calcula a quilometragem verificando os apontamentos de movimentos de componentes e a localização atual do componente . |
| 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. |
piComponenteTotal
Requisito | Deve ser chamada pela piProcessaAtualizacao. |
Sintaxe | run piComponenteTotal in this-procedure. |
Descrição | Percorre todas as vidas do componente, acumulando o valor percorrido por cada uma e atualizando este valor no valor percorrido total da carcaça do componente. |
| 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. |
#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))