CE PLUS - Nota 000403

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Liquidação de Fatura

Data/Hora da Publicação: 06/12/2005 00:00:00

Data/Hora Última Alteração: 18/02/2011 14:53:51

Descrição da Nota: LIQUIDAÇÃO COM SEQUEÊNCIAS IGUAIS MAS COM DIVISÕES DIFERENTES

Sintoma

Ao tentar liquidar duas faturas com sequenciais iguais mas divisões diferentes o programa não

permite que eu liquide as duas faturas ao mesmo tempo porque mostra a mensagem de que não existem

vinculações na data e na primeira liquidação não ocorrem erros na segunda o programa não encontra a

partida em aberto .

 

 

 

Solução

Foi incluída o campo divisão nas seleções das tabelas.

 

Versões Tratadas

6.0

Informações Complementares

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

Nota Número 00403 Data: 06/12/2005 Hora: 11:22:40

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

 

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

Nota Número              : 00403

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00022

Agrupamento              : 00093

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

LIQUIDAÇÃO COM SEQUEÊNCIAS IGUAIS MAS COM DIVISÕES DIFERENTES

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

Palavras Chave:

DIVISÃO LIQUIDAÇÃO

 

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

Objetos da nota:

REPS /PWS/MZYCB004F02

REPS /PWS/MZYCB004I01

 

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

Modificações efetuadas em REPS /PWS/MZYCB004F02

 

FORM ATUALIZA_TABELAS_TRANSP2

 

 

...

 

    IF   itab_zycbt006-v_status EQ 'E' OR

       ( itab_zycbt006-v_status EQ 'A' AND

         itab_zycbt006-status   EQ 'E' ).

 

...

 

    ELSE.

*     Se for inclusão ou alteração

      IF itab_zycbt006-v_status = 'N'.

*       pws7877980 - Início

        v_slpagar = itab_zycbt005-slpagar +

                    ( itab_zycbt006-v_vldif * itab_zycbt005-parid ).

*       pws7877980 - Fim

        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

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

                            AND nrparcf  = itab_zycbt006-nrparcf.

* << Fim da exclusão

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

                            AND nrparcf  = itab_zycbt006-nrparcf

                            AND gsberf   = itab_zycbt006-gsberf.

* << Fim da inclusão

        UPDATE /pws/zycbt006 SET vljur    = itab_zycbt006-vljur

                                 txjtotal = itab_zycbt006-txjtotal

                           WHERE nrseqc   = itab_zycbt006-nrseqc

                             AND tpdesp   = itab_zycbt006-tpdesp

                             AND nrparc   = itab_zycbt006-nrparc

...

 

...

        CONTINUE.

      ENDIF.

      MOVE-CORRESPONDING itab_zycbt006 TO /pws/zycbt006.

      READ TABLE itab_zycbt005 WITH KEY nrseqc = itab_zycbt006-nrseqc

                                      nrinvoic = itab_zycbt006-nrinvoic

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

                                      nrparcf  = itab_zycbt006-nrparcf.

* << Fim da exclusão

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

                                      nrparcf  = itab_zycbt006-nrparcf

                                      gsberf   = itab_zycbt006-gsberf.

* << Fim da inclusão

      MOVE itab_zycbt005-waers TO /pws/zycbt006-waers.

      itab_zycbt006-v_vlmeant = itab_zycbt006-vlme.

      IF wa_zycbt007-cfm = 'X'.

        SELECT SINGLE *

               FROM /pws/zycbt006

...

 

...

          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

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

                         AND nrparcf  = itab_zycbt006-nrparcf.

* << Fim da exclusão

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

                         AND nrparcf  = itab_zycbt006-nrparcf

                         AND gsberf  = itab_zycbt006-gsberf.

* << Fim da inclusão

        ELSE.

          IF v_liquida EQ 'X'.

            v_slpagar = itab_zycbt005-slpagar + ( itab_zycbt006-vlme *

                                                  itab_zycbt005-parid ).

            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

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

                                AND nrparcf  = itab_zycbt006-nrparcf.

* << Fim da exclusão

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

                                AND nrparcf  = itab_zycbt006-nrparcf

                               AND gsberf  = itab_zycbt006-gsberf.

* << Fim da inclusão

          ENDIF.

        ENDIF.

      ENDIF.

      LOOP AT itab_zycbt069 WHERE nrseqc   = itab_zycbt006-nrseqc

                              AND nrinvoic = itab_zycbt006-nrinvoic

...

 

...

    PERFORM seleciona_desconto.

  ENDIF.

 

...

 

ENDFORM.                    " atualiza_tabelas_transp2

 

 

 

FORM LANCAMENTO_PROVISAO2

 

  DATA: v_docto LIKE /pws/zycbt030-belnr,

        v_subrc LIKE sy-subrc,

        v_linha TYPE i,

        v_index TYPE i,

        v_belnr TYPE belnr_d,

        v_slliq LIKE /pws/zycbt006-vlme.

 

* Ana Paula - Chamado 163462 - 21/07/2004 - Início

  IF /pws/zycbe001-desc_receb EQ 'X'.

    PERFORM seleciona_desconto.

  ENDIF.

 

 

  LOOP AT itab_zycbt006 WHERE v_status EQ 'I' AND

                              v_armda  NE 'X' AND

                              v_performance NE 'X'.

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

    LOOP AT itab_zycbt030 WHERE nrinvoic = itab_zycbt006-nrinvoic.

* << Fim da exclusão

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

    LOOP AT itab_zycbt030 WHERE nrinvoic = itab_zycbt006-nrinvoic

                          AND   gsberf   = itab_zycbt006-gsberf.

* << Fim da inclusão

      PERFORM valida_taxa_parametro.

      IF itab_zycbt030-belnr EQ space.

        v_subrc = 4.

        EXIT.

      ENDIF.

...

 

 

ENDFORM.                    " lancamento_provisao2

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB004I01

 

MODULE verifica_liquidacao INPUT.

 

  CLEAR v_existe_liq.

* Só faz check se for inclusão

  CHECK v_status_s NE '0' AND

        sy-tcode   EQ c_transacao_c.

* Verifica se já existe Liquidação da Fatura para este contrato nesta

* data.

  LOOP AT itab_zycbt005.

    SELECT SINGLE nrseqc nrinvoic nrparcf tpdesp dtvincul dtpagto

      INTO (/pws/zycbt006-nrseqc, /pws/zycbt006-nrinvoic,

            /pws/zycbt006-nrparcf, /pws/zycbt006-tpdesp,

            /pws/zycbt006-dtvincul, /pws/zycbt006-dtpagto)

      FROM /pws/zycbt006

      WHERE nrseqc   = v_nrseqc

        AND nrinvoic = itab_zycbt005-nrinvoic

        AND nrparcf  = itab_zycbt005-nrparcf

* >> Início da inclusão: MODULE VERIFICA_LIQUIDACAO

        AND gsberf   = itab_zycbt005-gsberf

* << Fim da inclusão

        AND dtvincul = /pws/zycbe005-dtvincul

        AND dtpagto  = v_dtpagto

        AND tpdesp   = ' '.

    IF sy-subrc EQ 0.

      v_existe_liq = 'X'.

...

 

  ENDLOOP.

ENDMODULE.                 " verifica_liquidacao  INPUT