Árvore de páginas

GFEA0444 - Realizar processamento no botão "Bloquear"

Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Supply Chain - Logística

Módulo:

SIGAGFE

Ponto de Entrada:GFEA0444

Descrição:

Realizar processamento na finalização da tela "Bloquear". Esse ponto tem por objetivo algum processamento específico, após encerramento da tela "Bloquear", acionada via menu da rotina de Documento de Carga.

Localização:

No botão Bloquear do programa Documento de Carga (GFEA044).

Programa Fonte:

GFEA044 - Documento de Carga

Parâmetros:

Não se aplica.

Retorno:

Não se aplica.

Exemplo: GFEA0444
#INCLUDE "PROTHEUS.CH"
User Function GFEA0444()

Local oColEnt
Local aLayout    := {}
Local aStruct    := {}
Local cSequen    := ""
Local nCntFor1   := 0
Local aAreaDT5   := {}

dbSelectArea("DND")
oColEnt  := TMSBCACOLENT():New("DND")
If oColEnt:DbGetToken() 
    DND->(DbGoTo(oColEnt:config_recno))

    aAreaDT5  := GWN->(GetArea())

    conout(DND->DND_CODFON)

    //-- Inicializa a estrutura
    aStruct   := TMSMntStru(DND->DND_CODFON,.F.)
    TMSSetVar("aStruct",aStruct)

    //-- Define o processo

    TMSSetVar("cProcesso", GWN->GWN_FILIAL + GWN->GWN_NRROM ) 
    //-- Inicializa o localizador
    TMSSetVar("aLocaliza",{})

    For nCntFor1 := 1 To Len(aStruct)
            If (Ascan(aStruct,{|x| x[11] + x[12] ==  aStruct[nCntFor1,1] +  aStruct[nCntFor1,2]}) == 0) /*.And. aStruct[nCntFor1,10] == "2" .And. aStruct[nCntFor1,3] == "GWN"*/	//-- Não 	é adicional de ninguém e ainda não foi processado
                aLayout := BscLayout(aStruct[nCntFor1,1],aStruct[nCntFor1,2])

                If !Empty(aLayout)
                    If Empty(aStruct[nCntFor1,6])
                        //-- Inicia a gravação dos registros
                        MontaReg(Aclone(aLayout),nCntFor1,,cSequen,.T.)
                        
                        TMSCtrLoop(Aclone(aLayout),nCntFor1)
                    EndIf
                EndIf
            EndIf
        aStruct := TMSGetVar("aStruct")
    Next nCntFor1
    RestArea(aAreaDT5)
    FwFreeArray(aAreaDT5)
EndIf

TMSAI86()

Return .t.