CE PLUS - Nota 007414

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 11/10/2011 11:20:12

Data/Hora Última Alteração: 11/10/2011 11:20:12

Descrição da Nota: ESTÁ RATEANDO A DESPESA ANTIDUMPING POR ITENS SEM O ANTIDUMP.

Sintoma

Está rateando antidumping por itens sem o imposto.

 

 

Solução

Não ratear por itens sem antidumping.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

NA NOTA FISCAL VERIFICAR TABELA ZYCIT062 PARA NÃO INCIDÊNCIA DA DI

ERRO NO RATEIO DE DESPESAS DA DI AO FAZER A NF

AO ACRESCENTAR DADOS DE ANTIDUMPING E PARÂMETRO NA /PWS/ZYCIT000

VALOR DO ICMS COM FRETE RODOVIÁRIO NA DI ESTA ERRADO

AO RATEAR DESPESAS ESTÁ CONSIDERANDO ITENS ISENTOS OU SUSPENSOS.

DI - CÁLCULO DA TAXA DO SISCOMEX NA BASE - PIS E COFINS ISENTO NA BASE

Informações Complementares

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

Nota Número 07414 Data: 08/10/2008 Hora: 10:02:17

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

 

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

Nota Número              : 07414

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00007

Agrupamento              : 00068

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

Referência às notas relacionadas:

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

 

03302  - 00001 - 7.0    - 00001  - NA NOTA FISCAL VERIFICAR TABELA ZYCIT062 PARA NÃO INCIDÊNCIA DA D

05011  - 00002 - 7.0    - 00003  - ERRO NO RATEIO DE DESPESAS DA DI AO FAZER A NF

06622  - 00003 - 7.0    - 00005  - VALOR DO ICMS COM FRETE RODOVIÁRIO NA DI ESTA ERRADO

06695  - 00004 - 7.0    - 00005  - AO RATEAR DESPESAS ESTÁ CONSIDERANDO ITENS ISENTOS OU SUSPENSOS.

07368  - 00005 - 7.0    - 00007  - AO ACRESCENTAR DADOS DE ANTIDUMPING E PARÂMETRO NA /PWS/ZYCIT000

07699  - 00006 - 7.0    - 00007  - DI - CÁLCULO DA TAXA DO SISCOMEX NA BASE - PIS E COFINS ISENTO NA

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

ESTÁ RATEANDO A DESPESA ANTIDUMPING POR ITENS SEM O ANTIDUMP.

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

Palavras Chave:

RATEIO - ANTIDUMP - DI

 

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

Objetos da nota:

DYNP /PWS/SAPMZYCI023                        0434

FUNC /PWS/ZYCI_RATEIO_CUSTO

REPS /PWS/LZYCIGF2X01

REPS /PWS/MZYCI007F01

REPS /PWS/MZYCI016F01

REPS /PWS/MZYCI023F01

REPS /PWS/MZYCI023F03

REPS /PWS/MZYCI023F05

REPS /PWS/MZYCI023I01

 

 

 

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

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

 

 

   Nome

      Ctg.      Linha   Coluna  CmprDf  CmVis   Altura  Format Dict  Modif At.Des.Só At

      Gr1 Gr2 Gr3 Gr4  SPA GPA ID parâm             Cód.F                TCmp   TpoLoopExbLoop

      Outros atributos

 

*O Seguinte campo foi eliminado

   WA_IT-QTDEANTID

      I/O       11       51       8       8       1     NUMC                   Off

      Alinh.à dir.

*Esse campo foi inserido no lugar

   A_QTDANTID

      I/O       11       51       8       8       1     NUMC                   Off

 

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

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

 

MODIFICAR LÓGICA DE PROCESSAMENTO TELA 0434

process before output.

module: set_screen.

process after input.

field: s_advl               module fill_advl on request,

       s_adbs               module fill_adbs on request,

       /PWS/ZYCIE100A-MEINSANTID module load_umad on request.

* >> Início da inclusão:

  CHAIN.

    FIELD: S_ADVL,

           S_ADBS,

           /pws/zycie100a-antidrate,

           /pws/zycie100a-qtdeantid.

    MODULE calc_vii ON CHAIN-REQUEST.

    MODULE calc_vicms ON CHAIN-REQUEST.

  ENDCHAIN.

* << Fim da inclusão

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_RATEIO_CUSTO

 

FUNCTION /pws/zyci_rateio_custo.

* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO

  CLEAR v_vlantid.

* << Fim da inclusão

 

...

 

