Duvida CD1406 - Reaprovação de SC usando a API "lap\mlaapi001.p"

Discussão em 'EMS , HCM e Totvs 11' iniciado por ds201, Junho 20, 2025.

  1. ds201

    ds201 Membro Participativo

    Bom dia a todos

    Fiz algumas alterações em uma UPC do programa CD1406, para que em determinada situação uma “SC – Solicitação de compras” retorne para a rota de aprovação.

    Histórico:
    CD1406 - Solicitação de compras - Forçar reaprovação

    Aqui na empresa temos algumas customizações no CD1406, elas permitem anexar documentos a SC.
    Algumas vezes estes documentos precisam ser alterados mesmo com a SC já emitida e aprovada.
    Nesta situação é necessário que a SC seja novamente aprovada antes de seguir o processo...

    Solução (com apoio do Rafael):
    Usar a API lap\mlaapi001.p

    Forma como montei os parâmetros enviados para a API:
    /*--- Desaprovar MLA que estiver aprovado e a "situacao" permitir desaprovacao ---*/
    create tt-mla-chave.
    assign tt-mla-chave.valor[1] = string(b-requisicao.nr-requisicao)
    tt-mla-chave.valor[2] = ""
    tt-mla-chave.valor[3] = "".

    run lap/mlaapi001.p (INPUT 2, /*--- 01 - Solicitacao de Compra - Total ---*/
    INPUT 1, /*--- 02 - Inclusao de pendencia aprov. ---*/
    INPUT "CD1406: Alteracao nos anexos.", /*--- 03 - Motivo ---*/
    INPUT 0.01, /*--- 04 - Valor da pendencia ---*/
    INPUT mla-usuar-aprov.mo-codigo, /*--- 05 - Moeda ---*/
    INPUT mla-usuar-aprov.cod-usuar, /*--- 06 - Usuario da transacao ---*/
    INPUT mla-usuar-aprov.cod-usuar, /*--- 07 - Usuario do documento ---*/
    INPUT mla-usuar-aprov.cod-lotacao, /*--- 08 - Lotacao do documento ---*/
    INPUT " ", /*--- 09 - Item [Se aprov. total = ""] ---*/
    INPUT " ", /*--- 10 - Referencia -- Estab. Sol. ou "" ---*/
    INPUT mla-usuar-aprov.ep-codigo, /*--- 11 - Empresa ---*/
    INPUT mla-usuar-aprov.cod-estabel, /*--- 12 - Estabelecimento ---*/
    INPUT TABLE tt-mla-chave, /*--- 13 - Regis. com a chave do documento ---*/
    OUTPUT TABLE tt-erro-API). /*--- 14 - Erros na geracao da pendencia ---*/

    Retorno do cliente após os primeiros testes:
    01 - Após o reenvio da solicitação de aprovação, o valor que antes era de R$ 32.000,10 passou a ser 0,01. Inclusive este valor aparece na caixa do aprovador 0,01 (Veja em: MLA0205).
    CAUSA: Foi este o valor que coloquei no quarto parâmetro (Valor da pendencia).
    DUVIDA: Ainda não sei como obter o valor correto (para documentos que estão sendo colocados para "reaprovação").

    02 - O email foi enviado para aprovador com a mesma mensagem (da primeira aprovação), com exceção do valor. Isso pode confundir o Aprovador.
    CAUSA PROVÁVEL: No segundo parâmetro, eu escolhi "1 - Inclusao de pendencia aprov.". (Opções: 1 – Inclusão, 2 – Modificação, 3 – Eliminação).
    DUVIDA: O que acontece se eu escolher "2 – Modificação"? Isto resolve este problema?

    03 - Após a primeira aprovação, se o usuário toma ação que força o documento a voltar para a fila de aprovação, fica mantido o status de aprovada na caixa do Comprador (CC0523), mesmo retornando para rota de aprovação.
    CAUSA PROVÁVEL: No segundo parâmetro, eu escolhi "1 - Inclusao de pendencia aprov.". (Opções: 1 – Inclusão, 2 – Modificação, 3 – Eliminação).
    DUVIDA: O que acontece se eu escolher "2 – Modificação"? Isto resolve este problema?

    04 - Tanto para o Solicitante quanto para o Aprovador, consta que o status da “SC – Solicitação de compras” está aprovada.
    CAUSA PROVÁVEL: No segundo parâmetro, eu escolhi "1 - Inclusao de pendencia aprov.". (Opções: 1 – Inclusão, 2 – Modificação, 3 – Eliminação).
    DUVIDA: O que acontece se eu escolher "2 – Modificação"? Isto resolve este problema?

    Eu não sei o impacto que a escolha da "Transação (Inclusão, Modificação, Eliminação)", tem sobre o comportamento da API.

    Obrigado
  2. ds201

    ds201 Membro Participativo

    Boa noite

    Já consegui resolver o item "01 - Após o reenvio da solicitação de aprovação, o valor que antes era de R$ 32.000,10 passou a ser 0,01. Inclusive este valor aparece na caixa do aprovador 0,01".

    Na passagem de parâmetros para a API eu alterei a "Transação". Inicialmente estava usando "Inclusão". Agora passei a usar "Modificação".

    Agora é esperar os testes do cliente...

    Sds

Compartilhe esta Página