CE PLUS - Nota 008687

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Liquidação em Andamento

Data/Hora da Publicação: 16/07/2009 00:00:00

Data/Hora Última Alteração: 11/03/2010 11:06:38

Descrição da Nota: LIQUIDAÇÃO EM ANDAMENTO, CONTABILIZAÇÃO

Sintoma

 

Problema na liquidação em andamento, não está contabilizando quando feito parcial e nem estornando

corretamente nenhuma fatura.

 

Solução

 

Ajuste no programa para contabilização da Liquidação em Andamento.

Versões Tratadas

7.0

Informações Complementares

 

----------------------------------------------------------------------------------------------------

Nota Número 08687 Data: 16/07/2009 Hora: 10:09:13

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 08687

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00010

Agrupamento              : 00105

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

----------------------------------------------------------------------------------------------------

LIQUIDAÇÃO EM ANDAMENTO, CONTABILIZAÇÃO

----------------------------------------------------------------------------------------------------

Palavras Chave:

LIQUIDAÇÃO, ANDAMENTO, CONTABILIZAÇÃO PARCIAL E ESTORNO FATURAS

 

----------------------------------------------------------------------------------------------------

Objetos da nota:

REPS /PWS/MZYCB031F01

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCB031F01

 

...

  itab_zycbe033-cpochv = v_cpochv.

  select *

    from /pws/zyglt321

    into table itab_zyglt321

    where

      ktosl   eq 'TRE' and

      codeven eq '023'.

  loop at itab_zyglt321.

    case itab_zyglt321-cpor3.

      when 'SGTXT'.

* >> Início da exclusão: FORM PROC_INCLUSAO

        if itab_zyglt321-cpocb is initial and

* << Fim da exclusão

* >> Início da inclusão: FORM PROC_INCLUSAO

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

           select single nrseq from /pws/zycet001

             into itab_zycbe033-d_sgtxt

            where nrseq = itab_zycbt030-nrinvoic.

           itab_zycbe033-augtx  = itab_zycbe033-d_sgtxt.

        elseif itab_zyglt321-cpocb = 'NRINVOIC'.

          itab_zycbe033-d_sgtxt = itab_zycbt030-nrinvoic.

          itab_zycbe033-augtx   = itab_zycbt030-nrinvoic.

        elseif itab_zyglt321-cpocb is initial and

* << Fim da inclusão

           not itab_zyglt321-descr is initial.

          itab_zycbe033-d_sgtxt = itab_zyglt321-descr.

          itab_zycbe033-augtx   = itab_zyglt321-descr.

        endif.

      when 'XBLNR'.

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

          select single nrseq from /pws/zycet001

            into itab_zycbe033-xblnr

            where nrseq = itab_zycbt030-nrinvoic.

...

 

...

             and codeven = '010'.

  itab_zycbe033-tcode  = 'F-30'.

  itab_zycbe033-tabela = '/PWS/ZYCBT209'.

  concatenate itab_zycbt030-nrinvoic itab_zycbt030-vbeln

              itab_zycbt030-gsberf   itab_zycbt030-nrparcf

         into v_cpochv.

  itab_zycbe033-cpochv = v_cpochv.

  loop at itab_zyglt321.

    case itab_zyglt321-cpor3.

      when 'SGTXT'.

* >> Início da exclusão: FORM DESMEMBRA_CLIENTE

        if itab_zyglt321-cpocb is initial and

* << Fim da exclusão

* >> Início da inclusão: FORM DESMEMBRA_CLIENTE

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

           select single nrseq from /pws/zycet001

             into itab_zycbe033-d_sgtxt

            where nrseq = itab_zycbt030-nrinvoic.

           itab_zycbe033-augtx  = itab_zycbe033-d_sgtxt.

        elseif itab_zyglt321-cpocb = 'NRINVOIC'.

          itab_zycbe033-d_sgtxt = itab_zycbt030-nrinvoic.

          itab_zycbe033-augtx   = itab_zycbt030-nrinvoic.

        elseif itab_zyglt321-cpocb is initial and

* << Fim da inclusão

           not itab_zyglt321-descr is initial.

          itab_zycbe033-d_sgtxt = itab_zyglt321-descr.

          itab_zycbe033-augtx   = itab_zyglt321-descr.

        endif.

      when 'XBLNR'.

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

          select single nrseq from /pws/zycet001

            into itab_zycbe033-xblnr

            where nrseq = itab_zycbt030-nrinvoic.

...

 

...

                                    text-039.

    itab_zycbe033-budat = itab_zycbt209-dtcredext.

    itab_zycbe033-bldat = itab_zycbt209-dtcredext.

  else.

    itab_zycbe033-budat = sy-datum.

    itab_zycbe033-bldat = sy-datum.

  endif.

  loop at itab_zyglt321.

    case itab_zyglt321-cpor3.

      when 'SGTXT'.