...

      IF NOT '156' CA itab_zycit100a-codregtriipi .

        v_tot_ipi  = itab_zycit100a-vlipi + v_tot_ipi.

      ENDIF.

      IF NOT '356' CA itab_zycit100a-codregtripiscofi.

        v_tot_pis     = itab_zycit100a-vlpis + v_tot_pis.

        v_tot_cofins  = itab_zycit100a-vlcofins + v_tot_cofins.

      ENDIF.

      IF NOT '356' CA itab_zycit100a-codregtriicms  .

        v_tot_icms = itab_zycit100a-vlicms + v_tot_icms.

      ENDIF.

* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO

      IF NOT itab_zycit100a-baseantid IS INITIAL.

        v_vlantid = v_vlantid + ( itab_zycit100a-baseantid *

        ( itab_zycit100a-antidrate / 100 ) ) .

      ELSEIF NOT itab_zycit100a-qtdeantid IS INITIAL.

        v_vlantid = v_vlantid + ( itab_zycit100a-vlantid *

        itab_zycit100a-qtdeantid ).

      ENDIF.

* << Fim da inclusão

    ENDLOOP.

 

...

 

...

                  IF NOT itab_despesa-waers IS INITIAL.

                    itab_zycit036_aux-waers_real = itab_despesa-waers.

                  ELSE.

                    itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.

                  ENDIF.

                  IF ( /pws/zycit019-codigo EQ 'II'     OR

                       /pws/zycit019-codigo EQ 'IPI'    OR

                       /pws/zycit019-codigo EQ 'ICMS'   OR

                       /pws/zycit019-codigo EQ 'COFINS' OR

                       /pws/zycit019-codigo EQ 'PIS'    OR

* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO

                    /pws/zycit000-cod_antidump EQ itab_despesa-tpdesp OR

* << Fim da inclusão

                  ( /pws/zycit000-cod_sisc EQ itab_despesa-tpdesp AND

                    NOT /pws/zycit000-flag_txsisc IS INITIAL ) ) AND

                    NOT itab_zycit100a[] IS INITIAL.

                    IF /pws/zycit019-codigo = 'ICMS' AND

                       NOT v_tot_icms IS INITIAL.

                      READ TABLE itab_zycit100a WITH KEY

                                ebeln = itab_zycit003-ebeln

                                ebelp = itab_zycit003-ebelp.

                      IF sy-subrc EQ 0.

             itab_zycit036_aux-vlreal = itab_despesa-netpr - v_tot_desp

...

 

...

             itab_zycit036_aux-vlreal = itab_despesa-netpr - v_tot_desp.

                    itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.

                      ENDIF.

                    ELSEIF /pws/zycit019-codigo = 'PIS'

                    AND NOT v_tot_pis IS INITIAL.

                      READ TABLE itab_zycit100a WITH KEY

                                ebeln = itab_zycit003-ebeln

                                ebelp = itab_zycit003-ebelp.

                      IF sy-subrc EQ 0 AND

                      NOT '356' CA  itab_zycit100a-codregtripiscofi .

* >> Início da exclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO

             itab_zycit036_aux-vlreal = itab_despesa-netpr - v_tot_desp.

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO

                        itab_zycit036_aux-vlreal = itab_despesa-netpr -

                        v_tot_desp.

                    itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.

                      ENDIF.

                    ELSEIF /pws/zycit019-tpdesp =

                    /pws/zycit000-cod_antidump AND

                      NOT v_vlantid IS INITIAL.

                      READ TABLE itab_zycit100a WITH KEY

                                ebeln = itab_zycit003-ebeln

                                ebelp = itab_zycit003-ebelp.

                      IF sy-subrc EQ 0 AND

                    ( NOT itab_zycit100a-baseantid IS INITIAL  or

                    not itab_zycit100a-qtdeantid is initial ) .

                        itab_zycit036_aux-vlreal =

                        itab_despesa-netpr - v_tot_desp

                                                                       .

* << Fim da inclusão

                    itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.

                      ENDIF.

                    ELSE.

                      READ TABLE itab_zycit100a WITH KEY

                                ebeln = itab_zycit003-ebeln

                                ebelp = itab_zycit003-ebelp.

                      IF sy-subrc EQ 0 AND NOT v_tot_desp IS INITIAL.

             itab_zycit036_aux-vlreal = itab_despesa-netpr - v_tot_desp.

                    itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.

                      ELSE.

...

 

