Disparar Aprovação MLA no Pedido de Compra

57 views
Skip to first unread message

o.esa...@gmail.com

unread,
Dec 3, 2024, 10:49:33 AM12/3/24
to Progress - 4GL
Pessoal, boa tarde.
Por favor talvez alguém já tenha se deparado com esta situação e tenha uma luz.

Hoje temos por dia cerca de 200 pedidos de compra por dia, este pedidos são gerados em um sistema interno e importado em "lote" através do programa datasul CC0604.

Até aqui funciona sem maiores problemas.

Hoje estamos trabalhando com aprovação MLA para estes pedidos, e segundo informação do Suporte Totvs, apara dispararmos este pedido de aprovação MLA temos que entrar no CC0300 pedido a pedido (cerca de 200 individualmente) e simularmos uma alteração (sem alterar nada) e concluir, isso faz disparar o pedido de aprovação MLA.

O problema é fazer isso pedido a pedido, sendo que a ideia seria otimizar, disparar os 200 de uma vez só por exemplo.

Alguém sabe se existe algo neste sentido ou se existe uma forma de criar algo para que possamos disparar os 200 pedidos para aprovação de uma vez por exemplo ?

Muito Obrigado.

Fabiano Soares da Silva

unread,
Dec 3, 2024, 11:13:21 AM12/3/24
to progre...@googlegroups.com
Boa tarde,
recentemente fiz uma rotina de geração de pedido com  aprovação automática e coloquei eliminação na pendência do MLA,
Pode ser que no programa lap/mlaapi001.p  que usei tenha como buscar a pendência e fazer a aprovação.

Meu código:
    assign
    ped-venda.dsp-pre-fat  = true
    ped-venda.desc-forc-cr = "Aprovado automaticamente"
    ped-venda.desc-bloq-cr = ""
    ped-venda.dt-apr-cred  = today
    ped-venda.cod-sit-aval = 3
    ped-venda.user-aprov   = "super"
    ped-venda.quem-aprovou = "super"
    .

    //Libera a tabela de pedido de venda
    run unlock.

    for first estabelec of ped-venda
    no-lock. end.

    /* elimina pendencia de aprovação do MLA */
    empty temp-table tt-mla-chave.
    empty temp-table tt-erro.  

    create tt-mla-chave.
    assign tt-mla-chave.valor[1] = string(ped-venda.nr-pedido).

    run lap/mlaapi001.p
    (input 21     //Avaliação de crédito
    , input 3      //Eliminar
    , input "Pedido balcão pre aprovado"     //Motivo
    , input 0
    , input 0
    , input "super"
    , input ""
    , input ""
    , input ""
    , input ""
    , input (if available estabelec then estabelec.ep-codigo else "1")
    , input ped-venda.cod-estabel
    , input table tt-mla-chave
    , output table tt-erro).

--
Recebeu esta mensagem porque subscreveu ao grupo "Progress - 4GL" do Grupos do Google.
Para anular a subscrição deste grupo e parar de receber emails do mesmo, envie um email para progress_4gl...@googlegroups.com.
Para ver esta discussão, visite https://groups.google.com/d/msgid/progress_4gl/7952f9f1-3911-44af-a8c2-a9df0853311fn%40googlegroups.com.

Rodolfo Ramos

unread,
Dec 3, 2024, 11:16:01 AM12/3/24
to progre...@googlegroups.com
Boa tarde,

segue exemplo. Só adaptar ao tipo do documento que deseja gerar a pendência.


DEFINE VARIABLE h-mlaapi001     AS HANDLE  NO-UNDO.
DEFINE VARIABLE i-cod-tip-doc   AS INTEGER NO-UNDO.
DEFINE VARIABLE i-tipo-trans    AS INTEGER NO-UNDO. 
DEFINE VARIABLE c-motivo        AS CHAR    NO-UNDO.     
DEFINE VARIABLE de-valor        AS DEC     NO-UNDO.     
DEFINE VARIABLE i-moeda         AS INTEGER NO-UNDO.      
DEFINE VARIABLE c-usuar-trans   AS CHAR    NO-UNDO.
DEFINE VARIABLE c-usuar-doc     AS CHAR    NO-UNDO.  
DEFINE VARIABLE c-lotacao-doc   AS CHAR    NO-UNDO.
DEFINE VARIABLE c-item          AS CHAR    NO-UNDO.       
DEFINE VARIABLE c-referencia    AS CHAR    NO-UNDO.
DEFINE VARIABLE c-ep-codigo     AS CHAR    NO-UNDO.  
DEFINE VARIABLE c-cod-estabel   AS CHAR    NO-UNDO.

DEFINE TEMP-TABLE tt-mla-chave 
    FIELD valor AS CHAR EXTENT 10.

DEFINE TEMP-TABLE tt-erro
    FIELD i-sequen AS INTEGER
    FIELD cd-erro  AS INTEGER 
    FIELD mensagem AS CHAR FORMAT "X(100)".

create tt-mla-chave.
assign tt-mla-chave.valor[1] = "203"
       tt-mla-chave.valor[2] = "000911197"
       tt-mla-chave.valor[3] = "10"
       tt-mla-chave.valor[4] = "11310003"
       tt-mla-chave.valor[5] = "".

ASSIGN 
    i-cod-tip-doc  = 24
    i-tipo-trans   = 1
    c-motivo       = "Integração Propay x Financeiro Totvs Datasul"
    de-valor       = 000515017.19
    i-moeda        = 0
    c-usuar-trans  = "mtc0071"
    c-usuar-doc    = "mtc0071"
    c-lotacao-doc  = "19"
    c-item         = ""
    c-referencia   = "000911197"
    c-ep-codigo    = "200"
    c-cod-estabel  = "203".

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).

RUN pi-executar-2 IN 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 rowErrors).

delete object h-mlaapi001.

FOR EACH tt-erro NO-LOCK.
    DISP tt-erro WITH 1 COL WIDTH 500.
END.

Rodolfo Ramos
85 9 96805661

Em ter., 3 de dez. de 2024 às 12:49, o.esa...@gmail.com <o.esa...@gmail.com> escreveu:
--

o.esa...@gmail.com

unread,
Dec 3, 2024, 11:41:55 AM12/3/24
to Progress - 4GL

Maravilha Fabiano, muito obrigado pela Luz.

o.esa...@gmail.com

unread,
Dec 3, 2024, 11:42:38 AM12/3/24
to Progress - 4GL
Boa tarde Rodolfo.
Ajuda bastante, muito obrigado!

Reply all
Reply to author
Forward
0 new messages