CE PLUS - Nota 002566

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.

 

Versões Tratadas

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

...