...

                  IF NOT itab_despesa-waers IS INITIAL.

                    itab_zycit036_aux-waers_real = itab_despesa-waers.

                  ELSE.

                    itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.

                  ENDIF.

                  IF ( /pws/zycit019-codigo EQ 'II' OR

                     /pws/zycit019-codigo EQ 'IPI' OR

                     /pws/zycit019-codigo EQ 'ICMS' OR

                     /pws/zycit019-codigo EQ 'COFINS' OR

                     /pws/zycit019-codigo EQ 'PIS' OR

* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO

                  /pws/zycit019-tpdesp EQ /pws/zycit000-cod_antidump OR

* << Fim da inclusão

                    ( /pws/zycit000-cod_sisc EQ itab_despesa-tpdesp AND

                      NOT /pws/zycit000-flag_txsisc IS INITIAL ) ) AND

                      NOT itab_zycit100a[] IS INITIAL.

                    IF /pws/zycit019-codigo = 'ICMS' AND

                       NOT v_tot_icms IS INITIAL.

                      READ TABLE itab_zycit100a WITH KEY

                                ebeln = itab_zycit003-ebeln

                                ebelp = itab_zycit003-ebelp.

                      IF sy-subrc EQ 0 AND NOT '356' CA

                      itab_zycit100a-codregtriicms  .

...

 

...

                      ENDIF.

                    ELSEIF /pws/zycit019-codigo = 'PIS'

                    AND NOT v_tot_pis IS INITIAL.

                      READ TABLE itab_zycit100a WITH KEY

                                ebeln = itab_zycit003-ebeln

                                ebelp = itab_zycit003-ebelp.

                      IF sy-subrc EQ 0 AND

                          NOT '356' CA itab_zycit100a-codregtripiscofi .

                    itab_zycit036_aux-vlreal = ( itab_zycit100a-vlpis /

                                       v_tot_pis ) * itab_despesa-netpr.

* >> Início da inclusão: FUNCTION /PWS/ZYCI_RATEIO_CUSTO

                    itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.

                      ENDIF.

                    ELSEIF /pws/zycit019-tpdesp =

                    /pws/zycit000-cod_antidump AND

                      NOT v_vlantid IS INITIAL.

                      READ TABLE itab_zycit100a WITH KEY

                                ebeln = itab_zycit003-ebeln

                                ebelp = itab_zycit003-ebelp.

                      IF sy-subrc EQ 0 AND

                       ( NOT itab_zycit100a-baseantid IS INITIAL  or

                    not itab_zycit100a-qtdeantid is initial ) .

                        IF NOT itab_zycit100a-baseantid IS INITIAL.

                          itab_zycit036_aux-vlreal =

                  ( ( itab_zycit100a-baseantid *

                  ( itab_zycit100a-antidrate / 100 ) ) / v_vlantid ) *

                                   itab_despesa-netpr.

                        ELSEIF NOT itab_zycit100a-qtdeantid IS INITIAL.

                          itab_zycit036_aux-vlreal =

                          ( ( itab_zycit100a-vlantid *

                    itab_zycit100a-qtdeantid ) / v_vlantid ) *

                    itab_despesa-netpr.

                        ENDIF.

* << Fim da inclusão

                    itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.

                      ENDIF.

                    ELSE.

                      READ TABLE itab_zycit100a WITH KEY

                                ebeln = itab_zycit003-ebeln

                                ebelp = itab_zycit003-ebelp.

                      IF sy-subrc EQ 0.

                     itab_zycit036_aux-vlreal = itab_zycit100a-vl_sisco.

                    itab_zycit036_aux-waers_real = /pws/zycbt007-waersb.

                      ENDIF.

...

 

 

 

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

Modificações efetuadas em REPS /PWS/LZYCIGF2X01

 

...

 

* >> Início da inclusão:

DATA: v_vlantid    like /pws/zycit100-vlicms.

* << Fim da inclusão

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI007F01

...

 

FORM verifica_itens.

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

  DATA: v_vlantid TYPE /pws/zycit085-vlicms.

* << Fim da inclusão

...

 

...

 

  LOOP AT it_zycit027_aux

       WHERE ( tpdesp = '001' OR tpdesp = '002' OR

               tpdesp = '003' OR tpdesp = /pws/zycit000-cod_sisc

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

               OR tpdesp = /pws/zycit000-cod_antidump

* << Fim da inclusão

               OR tpdesp = /pws/zycit000-cod_pis

               OR tpdesp = /pws/zycit000-cod_cofins ) AND vldp > 0.

  ENDLOOP.

...

 

...

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

        CLEAR: v_tot_ii, v_tot_ipi, v_tot_icms, v_tot_pis, v_tot_cofins.

