Árvore de páginas

Ponto de Entrada

Descrição:

Este ponto de entrada está localizado logo no inicio da função FS_CANCELA() da rotina Cancela Venda (OFIOM220) e tem por finalidade impedir um cancelamento antes da Transação, podendo o usuário, através dele, realizar a validação do cancelamento da nota fiscal, criando suas próprias verificações e, se for o caso, abortar o cancelamento quando a condição não for atendida.

Localização:

Atualizações / Mov Peças / Cancela Venda (OFIOM220)

Eventos:

Function FS_CANCELA()

 

Local i := 0

Local aRegSD2 := {}

Local aRegSE1 := {}

Local aRegSE2 := {}

Local cPrefix := &(GetNewPar("MV_1DUPREF","cSerie"))

Local lCupom := VS1->VS1_SERNFI == GetNewPar("MV_SERCUP","CUP")

Local cont := 0

Local lNFeCancel := SuperGetMV('MV_CANCNFE',.F.,.F.) .AND. SF2->(FieldPos("F2_STATUS")) > 0

Local lRet := .t.

 

if Alltrim(cPrefix) == ""

cPrefix := iif(VS1->VS1_SERNFI <> GetNewPar("MV_SERCUP","CUP"),VS1->VS1_SERNFI,GetNewPar("MV_SERCUP","CUP"))

Endif

 

DbSelectArea("SE1")

DBSetOrder(1)

//If SE1->(DBSeek(xFilial('SE1')+cPrefix+cNota))

If SE1->(DBSeek(xFilial('SE1')+cPrefix+space(TamSx3("E1_PREFIXO")[1]-Len(cPrefix))+cNota))

While !Eof() .and. SE1->E1_FILIAL == xFilial('SE1') .and. SE1->E1_PREFIXO == cPrefix+space(TamSx3("E1_PREFIXO")[1]-Len(cPrefix)) .and. SE1->E1_NUM == cNota

if VS1->VS1_SERNFI <> GetNewPar("MV_SERCUP","CUP") .and. SE1->E1_PREFORI != GetNewPar("MV_PREFBAL","BAL")

DBSkip()

loop

endif

If !Empty(SE1->E1_BAIXA) .or. SE1->E1_SALDO != SE1->E1_VALOR

MsgInfo(STR0019,STR0020) //Ha titulos baixados referentes a esta Venda..###Atencao

Return(.f.)

EndIf

DbSelectArea("SE1")

DbSkip()

Enddo

EndIf

 

if ( ExistBlock("OFM220AT") )

lRet := ExecBlock("OFM220AT",.f.,.f.)

if !lRet

Return(.f.)

Endif

EndIf

 

Programa Fonte:

OFIOM220,PRW  

Parâmetros:Não se aplica

Função:

FS_CANCELA()                  

Retorno:

booleano (.t. ou .f.)

 

Exemplo:

/*

ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ

±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±

±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±

±±ºPrograma OFM220AT ºAutor ³ MIL º Data ³ 29/09/16 º±±

±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±

±±ºDesc. ³Valida cancelamento da Nota Fiscal de Peças e aborta o º±±

±±º ³o processo antes da Transação (Begin Transaction) º±±

±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±

±±ºUso ³ DMS º±±

±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±

±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±

ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß

*/

User Function OFM220AT

 

Local lRetorno := .F.

 

MsgInfo("Ponto de Entrada OFM220AT executado com sucesso!","Atenção!")

 

Return lRetorno