Árvore de páginas

Carregando...


01. DADOS GERAIS

Produto:

TOTVS Varejo Lojas

Linha de Produto:

Linha Protheus

Segmento:

Varejo

Módulo:

TOTVS Backoffice (Linha Protheus) - Controle de lojas (SIGALOJA)

Função:Venda Direta
País:Brasil


02. DESCRIÇÃO

Esse ponto de entrada permite que seja criada uma regra para seleção de NCC no módulo  SIGAFAT (PE FTVD7026)

É executado antes da exibição da tela com as NCCs do cliente. 


MV_USACRED

O parâmetro MV_USACRED influencia esse ponto de entrada. Se estiver desabilitado (igual a 'N'), o ponto de entrada não será executado.


03. DEMAIS INFORMAÇÕES

O parâmetro MV_LJNCCOR também possui influência sobre o ponto de entrada, de acordo com as combinações abaixo:

SE

RESULTADO

MV_LJNCCOR=.F.Executa o Ponto de Entrada na inclusão de orçamento e na finalização de orçamento.
MV_LJNCCOR=.T.

Executa o Ponto de Entrada na inclusão de orçamento.
E, caso o parâmetro MV_LJMTSN = 1, executa o Ponto de Entrada na finalização de orçamento também.



MV_LJNCCOR

Caso parâmetro MV_LJNCCOR=.T. , o sistema não traz as NCCs gravadas nas tabelas MDJ / MDK que foram selecionadas ao salvar o orçamento. Sendo assim, é necessário fazer esse tratamento no Ponto de Entrada também.


RETORNO:

Não existe retorno da função.

Deve ser preenchido o array bidimensional Private aNccItens. Em cada dimensão deve conter seguintes informações:

[1] - .T. para que a NCC já venha selecionada,     .F. para que não venha não selecionada
[2] - Valor da NCC (E1_SALDO)
[3] - Número da NCC (E1_NUM)
[4] - Data de emissão da NCC (E1_EMISSAO)
[5] - Número do registro no (SE1->(Recno())
[6] - Saldo do título (E1_SALDO)
[7] - Símbolo Moeda ( exemplo : SuperGetMV("MV_MOEDA1") )
[8] - Moeda ( E1_MOEDA )
[9] - Prefixo ( E1_PREFIXO )
[10] -Parcela ( E1_PARCELA )
[11] -Tipo (E1_TIPO)
[12] -Filial (E1_FILIAL)


EXEMPLO:


User Function FTVD7026()
Local lLjNCCOr  := SuperGetMv("MV_LJNCCOR", Nil, .F.)
Local cAliasQry := GetNextAlias()
Local cQuery    := ""
 
 
cQuery := "SELECT E1_FILIAL, E1_PREFIXO, E1_NUM, E1_PARCELA, E1_TIPO, E1_EMISSAO, E1_SALDO, E1_MOEDA, SE1.R_E_C_N_O_ AS RECNO"
 
If lLjNCCOr
    cQuery += "  , MDJ_NUMORC as SELMDJORC "
EndIf
 
cQuery += "  FROM " + RetSQLName("SE1") + " SE1 "
 
If lLjNCCOr
    cQuery += " LEFT JOIN " + RetSQLName("MDK") + " MDK ON  MDK.MDK_NUMREC = SE1.R_E_C_N_O_ AND MDK.D_E_L_E_T_ = ' ' "
    cQuery += " LEFT JOIN " + RetSQLName("MDJ") + " MDJ ON MDJ.MDJ_FILIAL = MDK.MDK_FILIAL AND MDJ.D_E_L_E_T_ = ' ' "
    cQuery += " AND MDJ.MDJ_NUMORC = MDK.MDK_NUMORC "
    cQuery += "  AND MDJ.MDJ_SITUA = 'OR' AND MDJ.MDJ_NUMORC = '" + M->LQ_NUM +  "' "
EndIf
 
cQuery += " WHERE "
If !SuperGetMV("MV_LJNCCFI",,.F.)
    cQuery += "   E1_FILIAL  = '"+xFilial("SE1")+"' AND "
EndIf
cQuery += "   E1_CLIENTE = '"+M->LQ_CLIENTE+"' AND "
If !SuperGetMV("MV_LJNCCLJ",,.F.)
    cQuery += "   E1_LOJA    = '"+M->LQ_LOJA+"' AND "
EndIf
cQuery += "   E1_STATUS  = 'A' AND " //A=Em Aberto
cQuery += "   E1_SALDO > 0 AND " //Com Saldo em aberto
cQuery += "   E1_TIPO IN ('NCC','RA ') AND "
cQuery += "   SE1.D_E_L_E_T_ = ' ' "
 
cQuery := ChangeQuery(cQuery)
dbUseArea(.T.,"TOPCONN",TcGenQry(,,cQuery), cAliasQry,.F.,.F.)
 
While !(cAliasQry)->(EOF())
     
    aAdd(aNCCItens,{.F.,;
                    (cAliasQry)->E1_SALDO,;
                    (cAliasQry)->E1_NUM,;
                    STOD((cAliasQry)->E1_EMISSAO),;                    
					(cAliasQry)->RECNO,;
                    (cAliasQry)->E1_SALDO,;
                    SUPERGETMV("MV_MOEDA1"),;
                    (cAliasQry)->E1_MOEDA,;
                    (cAliasQry)->E1_PREFIXO,;
                    (cAliasQry)->E1_PARCELA,;
                    (cAliasQry)->E1_TIPO,;
                    (cAliasQry)->E1_FILIAL})
 
    (cAliasQry)->(DbSkip())
End  
 
(cAliasQry)->(DbCloseArea())
 
Return

04. ASSUNTOS RELACIONADOS