Documento de API
Produto: | Datasul |
Ocorrência: | Documentação de APi |
Nome Físico: | lap/mlaapi014.p |
Objetivo
Esta api tem como objetivo disponibilizar os métodos de integração entre o ERP e o Fluig.
Funcionamento
Esta api é responsável por iniciar, movimentar, cancelar e transferir as solicitações do Fluig via ERP. Ela é responsável também por realizar as consultas dos dados no ERP feitas a partir do Fluig.
detalheDocumento |
Requisito | Pendência gerada no MLA. |
Descrição | Busca os detalhes do documento MLA. Obs: A mlaapi014 serve como ponte de comunicação entre o Fluig e o programa Progress referente ao documento utilizado. Através do número da transação da pendência, é recuperado o código do documento e então é executada a procedure "detalheDocumento" do programa padrão referente ao documento. Por exemplo: - Doc 1 executará a procedure detalheDocumento do laphtml/mlahtml001p.p;
- Doc 501 executará a procedure detalheDocumento do laphtml/mlahtml501p.p
Para mais informações acesse a documentação específica destas API's em API - MLA. |
Parâmetros | Tipo | Input/Output | Descrição |
pNrTransacao | INTEGER | INPUT | Número da transação |
lGeracaoPend | LOGICAL | INPUT | Indica se a chamada está sendo feita pela geração da pendência (true) ou da consulta do detalhe (false) |
pDesTipDoc | CHARACTER | OUTPUT | Descrição do tipo do documento |
pSituacao | INTEGER | OUTPUT | Situação do documento |
ttDados | TEMP-TABLE | OUTPUT | Temp-table genérica com todas as informações referentes ao documento |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
detalhePendencia |
Requisito | Pendência gerada no MLA. |
Descrição | Busca os detalhes da pendência do MLA |
Parâmetros | Tipo | Input/Output | Descrição |
pNrTransacao | INTEGER | INPUT | Número da transação |
ttDados | TEMP-TABLE | OUTPUT | Temp-table com as informações detalhadas da pendência e chave formatada do documento |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
historicoDocumento |
Requisito | Pendência gerada no MLA. |
Descrição | Busca o histórico de aprovação do documento. |
Parâmetros | Tipo | Input/Output | Descrição |
pNrTransacao | INTEGER | INPUT | Número da transação |
ttDados | TEMP-TABLE | OUTPUT | Temp-table com as informações detalhadas da pendência e chave formatada do documento |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK" |
getCodRejeita |
Requisito | Nenhum. |
Descrição | Busca os dados das rejeições cadastradas no ERP |
Parâmetros | Tipo | Input/Output | Descrição |
ttCodRejeita | TEMP-TABLE | OUTPUT | Temp-table com os códigos e descrições das rejeições cadastradas no ERP |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
aprovarDocumento |
Requisito | Nenhum. |
Descrição | Aprova/Reprova o documento MLA |
Parâmetros | Tipo | Input/Output | Descrição |
pUsuario | CHARACTER | INPUT | Usuário que está realizando a aprovação/reprovação do documento. |
pSelecionados | CHARACTER | INPUT | Transações selecionadas que serão aprovadas/reprovadas. Obs: separadas por "," |
pAcao | INTEGER | INPUT | 1 - Aprovar; 2 - Reprovar |
pNarrativa | CHARACTER | INPUT | Narrativa de aprovação/reprovação. |
pCodRejeicao | INTEGER | INPUT | Código da rejeição. Obs: Passar 0 caso seja aprovação. |
pLote | LOGICAL | INPUT | Flag que indica se a aprovação está sendo feito em lote ou individualmente. Obs: Quando o valor desta flag for verdadeiro (movimentação em lote), o sistema usará a narrativa e código de rejeição padrão. |
pLogErro | LOGICAL | OUTPUT | Flag que indica se houve erro no processamento |
RowErrors | TEMP-TABLE | OUTPUT | Temp-table com os erros do processamento |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
startProcessFluig |
Requisito | Pendência gerada no MLA. |
Descrição | Inicia uma solicitação no Fluig |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação que dará inicio a solicitação no Fluig |
iNrSolicFluig | INTEGER | OUTPUT | Número da solicitação criada no Fluig |
RowErrors | TEMP-TABLE | OUTPUT | Temp-table com os erros do processamento |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
cancelProcessFluig |
Requisito | Pendência gerada no MLA. |
Descrição | Cancelar uma solicitação no Fluig |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação que terá a solicitação Fluig cancelada |
iTipo | INTEGER | INPUT | 1 - Cancelado pois o documento originador foi alterado 2 - Cancelado pois o documento originador foi removido |
RowErrors | TEMP-TABLE | OUTPUT | Temp-table com os erros do processamento |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
changeStateFluig |
Requisito | Nenhum. |
Descrição | Movimentar uma solicitação no Fluig |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação MLA |
iAtividade | INTEGER | INPUT | Número da atividade: 6 - Aprovar; 7 - Reprovar |
RowErrors | TEMP-TABLE | OUTPUT | Temp-table com os erros do processamento |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
trocaAprovador |
Requisito | Pendência gerada no Fluig e já alterada no MLA. |
Descrição | Altera o aprovador da solicitação Fluig. Obs: O novo aprovador é recuperado da tabela mla-doc-pend-aprov, por isso não há necessidade de passá-lo como parâmetro para a procedure. Porém é necessário passar o usuário original da pendência, que era o aprovador antes da troca. |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação MLA |
cUserOrig | CHARACTER | INPUT | Código do usuário ERP Origem (antigo responsável da pendência) |
RowErrors | TEMP-TABLE | OUTPUT | Temp-table com os erros do processamento |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
getGestoresProcesso |
Requisito | Nenhum. |
Descrição | Retorna os usuários mestres do MLA |
Parâmetros | Tipo | Input/Output | Descrição |
ttUsuarMestre | TEMP-TABLE | OUTPUT | Temp-table com os usuários mestres do MLA |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
insertError |
Requisito | Nenhum. |
Descrição | Insere erro na temp-table RowErrors |
Parâmetros | Tipo | Input/Output | Descrição |
pErrorNumber | INTEGER | INPUT | Número do erro |
pErrorType | CHARACTER | INPUT | Tipo do erro |
pErrorSubType | CHARACTER | INPUT | Subtipo do erro |
pErrorParameters | CHARACTER | INPUT | Parâmetros da mensagem de erro |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK" |
gerarCopiaDetalhePendencia |
Requisito | Nenhum. |
Descrição | Gravar uma cópia das informações do detalhe da pendência para que seja mantido um histórico das informações usadas no Fluig. |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
gerarCopiaDetalheDocumento |
Requisito | Nenhum. |
Descrição | Gravar uma cópia das informações do detalhe do documento para que seja mantido um histórico das informações usadas no Fluig. |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
gerarCopiaHistoricoDocumento |
Requisito | Nenhum. |
Descrição | Gravar uma cópia do histórico de aprovações do documento para que seja mantido um histórico das informações usadas no Fluig. |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
gravaMlaDoctoPendAprovacDet |
Requisito | Nenhum. |
Descrição | Grava na tabela mla-docto-pend-aprovac-det o espelho do documento/pendência/historico para manter salvo o que foi integrado com o Fluig. |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação da pendência |
iTipo | INTEGER | INPUT | Tipo do registro que será gravado: 1- Detalhe da pendência; 2- Histórico do documento; 3- Detalhe do documento; 4 - Chave da pendência |
lcTexto | LONGCHAR | INPUT | longchar com o json que será salvo no banco de dados |
lRemoveAntigo | LOGICAL | INPUT | flag que indica se irá remover os registros antigos para a transação + tipo informados. |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
getMlaDoctoPendAprovacDet |
Requisito | Nenhum. |
Descrição | Retorna o json remontado* para ser convertido em temp-table. - Como o json é gravado em partes de até 2000 caracteres, é preciso remontá-lo antes de retorná-lo.
|
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação |
iTipo | INTEGER | INPUT | Tipo do registro que será retornado: 1- Detalhe da pendência; 2- Histórico do documento; 3- Detalhe do documento; 4 - Chave da pendência |
lcJson | LONGCHAR | OUTPUT | Json com as informações solicitadas de acordo om o tipo informado. |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
piReprocessaErrosIntegracao |
Requisito | Nenhum. |
Descrição | Caso haja erros de integração para a transação reprocessa-os antes de executar uma nova integração. |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação |
iCdnTipoErro | INTEGER | INPUT | Tipo de erro para geração do erro de integração, caso haja. |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
insereErroMonitor |
Requisito | Nenhum. |
Descrição | Insere os erros no monitor de integração (html.mla0172) e na temp-table RowErrors. |
Parâmetros | Tipo | Input/Output | Descrição |
iNrTransacao | INTEGER | INPUT | Número da transação |
piTipo | INTEGER | INPUT | Tipo de erro. (1=Envio, 2=Aprovação, 3=Reprovação, 4=Cancelamento por alteração, 5=Cancelamento por eliminação, 6=Troca de aprovador) |
piCodErro | INTEGER | INPUT | Código de erro do cadastro de mensagens |
pcParams | CHARACTER | INPUT | Parâmetros que serão passados para a mensagem de erro |
pcUserOrig | CHARACTER | INPUT | Usuário original da pendência |
pcUser | CHARACTER | INPUT | Usuário destino, caso seja uma troca de aprovador |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
setReprocess |
Requisito | Nenhum. |
Descrição | Seta a variável lógica lReprocess, que indica se a execução está sendo feito pelo reprocessamento dos erros do monitor. |
Parâmetros | Tipo | Input/Output | Descrição |
plReprocess | LOGICAL | INPUT | Flag que indica se é reprocessamento ou não. |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
setHandleFluig |
Requisito | Nenhum. |
Descrição | Inicia o handle da api de integração com o Fluig. |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
unsetHandleFluig |
Requisito | Nenhum. |
Descrição | Encerra e elimina o handle da api de integração com o Fluig. |
Retorno | O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK". |
Documentação das temp-tables usadas na MLAAPI014:
ttDados | Entrada/Saída |
Temp-table com dados agrupados das tabelas que trafegam entre o ERP e o Fluig. | Saída |
Atributo | Tipo | Descrição | Obrigatório | Evolução |
cTable | CHARACTER | Nome da tabela | Sim | Não se aplica |
iRow | INTEGER | Número da linha/registro. Usa este campo para indicar quais campos pertencem ao mesmo registro | Sim | Não se aplica |
cField | CHARACTER | Nome do campo da tabela | Sim | Não se aplica |
cValue | CHARACTER | Valor do campo | Sim | Não se aplica |
ttCodRejeita | Entrada/Saída |
Temp-table com dados das rejeições cadastradas no ERP | Saída |
Atributo | Tipo | Descrição | Obrigatório | Evolução |
codRejeita | INTEGER | Código da rejeição | Sim | Não se aplica |
descRejeita | CHARACTER | Descrição da rejeição | Sim | Não se aplica |
obrigaNarrativa | LOGICAL | Flag que indica se é necessário informar a narrativa para a rejeição selecionada. | Sim | Não se aplica |
ttUsuarMestre | Entrada/Saída |
Temp-table com dados dos usuários mestres cadastrados no ERP | Saída |
Atributo | Tipo | Descrição | Obrigatório | Evolução |
codUsuar | CHARACTER | Código do usuário mestre | Sim | Não se aplica |
nomeUsuar | CHARACTER | Nome do usuário mestre | Sim | Não se aplica |
eMail | CHARACTER | E-mail do usuário mestre | Sim | Não se aplica |
RowErrors | Entrada/Saída |
Temp-table com dados dos erros ocorridos durante o processo | Saída |
Atributo | Tipo | Descrição | Obrigatório | Evolução |
ErrorSequence | INTEGER | Número da sequência do erro | Sim | Não se aplica |
ErrorNumber | INTEGER | Código do erro | Sim | Não se aplica |
ErrorDescription | CHARACTER | Descrição do erro | Sim | Não se aplica |
ErrorParameters | CHARACTER | Parâmentros da mensagem de erro | Sim | Não se aplica |
ErrorType | CHARACTER | Tipo do erro | Sim | Não se aplica |
ErrorHelp | CHARACTER | Texto de ajuda da mensagem de erro | Sim | Não se aplica |
ErrorSubType | CHARACTER | Subtipo do erro | Sim | Não se aplica |