CE PLUS - Nota 007873

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 07/01/2009 00:00:00

Data/Hora Última Alteração: 03/03/2011 15:41:52

Descrição da Nota: AJUSTE DE PREFORMANCE. DUMP DETALHE DO ITEM, DI COM MAIS DE 999 ITENS

Sintoma

Em processos com mais de 999 itens ocorre dump na tela do detalhe do item.

 

 

Solução

Alterada definição do campo que informa quantidade de itens e o item que está sendo exibido para

tamanho 4.

Realizado ajustes para melhoria de performance.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

AJUSTES NOS CÁLCULOS DE IMPOSTOS QUANDO A DI É GRANEL

NECESSÁRIA EXIT PARA CÁLCULOS DA DI.

CÁLCULO DAS ALÍQUOTAS PARA PROCESSO DE ADMISSÃO TEMPORÁRIA

AO VISUALIZAR RELATÓRIO DE RATEIO, DESPESA ANTIDUMP ESTÁ INCORRETA.

REGIME TRIBUTARIO ICMS MG DRAWBACK GENÉRICO

AJUSTES PARA PREENCHIMENTO DE CAMPOS AO FAZER DI PELO MENU.

Informações Complementares

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

Nota Número 07873 Data: 07/01/2009 Hora: 16:51:50

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

 

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

Nota Número              : 07873

Categoria                : Erro de Programa

Prioridade               : Baixa

Versão PW.CE             : 7.0

Pacote                   : 00008

Agrupamento              : 00080

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

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote - Descrição Breve

 

01273  - 00001 - 6.0    - 00023  - AJUSTES PARA PREENCHIMENTO DE CAMPOS AO FAZER DI PELO MENU.

07074  - 00002 - 7.0    - 00006  - NECESSÁRIA EXIT PARA CÁLCULOS DA DI.

07299  - 00003 - 7.0    - 00006  - AJUSTES NOS CÁLCULOS DE IMPOSTOS QUANDO A DI É GRANEL

07456  - 00004 - 7.0    - 00007  - AO VISUALIZAR RELATÓRIO DE RATEIO, DESPESA ANTIDUMP ESTÁ INCORRET

07466  - 00005 - 7.0    - 00007  - CÁLCULO DAS ALÍQUOTAS PARA PROCESSO DE ADMISSÃO TEMPORÁRIA

07824  - 00006 - 7.0    - 00008  - REGIME TRIBUTARIO ICMS MG DRAWBACK GENÉRICO

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

AJUSTE DE PREFORMANCE. DUMP DETALHE DO ITEM, DI COM MAIS DE 999 ITENS

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

Palavras Chave:

DUMP - PROCESSO - 1000 - ITENS - DETALHE - ITEM - DI - PERFORMANCE

/PWS/SAPMZYCI023

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

Objetos da nota:

DYNP /PWS/SAPMZYCI023                        0400

REPS /PWS/MZYCI023F01

REPS /PWS/MZYCI023F02

REPS /PWS/MZYCI023F03

REPS /PWS/MZYCI023F04

REPS /PWS/MZYCI023O01

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCI023                        0400

 

MODIFICAR CAMPO TEXTO "V_IP"

Comprimento Visível      4

Texto                    ____

 

MODIFICAR CAMPO TEXTO "V_IPT"

Comprimento Visível      4

Coluna                   78

Texto                    ____

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F01

 

...

 

FORM verify_changes.

  CLEAR v_changed.

  CHECK v_acto EQ 'A'.

  CLEAR:   itab_zycit100, itab_zycit003.

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

  REFRESH: itab_zycit100, itab_zycit003, itab_zycit049di2.

* << Fim da exclusão

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

  REFRESH: itab_zycit100, itab_zycit049di2.

* << Fim da inclusão

  LOOP AT itab_it.

    MOVE-CORRESPONDING itab_it TO itab_zycit100.

    APPEND itab_zycit100.

  ENDLOOP.

  LOOP AT itab_it.

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

    LOOP AT  itab_zycit003 WHERE ebeln = itab_it-ebeln

                             AND ebelp = itab_it-ebelp.

* << Fim da inclusão

    MOVE-CORRESPONDING itab_it TO itab_zycit003.

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

    SELECT SINGLE qtd_iten vlreal ntgewd FROM /pws/zycit003 INTO

  (itab_zycit003-qtd_iten, itab_zycit003-vlreal, itab_zycit003-ntgewd)

       WHERE nrseq EQ itab_it-nrseq

       AND   ebeln EQ itab_it-ebeln

       AND   ebelp EQ itab_it-ebelp.

    APPEND itab_zycit003.

* << Fim da exclusão

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

      MODIFY itab_zycit003.

* << Fim da inclusão

  ENDLOOP.

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

  LOOP AT itab_zycit100a.

    MODIFY itab_zycit100a INDEX sy-tabix TRANSPORTING especificacao.

