Árvore de páginas

API responsável pela geração da pendência de aprovação no MLA

Características do Requisito

Linha de Produto:

Datasul

Segmento:

Manufatura

Módulo:

MLA

Banco(s) de Dados:

MOVIND

Tabelas Utilizadas:

mla-doc-pend-aprov

Release inicialEMS 2.06B


Considerações Gerais

Objetivo

Controle de geração/eliminação de pendências de aprovação para os documentos do MLA conforme detalhamento abaixo.


Pré-requisito

Módulo do MLA configurado para geração de pendências para os documentos em questão.


Funcionamento

A API irá receber os parâmetros documentados na sequência e fará a geração ou eliminação da(s) pendência(s) de aprovação.

A sintaxe para a chamada da API direta é:

run lap/mlaapi001.p (INPUT i-cod-tip-doc,

                                  INPUT i-tipo-trans,
                                  INPUT c-motivo,
                                  INPUT de-valor,
                                  INPUT i-moeda,
                                  INPUT c-usuar-trans,
                                  INPUT c-usuar-doc,
                                  INPUT c-lotacao-doc,
                                  INPUT c-item,
                                  INPUT c-referencia,
                                  INPUT c-ep-codigo,
                                  INPUT c-cod-estabel,
                                  INPUT TABLE tt-mla-chave,
                                  OUTPUT TABLE tt-erro).


Exemplo da utilização:

run lap/mlaapi001.p (INPUT 1, /* 1 - Solicitação de compra */

                                  INPUT 1, /* Inclusão */
                                  INPUT "Aprovação de compra", /* Motivo */
                                  INPUT 150, /* Valor da pendência */
                                  INPUT 0, /* Moeda */
                                  INPUT "super", /* Usuário da transação */
                                  INPUT "requisitante", /* Usuário do documento */
                                  INPUT "1000", /* Lotação do documento */
                                  INPUT "item1", /* Item*/
                                  INPUT "01001", /* Referência */
                                  INPUT "001", /* Empresa */
                                  INPUT "Est1", /* Estabelecimento */
                                  INPUT TABLE tt-mla-chave, /* Registros contendo a chave do documento */
                                 OUTPUT TABLE tt-erro). /* Erros ocorridos durante a geração da pendência */


Para execução persistente, executar da seguinte forma (onde h-mlaapi001 é uma variável do tipo handle):

run lap/mlaapi001.p persistent set h-mlaapi001 (INPUT i-cod-tip-doc,

                                                                              INPUT i-tipo-trans,
                                                                              INPUT c-motivo,
                                                                              INPUT de-valor,
                                                                              INPUT i-moeda,
                                                                              INPUT c-usuar-trans,
                                                                              INPUT c-usuar-doc,
                                                                              INPUT c-lotacao-doc,
                                                                              INPUT c-item,
                                                                              INPUT c-referencia,
                                                                              INPUT c-ep-codigo,
                                                                              INPUT c-cod-estabel,
                                                                              INPUT TABLE tt-mla-chave,
                                                                              OUTPUT TABLE tt-erro).


Informações referentes aos parâmetros:


Parâmetro

Tipo

Formato

Descrição

Entrada/Saída

i-cod-tip-doc


Inteiro

>>9

Código do tipo do documento para o qual deve ser gerada, alterada ou eliminada a(s) pendência(s)

Utilizar:

1 - Solicitação de Compra - Item

2 - Solicitação de Compra - Total

3 - Requisição de Estoque - Item

4 - Requisição de Estoque - Total

5 - Cotação de Materiais

6 - Pedido de Compra - Item

7 - Pedido de Compra - Total

8 - Pedido de Compra Emergencial - Total

9 - Processo de Compra - Item

10 - Processo de Compra - Total

13 - Contrato de Compras

14 - Medição de Contrato de Compra

16 - Evento de Contrato de Compra

18 - Solicitação de Cotação

19 - Pedido de Compra Emergencial - Item

20 - Solicitação de Serviço

21 - Avaliação de Crédito (Pedido de Venda)

24 - Documento do Contas a pagar (Documento normal)

25 - Antecipação do Contas a pagar

26 - Pagamento Extra-Fornecedor

28 - Pagamento Título Normal

29 - Negociação de Fretes

30 - Documento de Fretes

31 - Fatura de Fretes

32 - Originação - Adiantamento Valor

33 - Originação - Fechamento Financeiro

Entrada

i-tipo-transInteiro9

Transação que está sendo realizada (criação, alteração ou eliminação)

Utilizar:

1 – Inclusão

2 – Modificação

3 – Eliminação

 Entrada
c-motivoCaracterex(40)Motivo da geração da pendênciaEntrada
de-valorDecimal->>,>>>,>>9.99Valor da pendênciaEntrada
i-moedaInteiro>9Moeda referente ao valor da pendênciaEntrada
c-usuar-transCaracterex(12)Usuário que está realizando a transação (manutenindo o documento origem que deve refletir a pendência no MLA)Entrada
c-usuar-docCaracterex(12)Usuário responsável pelo documento para o qual está sendo gerada a pendênciaEntrada
c-lotacao-docCaracterex(20)

