Módulo: CÂMBIO EXPORTAÇÃO
Funcionalidade: Liquidação de Fatura
Data/Hora da Publicação: 01/12/2006 00:00:00
Data/Hora Última Alteração: 18/02/2011 15:44:50
Descrição da Nota: LIQUIDAÇÃO - ATUALIZAÇÃO DO SALDO - EXIT ATIVA
Sintoma
Ao efetuar a liquidação de 3 faturas, onde ocorra erro em alguma delas e a exit /PWS/A26 esteja
ativa, o saldo da tabela /PWS/ZYCBT005 não esta sendo atualizado corretamente, ficando em dobro
quando estornado.
Solução
Ao efetuar a atualização do saldo da tabela /PWS/ZYCBT005, quando a exit /PWS/A26 esta ativa,
verificar se o campo /pws/zycbt006-status esta igual a C, que indica liquidação ok. Antes de iniciar
a verificação da fatura, limpar a variável v_slpagar, para não ficar com sujeira.
6.0
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 02566 Data: 01/12/2006 Hora: 10:28:04
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 02566
Categoria : Erro de Programa
Prioridade : Média
Versão PW.CE : 6.0
Pacote : 00025
Agrupamento : 00142
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Descrição Breve
----------------------------------------------------------------------------------------------------
LIQUIDAÇÃO - ATUALIZAÇÃO DO SALDO - EXIT ATIVA
----------------------------------------------------------------------------------------------------
Palavras Chave:
LIQUIDAÇÃO ATUALIZAÇÃO DO SALDO TABELA /PWS/ZYCBT005 EXIT /PWS/A26 ATIVA
/PWS/ZYCBT005-SLPAGAR
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCB004F02
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCB004F02
...
DATA: wa_zycbt006_sbu LIKE /pws/zycbt006,
v_slpagar001 TYPE /pws/zycbt001-slpagar.
itab_zycbt005-status = 'C'.
MODIFY itab_zycbt005 TRANSPORTING status
WHERE nrseqc = /pws/zycbe005-nrseqc.
MODIFY /pws/zycbt005 FROM TABLE itab_zycbt005.
CALL CUSTOMER-FUNCTION '002'
IMPORTING
v_subrc = v_subrc.
LOOP AT itab_zycbt006.
* >> Início da inclusão: FORM ATUALIZA_TABELAS_TRANSP2
CLEAR v_slpagar.
* << Fim da inclusão
IF itab_zycbt006-status EQ '1' AND
itab_zycbt006-v_status EQ 'E'.
MESSAGE i061 WITH text-155 itab_zycbt006-nrinvoic
text-162 text-163.
CONTINUE.
ENDIF.
IF itab_zycbt006-v_status EQ 'E' OR
( itab_zycbt006-v_status EQ 'A' AND
itab_zycbt006-status EQ 'E' ).
CHECK itab_zycbt006-status IS INITIAL OR
...
...
IF NOT itab_zycbt006-belnr_d IS INITIAL.
UPDATE /pws/zycbt005 SET belnr = itab_zycbt006-belnr_d
dtbelnr = itab_zycbt006-dtpagto
WHERE nrseqc = itab_zycbt006-nrseqc
AND nrinvoic = itab_zycbt006-nrinvoic
AND dtvincul = itab_zycbt006-dtvincul
AND nrparcf = itab_zycbt006-nrparcf
AND gsberf = itab_zycbt006-gsberf.
ELSE.
IF v_liquida EQ 'X'.
* >> Início da inclusão: FORM ATUALIZA_TABELAS_TRANSP2
IF itab_zycbt006-status = 'C'.
* << Fim da inclusão
v_slpagar = itab_zycbt005-slpagar + ( itab_zycbt006-vlme *
itab_zycbt005-parid ).
* >> Início da inclusão: FORM ATUALIZA_TABELAS_TRANSP2
ENDIF.
* << Fim da inclusão
READ TABLE /pws/zycbt005.
UPDATE /pws/zycbt005 SET slpagar = v_slpagar
WHERE nrseqc = itab_zycbt006-nrseqc
AND nrinvoic = itab_zycbt006-nrinvoic
AND dtvincul = itab_zycbt006-dtvincul
...