* << Fim da exclusão

  ENDLOOP.

  SORT itab_zycit100  BY nrseqdi nrseq ebeln ebelp adicao.

  SORT itab_zycit100a BY nrseqdi nrseq ebeln ebelp adicao.

  SORT itab_zycit003  BY nrseq ebeln ebelp.

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

  SORT itab_zycit003a BY nrseq ebeln ebelp.

* << Fim da exclusão

  CLEAR itab_zycit003a.

  REFRESH itab_zycit003a.

  MOVE itab_zycit003[] TO itab_zycit003a[].

  LOOP AT itab_zycit049.

    MOVE-CORRESPONDING itab_zycit049 TO itab_zycit049di2.

    APPEND itab_zycit049di2.

  ENDLOOP.

  SORT itab_zycit049di2 BY tpdesp.

  SORT itab_zycit049di  BY tpdesp.

  IF sy-binpt IS INITIAL.

...

 

...

 

FORM load_ifre USING p_tipo.

  DATA: v_vlreal LIKE /pws/zycie003-vlreal.

  CLEAR v_vlreal.

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

  DATA: wa_zycit003 TYPE /pws/zycit003.

  READ TABLE itab_zycit003 INTO wa_zycit003

                          WITH KEY ebeln = /pws/zycie003-ebeln

                                   ebelp = /pws/zycie003-ebelp.

  IF sy-subrc NE 0.

* << Fim da inclusão

  SELECT SINGLE qtd_iten ntgewd FROM /pws/zycit003 INTO

(/pws/zycie003-qtd_iten, /pws/zycie003-ntgewd)

     WHERE nrseq EQ /pws/zycie003-nrseq

     AND   ebeln EQ /pws/zycie003-ebeln

     AND   ebelp EQ /pws/zycie003-ebelp.

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

  ELSE.

    /pws/zycie003-qtd_iten = wa_zycit003-qtd_iten.

    /pws/zycie003-ntgewd   = wa_zycit003-ntgewd  .

  ENDIF.

* << Fim da inclusão

  v_vlreal  = /pws/zycie003-vlreal.

  IF NOT /pws/zycie003-qtd_itend IS INITIAL.

    t_vmle3 = t_vmle_d2 = t_vmle  = v_vlreal * /pws/zycie003-qtd_itend.

    t_vmle2 = /pws/zycie003-vlreal *  /pws/zycie003-qtd_itend.

  ELSE.

    t_vmle3 = t_vmle_d2 = t_vmle  = v_vlreal * /pws/zycie003-qtd_iten.

    t_vmle2 = /pws/zycie003-vlreal *  /pws/zycie003-qtd_iten.

  ENDIF.

  v_it_plan = /pws/zycie003-netpr * /pws/zycie003-qtd_iten.

  v_frete_nm  = v_bltofat.

...

 

...

              (itab_zyglt100-programa) IF FOUND.

        ENDIF.

      ENDIF.

      IF e_subrc EQ '0'.

        PERFORM: fill_itabit.

      ELSEIF e_subrc = '8'.

        EXIT.

      ENDIF.

    ENDIF.

  ENDIF.

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

  IF t001-bukrs NE /pws/zycie085-bukrs OR

     /pws/zycit000-land1 NE t001-land1.

* << Fim da inclusão

  SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie085-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 INTO /pws/zycit000

                              WHERE land1 EQ t001-land1.

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

  ENDIF.

* << Fim da inclusão

  PERFORM atualiza_peso_desemb.

  IF itab_zycit001-regime EQ '05' OR

     itab_zycit001-regime EQ '12'.

    IF itab_zycit374[] IS INITIAL AND

...

 

...

 

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

  DATA: itab_zycit405 TYPE /pws/zycit405 OCCURS 0 WITH HEADER LINE,

        itab_zycit406 TYPE /pws/zycit406 OCCURS 0 WITH HEADER LINE,

        itab_zycit407 TYPE /pws/zycit407 OCCURS 0 WITH HEADER LINE.

* << Fim da inclusão

  IF NOT itab_it[] IS INITIAL.

    SELECT ebeln inco1 FROM ekko INTO TABLE itab_inco

    FOR ALL ENTRIES IN itab_it

    WHERE ebeln EQ itab_it-ebeln.

  ENDIF.

  CLEAR  : wa_zycit405, wa_zycit406, wa_zycit407, v_matnr.

  IF NOT itab_zycit003[] IS INITIAL.

    SELECT * FROM /pws/zycit013 INTO TABLE itab_zycit013

             FOR ALL ENTRIES IN itab_zycit003

             WHERE ebeln = itab_zycit003-ebeln AND

...

 

