Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Índice

01. VISÃO GERAL

Retorna o saldo do título a pagar ou receber em uma data retroativa. Função de uso interno que retorna o saldo do título em data retroativa..


Informações
titleAbatimentos

A função SaldoTit() não retorna o valor considerando os abatimentos("AB-", "FB-", "FC-", "IR-", "IN-", "IS-", "PI-", "CF-", "CS-", "FU-" ,"FE-", entre outros).

O valor dos abatimentos do título pode ser calculado utilizando a função SomaAbat().

Informações
titleTítulos compensados em outras filiais

Essa função não consideramovimentações originadas de compensações realizadas em outras filiais para a recomposição do saldo do título.

Nesse caso, é necessário chamar a função complementar FRVlCompFil() para chegar no saldo correto (vide o código de exemplo mais abaixo).

Informações
titleStorage Procedure

Se o ambiente possui a storage procedure 10 instalada, a mesma será utilizada para o cálculo do saldo do título. Caso contrário, será utilizada uma função ADVPL interna do sistema (xSaldoTit).

Image Modified

A função retorna o saldo do título em data retroativa, desconsiderando movimentações originadas de compensações realizadas em outras filiais.

Nesse caso, é necessário chamar a função complementar FRVlCompFil() para chegar no saldo correto.


02. PARÂMETROS DE UTILIZAÇÃO

...

03. EXEMPLO DE UTILIZAÇÃO

Bloco de código
languagedelphijs
themeMidnight
firstline1
titleExemplo
linenumberstrue
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.

...