* << Fim da exclusão

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

        CLEAR: v_tot_ii, v_tot_ipi, v_tot_icms, v_tot_pis, v_tot_cofins,

        v_vlantid.

* << Fim da inclusão

        LOOP AT itab_zycit100.

          IF NOT '356' CA itab_zycit100-codregtri .

            v_tot_ii   = itab_zycit100-vlii + v_tot_ii.

          ENDIF.

          IF NOT '156' CA itab_zycit100-codregtriipi .

            v_tot_ipi  = itab_zycit100-vlipi + v_tot_ipi.

          ENDIF.

          IF NOT '356' CA itab_zycit100-codregtripiscofi.

            v_tot_pis     = itab_zycit100-vlpis + v_tot_pis.

            v_tot_cofins  = itab_zycit100-vlcofins + v_tot_cofins.

          ENDIF.

          IF NOT '356' CA itab_zycit100-codregtriicms  .

            v_tot_icms = itab_zycit100-vlicms + v_tot_icms.

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

          ENDIF.

          IF NOT itab_zycit100-baseantid IS INITIAL.

            v_vlantid = v_vlantid + ( itab_zycit100-baseantid *

            ( itab_zycit100-antidrate / 100 ) ) .

          ELSEIF NOT itab_zycit100-qtdeantid IS INITIAL.

            v_vlantid = v_vlantid + ( itab_zycit100-vlantid *

            itab_zycit100-qtdeantid ).

* << Fim da inclusão

          ENDIF.

        ENDLOOP.

        IF NOT itab_zycit100[] IS INITIAL.

          SELECT * FROM /pws/zycit116 INTO TABLE itab_zycit116

                 FOR ALL ENTRIES IN itab_zycit100

                 WHERE nrseqdi = itab_zycit100-nrseqdi.

        ENDIF.

...

 

...

 

              vl_imp = itab_zycit100-vlcofins / v_tot_cofins.

              it_lanca-porcent = vl_imp.

              v_vldp_rat = ( it_zycit027_aux-vldp *

                                itab_zycit100-vlcofins / v_tot_cofins ).

              it_lanca-lancamento = v_vldp_rat.

            ENDIF.

            v_total = v_total + it_lanca-lancamento.

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

          ENDIF.

        ELSEIF it_zycit027_aux-tpdesp = /pws/zycit000-cod_antidump.

          IF NOT itab_zycit100-baseantid IS INITIAL.

            vl_imp = ( itab_zycit100-baseantid *

            ( itab_zycit100-antidrate / 100 ) ) /

            v_vlantid.

            it_lanca-porcent = vl_imp.

            v_vldp_rat =  it_zycit027_aux-vldp *

            ( ( itab_zycit100-baseantid *

            ( itab_zycit100-antidrate / 100 ) ) /

            v_vlantid ) .

            it_lanca-lancamento = v_vldp_rat.

          ELSEIF NOT itab_zycit100-vlantid IS INITIAL.

            vl_imp = ( itab_zycit100-vlantid *

            itab_zycit100-qtdeantid ) /

            v_vlantid.

            it_lanca-porcent = vl_imp.

            v_vldp_rat =  it_zycit027_aux-vldp *

             (  ( itab_zycit100-vlantid *

            itab_zycit100-qtdeantid ) / v_vlantid ).

            it_lanca-lancamento = v_vldp_rat.

* << Fim da inclusão

          ENDIF.

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

          v_total = v_total + it_lanca-lancamento.

* << Fim da inclusão

        ELSE.

 

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI023X01

...

 

* >> Início da inclusão:

data: a_qtdantid type /pws/zycie100a-QTDEANTID.

* << Fim da inclusão

DATA: END OF COMMON PART.

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F01

...

 

    LOOP AT itab_zycit485 WHERE adicao EQ wa_it-adicao.

      MOVE itab_zycit485 TO itab_zycit485ad.

      APPEND itab_zycit485ad.

    ENDLOOP.

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

    PERFORM load_unit USING wa_it-meinsantid CHANGING s_umad.

* << Fim da inclusão

    IF sy-dynnr EQ '0050' AND sy-ucomm EQ 'ENTE'.

      CLEAR: sy-ucomm.

      CALL SCREEN '0300'.

    ENDIF.

  ENDIF.

ENDFORM.

...

 

...

 

FORM calc_itab_adic.

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

  CLEAR a_qtdantid.

* << Fim da inclusão

 

...

 

  LOOP AT itab_itb.

    v_idx = itab_itb-seq.

    MOVE itab_itb TO wa_it.

    MOVE-CORRESPONDING: itab_itb TO /pws/zycie100a,

                        itab_itb TO /pws/zycie003.

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

    IF NOT itab_itb-baseantid IS INITIAL.