...

               AND ebelp = itab_zycit003-ebelp.

    SELECT * FROM /pws/zycit374

    INTO TABLE itab_zycit374

               FOR ALL ENTRIES IN itab_zycit003

               WHERE nrseq = itab_zycit003-nrseq.

  ENDIF.

  SELECT * FROM /pws/zycit229 INTO TABLE itab_zycit229

           WHERE codeven = 'DI'.

  IF itab_zycit086[] IS INITIAL.

    PERFORM fill_instdesp.

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

  ENDIF.

  IF sy-tcode EQ '/PWS/ZYCI023_C' .

    SELECT * FROM /pws/zycit406 INTO TABLE itab_zycit406

      WHERE pais EQ 'BR'.

    SELECT * FROM /pws/zycit405 INTO TABLE itab_zycit405

      WHERE pais EQ 'BR'.

    SELECT * FROM /pws/zycit407 INTO TABLE itab_zycit407

      WHERE pais EQ 'BR'.

  ENDIF.

  IF /pws/zycie085-j_1bbranch IS INITIAL.

    READ TABLE itab_zycit001 INDEX 1.

    /pws/zycie085-j_1bbranch = itab_zycit001-j_1bbranch.

* << Fim da inclusão

  ENDIF.

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

  PERFORM find_region.

* << Fim da inclusão

  /pws/zycie085-mdadicao = 'S'.

  CLEAR: v_tntgew, v_tval, v_tmle, v_waers, v_tsegfat.

  LOOP AT itab_zycit003.

    READ TABLE itab_zycit013 WITH KEY

         ebeln = itab_zycit003-ebeln

         ebelp = itab_zycit003-ebelp.

...

 

...

    ELSE.

      IF itab_it-pproc IS INITIAL.

        IF NOT itab_it-porigem IS INITIAL.

          itab_it-pproc = itab_it-porigem.

        ELSE.

          itab_it-pproc = itab_zycit003-paisfab.

        ENDIF.

      ENDIF.

    ENDIF.

    IF sy-tcode EQ '/PWS/ZYCI023_C' .

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

      SELECT SINGLE matnr FROM ekpo INTO v_matnr

        WHERE ebeln EQ itab_it-ebeln

        AND   ebelp EQ itab_it-ebelp.

* << Fim da exclusão

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

      IF itab_zycit003-matnr IS INITIAL.

        READ TABLE itab_ekpo WITH KEY ebeln = itab_zycit003-ebeln

                                      ebelp = itab_zycit003-ebelp.

        itab_zycit003-matnr = itab_ekpo-matnr.

      ENDIF.

* << Fim da inclusão

      IF itab_it-basredpis IS INITIAL.

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

        SELECT SINGLE *  FROM /pws/zycit406 INTO wa_zycit406

          WHERE pais EQ 'BR'

          AND   matnr EQ v_matnr

          AND   tributos EQ 'PIS'

          AND   regime EQ itab_zycit001-regime.

* << Fim da exclusão

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

        READ TABLE itab_zycit406

                        WITH KEY matnr    = itab_zycit003-matnr

                                 regime   = itab_zycit001-regime

                                 tributos = 'PIS'.

* << Fim da inclusão

        IF sy-subrc EQ 0.

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

          itab_it-basredpis = wa_zycit406-basred   .

          itab_it-pis_alorig = itab_it-advalpis = wa_zycit406-aliquotas.

* << Fim da exclusão

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

          itab_it-basredpis = itab_zycit406-basred   .

          itab_it-pis_alorig =

          itab_it-advalpis   = itab_zycit406-aliquotas.

* << Fim da inclusão

        ELSE.

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

          SELECT SINGLE * FROM /pws/zycit405 INTO wa_zycit405

            WHERE pais EQ 'BR'

            AND   ncm  EQ itab_it-j_1bnbm

            AND   tributos EQ 'PIS'

            AND   regime EQ itab_zycit001-regime.

* << Fim da exclusão

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

          READ TABLE itab_zycit405

                 WITH KEY ncm      = itab_it-j_1bnbm

                          regime   = itab_zycit001-regime

                          tributos = 'PIS'.

* << Fim da inclusão

          IF sy-subrc EQ 0.

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

            itab_it-basredpis = wa_zycit405-basred   .

            itab_it-pis_alorig = itab_it-advalpis  =

            wa_zycit405-aliquotas.

* << Fim da exclusão

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

            itab_it-basredpis = itab_zycit405-basred   .

            itab_it-pis_alorig =

            itab_it-advalpis  = itab_zycit405-aliquotas.

* << Fim da inclusão

          ELSE.

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

            SELECT SINGLE * FROM /pws/zycit407 INTO wa_zycit407

              WHERE pais EQ 'BR'

              AND   tributos EQ 'PIS'

              AND   regime EQ itab_zycit001-regime.

