Árvore de páginas

GFEA05A9 - Realizar processamento na exclusão do relacionamento do DC

Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Supply Chain - Logística

Módulo:

SIGAGFE

Ponto de Entrada:GFEA05A9

Descrição:

Realizar processamento na exclusão do relacionamento do Documento de Carga com o Romaneio. Esse ponto tem por objetivo algum processamento específico, após desvincular algum DC com o romaneio.

Localização:

No botão Excluir do programa Fatura de Frete (GFEA050A).

Programa Fonte:

GFEA050A - Romaneio (Tela Documento Carga)

Parâmetros:

Não se aplica.

Retorno:

Não se aplica.

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

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.