[RESOLVIDO] Títulos em Aberto

Discussão em 'EMS , HCM e Totvs 11' iniciado por lhp.s, Março 14, 2011.

Status do Tópico:
Não esta aberto para novas mensagens.
  1. lhp.s

    lhp.s Membro Participativo

    Bom dia senhores.
    Algum de vocês sabe se existe alguma rotina já definida para demontrar o valor do saldo
    de um título, baseado em uma data de corte?
    Eu preciso criar uma API, onde eu informo o recid de um título e uma data, e esta API
    tem que me devolver o Saldo desse titulo naquela data.

    Um grande abaço.
  2. lucimara.silva

    lucimara.silva Sem Pontuação

    Olá, você está usando o módulo do financeiro no EMS2 ou no EMS5?
  3. lhp.s

    lhp.s Membro Participativo

    Oi Lucimara,
    Uso o EMS5
    tks
  4. lucimara.silva

    lucimara.silva Sem Pontuação

    Boa tarde,

    Eu não conheço e também não encontrei nenhuma api que faça o que você está precisando.

    Meu conselho. Rafaça os movimentos para chegar no valor.

    Por exemplo: leia a tabela tit_ap e a partir dela leia a movto_tit_ap.

    Onde estou não tenho base do EMS5, por isto não posso te ajudar muito. Mas veja o exemplo que fiz no EMS2, talvez você consiga fazer alguma coisa, só adaptando o nome das tabelas.

    def var de-vl-saldo like tit-ap.valor-saldo. /* variavel que sera usada para refazer o saldo */
    def var dt-aux as date. /* variavel que recebera a data na qual voce quer refazer o saldo */

    Código:
    FOR EACH tit-ap NO-LOCK:
       ASSIGN de-vl-saldo = tit-ap.valor-saldo. 
      
      find first esp-doc of tit-ap no-lock no-error.
    
      FOR each  mov-ap use-index codigo 
                 where mov-ap.ep-codigo     = tit-ap.ep-codigo
                  and   mov-ap.cod-estabel   = tit-ap.cod-estabel
                  and   mov-ap.cod-esp       = tit-ap.cod-esp
                  and   mov-ap.serie         = tit-ap.serie
                  and   mov-ap.nr-docto      = tit-ap.nr-docto
                  and   mov-ap.parcela       = tit-ap.parcela
                  and   mov-ap.cod-fornec    = tit-ap.cod-fornec
                  and   mov-ap.dt-transacao >= dt-aux no-lock:
             IF mov-ap.lancamento = 1 THEN
                          ASSIGN de-vl-saldo = IF avail esp-doc and (esp-doc.tipo = 2 OR esp-doc.tipo = 3 OR esp-doc.tipo = 5) THEN de-vl-saldo + mov-ap.valor-mov ELSE de-vl-saldo - mov-ap.valor-mov.
             ELSE IF mov-ap.lancamento = 2 THEN
                          ASSIGN de-vl-saldo = IF avail esp-doc and (esp-doc.tipo = 2 OR esp-doc.tipo = 3 OR esp-doc.tipo = 5) THEN de-vl-saldo - mov-ap.valor-mov ELSE de-vl-saldo + mov-ap.valor-mov. 
       end.
    end.
    
    
  5. lhp.s

    lhp.s Membro Participativo

    oi lucimara, obrigado pelas respostas.
    Tive que implementar mesmo, pois nao tinha nenehuma api responsavel., Tive que ler as movimentaçoes do título e ir (-) ou (+) de acordo com tipo de transaçao.
    Estou fazendo testes ainda para ver se bate com relatório padrao do sistema.

    TKS
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página