* << Fim da exclusão

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

            READ TABLE itab_zycit407

                        WITH KEY tributos = 'PIS'

                                 regime   = itab_zycit001-regime.

* << Fim da inclusão

            IF sy-subrc EQ 0.

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

              itab_it-basredpis = wa_zycit407-basred   .

              itab_it-pis_alorig = itab_it-advalpis  =

              wa_zycit407-aliquotas.

* << Fim da exclusão

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

              itab_it-basredpis = itab_zycit407-basred   .

              itab_it-pis_alorig =

              itab_it-advalpis  = itab_zycit407-aliquotas.

            ELSE.

              itab_it-basredpis = itab_it-advalpis.

              CLEAR : itab_it-advalpis,

                      itab_it-vlpis   .

* << Fim da inclusão

            ENDIF.

          ENDIF.

        ENDIF.

      ENDIF.

      IF itab_it-basredpis IS INITIAL.

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

        SELECT SINGLE *  FROM /pws/zycit406 INTO wa_zycit406

          WHERE pais EQ 'BR'

          AND   matnr EQ v_matnr

          AND   tributos EQ 'PIS'.

* << Fim da exclusão

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

       READ TABLE itab_zycit406 WITH KEY matnr    = itab_zycit003-matnr

                                                    tributos = 'PIS'.

* << Fim da inclusão

        IF sy-subrc EQ 0.

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

          itab_it-basredpis = wa_zycit406-basred   .

          itab_it-pis_alorig = itab_it-advalpis = wa_zycit406-aliquotas.

* << Fim da exclusão

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

          itab_it-basredpis = itab_zycit406-basred   .

          itab_it-pis_alorig =

          itab_it-advalpis  = itab_zycit406-aliquotas.

* << Fim da inclusão

        ELSE.

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

          SELECT SINGLE * FROM /pws/zycit405 INTO wa_zycit405

            WHERE pais EQ 'BR'

            AND   ncm  EQ itab_it-j_1bnbm

            AND   tributos EQ 'PIS'.

* << Fim da exclusão

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

          READ TABLE itab_zycit405 WITH KEY ncm      = itab_it-j_1bnbm

                                             tributos = 'PIS'.

* << Fim da inclusão

          IF sy-subrc EQ 0.

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

            itab_it-basredpis = wa_zycit405-basred   .

* << Fim da exclusão

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

            itab_it-basredpis = itab_zycit405-basred   .

* << Fim da inclusão

            itab_it-pis_alorig =

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

            itab_it-advalpis  = wa_zycit405-aliquotas.

* << Fim da exclusão

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

            itab_it-advalpis  = itab_zycit405-aliquotas.

* << Fim da inclusão

          ELSE.

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

            SELECT SINGLE * FROM /pws/zycit407 INTO wa_zycit407

              WHERE pais EQ 'BR'

              AND   tributos EQ 'PIS'.

* << Fim da exclusão

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

            READ TABLE itab_zycit407 WITH KEY tributos = 'PIS'.

* << Fim da inclusão

            IF sy-subrc EQ 0.

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

              itab_it-basredpis = wa_zycit407-basred   .

* << Fim da exclusão

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

              itab_it-basredpis = itab_zycit407-basred   .

* << Fim da inclusão

              itab_it-pis_alorig =

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

              itab_it-advalpis  = wa_zycit407-aliquotas.

* << Fim da exclusão

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

              itab_it-advalpis  = itab_zycit407-aliquotas.

* << Fim da inclusão

            ELSE.

              itab_it-basredpis = itab_it-advalpis.

              CLEAR : itab_it-advalpis,

...

 

...

        IF sy-subrc EQ 0

          AND NOT itab_zycit374-tp_vida_util IS INITIAL.

          itab_it-advalpis =

        ( ( ( itab_it-advalpis / 100 ) * itab_zycit374-tp_perman *

        ( 1 + ( itab_it-aliqii / 100 ) + ( itab_it-aliqipi / 100 ) ) ) /

         ( 12 * itab_zycit374-tp_vida_util +

         ( ( ( itab_it-aliqii / 100 ) + ( itab_it-aliqipi / 100 ) ) *

                    itab_zycit374-tp_perman ) ) ) * 100 .

        ENDIF.

      ENDIF.

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

      IF itab_it-basredcof IS INITIAL.

        SELECT SINGLE *  FROM /pws/zycit406 INTO wa_zycit406

          WHERE pais EQ 'BR'

          AND   matnr EQ v_matnr

          AND   tributos EQ 'COFINS'

          AND   regime EQ itab_zycit001-regime.

* << Fim da exclusão

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

      IF itab_it-basredpis IS INITIAL.

        READ TABLE itab_zycit406

                        WITH KEY matnr    = itab_zycit003-matnr

                                 regime   = itab_zycit001-regime

                                 tributos = 'COFINS'.