* << Fim da inclusão

    a_adreco = a_addevi = a_addevi + ( itab_itb-baseantid * (

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

    itab_itb-antidrate / 100 ) ) + ( itab_itb-vlantid *

* << Fim da exclusão

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

      itab_itb-antidrate / 100 ) ) .

    ELSEIF NOT itab_itb-qtdeantid IS INITIAL.

      a_adreco = a_addevi = a_addevi + ( itab_itb-vlantid *

* << Fim da inclusão

    itab_itb-qtdeantid ).

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

    ENDIF.

    a_qtdantid  =  a_qtdantid  + itab_itb-qtdeantid.

* << Fim da inclusão

...

 

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F03

 

...

          ENDIF.

        ENDIF.

        IF p_tipo = 'I'.

          itab_zycit049-vldp_aux = itab_zycit049-vldp_aux + t_ivdes2.

          MODIFY itab_zycit049 TRANSPORTING vldp_aux.

        ENDIF.

      ENDIF.

      t_ivdesp = t_ivdesp + t_ivdes2.

    ENDIF.

  ENDLOOP.

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

  IF NOT itab_it-baseantid IS INITIAL.

    t_ivdesp  = t_ivdesp + ( itab_it-baseantid *

    ( itab_it-antidrate / 100 ) ) .

  ELSEIF NOT itab_it-qtdeantid IS INITIAL.

    t_ivdesp  = t_ivdesp + ( itab_it-vlantid *

    itab_it-qtdeantid ).

  ENDIF.

* << Fim da inclusão

  CLEAR: v_nr_itens, v_desp. CLEAR: itab_zycit100_temp.

  REFRESH itab_zycit100_temp.

  MOVE itab_it[] TO itab_zycit100_temp[].

    READ TABLE itab_zycit100_temp WITH KEY nrseq = itab_it-nrseq

                                           ebeln = itab_it-ebeln

                                           ebelp = itab_it-ebelp.

    IF sy-subrc = 0.

      PERFORM adic_list.

    ENDIF.

 

...

 

...

  DATA: v_programa LIKE /pws/zycit036-origem VALUE 'DI'.

  IF sy-ucomm EQ 'VISUA'.

    v_visualiza = 'X'.

  ENDIF.

  FREE: itab_desp_funcao, itab_zycit036.

  CLEAR: itab_desp_funcao, itab_zycit036.

  LOOP AT itab_zycit049.

    MOVE: itab_zycit049-tpdesp  TO itab_desp_funcao-tpdesp,

          itab_zycit049-vlreal TO itab_desp_funcao-netpr,

          wa_zycbt007-waersb                TO itab_desp_funcao-waers.

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

    READ TABLE itab_zycit100 WITH KEY nrseqdi = itab_zycit049-nrseq.

    MOVE: itab_zycit100-nrseq  TO itab_desp_funcao-nrseq,

          itab_zycit100-ebeln  TO itab_desp_funcao-ebeln,

          itab_zycit100-ebelp  TO itab_desp_funcao-ebelp.

* << Fim da exclusão

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

    READ TABLE itab_it WITH KEY nrseqdi = itab_zycit049-nrseq.

    MOVE: itab_it-nrseq  TO itab_desp_funcao-nrseq,

          itab_it-ebeln  TO itab_desp_funcao-ebeln,

          itab_it-ebelp  TO itab_desp_funcao-ebelp.

* << Fim da inclusão

    APPEND itab_desp_funcao.

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

  ENDLOOP.

  IF itab_zycit100[] IS INITIAL.

    LOOP AT itab_it.

      MOVE-CORRESPONDING itab_it TO itab_zycit100.

      APPEND itab_zycit100.

* << Fim da inclusão

  ENDLOOP.

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

  ENDIF.

* << Fim da inclusão

  MOVE itab_zycit116[] TO itab_adicao[].

  EXPORT itab_adicao TO MEMORY ID 'ADI01'.

  CALL FUNCTION '/PWS/ZYCI_RATEIO_CUSTO'

       EXPORTING

            v_programa    = v_programa

            v_visualiza   = v_visualiza

            v_bukrs       = /pws/zycie085-bukrs

            /pws/zycie085 = /pws/zycie085

       IMPORTING

            v_resposta    = v_resp

...

 

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

Modificações efetuadas em REPS /PWS/MZYCI023F05

 

...

 

