CE PLUS - Nota 002792

Módulo: CÂMBIO IMPORTAÇÃO

Funcionalidade: Pagamento Antecipado

Data/Hora da Publicação: 02/01/2007 00:00:00

Data/Hora Última Alteração: 04/03/2010 13:13:32

Descrição da Nota: PAGAMENTO ANTECIPADO - ERRO AO GERAR O COMPLEMENTO DE BOLETOS AGRUPADOS

Sintoma

 

Ao gerar o complemento para boletos de pagamentos antecipados agrupados, só estão sendo atualizados

os dados na origem para o primeiro registro do agrupamento.

 

Solução

 

O programa passou a atualizar os dados na origem para todos os pagamentos antecipados do agrupamento

(boleto).

Versões Tratadas

6.0

Informações Complementares

 

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

Nota Número 02792 Data: 02/01/2007 Hora: 08:31:23

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

 

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

Nota Número              : 02792

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00026

Agrupamento              : 00146

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

PAGAMENTO ANTECIPADO - ERRO AO GERAR O COMPLEMENTO DE BOLETOS AGRUPADOS

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

Palavras Chave:

COMPLEMENTO BOLETO PAGAMENTO ANTECIPADO AGRUPAR /PWS/ZYCBT117

 

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

Objetos da nota:

REPS /PWS/MZYCM110F01

REPS /PWS/MZYGL110F01

 

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

Modificações efetuadas em REPS /PWS/MZYCM110F01

 

...

          MESSAGE i057 WITH itab_zycbt032-belnr.

        ELSE.

          MESSAGE i223 WITH itab_zycbt032-belnr.

        ENDIF.

        wa_zycbt117-statusp = 'P'.

        /pws/zycbe031-statusp    = 'P'.

        wa_zycbt117-belnr_p  = itab_zycbt032-belnr.

        /pws/zycbe031-belnr_p     = itab_zycbt032-belnr.

        wa_zycbt117-dtpagto = /pws/zycbe031-dtcredpr.

        itab_zycbt031-v_process = 'X'.

* >> Início da inclusão: FORM FILL_DATE_F-63_IA

        LOOP AT itab_zycbt064

          WHERE

            nrboleto = /pws/zycbe031-nrseq AND

            dtboleto = /pws/zycbe031-dtboleto.

          MODIFY itab_zycbt117 FROM wa_zycbt117

            TRANSPORTING statusp belnr_p dtpagto

            WHERE nrseq = itab_zycbt064-nrchave.

        ENDLOOP.

        MODIFY /pws/zycbt117 FROM TABLE itab_zycbt117.

* << Fim da inclusão

        MODIFY itab_zycbt031 TRANSPORTING v_process

                             WHERE nrseq    EQ /pws/zycbe031-nrseq

                               AND dtboleto EQ /pws/zycbe031-dtboleto.

* >> Início da exclusão: FORM FILL_DATE_F-63_IA

        MODIFY /pws/zycbt117 FROM wa_zycbt117.

* << Fim da exclusão

        MODIFY /pws/zycbt031 FROM /pws/zycbe031.

        SELECT * FROM /pws/zycbt133

        INTO TABLE itab_zycbt133

        WHERE bukrs = /pws/zycbe031-bukrs.

...

 

...

          itab_zycbt113-dtinicio  TO itab_boleto-dtincl,

          'I'                     TO itab_boleto-frof,

          'IF'                    TO itab_boleto-fmd,

          v_bcofinan              TO itab_boleto-lifnr,

          'S'                     TO itab_boleto-fcamb.

    APPEND itab_boleto.

  ENDLOOP.

  CLEAR: v_tipo2, v_taxa_dia, itab_zycbt113, /pws/zycbt112, itab_boleto.

ENDFORM.

FORM selecionar_ia.

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

  DATA:

    itab_nrseq TYPE SORTED TABLE OF /pws/zycbt117-nrseq

      WITH UNIQUE KEY table_line,

    v_nrseq LIKE LINE OF itab_nrseq.

  FIELD-SYMBOLS:

    <fs_zycbt064> LIKE LINE OF itab_zycbt064.

* << Fim da inclusão

  SELECT  * FROM  /pws/zycbt117 UP TO 1 ROWS

    INTO  wa_zycbt117

    WHERE nrseq EQ /pws/zycbe031-nrcorresp.

  ENDSELECT.

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

  IF itab_zycbt117[] IS INITIAL.

    LOOP AT itab_zycbt064

      ASSIGNING <fs_zycbt064>

      WHERE

        nrboleto = /pws/zycbe031-nrseq AND

        dtboleto = /pws/zycbe031-dtboleto.

      v_nrseq = <fs_zycbt064>-nrchave.

      READ TABLE itab_nrseq

        WITH KEY table_line = v_nrseq

        TRANSPORTING NO FIELDS.

      IF sy-subrc <> 0.

        INSERT v_nrseq INTO TABLE itab_nrseq.

      ENDIF.

    ENDLOOP.

    IF NOT itab_nrseq IS INITIAL.

      SELECT *

        FROM /pws/zycbt117

        INTO TABLE itab_zycbt117

        FOR ALL ENTRIES IN itab_nrseq

        WHERE

          nrseq = itab_nrseq-table_line.

    ENDIF.

  ENDIF.

* << Fim da inclusão

ENDFORM.

FORM selecionar_id.

  CLEAR wa_zycbt118.

  SELECT SINGLE * FROM  /pws/zycbt118

                  INTO  wa_zycbt118

                  WHERE nrseq  EQ /pws/zycbe031-nrcorresp

                    AND codmod EQ 'I'

                    AND codmodul EQ /pws/zycbe031-codmodul.

ENDFORM.

FORM selecionar_if.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL110F01

 

...

                  wa_zycbt108-slfat + itab_zycbt064-vlme.

              ENDIF.

              MODIFY /pws/zycbt119 FROM wa_zycbt119.

              MODIFY /pws/zycbt108 FROM wa_zycbt108.

            ENDLOOP.

          ENDIF.

        WHEN 'IA'.

          wa_zycbt117-statusp = 'I'.

          CLEAR: wa_zycbt117-belnr_p,

                 wa_zycbt117-dtpagto.

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

          MODIFY /pws/zycbt117 FROM wa_zycbt117.

* << Fim da exclusão

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

          LOOP AT itab_zycbt064

            WHERE

              nrboleto = /pws/zycbe031-nrseq AND

              dtboleto = /pws/zycbe031-dtboleto.

            MODIFY itab_zycbt117 FROM wa_zycbt117

              TRANSPORTING statusp belnr_p dtpagto

              WHERE nrseq = itab_zycbt064-nrchave.

          ENDLOOP.

          MODIFY /pws/zycbt117 FROM TABLE itab_zycbt117.

* << Fim da inclusão

        WHEN 'IF'.

          CLEAR itab_zycbt064.

          REFRESH itab_zycbt064.

          SELECT *

                 FROM /pws/zycbt064

                 INTO TABLE itab_zycbt064

                 WHERE nrboleto EQ /pws/zycbe031-nrseq AND

                       dtboleto EQ /pws/zycbe031-dtboleto.

          LOOP AT itab_zycbt064.

            CLEAR wa_zycbt113.

...