Lotação do documento para o qual está sendo gerada a pendência.

Essa informação é utilizada quando no cadastro do usuário está configurado para que o responsável pela pendência seja “Centro de Custo”, neste caso é considerada essa informação para buscar as hierarquias e faixas de aprovação. Caso não seja informada, é utilizada a lotação do usuário da transação para geração da pendência.

Entrada
c-itemCaracterex(16)Item para o qual está sendo gerada a pendência. Quando não for utilizado ou a aprovação for por total, passar em branco. Obs.: Essa informação refere-se ao código do item cadastrado no sistema.Entrada
c-referenciaCaractere x(20)

Referência a ser considerada para geração da pendência. Para informações sobre a referência de cada documento consultar: DMLA0004 - Quais são as informações consideradas como referência para os documentos do MLA?

Neste caso, se passada essa informação, e o documento deva utilizar a aprovação por referência, ela será utilizada para busca dos tipos de aprovação/aprovadores. 

Entrada
c-ep-codigoCaracterex(3)Empresa para a qual a pendência será geradaEntrada
c-cod-estabelCaracterex(5)Estabelecimento para o qual a pendência será gerada.Entrada
tt-mla-chaveTemp-table
Informações da chave do documento. Enviar cada um dos registros de chave do documento como um registro diferenciado de "extent" na temp-table.Entrada
tt-erroTemp-table
Informações sobre os erros ocorridos durante o processo de geração das pendências.Saída



tt-mla-chave

Entrada/Saída

Temp-table com as chaves do documento

Entrada

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

valor

Caractere (EXTENT 10)

x(20)

Valor da chave

Sim

-


Exemplo de criação para o documento 1 (Solicitação de Compra - Item): 

/* Localizar o registro da tabela requisicao e it-requisicao */

create tt-mla-chave.
assign tt-mla-chave.valor[1] = string(requisicao.nr-requisicao)
tt-mla-chave.valor[2] = string(it-requisicao.sequencia)
tt-mla-chave.valor[3] = string(it-requisicao.it-codigo).


tt-erro

Entrada/Saída

Temp-table com os erros ocorridos durante o processo

Saída

Atributo

Tipo

Formato

Descrição

Obrigatório

Evolução

i-sequen

Inteiro


Sequência do erro

Sim

-

cd-erroInteiro
Código do erroSim-
mensagemCaracterex(255)Mensagem de erroSim-



Procedures disponíveis quando a execução for persistente:


pi-executar

Requisito

Não há.

Descrição

Geração/eliminação de pendências de aprovação para os documentos do MLA conforme parâmetros

Parâmetros 

Tipo

Input/Output

Descrição

i-cod-tip-doc             

INTEGER

INPUT

Código do tipo do documento para o qual deve ser gerada, alterada ou eliminada a(s) pendência(s)

Utilizar:

1 - Solicitação de Compra - Item

2 - Solicitação de Compra - Total

3 - Requisição de Estoque - Item

4 - Requisição de Estoque - Total

5 - Cotação de Materiais

6 - Pedido de Compra - Item

7 - Pedido de Compra - Total

8 - Pedido de Compra Emergencial - Total

9 - Processo de Compra - Item

10 - Processo de Compra - Total

13 - Contrato de Compras

14 - Medição de Contrato de Compra

16 - Evento de Contrato de Compra

18 - Solicitação de Cotação

19 - Pedido de Compra Emergencial - Item

20 - Solicitação de Serviço

21 - Avaliação de Crédito (Pedido de Venda)

24 - Documento do Contas a pagar (Documento normal)

25 - Antecipação do Contas a pagar

26 - Pagamento Extra-Fornecedor

28 - Pagamento Título Normal

29 - Negociação de Fretes

30 - Documento de Fretes

31 - Fatura de Fretes

32 - Originação - Adiantamento Valor

33 - Originação - Fechamento Financeiro

i-tipo-trans

INTEGER

INPUT

Transação que está sendo realizada (criação, alteração ou eliminação)

Utilizar:

1 – Inclusão

2 – Modificação

3 – Eliminação

c-motivoCHARACTERINPUTMotivo da geração da pendência
de-valorDECIMALINPUTValor da pendência
i-moedaINTEGERINPUTMoeda referente ao valor da pendência
c-usuar-transCHARACTERINPUTUsuário que está realizando a transação (manutenindo o documento origem que deve refletir a pendência no MLA)
c-usuar-docCHARACTERINPUTUsuário responsável pelo documento para o qual está sendo gerada a pendência
c-lotacao-docCHARACTERINPUT

Lotação do documento para o qual está sendo gerada a pendência.

Essa informação é utilizada quando no cadastro do usuário está configurado para que o responsável pela pendência seja “Centro de Custo”, neste caso é considerada essa informação para buscar as hierarquias e faixas de aprovação. Caso não seja informada, é utilizada a lotação do usuário da transação para geração da pendência.

c-itemCHARACTERINPUTItem para o qual está sendo gerada a pendência. Quando não for utilizado ou a aprovação for por total, passar em branco. Obs.: Essa informação refere-se ao código do item cadastrado no sistema.
c-referenciaCHARACTERINPUT