* >> Início da exclusão: FORM ESTORNA_AGRUPAMENTO

        if itab_zyglt321-cpocb is initial and

* << Fim da exclusão

* >> Início da inclusão: FORM ESTORNA_AGRUPAMENTO

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

           select single nrseq from /pws/zycet001

             into itab_zycbe033-d_sgtxt

            where nrseq = itab_zycbt030-nrinvoic.

           itab_zycbe033-augtx  = itab_zycbe033-d_sgtxt.

        elseif itab_zyglt321-cpocb = 'NRINVOIC'.

          itab_zycbe033-d_sgtxt = itab_zycbt030-nrinvoic.

          itab_zycbe033-augtx   = itab_zycbt030-nrinvoic.

        elseif itab_zyglt321-cpocb is initial and

* << Fim da inclusão

           not itab_zyglt321-descr is initial.

          itab_zycbe033-d_sgtxt = itab_zyglt321-descr.

          itab_zycbe033-augtx   = itab_zyglt321-descr.

        endif.

      when 'XBLNR'.

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

          select single nrseq from /pws/zycet001

            into itab_zycbe033-xblnr

            where nrseq = itab_zycbt030-nrinvoic.

...

 

...

                                    text-039.

    itab_zycbe033-budat = itab_zycbt209-dtcredext.

    itab_zycbe033-bldat = itab_zycbt209-dtcredext.

  else.

    itab_zycbe033-budat = sy-datum.

    itab_zycbe033-bldat = sy-datum.

  endif.

  loop at itab_zyglt321.

    case itab_zyglt321-cpor3.

      when 'SGTXT'.

* >> Início da exclusão: FORM ESTORNA_SEM_AGRUPAMENTO

        if itab_zyglt321-cpocb is initial and

* << Fim da exclusão

* >> Início da inclusão: FORM ESTORNA_SEM_AGRUPAMENTO

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

           select single nrseq from /pws/zycet001

             into itab_zycbe033-d_sgtxt

            where nrseq = itab_zycbt030-nrinvoic.

           itab_zycbe033-augtx  = itab_zycbe033-d_sgtxt.

        elseif itab_zyglt321-cpocb = 'NRINVOIC'.

          itab_zycbe033-d_sgtxt = itab_zycbt030-nrinvoic.

          itab_zycbe033-augtx   = itab_zycbt030-nrinvoic.

        elseif itab_zyglt321-cpocb is initial and

* << Fim da inclusão

           not itab_zyglt321-descr is initial.

          itab_zycbe033-d_sgtxt = itab_zyglt321-descr.

          itab_zycbe033-augtx   = itab_zyglt321-descr.

        endif.

      when 'XBLNR'.

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

          select single nrseq from /pws/zycet001

            into itab_zycbe033-xblnr

            where nrseq = itab_zycbt030-nrinvoic.

...

 

...

    itab_zycbe033-d_valut = sy-datum.

    itab_zycbe033-c_valut = sy-datum.

  else.

    itab_zycbe033-bldat   = itab_zycbe033-budat.

    itab_zycbe033-d_valut = itab_zycbe033-budat.

    itab_zycbe033-c_valut = itab_zycbe033-budat.

  endif.

  loop at itab_zyglt321.

    case itab_zyglt321-cpor3.

      when 'SGTXT'.

* >> Início da exclusão: FORM CLEARING

        if itab_zyglt321-cpocb is initial and

* << Fim da exclusão

* >> Início da inclusão: FORM CLEARING

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

           select single nrseq from /pws/zycet001

             into itab_zycbe033-d_sgtxt

            where nrseq = itab_zycbt030-nrinvoic.

           itab_zycbe033-augtx  = itab_zycbe033-d_sgtxt.

        elseif itab_zyglt321-cpocb = 'NRINVOIC'.

          itab_zycbe033-d_sgtxt = itab_zycbt030-nrinvoic.

          itab_zycbe033-augtx   = itab_zycbt030-nrinvoic.

        elseif itab_zyglt321-cpocb is initial and

* << Fim da inclusão

           not itab_zyglt321-descr is initial.

          itab_zycbe033-d_sgtxt = itab_zyglt321-descr.

          itab_zycbe033-augtx   = itab_zyglt321-descr.

        endif.

      when 'XBLNR'.

        if itab_zyglt321-cpocb = 'NRSEQ' or

           itab_zyglt321-cpocb = 'NRSEQC'.

          select single nrseq from /pws/zycet001

            into itab_zycbe033-xblnr

            where nrseq = itab_zycbt030-nrinvoic.

...