CE PLUS - Nota 000644

Módulo: DRAWBACK

Funcionalidade: Ato Concessório

Data/Hora da Publicação: 12/01/2006 00:00:00

Data/Hora Última Alteração: 17/02/2011 12:57:32

Descrição da Nota: AJUSTE NO ATO CONCESSÓRIO PARA TRAZER A DATA DA DI DA /PWS/ZYCIT279.

Sintoma

Quando é utilizado o modulo de importação o ato concessório busca a data

da primeira DI da tabela /pws/zycit085, causando erro no caso de uma

carga de dados da tabela /pws/zycit279.

 

 

Solução

Ajustar programa para que independente da parametrização de utilização

do modulo de importação busque a data na tabela /pws/zycit279.

 

Versões Tratadas

6.0

Informações Complementares

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

Nota Número 00644 Data: 12/01/2006 Hora: 10:07:37

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

 

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

Nota Número              : 00644

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00022

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

Texto Rápido:

AJUSTE NO ATO CONCESSÓRIO PARA TRAZER A DATA DA DI DA /PWS/ZYCIT279.

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

Palavras Chave:

DATA - DI - ATO CONCESSÓRIO - /PWS/ZYCIT279

/PWS/SAPMZYCI040

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

Objetos da nota:

REPS /PWS/MZYCI040F02

 

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

Modificações efetuadas em REPS /PWS/MZYCI040F02

 

...

      IF sy-subrc NE 0.

        MESSAGE i015 WITH text-291 /pws/zycie244-bukrs.

        LEAVE PROGRAM.

      ENDIF.

    ENDIF.

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

    IF /pws/zycit321-ut_imp EQ 'X'.

      IF /pws/zycie244-dtdi IS INITIAL.

        SELECT * FROM /pws/zycit078 INTO TABLE itab_zycit078

          WHERE nrseqd EQ /pws/zycie244-nrseqd.

        IF sy-subrc EQ 0.

          SELECT a~dtreg

            FROM ( /pws/zycit085 AS a INNER JOIN /pws/zycit100 AS b

                 ON a~nrseqdi EQ b~nrseqdi )

                 INTO TABLE itab_data_di

                 FOR ALL ENTRIES IN itab_zycit078

                   WHERE b~nrseq EQ itab_zycit078-nrseq

                     AND a~dtreg > 0.

          IF sy-subrc EQ 0.

            SORT itab_data_di BY data.

            READ TABLE itab_data_di INDEX 1.

            /pws/zycie244-dtdi = itab_data_di-data.

            /pws/zycie244-vcto_fn = /pws/zycie244-dtdi + 731.

            IF /pws/zycie244-vcto_vg IS INITIAL.

              /pws/zycie244-vcto_vg = /pws/zycie244-vcto_fn.

              itab_vencto2-vencto = /pws/zycie244-vcto_fn.

              APPEND itab_vencto2.

            ENDIF.

            UPDATE /pws/zycit244 SET dtdi    = /pws/zycie244-dtdi

                                     vcto_fn = /pws/zycie244-vcto_fn

                WHERE nrseqd EQ /pws/zycie244-nrseqd.

          ELSE.

            LOOP AT itab_zycit078.

              SELECT SINGLE a~nrseqdi

                FROM ( /pws/zycit085 AS a INNER JOIN /pws/zycit100 AS b

                     ON a~nrseqdi EQ b~nrseqdi )

                     INTO /pws/zycie085-nrseqdi

                       WHERE b~nrseq EQ itab_zycit078-nrseq.

              IF sy-subrc EQ 0.

              MESSAGE i015 WITH text-265 /pws/zycie085-nrseqdi text-266.

              ENDIF.

            ENDLOOP.

          ENDIF.

        ENDIF.

      ENDIF.

    ENDIF.

* << Fim da exclusão

    IF NOT /pws/zycie244-vcto_fn IS INITIAL.

      IF /pws/zycie244-vcto_fn <= sy-datum.

        IF /pws/zycie244-fechado IS INITIAL.

          MESSAGE i015 WITH text-244.

        ENDIF.

...

 

...

  ENDIF.

  FREE itab_zycit279_ap_aux.

  SELECT * FROM /pws/zycit282 INTO TABLE itab_zycit282_ap

      WHERE nrseqd EQ /pws/zycie244-nrseqd.

  LOOP AT itab_zycit279_ap.

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

    IF /pws/zycit321-ut_imp EQ 'X'.

      IF itab_zycit279_ap-nrseqdi IS INITIAL.

        READ TABLE itab_zycit100 WITH KEY

                    nrseq = itab_zycit279_ap-nrseq

                    ebeln = itab_zycit279_ap-ebeln

                    ebelp = itab_zycit279_ap-ebelp.

        READ TABLE itab_zycit085 WITH KEY

                    nrseqdi = itab_zycit100-nrseqdi.

        itab_zycit279_ap-nrseqdi  = itab_zycit085-nrseqdi.

        itab_zycit279_ap-dtdi  = itab_zycit085-dtreg  .

        itab_zycit279_ap-nrdi     = itab_zycit085-nrdi   .

        itab_zycit279_ap-adicao = itab_zycit100-adicao .

      ENDIF.

    ELSE.

* << Fim da exclusão

      MOVE itab_zycit279_ap-dtdi TO itab_data_di-data.

      APPEND itab_data_di.

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

    ENDIF.

* << Fim da exclusão

    CLEAR: itab_zycit279_ap-qtd_perda, itab_zycit279_ap-qtd_perda_e.

    LOOP AT itab_zycit282_ap

            WHERE nrseqimp EQ itab_zycit279_ap-nrseq

              AND ebeln    EQ itab_zycit279_ap-ebeln

              AND ebelp    EQ itab_zycit279_ap-ebelp.

...

 

...

    ENDLOOP.

    itab_zycit279_ap-perda = ( itab_zycit279_ap-qtd_perda /

                                itab_zycit279_ap-menge ) * 100.

    MODIFY itab_zycit279_ap.

  ENDLOOP.

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

  IF NOT itab_data_di[] IS INITIAL.

* << Fim da inclusão

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

  IF /pws/zycit321-ut_imp NE 'X'

    AND NOT itab_data_di[] IS INITIAL.

* << Fim da exclusão

    SORT itab_data_di BY data.

    READ TABLE itab_data_di INDEX 1.

    /pws/zycie244-dtdi = itab_data_di-data.

    /pws/zycie244-vcto_fn = /pws/zycie244-dtdi + 731.

    IF /pws/zycie244-vcto_vg IS INITIAL.

...