01. VISIÓN GENERAL

Devuelve el saldo del título por pagar o cobrar en una fecha retroactiva. Función de uso interno.


Descuentos

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().

Títulos compensados en otras sucursales

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).

Storage Procedure

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).


02. PARÁMETROS UTILIZADOS


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)
1 = Fecha de disponibilidad (E5_DTDISPO)
2 = Fecha de contabilización (E5_DTDIGIT)

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

03. EJEMPLO DE UTILIZACIÓN

Ejemplo
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.


04. MÁS INFORMACIONES

Stored procedures - Nuevo administrador de paquetes