FORM fill_antidumping.

  CLEAR a_adreco.

  READ TABLE itab_zycit049 WITH KEY tpdesp =

                 /pws/zycit000-cod_antidump.

  IF sy-subrc EQ 0.

    v_tabix = sy-tabix.

    LOOP AT itab_it.

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

      a_adreco = a_adreco + ( itab_it-baseantid *

      ( itab_it-antidrate / 100 ) ) + ( itab_it-vlantid *

      itab_it-qtdeantid ).

* << Fim da exclusão

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

      IF NOT itab_it-baseantid IS INITIAL.

        a_adreco = a_adreco + ( itab_it-baseantid * (

        itab_it-antidrate / 100 ) ) .

      ELSEIF NOT itab_itb-qtdeantid IS INITIAL.

        a_adreco = a_adreco + ( itab_itb-vlantid *

        itab_itb-qtdeantid ).

      ENDIF.

* << Fim da inclusão

    ENDLOOP.

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

    IF itab_zycit049-vldp IS INITIAL.

* << Fim da exclusão

      itab_zycit049-vlreal = itab_zycit049-vldp   = a_adreco .

      itab_zycit049-waers  = wa_zycbt007-waersb.

      MODIFY itab_zycit049 INDEX v_tabix TRANSPORTING vldp vlreal waers.

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

    ENDIF.

* << Fim da exclusão

  ENDIF.

ENDFORM.

 

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

Modificações efetuadas em REPS /PWS/MZYCI016F01

 

...

 

FORM mensagens_nf.

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

  DATA v_vlantid TYPE /pws/zycit085-vlicms.

* << Fim da inclusão

...

 

...

 

      IF NOT itab_zycit048_m IS INITIAL.

        itab_zycit048_m-bukrs  = itab_zycit085-bukrs.

        itab_zycit048_m-branch =  itab_zycit085-j_1bbranch.

      ENDIF.

    ENDIF.

    IF NOT itab_zycit048_m IS INITIAL.

      APPEND itab_zycit048_m.

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

    ENDIF.

* << Fim da inclusão

    ENDIF.

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

  LOOP AT itab_zycit100.

    IF NOT itab_zycit100-baseantid IS INITIAL.

      v_vlantid = v_vlantid + ( itab_zycit100-baseantid *

      ( itab_zycit100-antidrate / 100 ) ) .

    ELSEIF NOT itab_zycit100-qtdeantid IS INITIAL.

      v_vlantid = v_vlantid + ( itab_zycit100-vlantid *

      itab_zycit100-qtdeantid ).

* << Fim da inclusão

  ENDIF.

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

  ENDLOOP.

* << Fim da inclusão

  IF itab_zycit049_aux_r[] IS INITIAL.

    CLEAR:   itab_zycit019, itab_zycit020.

    REFRESH: itab_zycit019, itab_zycit020.

    SELECT SINGLE land1 FROM t001 INTO t001-land1

              WHERE bukrs EQ /pws/zycie041-bukrs.

...

 

...

        itab_zycit049_aux_r-vldp = itab_zycit049_aux_r-vldp *

         v_taxa_desp.

      ENDIF.

      v_vldp_aux = itab_zycit049_aux_r-vldp.

      LOOP AT itab_zycit003_mark.

        v_idx = sy-tabix.

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

        IF itab_zycit049_aux_r-tpdesp EQ /pws/zycit000-cod_antidump.

          READ TABLE itab_zycit100 WITH KEY

                      ebeln = itab_zycit003_mark-ebeln

                      ebelp = itab_zycit003_mark-ebelp.

          IF sy-subrc EQ '0' AND

          ( NOT itab_zycit100-baseantid IS INITIAL OR

            NOT itab_zycit100-vlantid IS INITIAL ).

            IF NOT itab_zycit100-baseantid IS INITIAL.

              v_vldp = v_vldp + ( ( itab_zycit100-baseantid *

              ( itab_zycit100-antidrate / 100 ) ) / v_vlantid ) *

              itab_zycit049_aux_r-vldp.

            ELSEIF NOT itab_zycit100-qtdeantid IS INITIAL.

              v_vldp = v_vldp +  ( ( itab_zycit100-vlantid *

                  itab_zycit100-qtdeantid  ) / v_vlantid ) *

              itab_zycit049_aux_r-vldp.

            ENDIF.

          ENDIF.

        ELSE.

* << Fim da inclusão

        IF itab_zycit085-waersfob NE itab_zycit003_mark-waers.

          PERFORM taxa_converte USING itab_zycit003_mark-waers

                                      itab_zycit085-dttax

                             CHANGING v_taxa.

          IF NOT v_taxa IS INITIAL.

            itab_zycit003_mark-vlreal =

                  itab_zycit003_mark-vlreal * v_taxa.

            itab_zycit003_mark-netpr  =

                  itab_zycit003_mark-netpr  * v_taxa.

          ENDIF.