* << Fim da inclusão

        IF sy-subrc EQ 0.

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

          itab_it-basredcof    = wa_zycit406-basred   .

* << Fim da exclusão

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

          itab_it-basredcof = itab_zycit406-basred   .

* << Fim da inclusão

          itab_it-cof_alorig =

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

          itab_it-advalcofins = wa_zycit406-aliquotas.

* << Fim da exclusão

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

          itab_it-advalcofins   = itab_zycit406-aliquotas.

* << Fim da inclusão

        ELSE.

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

          SELECT SINGLE * FROM /pws/zycit405 INTO wa_zycit405

            WHERE pais EQ 'BR'

            AND   ncm  EQ itab_it-j_1bnbm

            AND   tributos EQ 'COFINS'

            AND   regime EQ itab_zycit001-regime.

* << Fim da exclusão

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

          READ TABLE itab_zycit405

                 WITH KEY ncm      = itab_it-j_1bnbm

                          regime   = itab_zycit001-regime

                          tributos = 'COFINS'.

* << Fim da inclusão

          IF sy-subrc EQ 0.

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

            itab_it-basredcof    = wa_zycit405-basred   .

            itab_it-cof_alorig = itab_it-advalcofins =

             wa_zycit405-aliquotas.

* << Fim da exclusão

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

            itab_it-basredcof = itab_zycit405-basred   .

            itab_it-cof_alorig =

            itab_it-advalcofins  = itab_zycit405-aliquotas.

* << Fim da inclusão

          ELSE.

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

            SELECT SINGLE * FROM /pws/zycit407 INTO wa_zycit407

              WHERE pais EQ 'BR'

              AND   tributos EQ 'COFINS'

              AND   regime EQ itab_zycit001-regime.

* << Fim da exclusão

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

            READ TABLE itab_zycit407

                        WITH KEY tributos = 'COFINS'

                                 regime   = itab_zycit001-regime.

* << Fim da inclusão

            IF sy-subrc EQ 0.

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

              itab_it-basredcof    = wa_zycit407-basred   .

              itab_it-cof_alorig  = itab_it-advalcofins =

              wa_zycit407-aliquotas.

* << Fim da exclusão

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

              itab_it-basredcof = itab_zycit407-basred   .

              itab_it-cof_alorig =

              itab_it-advalcofins  = itab_zycit407-aliquotas.

            ELSE.

              itab_it-basredcof = itab_it-advalcofins.

              CLEAR : itab_it-advalcofins,

                      itab_it-vlcofins   .

* << Fim da inclusão

            ENDIF.

          ENDIF.

        ENDIF.

      ENDIF.

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

      IF itab_it-basredcof IS INITIAL.

        SELECT SINGLE *  FROM /pws/zycit406 INTO wa_zycit406

          WHERE pais EQ 'BR'

          AND   matnr EQ v_matnr

          AND   tributos EQ 'COFINS'.

* << Fim da exclusão

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

      IF itab_it-basredpis IS INITIAL.

       READ TABLE itab_zycit406 WITH KEY matnr    = itab_zycit003-matnr

                                                    tributos = 'COFINS'.

* << Fim da inclusão

        IF sy-subrc EQ 0.

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

          itab_it-basredcof    = wa_zycit406-basred   .

* << Fim da exclusão

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

          itab_it-basredcof = itab_zycit406-basred   .

* << Fim da inclusão

          itab_it-cof_alorig =

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

          itab_it-advalcofins  = wa_zycit406-aliquotas.

* << Fim da exclusão

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

          itab_it-advalcofins  = itab_zycit406-aliquotas.

* << Fim da inclusão

        ELSE.

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

          SELECT SINGLE * FROM /pws/zycit405 INTO wa_zycit405

            WHERE pais EQ 'BR'

            AND   ncm  EQ itab_it-j_1bnbm

            AND   tributos EQ 'COFINS'.

* << Fim da exclusão

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

          READ TABLE itab_zycit405 WITH KEY ncm      = itab_it-j_1bnbm

                                            tributos = 'COFINS'.

* << Fim da inclusão

          IF sy-subrc EQ 0.

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

            itab_it-basredcof    = wa_zycit405-basred   .

* << Fim da exclusão

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

            itab_it-basredcof = itab_zycit405-basred   .

* << Fim da inclusão

            itab_it-cof_alorig =

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

            itab_it-advalcofins  = wa_zycit405-aliquotas.

* << Fim da exclusão

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

            itab_it-advalcofins  = itab_zycit405-aliquotas.

* << Fim da inclusão

          ELSE.

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

            SELECT SINGLE * FROM /pws/zycit407 INTO wa_zycit407

              WHERE pais EQ 'BR'

              AND   tributos EQ 'COFINS'.

* << Fim da exclusão

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

            READ TABLE itab_zycit407 WITH KEY tributos = 'COFINS'.

