Ponto de Entrada OM200OK – Montagem de Carga(OMSA200)

Tempo de leitura: 1 minuto


Receba as últimas atualizações do ProtheusAdvpl
Deixe seu melhor email
Nós respeitamos sua privacidade.


Olá, hoje iremos ver um exemplo de como utilizar o ponto de entrada OM200OK, esse ponto de entrada é executado antes da montagem da carga(rotina OMSA200), permitindo que o usuário para gerar a carga ou não, dependendo do retorno desse ponto de entrada.

O retorno dessa ponto de entrada é um valor lógico, caso retorne TRUE(.T.) o processo da montagem da carga será executado normalmente, caso retorne FALSE(.F.) não será montado a carga.

Veja o código de exemplo:
/*
www.protheusadvpl.com.br
Ponto de Entrada executado antes da montagem da carga
 
 
Autor:Adilio Costa
Data:03/05/2018
 
*/
 
#Include "Protheus.ch"
#Include "TopConn.ch"
#Define QUE_LIN  Chr(13)+Chr(10)
 
User Function OM200OK()
    Local aPedidos := PARAMIXB[01]
    Local aSelPed := {}
    Local cMens := "O(s) seguinte(s) pedido(s) vai(ão) ser(em) entregue(s) na fábrica:"+QUE_LIN
    Local nNum := 0
    Local nRet
    Local lRet := .T.
    Local lCont1 := .T.
    Local lCont2 := .F.
 
    For nNum := 1 To Len(aPedidos)
        nRet := POSICIONE("SC5",1,xFilial("SC5")+aPedidos[nNum][5],"C5_YRETIRA")
        If(nRet == "P")
            lCont1 := .F.
            aadd(aSelPed,aPedidos[nNum][5])
        Else
            lCont2 := .T.
        EndIf
    Next
 
    If(!lCont1 .AND. lCont2)
 
        if( len(aSelPed)>0 )
 
            For nNum := 1 To Len(aSelPed)
                if(nNum == 5)
                    cMens += QUE_LIN
                EndIf
                cMens += aSelPed[nNUM]
                if((nNum+1) <= Len(aSelPed))
                    cMens += ","
                EndIf
            Next
 
            cMens += QUE_LIN
            cMens += "Deseja Continuar?"
            lRet := MsgYesNo(cMens,"Atenção!")
        EndIf
    Endif
Return lRet

Bem, assim finalizamos mais um post aqui do blog/site ProtheusAdvpl, espero que tenha entendido e lhe ajudado. Qualquer dúvida deixe seu comentário ou nos envie um email para adiliocosta@protheusadvpl.com.br.

Grande abraço e fica com Deus.

Receba as últimas atualizações do ProtheusAdvpl
Deixe seu melhor email
Nós respeitamos sua privacidade.