Producto: | TOTVS Minorista Tiendas |
|---|---|
Línea de producto: | Línea Protheus |
Segmento: | Minorista |
Módulo: | TOTVS Backoffice (Línea Protheus) - Control de tiendas (SIGALOJA) |
Función: | Venta directa |
País: | Brasil |
Este punto de entrada permite que se cree una regla para selección de NCC en el módulo SIGAFAT (PE FTVD7026)
Se ejecuta antes de la exhibición de la pantalla con las NCC del cliente.
MV_USACRED
El parámetro MV_USACRED influye en este punto de entrada. Si estuviera deshabilitado (igual a 'N'), el punto de entrada no se ejecutará.
El parámetro MV_LJNCCOR también tiene influencia sobre el punto de entrada, de acuerdo con las siguientes combinaciones:
SI | RESULTADO |
MV_LJNCCOR=.F. | Ejecuta el Punto de entrada en la inclusión de presupuesto en la finalización de presupuesto. |
MV_LJNCCOR=.T. | Ejecuta el Punto de entrada en la inclusión de presupuesto. |
MV_LJNCCOR
Si el parámetro MV_LJNCCOR=.T. , el sistema no trae las NCC grabadas en las tablas MDJ / MDK que se seleccionaron al grabar el presupuesto. De esta manera, es necesario realizar este tratamiento en el Punto de entrada también.
No existe devolución de la función.
Debe completarse el array bidimensional Private aNccItens. En cada dimensión debe contener las siguientes informaciones:
[1] - .T. para que la NCC venga seleccionada, .F. para que no venga seleccionada
[2] - Valor de la NCC (E1_SALDO)
[3] - Número de la NCC (E1_NUM)
[4] - Fecha de emisión de la NCC (E1_EMISSAO)
[5] - Número del registro en el (SE1->(Recno())
[6] - Saldo del título (E1_SALDO)
[7] - Símbolo Moneda ( ejemplo : SuperGetMV("MV_MOEDA1") )
[8] - Moneda ( E1_MOEDA )
[9] - Prefijo ( E1_PREFIXO )
[10] -Cuota ( E1_PARCELA )
[11] -Tipo (E1_TIPO)
[12] -Sucursal (E1_FILIAL)
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=Pendiente
cQuery += " E1_SALDO > 0 AND " //Con saldo pendiente
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