Referência a ser considerada para geração da pendência. Para informações sobre a referência de cada documento consultar: DMLA0004 - Quais são as informações consideradas como referência para os documentos do MLA?

Neste caso, se passada essa informação, e o documento deva utilizar a aprovação por referência, ela será utilizada para busca dos tipos de aprovação/aprovadores. 

c-ep-codigoCHARACTERINPUTEmpresa para a qual a pendência será gerada
c-cod-estabelCHARACTERINPUTEstabelecimento para o qual a pendência será gerada
tt-mla-chaveTEMP-TABLEINPUTInformações da chave do documento. Enviar cada um dos registros de chave do documento como um registro diferenciado de "extent" na temp-table.
tt-erroTEMP-TABLEOUTPUTInformações sobre os erros ocorridos durante o processo de geração das pendências.

Retorno

O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK".



pi-executar-2

Requisito

Não há.

Descrição

Geração/eliminação de pendências de aprovação para os documentos do MLA conforme parâmetros (mesma funcionalidade da pi-executar, com a diferença de retornar os erros na RowErrors).

Parâmetros 

Tipo

Input/Output

Descrição

i-cod-tip-doc             

INTEGER

INPUT

Código do tipo do documento para o qual deve ser gerada, alterada ou eliminada a(s) pendência(s)

Utilizar:

1 - Solicitação de Compra - Item

2 - Solicitação de Compra - Total

3 - Requisição de Estoque - Item

4 - Requisição de Estoque - Total

5 - Cotação de Materiais

6 - Pedido de Compra - Item

7 - Pedido de Compra - Total

8 - Pedido de Compra Emergencial - Total

9 - Processo de Compra - Item

10 - Processo de Compra - Total

13 - Contrato de Compras

14 - Medição de Contrato de Compra

16 - Evento de Contrato de Compra

18 - Solicitação de Cotação

19 - Pedido de Compra Emergencial - Item

20 - Solicitação de Serviço

21 - Avaliação de Crédito (Pedido de Venda)

24 - Documento do Contas a pagar (Documento normal)

25 - Antecipação do Contas a pagar

26 - Pagamento Extra-Fornecedor

28 - Pagamento Título Normal

29 - Negociação de Fretes

30 - Documento de Fretes

31 - Fatura de Fretes

32 - Originação - Adiantamento Valor

33 - Originação - Fechamento Financeiro

i-tipo-trans

INTEGER

INPUT

Transação que está sendo realizada (criação, alteração ou eliminação)

Utilizar:

1 – Inclusão

2 – Modificação

3 – Eliminação

c-motivoCHARACTERINPUTMotivo da geração da pendência
de-valorDECIMALINPUTValor da pendência
i-moedaINTEGERINPUTMoeda referente ao valor da pendência
c-usuar-transCHARACTERINPUTUsuário que está realizando a transação (manutenindo o documento origem que deve refletir a pendência no MLA)
c-usuar-docCHARACTERINPUTUsuário responsável pelo documento para o qual está sendo gerada a pendência
c-lotacao-docCHARACTERINPUT

Lotação do documento para o qual está sendo gerada a pendência.

Essa informação é utilizada quando no cadastro do usuário está configurado para que o responsável pela pendência seja “Centro de Custo”, neste caso é considerada essa informação para buscar as hierarquias e faixas de aprovação. Caso não seja informada, é utilizada a lotação do usuário da transação para geração da pendência.

c-itemCHARACTERINPUTItem para o qual está sendo gerada a pendência. Quando não for utilizado ou a aprovação for por total, passar em branco. Obs.: Essa informação refere-se ao código do item cadastrado no sistema.
c-referenciaCHARACTERINPUT

Referência a ser considerada para geração da pendência. Para informações sobre a referência de cada documento consultar: DMLA0004 - Quais são as informações consideradas como referência para os documentos do MLA?

Neste caso, se passada essa informação, e o documento deva utilizar a aprovação por referência, ela será utilizada para busca dos tipos de aprovação/aprovadores. 

c-ep-codigoCHARACTERINPUTEmpresa para a qual a pendência será gerada
c-cod-estabelCHARACTERINPUTEstabelecimento para o qual a pendência será gerada
tt-mla-chaveTEMP-TABLEINPUTInformações da chave do documento. Enviar cada um dos registros de chave do documento como um registro diferenciado de "extent" na temp-table.
RowErrorsTEMP-TABLEOUTPUTInformações sobre os erros ocorridos durante o processo de geração das pendências.

Retorno

O retorno desta procedure será "NOK" sempre que ocorrer algum erro durante o processamento, caso contrário o retorno será "OK".



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

ErrorDescriptionCHARACTER Descrição do erro SimNão se aplica
ErrorParametersCHARACTER Parâmentros da mensagem de erro SimNão se aplica
ErrorTypeCHARACTER Tipo do erro SimNão se aplica
ErrorHelpCHARACTER Texto de ajuda da mensagem de erro SimNão se aplica
ErrorSubTypeCHARACTERSubtipo do erroSimNão se aplica