Devuelve el saldo del título por pagar o cobrar en una fecha retroactiva. Función de uso interno.
La función SaldoTit() no devuelve el valor considerando los descuentos("AB-", "FB-", "FC-", "IR-", "IN-", "IS-", "PI-", "CF-", "CS-", "FU-" ,"FE-", entre otros). El valor de los descuentos del título se puede calcular utilizando la funciónSomaAbat(). |
Esta función no considera movimientos originadas de compensaciones realizadas en otras sucursales para la re-composición de saldo del título. En este caso, es necesario llamar la función complementaria FRVlCompFil() para llegar al saldo correcto (vea el siguiente código de ejemplo). |
Si el entorno tiene la storage procedure 10 instalada, esta se utilizará para calcular el saldo del título. En caso contrario, se utilizará una función ADVPL interna del sistema (xSaldoTit).
|
Situación | Argumento | Descripción |
1 | cPrefixo | Prefijo del título |
2 | cNumero | Número del título |
3 | cParcela | Cuota del título |
4 | cTipo | Tipo del título |
5 | cNatureza | Naturaleza del título |
6 | cCart | Cartera (C = Cobrar, P = Pagar) |
7 | cCliFor | Código del cliente o del proveedor (según posición 6) |
8 | nMoeda | Moneda en que el saldo se devolverá |
9 | dData | Fecha para conversión de moneda |
10 | dDataBaixa | Fecha retroactiva que se considerará |
11 | cLoja | Tienda del proveedor o cliente del título |
12 | cFilTit | Sucursal del título |
13 | nTxMoeda | Tasa de la moneda |
14 | nTipoData | Tipo de fecha que se considerará 0 =Fecha de la baja (E5_DATA) (Default) |
15 | lFinR | Define si utilizará conceptos del FINR350 |
16 | __oTBxCanc | Objeto FWPrepareStatement que se puede reutilizar. Enviar objeto no instanciado en la primera llamada y reutilizar el objeto para mejorar el rendimiento. |
17 | lIsTxContr | Define si la tasa es tasa contratada |
18 | lCmpMulFil | Uso interno |
user function tstSaldo()
local cFilTit as character
local cFilOrig as character
local cPrefixo as character
local cNum as character
local cParcela as character
local cTipo as character
local cNatureza as character
local cCliente as character
local cLoja as character
local nSaldo as numeric
local cCart as character
local dDtRetro as date
local nTipoData as numeric
local lFinR as logical
local lNovoCalc as logical
local nMoeda as numeric
local nMoedaTit as numeric
cFilTit := 'D RJ 01 '
cPrefixo := 'FIN'
cNum := 'FIN001023'
cParcela := '1'
cTipo := 'NF '
cCart := 'R'
dDtRetro := CtoD('19/03/2020')
nTipoData := 0
lFinR := .F.
lNovoCalc := .T.
SE1->(DbSetOrder(1))//E1_FILIAL+E1_PREFIXO+E1_NUM+E1_PARCELA+E1_TIPO
if !SE1->(dbSeek(xfilial('SE1') + cPrefixo + cNum + cParcela + cTipo))
return .F.
endIf
cCliente := SE1->E1_CLIENTE
cLoja := SE1->E1_LOJA
cNatureza := SE1->E1_NATUREZ
cFilOrig := SE1->E1_FILORIG
nMoeda := nMoedaTit := SE1->E1_MOEDA
nSaldo := SaldoTit(cPrefixo, cNum, cParcela, cTipo, cNatureza, cCart, cCliente, nMoeda, ;
dDtRetro, dDtRetro, cLoja, cFilTit, /*nTxMoeda*/, nTipoData, lFinR, /*__oTBxCanc*/, /*lIsTxContr*/, /*lCmpMulFil*/)
dDataBase := dDtRetro
nSaldo -= FRVlCompFil(cCart, cPrefixo, cNum, cParcela, cTipo, cCliente, cLoja, nTipoData, ;
/*aFilBaixa*/, /*cFilQry*/, /*lAS400*/, /*nMoeda*/, /*nMoedaTit*/, /*nTxMoeda*/, /*dDataTx*/, lNovoCalc)
dDataBase := date()
conOut("Saldo = " + cValToChar(nSaldo))
return .T. |
Stored procedures - Nuevo administrador de paquetes