[RESOLVIDO] Saldo Apres no APB205

Discussão em 'EMS , HCM e Totvs 11' iniciado por marcelor, Abril 28, 2014.

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

    marcelor Sem Pontuação

    Bom dia. Ao gerar um relatório após uma consulta no APB205 (Consulta Títulos em Aberto do Contas a Pagar), não consegui identificar a coluna Saldo Apres, onde as demais situam-se na tabela TIT-AP. Gostaria de saber onde encontrar essa coluna para fins de customização de relatórios. Desde já agradeço a todos!
  2. Cobra.cne

    Cobra.cne Equipe de Suporte Moderador

    Olá @marcelor ,

    O saldo padrão vem da coluna tit_ap.val_sdo_tit_ap, porém quando é titulo de previsão, provisão ou antecipação tem algumas regras para abater o valor, a algum tempo eu utilizei esta lógica, da uma olhada se ajuda e ainda esta funcionando:

    Código:
            DEFINE VARIABLE da_val_sdo_tit_ap AS DECIMAL     NO-UNDO.
               
            /* Localizar título */
            FIND FIRST tit_ap NO-LOCK NO-ERROR.
                  
            /* Pegar saldo original */
            ASSIGN da_val_sdo_tit_ap = tit_ap.val_sdo_tit_ap.
    
            CASE tit_ap.ind_tip_espec_docto:
                WHEN "Previsão" OR WHEN "Provisão" then do:
                    calcula_saldo:
                    for each abat_prev_provis_ap no-lock
                      where abat_prev_provis_ap.cdn_fornecedor  = tit_ap.cdn_fornecedor
                        and abat_prev_provis_ap.cod_espec_docto = tit_ap.cod_espec_docto
                        and abat_prev_provis_ap.cod_estab       = tit_ap.cod_estab
                        and abat_prev_provis_ap.cod_parcela     = tit_ap.cod_parcela
                        and abat_prev_provis_ap.cod_ser_docto   = tit_ap.cod_ser_docto
                        and abat_prev_provis_ap.cod_tit_ap      = tit_ap.cod_tit_ap :
                         if  abat_prev_provis_ap.ind_tip_refer = "Baixa"  then do:
                             find item_lote_pagto no-lock
                                  where item_lote_pagto.cod_estab_refer = abat_prev_provis_ap.cod_estab_refer
                                    and item_lote_pagto.cod_refer       = abat_prev_provis_ap.cod_refer
                                    and item_lote_pagto.num_seq_refer   = abat_prev_provis_ap.num_seq_refer
                                   no-error.
                             if  avail item_lote_pagto and
                                 item_lote_pagto.ind_sit_item_lote_bxa_ap <> "Estornado" and
                                 item_lote_pagto.ind_sit_item_lote_bxa_ap <> "Baixado"   then do:
                                 assign da_val_sdo_tit_ap = da_val_sdo_tit_ap - abat_prev_provis_ap.val_abtdo_prev_orig.
                             end.
                         end. /* if  abat_prev_provis_ap.ind_tip_refer = "Baixa" */
                         ELSE
                             assign da_val_sdo_tit_ap = da_val_sdo_tit_ap - abat_prev_provis_ap.val_abtdo_prev_orig.
                        
                     end /* for calcula_saldo */.
                 end. /* WHEN "Previsão" OR WHEN "Provisão" */
    
                 WHEN "Antecipação" THEN DO:
                     calcula_saldo:
                     for each abat_antecip_vouch no-lock
                        where abat_antecip_vouch.cod_estab       = tit_ap.cod_estab
                          and abat_antecip_vouch.cod_espec_docto = tit_ap.cod_espec_docto
                          and abat_antecip_vouch.cod_ser_docto   = tit_ap.cod_ser_docto
                          and abat_antecip_vouch.cdn_fornecedor  = tit_ap.cdn_fornecedor
                          and abat_antecip_vouch.cod_tit_ap      = tit_ap.cod_tit_ap
                          and abat_antecip_vouch.cod_parcela     = tit_ap.cod_parcela
                          and abat_antecip_vouch.log_abat_atlzdo = no:
                         if  abat_antecip_vouch.ind_tip_refer = "Baixa"  then do:
                             find item_lote_pagto no-lock
                                  where item_lote_pagto.cod_estab_refer = abat_antecip_vouch.cod_estab_refer
                                    and item_lote_pagto.cod_refer       = abat_antecip_vouch.cod_refer
                                    and item_lote_pagto.num_seq_refer   = abat_antecip_vouch.num_seq_refer
                                   no-error.
                             if  avail item_lote_pagto and
                                 item_lote_pagto.ind_sit_item_lote_bxa_ap <> "Estornado"  and
                                 item_lote_pagto.ind_sit_item_lote_bxa_ap <> "Baixado"  THEN
                                assign da_val_sdo_tit_ap = da_val_sdo_tit_ap - abat_antecip_vouch.val_abtdo_antecip_orig.
                         end. /* abat_antecip_vouch.ind_tip_refer = "Baixa" */
                         else
                             assign da_val_sdo_tit_ap = da_val_sdo_tit_ap - abat_antecip_vouch.val_abtdo_antecip_orig.
                     end. /* calcula_saldo */
                 end. /* WHEN "Antecipação" */
    
            END CASE.
    
    Abs.
Status do Tópico:
Não esta aberto para novas mensagens.

Compartilhe esta Página