Árvore de páginas

Ponto de Entrada

Descrição:

Este ponto de entrada está localizado na rotina Faturamento Direto (VEIXA030) e será executado ao abrir a rotina. O objetivo do ponto de entrada é realizar um filtro customizável dos dados no browse da rotina.

Localização:

Atualizações / Mov Atendimento / Faturamento Direto (VEIXA030)

Eventos:

Function VEIXA030(lNoMBrowse,aRecInter)

Local cFiltro := ""

Local cFilUser := ""

Private cCadastro := STR0001

Private aRotina := MenuDef()

Private aCores := { {'VV9->VV9_STATUS == "F"','BR_PRETO'},; // Finalizado

{'VV9->VV9_STATUS == "C"','BR_VERMELHO'},; // Cancelado

{'VV9->VV9_STATUS == "P"','BR_AMARELO'},; // Pendente de Aprovacao

{'VV9->VV9_STATUS == "O"','BR_BRANCO'},; // Pre-Aprovado

{'VV9->VV9_STATUS == "L"','BR_AZUL'},; // Aprovado

{'VV9->VV9_STATUS == "R"','BR_LARANJA'},; // Reprovado

{'.T.' ,'BR_VERDE'}} // Em Aberto

Default lNoMBrowse := .f.

Default aRecInter := {} // RecNo's dos Interesses da Oportunidade de Vendas


//////////////////////////////////////////////////////////////////////////////

// Valida se a empresa tem autorizacao para utilizar os modulos de Veiculos //

//////////////////////////////////////////////////////////////////////////////

If !AMIIn(11) .or. !FMX_AMIIN({"VEIXA030"})

Return()

EndIf


// Ponto de Entrada para Filtro do Browse

If ExistBlock("VXA030FBRW")

cFilUser := ExecBlock("VXA030FBRW", .f., .f.)

EndIf


//

SetKey(VK_F12,{ || VXA030F12(.t.) })

//


VAI->(DbSetOrder(4))

VAI->(DbSeek(xFilial("VAI")+__cUserID))

DbSelectArea("VV9")

DbSetOrder(1)


If lNoMBrowse

If ( nOpc <> 0 ) .and. !Deleted()

bBlock := &( "{ |a,b,c,d| " + aRotina[ nOpc,2 ] + "(a,b,c,d) }" )

Eval( bBlock , Alias() , (Alias())->(Recno()) , nOpc , aRecInter )

EndIf

Else

////////////////////////////////////////////

// Filtro do Browse - Faturamento Direto //

////////////////////////////////////////////

cFiltro := " EXISTS ( SELECT VV0.VV0_CODVEN FROM "+RetSQLName("VV0")+" VV0 WHERE "

cFiltro += "VV0.VV0_FILIAL=VV9_FILIAL AND VV0.VV0_NUMTRA=VV9_NUMATE AND VV0.VV0_TIPFAT='2' AND "

If Empty(VAI->VAI_ATEOUT) .or. VAI->VAI_ATEOUT == "0" // Nao Visualiza Atendimentos de outros vendedores

cFiltro += "VV0.VV0_CODVEN='"+VAI->VAI_CODVEN+"' AND " // NAO visualiza Atendimentos de outros vendedores

EndIf

cFiltro += "VV0.D_E_L_E_T_=' ') "

cFiltro += IIf(Empty(cFilUser), "", " AND " + cFilUser)

mBrowse( 6, 1,22,75,"VV9",,,,,,aCores,,,,,,,,cFiltro)

EndIf

Programa Fonte:

VEIXA030.PRW

Função:

VEIXA030()

Parâmetros:

N/A

Retorno:
NomeTipoDescrição

cFiltro

Caracter

Filtro completo

Exemplo:

Include totvs.ch

/*

===============================================================================

###############################################################################

##+----------+------------+-------+-----------------------+------+----------+##

##|Função | VXA030FBRW | Autor | MIL | Data | 22/04/2020 |##

##+----------+------------+-------+-----------------------+------+----------+##

##|Descrição | Filtro do Browse na Rotina Faturamento Direto (VEIXA030) |##

##+----------+--------------------------------------------------------------+##

###############################################################################

===============================================================================

*/

User Function VXA030FBRW()

Local cFiltro := ""


cFiltro := "VV9_FILIAL = '" + cFilAnt + "' OR VV9_STATUS = 'A'"

Return cFiltro