* << Fim da inclusão

            IF sy-subrc EQ 0.

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

              itab_it-basredcof    = wa_zycit407-basred   .

* << Fim da exclusão

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

              itab_it-basredcof = itab_zycit407-basred   .

* << Fim da inclusão

              itab_it-cof_alorig =

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

              itab_it-advalcofins  = wa_zycit407-aliquotas.

* << Fim da exclusão

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

              itab_it-advalcofins  = itab_zycit407-aliquotas.

* << Fim da inclusão

            ELSE.

              itab_it-basredcof = itab_it-advalcofins.

              CLEAR : itab_it-advalcofins,

...

 

...

      itab_it-pis_alorig = itab_it-advalpis.

    ENDIF.

    IF itab_it-cof_alorig IS INITIAL.

      itab_it-cof_alorig = itab_it-advalcofins .

    ENDIF.

    READ TABLE itab_zycit078 WITH KEY

        nrseqli = itab_zycit003-nrseqli.

    IF sy-subrc EQ 0.

      itab_it-codfunleg = itab_zycit078-codfunleg .

      itab_it-codregtri = itab_zycit078-codregtri .

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

    ENDIF.

  IF /pws/zycie085-j_1bbranch IS INITIAL.

    READ TABLE itab_zycit001 INDEX 1.

    /pws/zycie085-j_1bbranch = itab_zycit001-j_1bbranch.

* << Fim da exclusão

  ENDIF.

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

  PERFORM find_region.

* << Fim da exclusão

    IF sy-tcode = '/PWS/ZYCI023_C'.

      IF itab_it-codregtriicms IS INITIAL.

        IF itab_it-modalidade NE 'I'.

          IF v_region EQ 'MG' AND itab_zycit078-tipodb EQ 'G'.

            itab_it-codregtriicms = '1'.

          ELSE.

...

 

...

     AND branch = /pws/zycie085-j_1bbranch.

  SELECT SINGLE region FROM adrc INTO v_icms_regio

   WHERE addrnumber = j_1bbranch-adrnr.

  IF sy-subrc EQ 0.

    SELECT SINGLE * FROM /pws/zycit062

         WHERE regio = v_icms_regio.

  ENDIF.

  IF itab_zycit031[] IS INITIAL.

    SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie085-bukrs.

    SELECT * FROM /pws/zycit031 INTO TABLE itab_zycit031

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

      WHERE land1 EQ t001-land1.                        "#EC CI_NOFIRST

* << Fim da exclusão

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

     WHERE land1 EQ t001-land1.                         "#EC CI_NOFIRST

* << Fim da inclusão

  ENDIF.

  READ TABLE itab_zycit031 WITH KEY inco1 = itab_zycit001-inco1.

  IF sy-subrc EQ 0.

    s_inco1_ci = itab_zycit031-inco1_ci.

  ELSE.

    CLEAR: s_inco1_ci.

    MESSAGE i015 WITH text-039 wa_it-inco1.

  ENDIF.

  IF /pws/zycie085-codreg EQ '03' AND /pws/zycie085-tpdi EQ 'N'.

    LOOP AT itab_it.

...

 

...

 

FORM fill_taxasiscomex USING    p_adics.

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

  IF t001-bukrs NE /pws/zycie085-bukrs OR

     /pws/zycit000-land1 NE t001-land1 OR

     wa_zycbt007-bukrs NE /pws/zycie085-bukrs.

* << Fim da inclusão

  SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie085-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

  SELECT SINGLE * FROM /pws/zycbt007 INTO wa_zycbt007

                WHERE bukrs EQ /pws/zycie085-bukrs.

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

  ENDIF.

* << Fim da inclusão

  IF wa_it000 IS INITIAL.

    MOVE /pws/zycit000 TO wa_it000.

  ENDIF.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F02

 

...

 

FORM load_para.

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

  IF t001-bukrs NE /pws/zycie085-bukrs OR

     wa_it000-land1 NE t001-land1 OR

     wa_zycbt007-bukrs NE /pws/zycie085-bukrs.

* << Fim da inclusão

  CLEAR: wa_zycbt007, wa_it000.

  SELECT SINGLE * FROM /pws/zycbt007 INTO wa_zycbt007

                  WHERE bukrs EQ /pws/zycie085-bukrs.

  SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie085-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 INTO wa_it000

                          WHERE land1 EQ t001-land1.

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

  ENDIF.

* << Fim da inclusão

  IF sy-subrc NE 0.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F03

 

...

 

