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