...

 

...

                ENDIF.

              ELSE.

                IF NOT itab_zycit003_mark-qtd_itend IS INITIAL.

                  v_vldp  = v_vldp + v_vldp_aux *

                          ( itab_zycit003_mark-vlreal *

                          itab_zycit003_mark-qtd_itend / v_tot_real ).

                ELSE.

                  v_vldp  = v_vldp + v_vldp_aux *

                          ( itab_zycit003_mark-vlreal *

                          itab_zycit003_mark-qtd_iten / v_tot_real ).

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

                  ENDIF.

* << Fim da inclusão

                ENDIF.

              ENDIF.

            ENDIF.

          ENDIF.

        ENDIF.

      ENDLOOP.

    ENDIF.

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

    IF NOT v_vldp IS INITIAL.

* << Fim da inclusão

    MOVE : itab_zycit049_aux_r-descr TO v_descr,

           v_vldp  TO v_vldp_x.

    CONCATENATE v_descr v_tamanho INTO v_descr.

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

   CONCATENATE v_descr v_vldp_x INTO it_zycee006-msg SEPARATED BY space.

* << Fim da exclusão

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

      CONCATENATE v_descr v_vldp_x INTO it_zycee006-msg

      SEPARATED BY space.

* << Fim da inclusão

    APPEND it_zycee006.

    v_ind = v_ind + 1.

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

    ENDIF.

* << Fim da inclusão

    CLEAR v_vldp.

  ENDLOOP.

  CLEAR: v_vlpis, v_vlcofins.

 

...

 

...

 

 

  LOOP AT itab_zycit049_a.

    IF itab_zycit049_a-tpdesp NE /pws/zycit000-cod_sisc OR

       /pws/zycit000-flag_txsisc IS INITIAL OR

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

       /pws/zycit001-tpdecl = 'DSI'.

* << Fim da exclusão

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

       /pws/zycit001-tpdecl = 'DSI' OR

       itab_zycit049_a-tpdesp NE /pws/zycit000-cod_antidump .

* << Fim da inclusão

      CLEAR: v_tot_vldp, v_vldp.

      LOOP AT itab_zycit042_d.

        MOVE sy-tabix TO v_tabix.

        READ TABLE itab_zycit003 WITH KEY

                           nrseq = itab_zycit042_d-nrseq

                           ebeln = itab_zycit042_d-ebeln

                           ebelp = itab_zycit042_d-ebelp.

...

 

...

 

    LOOP AT itab_zycit042_d.

      READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit042_d-nrseq

                                        ebeln = itab_zycit042_d-ebeln

                                        ebelp = itab_zycit042_d-ebelp.

      IF sy-subrc = 0.

        itab_zycit042_d-vldp = itab_zycit042_d-vldp +

                               itab_zycit100-vl_sisco.

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

        MODIFY itab_zycit042_d.

      ENDIF.

    ENDLOOP.

  ENDIF.

  IF NOT /pws/zycit000-cod_antidump IS INITIAL.

    LOOP AT itab_zycit049_a

       WHERE tpdesp = /pws/zycit000-cod_antidump.

      IF itab_zycit049_a-waers NE /pws/zycbt007-waersb.

        PERFORM taxa_converte USING itab_zycit049_a-waers

                                    /pws/zycit085-dttax

                                  CHANGING v_taxa_desp.

        itab_zycit049_a-vldp = itab_zycit049_a-vldp * v_taxa_desp.

      ENDIF.

    ENDLOOP.

    LOOP AT itab_zycit042_d.

      READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit042_d-nrseq

                                        ebeln = itab_zycit042_d-ebeln

                                        ebelp = itab_zycit042_d-ebelp.

      IF sy-subrc = 0 AND ( NOT itab_zycit100-baseantid IS INITIAL OR

                            NOT itab_zycit100-vlantid IS INITIAL ).

        IF NOT itab_zycit100-baseantid IS INITIAL.

          itab_zycit042_d-vldp = itab_zycit042_d-vldp +

       ( itab_zycit100-baseantid * ( itab_zycit100-antidrate / 100 ) ) .

        ELSEIF NOT itab_zycit100-qtdeantid IS INITIAL.

          itab_zycit042_d-vldp = itab_zycit042_d-vldp +

          ( itab_zycit100-vlantid * itab_zycit100-qtdeantid ).

        ENDIF.