FORM load_iicms USING p_tipo.

  DATA v_trunc TYPE p DECIMALS 3.

  DATA: v_casasd  TYPE /pws/zycit036-vlreal,

        v_casasd2 TYPE /pws/zycit036-vlreal,

        v_casasd3 TYPE /pws/zycit036-vlreal,

        v_casasd4 TYPE /pws/zycit036-vlreal,

        v_casasd5 TYPE /pws/zycit036-vlreal.

  CLEAR: t_ivdesp, v_advii, v_advipi, v_advicms,

          v_advpis, v_advcof, v_desp.

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

  READ TABLE itab_zycit438 INDEX 1.

  IF sy-subrc NE 0 .

* << Fim da inclusão

  SELECT  * FROM /pws/zycit438 INTO TABLE itab_zycit438

     WHERE regio = v_region

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

     AND   lei = 'MP252'.

* << Fim da exclusão

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

       AND   ( lei = 'MP252' OR lei = 'MP255' ).

* << Fim da inclusão

  IF sy-subrc NE 0.

    SELECT  * FROM /pws/zycit438 INTO TABLE itab_zycit438

       WHERE regio = ' '

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

       AND   lei = 'MP252'.

* << Fim da exclusão

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

       AND   ( lei = 'MP252' OR lei = 'MP255' ).

* << Fim da inclusão

  ENDIF.

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

  SELECT  * FROM /pws/zycit438 APPENDING TABLE itab_zycit438

     WHERE regio = v_region

     AND   lei = 'MP255'.

  IF sy-subrc NE 0.

    SELECT  * FROM /pws/zycit438 APPENDING TABLE itab_zycit438

       WHERE regio = ' '

       AND   lei = 'MP255'.

* << Fim da exclusão

  ENDIF.

  CLEAR v_nova.

  IF /pws/zycie085-dtuserc IS INITIAL.

    /pws/zycie085-dtuserc = sy-datlo.

  ENDIF.

  CLEAR : v_fatx, v_xa , v_xb , v_xc, v_faty, v_fatpc.

  LOOP AT itab_zycit049 WHERE baseicms EQ 'X' AND NOT vlreal IS initial.

    CLEAR t_ivdes2.

    IF itab_zycit049-tpdesp = /pws/zycit000-cod_antidump .

      CONTINUE.

...

 

...

       ( belnr_mr1m  NE space OR

         mblnr_mb01  NE space OR

         belnr_f_51  NE space OR

         belnr_f_02  NE space OR

         belnrf02fre NE space    ).

  ENDIF.

  IF sy-subrc EQ 0.

    MESSAGE s015 WITH text-214 text-215.

    EXIT.

  ENDIF.

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

  IF t001-bukrs NE /pws/zycie085-bukrs OR

     /pws/zycit000-land1 NE t001-land1.

* << Fim da inclusão

  SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie001-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

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

  ENDIF.

* << Fim da inclusão

  CHECK NOT /pws/zycit000-flag_reclass IS INITIAL.

  CHECK NOT /pws/zycie085-dtreg IS INITIAL AND

        NOT /pws/zycie085-nrdi  IS INITIAL.

  IF NOT itab_zycit003[] IS INITIAL.

    SELECT * FROM /pws/zycit094 INTO TABLE itab_zycit094

...

 

...

 

FORM busca_taxa_tcurr USING    p_waers_real

                      CHANGING v_taxa.

  DATA: v_tax   LIKE tcurr-ukurs,

        v_kurst LIKE /pws/zycit000-kurst.

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

  IF t001-bukrs NE /pws/zycie085-bukrs OR

     /pws/zycit000-land1 NE t001-land1 OR

     /pws/zycbt007-bukrs NE /pws/zycie085-bukrs.

* << Fim da inclusão

  SELECT SINGLE * FROM /pws/zycbt007

                  WHERE bukrs EQ /pws/zycie085-bukrs.

  SELECT SINGLE * FROM t001 WHERE bukrs = /pws/zycie085-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

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

  ENDIF.

* << Fim da inclusão

  IF /pws/zycit000-kurst IS INITIAL.

    v_kurst = 'M'.

  ELSE.

...

 

...

 

FORM verifica_exit USING    p_modulo

                            p_func

                            p_exit.

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

  CLEAR itab_zyglt100.

  REFRESH itab_zyglt100.

* << Fim da exclusão

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

  DATA: itab_zyglt100b TYPE /pws/zyglt100 OCCURS 0 WITH HEADER LINE.

  REFRESH itab_zyglt100b.

  READ TABLE itab_zyglt100 WITH KEY zexit = p_exit .

  IF sy-subrc EQ 0.

    EXIT.

  ENDIF.

* << Fim da inclusão

  CALL FUNCTION '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

       EXPORTING

            i_codmod                = p_modulo

            i_func                  = p_func

            i_zexit                 = p_exit

       TABLES

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

            itab_zyglt100           = itab_zyglt100

* << Fim da exclusão

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

            itab_zyglt100           = itab_zyglt100b

