Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de API |
Nome Físico | laphtml/mlahtml018p.p |
Considerações Gerais
Objetivo
O objetivo desta API é fornecer dados sobre pendências do módulo do MLA para o documento Solicitação de Cotação, estejam elas pendentes de aprovações, aprovadas ou reprovadas.
Funcionamento
A API fornece basicamente dois tipos de informações: listagem de documentos (neste caso solicitações de compra) e/ou detalhe um documento (neste caso solicitação de compra).
A sintaxe para a chamada da API, que deve ser de forma persistente:
run laphtml/mlahtml018p.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.
Método Negócio
Quando a API estiver executada em modo persistente, os seguintes métodos estarão disponíveis para execução:
listagemDocumentos | |||
Requisito | Listagem de pendências do MLA (em várias situações) do documento de Solicitação de cotação | ||
Sintaxe | {laphtml/mladados.i}
RUN listagemDocumentos in h-handle (input iCodTipDoc, input tipoDoc, input dtIni, input dtFim, output table ttDados). | ||
Descrição | Através dos parâmetros passados para a procedure, ela retorna os registros para listagem dos documentos (Solicitação de cotação) | ||
Parâmetros | Tipo | Descrição | |
iCodTipDoc | INTEGER | Código do tipo de documento (neste caso para solicitação de cotação, informar 18) | |
tipoDoc | CHARACTER | Tipo de documento a ser apresentado. As opções que podem ser utilizadas são:
prin: Documentos pendentes de aprovação saida: Documentos aprovados, rejeitados e reaprovados (histórico de aprovação) alt: Documentos pendentes como usuário alternativo mes: Documentos como usuário mestre ambos: Documentos pendente de aprovação como usuário principal e como alternativo aprov: Documentos aprovados e reaprovados reprov: Documentos reprovados | |
dtIni | DATE | Data de início para consideração dos documentos já aprovados, rejeitados, reaprovados (histórico) | |
dtFim | DATE | Data de término para consideração dos documentos já aprovados, rejeitados, reaprovados (histórico)
As datas somente são utilizadas para o histórico e caso não sejam informadas serão considerados 30 dias. | |
Retorno | A procedure retorna uma temp-table, do tipo ttDados, que está definida na include laphtml/mladados.i. Nesta temp-table contém dados da temp-table tt-it-requisicao-lista, que é detalhada na tabela mais abaixo.
Exemplo de registro que poderiam existir na tt-it-requisicao-lista:
ttDados.cTable = “tt-it-requisicao-lista” ttDados.iRow = 1 ttDados.cField = “nr-requisicao” ttDados.cValue = “3456”
ttDados.cTable = “tt-it-requisicao-lista” ttDados.iRow = 1 ttDados.cField = “cod-estabel” ttDados.cValue = “EST1”
ttDados.cTable = “tt-it-requisicao-lista” ttDados.iRow = 1 ttDados.cField = “it-codigo” ttDados.cValue = “Item XXXX” |
ttDados | Entrada/Saída | |||
Temp-table com dados da listagem em formato único. | Saída | |||
Atributo | Tipo | Descrição | Obrigatório | Evolução |
cTable | CHARACTER | Nome da temp-table | Sim | Não se aplica |
iRow | INTEGER | Sequencial de registro | Sim | Não se aplica |
cField | CHARACTER | Nome do campo da temp-table | Sim | Não se aplica |
cValue | CHARACTER | Valor do campo | Sim | Não se aplica |
tt-it-requisicao-lista | Entrada/ Saída | ||||
Temp-table com dados de item de solicitação de cotação para serem apresentados na listagem | Saída | ||||
Atributo | Tipo | Formato | Descrição | Obrigatório | |
cod-estabel | CHARACTER | X(5) | Estabelecimento | Sim | |
nr-requisicao | INTEGER | >>>,>>>,>>9 | Requisição | Sim | |
sequencia | INTEGER | >>9 | Sequência | Sim | |
it-codigo | CHARACTER | X(16) | Item | Sim | |
dt-requisicao | DATE | 99/99/9999 | Data Requisição | Sim | |
nome-abrev | CHARACTER | X(12) | Requisitante | Sim | |
val-item | DECIMAL | >>>>>>,>>>,>>9.99 | Valor | Sim | |
situacao-doc | INTEGER | >9 | Situação da pendência | Sim | |
situacao-doc-desc | CHARACTER | X(15) | Descrição da situação | Sim | |
nr-trans | INTEGER | >>>,>>>,>>9 | Número da transação (MLA) | Sim | |
alternativo | LOGICAL | YES/NO | Indica que é uma pendência como alternativo | Sim | |
mestre | LOGICAL | YES/NO | Indica que é uma pendência como mestre | Sim | |
cod-usuar | CHARACTER | X(12) | Aprovador | Sim | |
mla-doc-pend-aprov-valor-doc | DECIMAL | ->>,>>>,>>9.99 | Valor do documento | Sim | |
chave-doc | CHARACTER | X(40) | Chave do documento | Sim | |
chave-doc-formatada | CHARACTER | X(70) | Chave do documento formatada | Sim | |
mla-ep-codigo | CHARACTER | X(3) | Código da empresa | Sim | |
mla-cod-estabel | CHARACTER | X(5) | Código do estabelecimento | Sim | |
mla-desc-ep-codigo | CHARACTER | X(70) | Nome da empresa | Sim | |
mla-desc-cod-estabel | CHARACTER | X(40) | Nome do estabelecimento | Sim | |
mla-nome-usuar | CHARACTER | X(40) | Nome do aprovador | Sim |
Nota:
Se necessário alterar ou incluir informação na listagem, existe um ponto de EPC com evento com o nome de “ListagemDocs” que pode ser utilizado. Ele possui o parâmetro “Handle_ttDados”, que possui o handle da temp-table ttDados.
listagemDocumentosEmpresaEstab | |||
Requisito | Listagem de pendências do MLA (em várias situações) do documento de Solicitação de cotação por empresa e estabelecimento | ||
Sintaxe | {laphtml/mladados.i}
RUN listagemDocumentosEmpresaEstab in h-handle (input cEpCodigo, input cCodEstabel, input iCodTipDoc, input tipoDoc, input dtIni, input dtFim, output table ttDados). | ||
Descrição | Através dos parâmetros passados para a procedure, ela retorna os registros para listagem dos documentos (Solicitação de cotação) | ||
Parâmetros | Tipo | Descrição | |
cEpCodigo | CHARACTER | Código da empresa (Se passar em branco considera todas) | |
cCodEstabel | CHARACTER | Código do estabelecimento (Se passar em branco considera todos) | |
iCodTipDoc | INTEGER | Código do tipo de documento (neste caso para solicitação de cotação, informar 18) | |
tipoDoc | CHARACTER | Tipo de documento a ser apresentado. As opções que podem ser utilizadas são:
prin: Documentos pendentes de aprovação saida: Documentos aprovados, rejeitados e reaprovados (histórico de aprovação) alt: Documentos pendentes como usuário alternativo mes: Documentos como usuário mestre ambos: Documentos pendente de aprovação como usuário principal e como alternativo aprov: Documentos aprovados e reaprovados reprov: Documentos reprovados | |
dtIni | DATE | Data de início para consideração dos documentos já aprovados, rejeitados, reaprovados (histórico) | |
dtFim | DATE | Data de término para consideração dos documentos já aprovados, rejeitados, reaprovados (histórico)
As datas somente são utilizadas para o histórico e caso não sejam informadas serão considerados 30 dias. | |
Retorno | A procedure retorna uma temp-table, do tipo ttDados, que está definida na include laphtml/mladados.i. Nesta temp-table contém dados da temp-table tt-it-requisicao-lista, que é detalhada na tabela mais abaixo.
Exemplo de registro que poderiam existir na tt-it-requisicao-lista:
ttDados.cTable = “tt-it-requisicao-lista” ttDados.iRow = 1 ttDados.cField = “nr-requisicao” ttDados.cValue = “3456”
ttDados.cTable = “tt-it-requisicao-lista” ttDados.iRow = 1 ttDados.cField = “cod-estabel” ttDados.cValue = “EST1”
ttDados.cTable = “tt-it-requisicao-lista” ttDados.iRow = 1 ttDados.cField = “it-codigo” ttDados.cValue = “Item XXXX” |
detalheDocumento | ||
Requisito | Detalhe de pendências do MLA do documento de Solicitação de cotação | |
Sintaxe | {laphtml/mladados.i}
RUN detalheDocumento in h-handle (input p-nr-transacao, input p-situacao, output table ttDados). | |
Descrição | Através dos parâmetros passados para a procedure, ela retorna as informações para detalhamento da pendência do documento (Solicitação de cotação) | |
Parâmetros | Descrição | |
p-nr-transacao | Número da transação da pendência (no MLA) | |
Retorno | p-situacao: Situação da pendência (INTEGER) – Conforme situação no MLA (doc-pend-aprov)
A procedure retorna também uma temp-table, do tipo ttDados, que está definida na include laphtml/mladados.i. Nesta temp-table contém dados das temp-tables tt-requisicao e tt-it-requisicao, que são detalhadas na tabela mais a baixo.
Exemplo de registro que poderiam existir na tt-requisicao:
ttDados.cTable = “tt-requisicao” ttDados.iRow = 1 ttDados.cField = “nr-requisicao” ttDados.cValue = “3456”
ttDados.cTable = “tt-requisicao” ttDados.iRow = 1 ttDados.cField = “cod-estabel” ttDados.cValue = “EST1”
ttDados.cTable = “tt-requisicao” ttDados.iRow = 1 ttDados.cField = “desc-tp-requis” ttDados.cValue = “Solicitação de Compra” |
tt-requisicao | Entrada/ Saída | |||
Temp-table com dados da solicitação de cotação para serem apresentados no detalhamento do documento | Saída | |||
Atributo | Tipo | Formato | Descrição | Obrigatório |
nr-requisicao | INTEGER | >>>,>>>,>>9 | Requisição | Sim |
tp-requis | INTEGER | >9 | Tipo Requisição | Sim |
desc-tp-requis | CHARACTER | X(30) | Descrição Tipo Requisição | Sim |
narrativa | CHARACTER | X(2000) | Narrativa Requisição | Não |
ep-codigo | CHARACTER | X(3) | Empresa | Sim |
desc-ep-codigo | CHARACTER | X(60) | Razão social da empresa | Sim |
cod-estabel | CHARACTER | X(5) | Estabelecimento | Sim |
desc-cod-estabel | CHARACTER | X(40) | Nome estabelecimento | Sim |
nome-abrev | CHARACTER | X(12) | Requisitante | Sim |
desc-nome-abrev | CHARACTER | X(40) | Nome requisitante | Sim |
cod-lotacao | CHARACTER | X(20) | Lotação | Sim |
desc-cod-lotacao | CHARACTER | X(32) | Descrição lotação | Sim |
dt-requisicao | DATE | 99/99/9999 | Data Requisição | Sim |
loc-entrega | CHARACTER | X(30) | Local entrega | Não |
total-doc | DECIMAL | >>>>>,>>>,>>9.9999 | Valor total do documento | Sim |
tt-it-requisicao | Entrada/ Saída | |||
Temp-table com dados dos itens de solicitação de cotação para serem apresentados no detalhamento do documento | Saída | |||
Atributo | Tipo | Formato | Descrição | Obrigatório |
it-codigo | CHARACTER | X(16) | Item | Sim |
desc-it-codigo | CHARACTER | X(60) | Descrição do item | Sim |
nr-requisicao | INTEGER | >>>,>>>,>>9 | Requisição | Sim |
ct-codigo | CHARACTER | X(20) | Conta | Não |
desc-ct-codigo | CHARACTER | X(40) | Descrição da conta | Não |
sc-codigo | CHARACTER | X(20) | Sub-conta | Não |
desc-sc-codigo | CHARACTER | X(40) | Descrição sub-conta | Não |
sequencia | INTEGER | >>9 | Sequência | Sim |
un | CHARACTER | X(2) | Unidade de medida | Sim |
desc-un | CHARACTER | X(15) | Descrição da unidade medida | Sim |
narrativa | CHARACTER | X(2000) | Narrativa | Não |
qt-requisitada | DECIMAL | >>>,>>>,>>9.9999 | Quantidade requisitada | Sim |
qt-a-atender | DECIMAL | >>>,>>>,>>9.9999 | Quantidade a atender | Não |
dt-entrega | DATE | 99/99/9999 | Data entrega | Sim |
preco-unit | DECIMAL | >>>>>,>>>,>>9.99999 | Preço unitário | Não |
cod-utiliz | CHARACTER | X(12) | Código Utilização | Não |
desc-cod-utiliz | CHARACTER | X(40) | Descrição Código Uitlização | Não |
total-item | DECIMAL | >>>>>,>>>,>>9.9999 | Total do Item | Sim |
valor-unit | DECIMAL | >>>>>,>>>,>>9.9999 | Valor unitário | Sim |
cod-refer | CHARACTER | X(8) | Referência | Sim |
desc-cod-refer | CHARACTER | X(32) | Descrição da referência | Sim |
urgente | LOGICAL | YES/NO | Urgente | Sim |
homologa | LOGICAL | YES/NO | Homola fornecedor | Sim |
afeta-qualidade | LOGICAL | YES/NO | Afeta Qualidade | Sim |
num-ord-inv | INTEGER | >>>,>>9 | Ordem Investimento | Não |
prioridade | CHARACTER | X(15) | Prioridade | Sim |
Nota:
Se necessário alterar ou incluir informação no detalhamento, existe um ponto de EPC com evento com o nome de “DetalheDoc” que pode ser utilizado. Ele possui o parâmetro “Handle_ttDados”, que possui o handle da temp-table ttDados.