* << Fim da inclusão

        MODIFY itab_zycit042_d.

      ENDIF.

    ENDLOOP.

  ENDIF.

  CLEAR:   itab_zycit019, itab_zycit049.

  REFRESH: itab_zycit019, itab_zycit049.

  CLEAR: v_vldp, v_totitem.

 

...

 

...

          LOOP AT itab_zycit042.

          READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit042-nrseq

                                            ebeln = itab_zycit042-ebeln

                                            ebelp = itab_zycit042-ebelp.

            IF sy-subrc = 0.

              itab_zycit042-vldp = itab_zycit042-vldp +

                                 itab_zycit100-vl_sisco.

              MODIFY itab_zycit042.

            ENDIF.

          ENDLOOP.

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

        ENDLOOP.

      ENDIF.

      LOOP AT itab_zycit049

         WHERE tpdesp = /pws/zycit000-cod_antidump.

        IF itab_zycit049-waers NE /pws/zycbt007-waersb.

          PERFORM taxa_converte USING itab_zycit049-waers

                                      /pws/zycit085-dttax

                                    CHANGING v_taxa_desp.

          itab_zycit049-vldp = itab_zycit049-vldp * v_taxa_desp.

        ENDIF.

* << Fim da inclusão

        ENDLOOP.

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

      LOOP AT itab_zycit042.

        READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit042-nrseq

                                          ebeln = itab_zycit042-ebeln

                                          ebelp = itab_zycit042-ebelp.

        IF sy-subrc = 0 AND ( NOT itab_zycit100-baseantid IS INITIAL OR

                              NOT itab_zycit100-vlantid IS INITIAL ).

          IF NOT itab_zycit100-baseantid IS INITIAL.

            itab_zycit042-vldp = itab_zycit042-vldp +

       ( itab_zycit100-baseantid * ( itab_zycit100-antidrate / 100 ) ) .

          ELSEIF NOT itab_zycit100-qtdeantid IS INITIAL.

            itab_zycit042-vldp = itab_zycit042-vldp +

            ( itab_zycit100-vlantid * itab_zycit100-qtdeantid ).

          ENDIF.

          MODIFY itab_zycit042.

* << Fim da inclusão

      ENDIF.

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

      ENDLOOP.

* << Fim da inclusão

    ENDIF.

  ENDIF.

 

 

...

 

...

         WHERE tpdesp = /pws/zycit000-cod_sisc.

          LOOP AT itab_zycit042_d.

        READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit042_d-nrseq

                                          ebeln = itab_zycit042_d-ebeln

                                          ebelp = itab_zycit042_d-ebelp.

            IF sy-subrc = 0.

              itab_zycit042_d-vldpii = itab_zycit042_d-vldpii +

                                 itab_zycit100-vl_sisco.

              MODIFY itab_zycit042_d.

            ENDIF.

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

          ENDLOOP.

* << Fim da inclusão

          ENDLOOP.

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

      ENDIF.

      LOOP AT itab_zycit049

         WHERE tpdesp = /pws/zycit000-cod_antidump.

        IF itab_zycit049-waers NE /pws/zycbt007-waersb.

          PERFORM taxa_converte USING itab_zycit049-waers

                                      /pws/zycit085-dttax

                                    CHANGING v_taxa_desp.

          itab_zycit049-vldp = itab_zycit049-vldp * v_taxa_desp.

        ENDIF.

* << Fim da inclusão

        ENDLOOP.

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

      LOOP AT itab_zycit042_d.

        READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit042_d-nrseq

                                          ebeln = itab_zycit042_d-ebeln

                                          ebelp = itab_zycit042_d-ebelp.

        IF sy-subrc = 0 AND ( NOT itab_zycit100-baseantid IS INITIAL OR

                              NOT itab_zycit100-vlantid IS INITIAL ).

          IF NOT itab_zycit100-baseantid IS INITIAL.

            itab_zycit042_d-vldp = itab_zycit042_d-vldp +

       ( itab_zycit100-baseantid * ( itab_zycit100-antidrate / 100 ) ) .

          ELSEIF NOT itab_zycit100-qtdeantid IS INITIAL.

            itab_zycit042_d-vldp = itab_zycit042_d-vldp +

            ( itab_zycit100-vlantid * itab_zycit100-qtdeantid ).

          ENDIF.

          MODIFY itab_zycit042_d.

* << Fim da inclusão

      ENDIF.

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

      ENDLOOP.

* << Fim da inclusão

    ENDIF.

  ENDIF.

ENDFORM.

 

...