* << Fim da inclusão

       EXCEPTIONS

            i_codmod_nao_encontrado = 1

            i_func_nao_encontrado   = 2

            i_zexit_nao_encontrado  = 3

            OTHERS                  = 4.

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

  IF sy-subrc <> 0.

    EXIT.

* << Fim da exclusão

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

  IF sy-subrc <> 0 OR itab_zyglt100b[] IS INITIAL.

    CLEAR itab_zyglt100.

    itab_zyglt100-codmod = p_modulo.

    itab_zyglt100-func   = p_func.

    itab_zyglt100-zexit  = p_exit .

    APPEND itab_zyglt100.

* << Fim da inclusão

  ENDIF.

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

  LOOP AT itab_zyglt100b.

    itab_zyglt100 = itab_zyglt100b.

    APPEND itab_zyglt100.

  ENDLOOP.

  SORT itab_zyglt100  BY zexit.

* << Fim da inclusão

ENDFORM.

 

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F04

 

...

 

FORM data_clean_seg.

  IF sy-tcode = '/PWS/ZYCI023_C'.

    IF /pws/zycie085-per_seg IS INITIAL AND

       /pws/zycie085-vlseg   IS INITIAL.

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

      IF t001-bukrs NE /pws/zycie085-bukrs OR

         /pws/zycit000-land1 NE t001-land1.

* << Fim da inclusão

      SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie085-bukrs.

      SELECT SINGLE per_seg FROM /pws/zycit000

           INTO /pws/zycie085-per_seg

           WHERE land1 EQ t001-land1.

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

      ELSE.

        /pws/zycie085-per_seg = /pws/zycit000-per_seg.

      ENDIF.

* << Fim da inclusão

    ENDIF.

...

 

...

              IF screen-group4   = 'REQ' AND

                 NOT v_nrseqdi IS INITIAL.

                screen-required = '1'.

              ENDIF.

            ENDIF.

          ENDIF.

      ENDCASE.

      MODIFY SCREEN.

    ENDIF.

    IF screen-name = 'TAB_CONT'.

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

      IF t001-bukrs NE /pws/zycie085-bukrs OR

         /pws/zycit000-land1 NE t001-land1.

* << Fim da inclusão

      SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie085-bukrs.

      SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

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

      ENDIF.

* << Fim da inclusão

      IF /pws/zycit000-flag_reclass IS INITIAL.

        IF /pws/zycie085-flag_reclass IS INITIAL AND

           /pws/zycie085-belnr_0 IS INITIAL AND

           /pws/zycie085-belnr_1 IS INITIAL AND

           /pws/zycie085-belnr_2 IS INITIAL AND

...

 

...

 

FORM set_screen_0110.

  LOOP AT SCREEN.

    IF screen-name = '/PWS/ZYCIE085-NRDI' OR

       screen-name = '/PWS/ZYCIE085-DTREG'.

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

      IF t001-bukrs NE /pws/zycie085-bukrs OR

         /pws/zycit000-land1 NE t001-land1.

* << Fim da inclusão

      SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie085-bukrs.

      SELECT SINGLE * FROM /pws/zycit000 INTO /pws/zycit000

                                  WHERE land1 EQ t001-land1.

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

      ENDIF.

* << Fim da inclusão

      IF sy-subrc = 0.

        IF /pws/zycit000-siscomex = 'X'.

          IF v_acto EQ 'A'.

            screen-input = 1.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023O01

 

...

 

MODULE data_clean_seg OUTPUT.

  IF sy-tcode = '/PWS/ZYCI023_C'.

    IF /pws/zycie085-waersseg IS INITIAL.

      CLEAR: /pws/zycie085-ukursseg, s_stvr, /pws/zycie085-vlseg.

    ENDIF.

    IF v_perseg_vez = ' '.

      IF /pws/zycie085-per_seg IS INITIAL AND /pws/zycie085-vlseg IS

 INITIAL.

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

        IF t001-bukrs NE /pws/zycie085-bukrs OR

           /pws/zycit000-land1 NE t001-land1.

* << Fim da inclusão

        SELECT SINGLE * FROM t001 WHERE bukrs EQ /pws/zycie085-bukrs.

* >> Início da exclusão: MODULE DATA_CLEAN_SEG

    SELECT SINGLE per_seg FROM /pws/zycit000 INTO /pws/zycie085-per_seg

* << Fim da exclusão

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

          SELECT SINGLE per_seg FROM /pws/zycit000

                 INTO /pws/zycie085-per_seg

* << Fim da inclusão

                                              WHERE land1 EQ t001-land1.

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

        ELSE.

          /pws/zycie085-per_seg = /pws/zycit000-per_seg.

        ENDIF.

* << Fim da inclusão

      ENDIF.

    ENDIF.

  ENDIF.

  v_perseg_vez = 'X'.

ENDMODULE.

 

...