CE PLUS - Nota 004160

Módulo: DRAWBACK

Funcionalidade: Ato Concessório

Data/Hora da Publicação: 12/07/2007 00:00:00

Data/Hora Última Alteração: 01/03/2010 17:38:49

Descrição da Nota: ATO CONCESSÓRIO MOEDA AMERICANA /PWS/ZYCBT007

Sintoma

 

O programa considerava a moeda americana com a sigla USD, fixa no código do programa.

 

Solução

 

O programa foi atualizado para considerar a sigla informada nos parametros do módulo de cambio.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 04160 Data: 12/07/2007 Hora: 09:27:25

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

 

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

Nota Número              : 04160

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00002

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

Texto Rápido:

ATO CONCESSÓRIO MOEDA AMERICANA /PWS/ZYCBT007

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

Palavras Chave:

ATO CONCESSÓRIO MOEDA AMERICANA /PWS/ZYCBT007 WAERSA

 

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

Objetos da nota:

REPS /PWS/MZYCI040F01

REPS /PWS/MZYCI040F02

REPS /PWS/MZYCI040F03

REPS /PWS/MZYCI040I01

REPS /PWS/MZYCI040O01

REPS /PWS/SAPMZYCI040

 

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

Modificações efetuadas em REPS /PWS/MZYCI040F01

 

...

ENDFORM.

FORM move_dados_iniciais.

  IF v_tcode IS INITIAL.

    MOVE sy-tcode TO v_tcode.

  ENDIF.

  IF v_tcode EQ '/PWS/ZYCI040_P' OR v_tcode EQ '/PWS/ZYCI040_N'.

    MOVE '1' TO v_status.

  ELSE.

    MOVE '0' TO v_status.

  ENDIF.

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

  IF NOT /pws/zycie244-bukrs IS INITIAL.

* << Fim da inclusão

  IF wa_zycbt007 IS INITIAL.

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

    SELECT SINGLE * FROM /pws/zycbt007 INTO wa_zycbt007.

* << Fim da exclusão

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

      SELECT SINGLE * FROM /pws/zycbt007 INTO wa_zycbt007

      WHERE bukrs = /pws/zycie244-bukrs .

    ENDIF.

* << Fim da inclusão

  ENDIF.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI040F02

 

...

  IF v_tcode2 IS INITIAL.

    MOVE sy-tcode TO v_tcode2.

  ENDIF.

  IF v_tcode2 EQ '/PWS/ZYCI040_C' OR v_tcode2 EQ '/PWS/ZYCI040_A'.

    MOVE: '1' TO v_status2 ,

          '0' TO v_status2a.

  ELSE.

    MOVE: '0' TO v_status2 ,

          '1' TO v_status2a.

  ENDIF.

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

  IF NOT /pws/zycie244-bukrs IS INITIAL.

* << Fim da inclusão

  IF wa_zycbt007 IS INITIAL.

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

    SELECT SINGLE * FROM /pws/zycbt007 INTO wa_zycbt007.

* << Fim da exclusão

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

      SELECT SINGLE * FROM /pws/zycbt007 INTO wa_zycbt007

      WHERE bukrs = /pws/zycie244-bukrs .

* << Fim da inclusão

  ENDIF.

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

  ENDIF.

* << Fim da inclusão

  IF v_tcode2 EQ '/PWS/ZYCI040_C'.

    IF /pws/zycie244-status IS INITIAL.

      /pws/zycie244-status = 'P'.

    ENDIF.

    IF /pws/zycie244-modalidade IS INITIAL.

      /pws/zycie244-modalidade = 'S'.

      /pws/zycie244-prdporexp  = 'X'.

      /pws/zycie244-prdexport  = ' '.

      /pws/zycie244-prdporforn = 'X'.

      /pws/zycie244-prdfornec  = ' '.

...

 

...

        SELECT kaln1 UP TO 1 ROWS FROM mbew INTO v_kaln1

               WHERE matnr = v_codcomp

                 AND bwkey = /pws/zycie244-werks.

        ENDSELECT.

        IF sy-subrc EQ 0.

          SELECT SINGLE * FROM t001a INTO wat001a

                 WHERE bukrs EQ /pws/zycie244-bukrs.

          CLEAR it_ckmlcr. REFRESH it_ckmlcr.

          SELECT * FROM ckmlcr INTO TABLE it_ckmlcr

                 WHERE kalnr = v_kaln1

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

                   AND waers = 'USD'.

* << Fim da exclusão

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

                   AND waers = wa_zycbt007-waersa.

* << Fim da inclusão

          SORT it_ckmlcr BY bdatj poper ASCENDING.

          DESCRIBE TABLE it_ckmlcr LINES v_ilinhas.

          READ TABLE it_ckmlcr INDEX v_ilinhas.

          IF sy-subrc EQ 0.

            v_netpr_t = it_ckmlcr-stprs / it_ckmlcr-peinh.

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

            v_waers_t = 'USD'.

* << Fim da exclusão

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

            v_waers_t = wa_zycbt007-waersa.

* << Fim da inclusão

          ENDIF.

        ENDIF.

        MOVE v_meins TO itab_zycit245-meins.

        IF itab_zycit245-pctseg IS INITIAL.

          MOVE v_segpct TO itab_zycit245-pctseg.

        ENDIF.

        IF itab_zycit245-netpr IS INITIAL.

          MOVE v_netpr_t TO itab_zycit245-netpr.

        ENDIF.

        IF itab_zycit245-waers IS INITIAL.

...

 

...

        SELECT kaln1 UP TO 1 ROWS FROM mbew INTO v_kaln1

               WHERE matnr = v_codmat

                 AND bwkey = vl_werks.

        ENDSELECT.

        IF sy-subrc EQ 0.

          SELECT SINGLE * FROM t001a INTO wat001a

                 WHERE bukrs EQ /pws/zycie244-bukrs.

          CLEAR it_ckmlcr. REFRESH it_ckmlcr.

          SELECT * FROM ckmlcr INTO TABLE it_ckmlcr

                 WHERE kalnr = v_kaln1

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

                   AND waers = 'USD'.

* << Fim da exclusão

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

                   AND waers = wa_zycbt007-waersa.

* << Fim da inclusão

          SORT it_ckmlcr BY bdatj poper ASCENDING.

          DESCRIBE TABLE it_ckmlcr LINES v_ilinhas.

          READ TABLE it_ckmlcr INDEX v_ilinhas.

          IF sy-subrc EQ 0.

            v_netpr_t = it_ckmlcr-stprs / it_ckmlcr-peinh.

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

            v_waers_t = 'USD'.

* << Fim da exclusão

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

            v_waers_t = wa_zycbt007-waersa.

* << Fim da inclusão

          ENDIF.

        ENDIF.

        SELECT stlan stlnr stlal UP TO 1 ROWS FROM mast

               INTO (v_stlan_t,v_stlnr_t,v_stlal_t)

               WHERE matnr = v_codmat

                 AND werks = vl_werks.

        ENDSELECT.

        SELECT steuc UP TO 1 ROWS FROM marc INTO v_steuc

               WHERE matnr EQ v_codmat

                 AND werks EQ vl_werks.

...

 

...

                itab_zycit003-ntgew    TO itab_zycit246_final-ntgew   ,

                itab_zycit003-waers    TO itab_zycit246_final-waers   ,

                itab_zycit003-netpr    TO itab_zycit246_final-netpr   .

          itab_zycit246_final-ntgew = itab_zycit246_final-ntgew *

                                         itab_di_p-fator.

          PERFORM  converte_um_base   USING itab_zycit246_final-codcomp

                                   CHANGING itab_zycit246_final-meins

                                            itab_zycit246_final-qtd_iten

.

          PERFORM valor_converte_imp USING   itab_zycit085-waersfob

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

                                             'USD'

* << Fim da exclusão

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

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                    CHANGING itab_zycit100-vlfob.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                    CHANGING itab_zycit100-vlfre.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                    CHANGING itab_zycit100-vlseg.

          itab_zycit246_final-vltot   = itab_zycit100-vlfob *

                                         itab_di_p-fator.

          itab_zycit246_final-vlfrete = itab_zycit100-vlfre *

                                         itab_di_p-fator.

          itab_zycit246_final-vlseg   = itab_zycit100-vlseg *

                                         itab_di_p-fator.

          CLEAR itab_zycit282.

          READ TABLE itab_zycit282 WITH KEY

...

 

...

        v_refitm = itab_vbfa-posnn.

        CLEAR: j_1bnflin, j_1bnfdoc.

        SELECT SINGLE * FROM j_1bnflin

            WHERE refkey EQ v_refkey

              AND refitm EQ v_refitm.

        IF sy-subrc EQ 0.

          SELECT SINGLE * FROM j_1bnfdoc

              WHERE docnum EQ j_1bnflin-docnum.

          PERFORM converter_moeda_exp USING j_1bnflin-netpr

                                     j_1bnfdoc-waerk

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

                                     'USD'

* << Fim da exclusão

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

                                     wa_zycbt007-waersa

* << Fim da inclusão

                                     j_1bnfdoc-docdat

                            CHANGING itab_zycit248_final-vlfob.

          MOVE: j_1bnfdoc-docdat TO itab_zycit248_final-dtnf     ,

                j_1bnfdoc-nfnum  TO itab_zycit248_final-nfnum    ,

                j_1bnfdoc-series TO itab_zycit248_final-serie   .

          itab_zycit248_final-vlfob = itab_zycit248_final-vlfob *

                                  itab_zycit248_final-qtd_iten .

          MODIFY itab_zycit248_final.

        ENDIF.

      ENDLOOP.

...

 

...

               v_nrre                 TO itab_zycit248_final-nrre      ,

               itab_zycet001-dtemb    TO itab_zycit248_final-dtemb    ,

               itab_zycet001-dtaverb  TO itab_zycit248_final-dtaverb   ,

               itab_zycet118-vrkme    TO itab_zycit248_final-vrkme     ,

               itab_zycet118-ntgew    TO itab_zycit248_final-ntgew     ,

               itab_zycet118-waers    TO itab_zycit248_final-waersfob  ,

               itab_zycet118-waers    TO itab_zycit248_final-waerscif  ,

               v_waersag              TO itab_zycit248_final-waerscomis.

                PERFORM converter_moeda_exp USING itab_zycet118-vfob

                                           itab_zycet118-waers

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

                                           'USD'

* << Fim da exclusão

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

                                           wa_zycbt007-waersa

* << Fim da inclusão

                                           itab_zycet001-dtemb

                                  CHANGING itab_zycit248_final-vlfob.

               PERFORM converter_moeda_exp USING itab_zycet118-vlagente

                                                    itab_zycet118-waers

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

                                                                  'USD'

* << Fim da exclusão

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

                                                     wa_zycbt007-waersa

* << Fim da inclusão

                                                    itab_zycet001-dtemb

                                   CHANGING itab_zycit248_final-vlcomis.

                itab_zycit248_final-um_ncm  =

                                          itab_zycit248_final-meins.

                itab_zycit248_final-qtd_ncm =

                                          itab_zycit248_final-qtd_iten .

                PERFORM converte_um_ncm USING itab_zycit248_final-matnr

                                    CHANGING itab_zycit248_final-um_ncm

                                                    itab_zycit247-werks

                                            itab_zycit248_final-qtd_ncm.

...

 

...

               v_nrre                 TO itab_zycit248_final-nrre      ,

               itab_zycet001-dtemb    TO itab_zycit248_final-dtemb     ,

               itab_zycet001-dtaverb  TO itab_zycit248_final-dtaverb   ,

               itab_zycet118-vrkme    TO itab_zycit248_final-vrkme     ,

               itab_zycet118-ntgew    TO itab_zycit248_final-ntgew     ,

               itab_zycet118-waers    TO itab_zycit248_final-waersfob  ,

               itab_zycet118-waers    TO itab_zycit248_final-waerscif  ,

               v_waersag              TO itab_zycit248_final-waerscomis.

                PERFORM converter_moeda_exp USING itab_zycet118-vfob

                                           itab_zycet118-waers

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

                                           'USD'

* << Fim da exclusão

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

                                           wa_zycbt007-waersa

* << Fim da inclusão

                                           itab_zycet001-dtemb

                                  CHANGING itab_zycit248_final-vlfob.

               PERFORM converter_moeda_exp USING itab_zycet118-vlagente

                                                    itab_zycet118-waers

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

                                                                  'USD'

* << Fim da exclusão

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

                                                     wa_zycbt007-waersa

* << Fim da inclusão

                                                    itab_zycet001-dtemb

                                   CHANGING itab_zycit248_final-vlcomis.

                itab_zycit248_final-um_ncm  =

                                          itab_zycit248_final-meins.

                itab_zycit248_final-qtd_ncm =

                                          itab_zycit248_final-qtd_iten .

               PERFORM converte_um_ncm USING itab_zycit248_final-codmat

                                    CHANGING itab_zycit248_final-um_ncm

                                                    itab_zycit247-werks

                                            itab_zycit248_final-qtd_ncm.

...

 

...

                codmat   = itab_zycit260-codmat

                vbeln_va = itab_zycit260-vbeln_va

                vbeln_vf = itab_zycit260-vbeln_vf

                posnr    = itab_zycit260-posnr

                codcomp  = itab_zycit260-codcomp.

        ENDIF.

        CLEAR itab_zycit245.

        MOVE itab_zycit260-waers  TO itab_zycit245-waers.

        LOOP AT itab_zycit260 INTO /pws/zycie260

                              WHERE waers NE itab_zycit245-waers.

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

          itab_zycit245-waers = 'USD'.

* << Fim da exclusão

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

          itab_zycit245-waers = wa_zycbt007-waersa.

* << Fim da inclusão

          EXIT.

        ENDLOOP.

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

        IF itab_zycit245-waers = 'USD'.

* << Fim da exclusão

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

        IF itab_zycit245-waers = wa_zycbt007-waersa.

* << Fim da inclusão

          MOVE: itab_zycit260-vlfob   TO itab_zycit245-netpr_t .

        ELSE.

...

 

...

        SELECT SINGLE kaln1  FROM mbew INTO v_kaln1

               WHERE matnr = itab_zycit245-codcomp

                 AND bwkey = itab_zycit245-werks.

      ENDIF.

      IF sy-subrc EQ 0.

        SELECT SINGLE * FROM t001a INTO wat001a

               WHERE bukrs EQ /pws/zycie244-bukrs.

        CLEAR it_ckmlcr. REFRESH it_ckmlcr.

        SELECT * FROM ckmlcr INTO TABLE it_ckmlcr

               WHERE kalnr = v_kaln1

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

                   AND waers = 'USD'.

* << Fim da exclusão

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

                   AND waers = wa_zycbt007-waersa.

* << Fim da inclusão

        SORT it_ckmlcr BY bdatj poper ASCENDING.

        DESCRIBE TABLE it_ckmlcr LINES v_ilinhas.

        READ TABLE it_ckmlcr INDEX v_ilinhas.

        IF sy-subrc EQ 0 AND itab_zycit245-netpr IS INITIAL.

          itab_zycit245-netpr = it_ckmlcr-stprs  / it_ckmlcr-peinh.

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

          itab_zycit245-waers = 'USD'.

* << Fim da exclusão

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

          itab_zycit245-waers = wa_zycbt007-waersa.

* << Fim da inclusão

        ENDIF.

      ENDIF.

      SELECT SINGLE a~steuc INTO itab_marc-steuc

             FROM ( marc AS a INNER JOIN t001w AS b ON

                    a~werks EQ b~werks )

             WHERE a~matnr EQ itab_zycit245-codcomp

               AND a~steuc NE space

               AND b~land1 EQ t001-land1.

      IF sy-subrc EQ 0.

        MOVE itab_marc-steuc TO itab_zycit245-j_1bnbm.

...

 

...

        SELECT SINGLE kaln1  FROM mbew INTO v_kaln1

               WHERE matnr = itab_zycit245-codcomp

                 AND bwkey = itab_zycit245-werks.

      ENDIF.

      IF sy-subrc EQ 0.

        SELECT SINGLE * FROM t001a INTO wat001a

               WHERE bukrs EQ /pws/zycie244-bukrs.

        CLEAR it_ckmlcr. REFRESH it_ckmlcr.

        SELECT * FROM ckmlcr INTO TABLE it_ckmlcr

               WHERE kalnr = v_kaln1

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

                   AND waers = 'USD'.

* << Fim da exclusão

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

                   AND waers = wa_zycbt007-waersa.

* << Fim da inclusão

        SORT it_ckmlcr BY bdatj poper ASCENDING.

        DESCRIBE TABLE it_ckmlcr LINES v_ilinhas.

        READ TABLE it_ckmlcr INDEX v_ilinhas.

        IF sy-subrc EQ 0.

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

          itab_zycit245-waers = 'USD'.

* << Fim da exclusão

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

          itab_zycit245-waers = wa_zycbt007-waersa.

* << Fim da inclusão

        ENDIF.

        IF itab_zycit245-netpr IS INITIAL.

          itab_zycit245-netpr = it_ckmlcr-stprs / it_ckmlcr-peinh.

        ENDIF.

      ENDIF.

      SELECT SINGLE a~steuc INTO itab_marc-steuc

             FROM ( marc AS a INNER JOIN t001w AS b ON

                    a~werks EQ b~werks )

             WHERE a~matnr EQ itab_zycit245-codcomp

               AND a~steuc NE space

...

 

...

    SELECT SINGLE * FROM t001a INTO wat001a

           WHERE bukrs EQ /pws/zycie244-bukrs.

    SELECT kaln1 UP TO 1 ROWS FROM mbew INTO v_kaln1

           WHERE matnr = /pws/zycie247-codmat

             AND bwkey = vl_werks.

    ENDSELECT.

    IF sy-subrc EQ 0.

      CLEAR it_ckmlcr. REFRESH it_ckmlcr.

      SELECT * FROM ckmlcr INTO TABLE it_ckmlcr

             WHERE kalnr = v_kaln1

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

                   AND waers = 'USD'.

* << Fim da exclusão

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

                   AND waers = wa_zycbt007-waersa.

* << Fim da inclusão

      SORT it_ckmlcr BY bdatj poper ASCENDING.

      DESCRIBE TABLE it_ckmlcr LINES v_ilinhas.

      READ TABLE it_ckmlcr INDEX v_ilinhas.

      IF sy-subrc EQ 0.

        v_netpr_t = it_ckmlcr-stprs / it_ckmlcr-peinh.

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

        v_waers_t = 'USD'.

* << Fim da exclusão

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

        v_waers_t = wa_zycbt007-waersa.

* << Fim da inclusão

      ENDIF.

    ENDIF.

    SELECT SINGLE a~steuc INTO v_steuc

           FROM ( marc AS a INNER JOIN t001w AS b ON

                  a~werks EQ b~werks )

           WHERE a~matnr EQ /pws/zycie247-codmat

             AND a~steuc NE space

             AND b~land1 EQ t001-land1.

    IF /pws/zycie247-meins IS INITIAL.

      MOVE v_meins TO /pws/zycie247-meins.

...

 

...

                itab_zycit003-netpr    TO itab_zycit246_final-netpr   .

          itab_zycit246_final-ntgew = itab_zycit246_final-ntgew *

                                         itab_di_p-fator.

          itab_zycit246_final-qtd_ncm = itab_zycit279-menge .

          itab_zycit246_final-um_ncm = itab_zycit279-meins .

          PERFORM  converte_um_base   USING itab_zycit279-matnr

                                   CHANGING itab_zycit246_final-meins

                                            itab_zycit246_final-qtd_iten

.

          PERFORM valor_converte_imp USING   itab_zycit085-waersfob

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

                                             'USD'

* << Fim da exclusão

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

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                    CHANGING itab_zycit100-vlfob.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                    CHANGING itab_zycit100-vlfre.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                    CHANGING itab_zycit100-vlseg.

          itab_zycit246_final-vltot   = itab_zycit100-vlfob *

                                         itab_di_p-fator.

          itab_zycit246_final-vlfrete = itab_zycit100-vlfre *

                                         itab_di_p-fator.

          itab_zycit246_final-vlseg   = itab_zycit100-vlseg *

                                         itab_di_p-fator.

          CLEAR itab_zycit282.

          READ TABLE itab_zycit282 WITH KEY

...

 

...

      v_refitm = itab_vbfa-posnn.

      CLEAR: j_1bnflin, j_1bnfdoc.

      SELECT SINGLE * FROM j_1bnflin

          WHERE refkey EQ v_refkey

            AND refitm EQ v_refitm.

      IF sy-subrc EQ 0.

        SELECT SINGLE * FROM j_1bnfdoc

            WHERE docnum EQ j_1bnflin-docnum.

        PERFORM converter_moeda_exp USING j_1bnflin-netpr

                                   j_1bnfdoc-waerk

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

                                   'USD'

* << Fim da exclusão

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

                                   wa_zycbt007-waersa

* << Fim da inclusão

                                   j_1bnfdoc-docdat

                          CHANGING itab_zycit248_final-vlfob.

        MOVE: j_1bnfdoc-docdat TO itab_zycit248_final-dtnf     ,

              j_1bnfdoc-nfnum  TO itab_zycit248_final-nfnum    ,

              j_1bnfdoc-series TO itab_zycit248_final-serie   .

        itab_zycit248_final-vlfob = itab_zycit248_final-vlfob *

                                itab_zycit248_final-qtd_iten .

        MODIFY itab_zycit248_final.

      ENDIF.

    ENDLOOP.

...

 

...

    AND v_centro IS INITIAL.

      itab_zycit247-werks    = /pws/zycit421-werks  .

    ENDIF.

    itab_zycit247-agrup    = /pws/zycie247-agrup.

    itab_zycit247-stlan    = /pws/zycie247-stlan   .

    itab_zycit247-stlnr    = /pws/zycie247-stlnr   .

    itab_zycit247-stlal    = /pws/zycit421-stlal   .

    itab_zycit247-tolling  = /pws/zycie247-tolling   .

    itab_zycit247-meins    = /pws/zycit421-meins   .

    itab_zycit247-qtd_iten = /pws/zycie247-qtd_iten.

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

    itab_zycit247-waers    = 'USD'   .

* << Fim da exclusão

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

    itab_zycit247-waers    = wa_zycbt007-waersa   .

* << Fim da inclusão

    itab_zycit247-netpr    = /pws/zycie247-netpr   .

    itab_zycit247-vl_frete = /pws/zycie247-vl_frete.

    itab_zycit247-pctcomis = /pws/zycie247-pctcomis.

    itab_zycit247-vl_comis = /pws/zycie247-vl_comis.

    itab_zycit247-gewei    = /pws/zycie247-gewei   .

    itab_zycit247-brgew    = /pws/zycie247-brgew   .

    itab_zycit247-ntgew    = /pws/zycie247-ntgew   .

    itab_zycit247-j_1bnbm  = /pws/zycie247-j_1bnbm .

    itab_zycit247-qtd_ncm  = /pws/zycie247-qtd_ncm.

    itab_zycit247-markme   = markme           .

...

 

...

    itab_zycit247-nritem   = /pws/zycie247-nritem  .

    itab_zycit247-codmat   = /pws/zycie247-codmat  .

    itab_zycit247-tolling    = /pws/zycie247-tolling   .

    itab_zycit247-werks    = /pws/zycit421-werks  .

    itab_zycit247-agrup    = /pws/zycie247-agrup.

    itab_zycit247-stlan    = /pws/zycie247-stlan   .

    itab_zycit247-stlnr    = /pws/zycie247-stlnr   .

    itab_zycit247-stlal    = /pws/zycit421-stlal   .

    itab_zycit247-meins    = /pws/zycit421-meins   .

    itab_zycit247-qtd_iten = /pws/zycie247-qtd_iten.

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

    itab_zycit247-waers    = 'USD'   .

* << Fim da exclusão

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

    itab_zycit247-waers    = wa_zycbt007-waersa   .

* << Fim da inclusão

    itab_zycit247-netpr    = /pws/zycie247-netpr   .

    itab_zycit247-vl_frete = /pws/zycie247-vl_frete.

    itab_zycit247-pctcomis = /pws/zycie247-pctcomis.

    itab_zycit247-vl_comis = /pws/zycie247-vl_comis.

    itab_zycit247-gewei    = /pws/zycie247-gewei   .

    itab_zycit247-brgew    = /pws/zycie247-brgew   .

    itab_zycit247-ntgew    = /pws/zycie247-ntgew   .

    itab_zycit247-j_1bnbm  = /pws/zycie247-j_1bnbm .

    itab_zycit247-qtd_ncm  = /pws/zycie247-qtd_ncm.

    itab_zycit247-markme   = markme           .

...

 

...

      SELECT kaln1 UP TO 1 ROWS FROM mbew INTO v_kaln1

             WHERE matnr = itab_zycit245-codcomp

               AND bwkey = itab_zycit245-werks.

      ENDSELECT.

      IF sy-subrc EQ 0.

        SELECT SINGLE * FROM t001a INTO wat001a

               WHERE bukrs EQ /pws/zycie244-bukrs.

        CLEAR it_ckmlcr. REFRESH it_ckmlcr.

        SELECT * FROM ckmlcr INTO TABLE it_ckmlcr

               WHERE kalnr = v_kaln1

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

                   AND waers = 'USD'.

* << Fim da exclusão

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

                   AND waers = wa_zycbt007-waersa.

* << Fim da inclusão

        SORT it_ckmlcr BY bdatj poper ASCENDING.

        DESCRIBE TABLE it_ckmlcr LINES v_ilinhas.

        READ TABLE it_ckmlcr INDEX v_ilinhas.

        IF sy-subrc EQ 0.

          itab_zycit245-netpr = it_ckmlcr-stprs / it_ckmlcr-peinh.

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

          itab_zycit245-waers = 'USD'.

* << Fim da exclusão

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

          itab_zycit245-waers = wa_zycbt007-waersa.

* << Fim da inclusão

        ENDIF.

      ENDIF.

      READ TABLE itab_marc WITH KEY matnr = itab_zycit245-codcomp

                                    werks = itab_zycit245-werks.

      IF sy-subrc EQ 0.

        MOVE itab_marc-steuc TO itab_zycit245-j_1bnbm.

      ENDIF.

      itab_zycit245-netpr_t =

          ( itab_zycit245-netpr * itab_zycit245-qtd_tot ).

      itab_zycit245-pctseg = v_segpct.

...

 

...

         v_taxa    LIKE /pws/zycit174-txconver,

         v_taxa2   LIKE /pws/zycit174-txconver.

  SELECT SINGLE /pws/codmo FROM tcurc INTO v_origem WHERE

         waers = p_waersde.

  IF sy-subrc EQ 0.

    CLEAR v_taxa.

    SELECT SINGLE txconver FROM /pws/zycit174 INTO v_taxa WHERE

           codconver = v_origem    AND

           vigen_inicio <= p_data AND

           vigen_fim    >= p_data .

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

    IF sy-subrc NE 0 AND p_waersde EQ /pws/zycbt007-waersb.

* << Fim da exclusão

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

    IF sy-subrc NE 0 AND p_waersde EQ wa_zycbt007-waersb.

* << Fim da inclusão

      v_taxa = 1.

    ENDIF.

  ENDIF.

  SELECT SINGLE /pws/codmo FROM tcurc INTO v_destino WHERE

         waers = p_waerspara.

  IF sy-subrc EQ 0.

    CLEAR v_taxa2.

    SELECT SINGLE txconver FROM /pws/zycit174 INTO v_taxa2 WHERE

           codconver = v_destino    AND

           vigen_inicio <= p_data AND

...

 

...

                           ebelp  = itab_zycit246_final-ebelp

                           docnum = itab_zycit246_final-docnum

                           lote   = itab_zycit246_final-lote.

    itab_zycit246_final-i_vlcif_me =

             itab_zycit246_final-vltot +

             itab_zycit246_final-vlfrete +

             itab_zycit246_final-vlseg.

    itab_zycit246_final-i_indice = v_propor =

                ( itab_zycit246_final-qtd_nacion /

                              itab_zycit246_final-qtd_ncm ).

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

    itab_zycit246_final-i_waerscifme = 'USD'.

    itab_zycit246_final-i_waerscifmi = /pws/zycbt007-waersb.

* << Fim da exclusão

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

    itab_zycit246_final-i_waerscifme = wa_zycbt007-waersa.

    itab_zycit246_final-i_waerscifmi = wa_zycbt007-waersb.

* << Fim da inclusão

    itab_zycit246_final-i_vlcif_mi   =

                   itab_zycit246_final-i_vlcif_me *

                            itab_zycit246_final-i_txmoeda.

    itab_zycit246_final-i_vlcifn_mi  =

       itab_zycit246_final-i_vlcif_mi *

         ( itab_zycit246_final-qtd_nacion /

                      itab_zycit246_final-qtd_ncm ).

    itab_zycit246_final-vlcifn_me = itab_zycit246_final-i_vlcif_me *

    ( itab_zycit246_final-qtd_nacion / itab_zycit246_final-qtd_ncm ).

    CLEAR v_datatx.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI040F03

 

...

              itab_zycet002-vlfrete_r TO itab_det_exp_final-vlfre   ,

              itab_j_1bnflin-meins    TO itab_det_exp_final-meins   ,

              itab_j_1bnflin-menge    TO itab_det_exp_final-qtd_iten,

              itab_re_final-waers     TO itab_det_exp_final-waersfob,

              itab_re_final-waers     TO itab_det_exp_final-waerscif,

              itab_re_final-vfob      TO itab_det_exp_final-vlfob   ,

              itab_re_final-waers     TO itab_det_exp_final-waersemb,

              itab_re_final-vfob      TO itab_det_exp_final-vlfobemb,

              itab_re_final-netpr     TO itab_det_exp_final-vlcif   ,

              v_nrre_temp             TO itab_det_exp_final-nrre    .

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

            itab_det_exp_final-waersfre = 'USD'.

* << Fim da exclusão

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

            itab_det_exp_final-waersfre = wa_zycbt007-waersa.

* << Fim da inclusão

            SELECT SINGLE * FROM mara

             INTO mara

              WHERE matnr EQ itab_re_final-matnr.

            MOVE mara-gewei TO itab_det_exp_final-gewei.

            READ TABLE itab_mess_un WITH KEY meins =

                                               itab_det_exp_final-meins

                                      matnr = itab_det_exp_final-codmat.

            IF sy-subrc EQ 0.

              CONTINUE.

            ENDIF.

...

 

...

                                           itab_det_exp_final-qtd_iten.

            IF itab_det_exp_final-qtd_iten IS INITIAL.

              itab_mess_un-meins = itab_det_exp_final-meins.

              itab_mess_un-matnr = itab_det_exp_final-codmat.

              APPEND itab_mess_un.

              CONTINUE.

            ENDIF.

            PERFORM converter_moeda_exp USING

                                         itab_det_exp_final-vlfre

                                         itab_det_exp_final-waersfob

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

                                         'USD'

* << Fim da exclusão

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

                                         wa_zycbt007-waersa

* << Fim da inclusão

                                         itab_det_exp_final-dtemb

                                     CHANGING

                                         itab_det_exp_final-vlfre.

            PERFORM converter_moeda_exp USING

                                         itab_det_exp_final-vlfob

                                         itab_det_exp_final-waersfob

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

                                         'USD'

* << Fim da exclusão

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

                                         wa_zycbt007-waersa

* << Fim da inclusão

                                         itab_det_exp_final-dtemb

                                     CHANGING

                                         itab_det_exp_final-vlfob.

            PERFORM converter_moeda_exp USING

                                         itab_re_final-vlagente

                                         itab_det_exp_final-waersfob

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

                                         'USD'

* << Fim da exclusão

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

                                         wa_zycbt007-waersa

* << Fim da inclusão

                                         itab_det_exp_final-dtemb

                                     CHANGING

                                         itab_det_exp_final-vlcomis.

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

            itab_det_exp_final-waersfob = 'USD'.

* << Fim da exclusão

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

            itab_det_exp_final-waersfob = wa_zycbt007-waersa.

* << Fim da inclusão

            SELECT SINGLE steuc

...

 

...

          ELSEIF itab_zycit001-inco1 EQ 'CFR'.

            itab_di_final-vlfob_u = ( itab_zycit003-vlreal +

                     itab_zycit003-vlfre_fat ) - itab_zycit100-vlfre.

          ELSEIF itab_zycit001-inco1 EQ 'CIF'.

            itab_di_final-vlfob_u = ( ( itab_zycit003-vlreal +

                itab_zycit003-vlfre_fat + itab_zycit003-vlseg_fat ) -

                         itab_zycit100-vlfre ) - itab_zycit100-vlseg.

          ELSE.

            itab_di_final-vlfob_u = itab_zycit003-vlreal.

          ENDIF.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                  CHANGING itab_di_final-vlfrete.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                    CHANGING itab_di_final-vlseg.

          itab_di_final-vlfrete = itab_di_final-vlfrete /

                                  itab_zycit003-qtd_iten.

          itab_di_final-vlseg   = itab_di_final-vlseg /

                                  itab_zycit003-qtd_iten.

          CHECK itab_di_final-vlfob_u > 0.

          itab_di_final-i_vlcif_me = itab_di_final-vlfob_u.

          itab_di_final-i_vlcif_mi =

                 itab_di_final-i_vlcif_me * itab_di_final-i_txmoeda.

...

 

...

                        itab_di_final-sdo_qtd - itab_di_final-sdo_qtd.

              ENDIF.

              itab_di_final-vlfrete_t = itab_di_final-vlfrete *

                                              itab_di_final-qtd_vinc.

              itab_di_final-vlseg_t   = itab_di_final-vlseg *

                                              itab_di_final-qtd_vinc.

              itab_di_final-vlfob_t = itab_di_final-vlfob_u *

                                               itab_di_final-qtd_vinc.

              itab_di_final-vlfob = itab_di_final-vlfob_t.

              PERFORM valor_converte_imp USING itab_zycit085-waersfob

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

                                                 'USD'

* << Fim da exclusão

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

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                        CHANGING itab_di_final-vlfob.

              itab_di_final-i_vlcifn_mi =

               ( itab_di_final-vlfob_t * itab_di_final-i_txmoeda ).

              v_perc_vinc =

                        itab_di_final-qtd_vinc / itab_di_final-qtd_di.

              itab_di_final-vlpis =

                      v_perc_vinc * itab_zycit100-vlpis.

              itab_di_final-vlcofins =

                      v_perc_vinc * itab_zycit100-vlcofins.

              itab_di_final-vlafrmm = itab_di_final-vlfrete_t *

                                                        ( 25 / 100 ).

              itab_di_final-afrmm = '25'.

              itab_di_final-i_vlii =

                      v_perc_vinc * itab_zycit100-vlii.

              itab_di_final-i_vlipi =

                      v_perc_vinc * itab_zycit100-vlipi.

              itab_di_final-i_vlicms =

                      v_perc_vinc * itab_zycit100-vlicms.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-vlpis.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                     CHANGING itab_di_final-vlcofins.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-i_vlii.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-i_vlipi.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                     CHANGING itab_di_final-i_vlicms.

              itab_di_final-t_benef =

                         itab_di_final-i_vlii + itab_di_final-i_vlipi.

              itab_comp_vinc_final-qtd_stotal =

                                    itab_comp_vinc_final-qtd_stotal -

                                               itab_di_final-qtd_vinc.

              MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal

                     WHERE nrseqre  = itab_comp_vinc_final-nrseqre

                       AND nrseq    = itab_comp_vinc_final-nrseq

...

 

...

                       itab_di_final-sdo_qtd - itab_di_final-qtd_vinc.

              ENDIF.

              itab_di_final-vlfrete_t = itab_di_final-vlfrete *

                                               itab_di_final-qtd_vinc.

              itab_di_final-vlseg_t   = itab_di_final-vlseg *

                                               itab_di_final-qtd_vinc.

              itab_di_final-vlfob_t = itab_di_final-vlfob_u *

                                               itab_di_final-qtd_vinc.

              itab_di_final-vlfob = itab_di_final-vlfob_t.

              PERFORM valor_converte_imp USING itab_zycit085-waersfob

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

                                                 'USD'

* << Fim da exclusão

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

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                        CHANGING itab_di_final-vlfob.

              itab_di_final-i_vlcifn_mi =

                  ( itab_di_final-vlfob_t * itab_di_final-i_txmoeda ).

              v_perc_vinc =

                        itab_di_final-qtd_vinc / itab_di_final-qtd_di.

              itab_di_final-vlpis =

                      v_perc_vinc * itab_zycit100-vlpis.

              itab_di_final-vlcofins =

                      v_perc_vinc * itab_zycit100-vlcofins.

              itab_di_final-vlafrmm = itab_di_final-vlfrete_t *

                                                        ( 25 / 100 ).

              itab_di_final-afrmm = '25'.

              itab_di_final-i_vlii =

                      v_perc_vinc * itab_zycit100-vlii.

              itab_di_final-i_vlipi =

                      v_perc_vinc * itab_zycit100-vlipi.

              itab_di_final-i_vlicms =

                      v_perc_vinc * itab_zycit100-vlicms.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-vlpis.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                     CHANGING itab_di_final-vlcofins.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-i_vlii.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-i_vlipi.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                     CHANGING itab_di_final-i_vlicms.

              itab_di_final-t_benef =

                         itab_di_final-i_vlii + itab_di_final-i_vlipi.

              itab_comp_vinc_final-qtd_stotal =

                                    itab_comp_vinc_final-qtd_stotal -

                                               itab_di_final-qtd_vinc.

              MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal

                     WHERE nrseqre  = itab_comp_vinc_final-nrseqre

                       AND nrseq    = itab_comp_vinc_final-nrseq

...

 

...

          ELSEIF itab_zycit001-inco1 EQ 'CFR'.

            itab_di_final-vlfob_u = ( itab_zycit003-vlreal +

                     itab_zycit003-vlfre_fat ) - itab_zycit100-vlfre.

          ELSEIF itab_zycit001-inco1 EQ 'CIF'.

            itab_di_final-vlfob_u = ( ( itab_zycit003-vlreal +

                itab_zycit003-vlfre_fat + itab_zycit003-vlseg_fat ) -

                         itab_zycit100-vlfre ) - itab_zycit100-vlseg.

          ELSE.

            itab_di_final-vlfob_u = itab_zycit003-vlreal.

          ENDIF.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                  CHANGING itab_di_final-vlfrete.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                    CHANGING itab_di_final-vlseg.

          itab_di_final-vlfrete = itab_di_final-vlfrete /

                                  itab_zycit003-qtd_iten.

          itab_di_final-vlseg   = itab_di_final-vlseg /

                                  itab_zycit003-qtd_iten.

          CHECK itab_di_final-vlfob_u > 0.

          itab_di_final-i_vlcif_me = itab_di_final-vlfob_u.

          itab_di_final-i_vlcif_mi =

                 itab_di_final-i_vlcif_me * itab_di_final-i_txmoeda.

...

 

...

              itab_di_final-ntgew = itab_di_final-ntgew * v_fator_conv.

              itab_di_final-brgew = itab_di_final-brgew * v_fator_conv.

              itab_di_final-vlfrete_t = itab_di_final-vlfrete *

                                               itab_di_final-qtd_vinc.

              itab_di_final-vlseg_t   = itab_di_final-vlseg *

                                               itab_di_final-qtd_vinc.

              itab_di_final-vlfob_t = itab_di_final-vlfob_u *

                                              itab_di_final-qtd_vinc.

              itab_di_final-vlfob = itab_di_final-vlfob_t.

              PERFORM valor_converte_imp USING itab_zycit085-waersfob

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

                                                 'USD'

* << Fim da exclusão

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

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                        CHANGING itab_di_final-vlfob.

              itab_di_final-i_vlcifn_mi =

                  ( itab_di_final-vlfob_t * itab_di_final-i_txmoeda ).

              v_perc_vinc =

                        itab_di_final-qtd_vinc / itab_di_final-qtd_di.

              itab_di_final-vlpis =

                      v_perc_vinc * itab_zycit100-vlpis.

              itab_di_final-vlcofins =

                      v_perc_vinc * itab_zycit100-vlcofins.

              itab_di_final-vlafrmm = itab_di_final-vlfrete_t *

                                                        ( 25 / 100 ).

              itab_di_final-afrmm = '25'.

              itab_di_final-i_vlii =

                      v_perc_vinc * itab_zycit100-vlii.

              itab_di_final-i_vlipi =

                      v_perc_vinc * itab_zycit100-vlipi.

              itab_di_final-i_vlicms =

                      v_perc_vinc * itab_zycit100-vlicms.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-vlpis.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                     CHANGING itab_di_final-vlcofins.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-i_vlii.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-i_vlipi.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                     CHANGING itab_di_final-i_vlicms.

              itab_di_final-t_benef =

                         itab_di_final-i_vlii + itab_di_final-i_vlipi.

              itab_comp_vinc_final-qtd_stotal =

                                    itab_comp_vinc_final-qtd_stotal -

                                               itab_di_final-qtd_vinc.

              MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal

                     WHERE nrseqre  = itab_comp_vinc_final-nrseqre

                       AND nrseq    = itab_comp_vinc_final-nrseq

...

 

...

                       itab_di_final-sdo_qtd - itab_di_final-qtd_vinc.

              ENDIF.

              itab_di_final-vlfrete_t = itab_di_final-vlfrete *

                                               itab_di_final-qtd_vinc.

              itab_di_final-vlseg_t   = itab_di_final-vlseg *

                                               itab_di_final-qtd_vinc.

              itab_di_final-vlfob_t = itab_di_final-vlfob_u *

                                              itab_di_final-qtd_vinc.

              itab_di_final-vlfob = itab_di_final-vlfob_t.

              PERFORM valor_converte_imp USING itab_zycit085-waersfob

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

                                                 'USD'

* << Fim da exclusão

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

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                        CHANGING itab_di_final-vlfob.

              itab_di_final-i_vlcifn_mi =

                  ( itab_di_final-vlfob_t * itab_di_final-i_txmoeda ).

              v_perc_vinc =

                        itab_di_final-qtd_vinc / itab_di_final-qtd_di.

              itab_di_final-vlpis =

                      v_perc_vinc * itab_zycit100-vlpis.

              itab_di_final-vlcofins =

                      v_perc_vinc * itab_zycit100-vlcofins.

              itab_di_final-vlafrmm = itab_di_final-vlfrete_t *

                                                        ( 25 / 100 ).

              itab_di_final-afrmm = '25'.

              itab_di_final-i_vlii =

                      v_perc_vinc * itab_zycit100-vlii.

              itab_di_final-i_vlipi =

                      v_perc_vinc * itab_zycit100-vlipi.

              itab_di_final-i_vlicms =

                      v_perc_vinc * itab_zycit100-vlicms.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-vlpis.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                     CHANGING itab_di_final-vlcofins.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-i_vlii.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                      CHANGING itab_di_final-i_vlipi.

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

              PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                                 'USD'

* << Fim da exclusão

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

              PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                                 wa_zycbt007-waersa

* << Fim da inclusão

                                                 itab_zycit085-dttax

                                     CHANGING itab_di_final-i_vlicms.

              itab_di_final-t_benef =

                         itab_di_final-i_vlii + itab_di_final-i_vlipi.

              itab_comp_vinc_final-qtd_stotal =

                                    itab_comp_vinc_final-qtd_stotal -

                                               itab_di_final-qtd_vinc.

              MODIFY itab_comp_vinc_final TRANSPORTING qtd_stotal

                     WHERE nrseqre  = itab_comp_vinc_final-nrseqre

                       AND nrseq    = itab_comp_vinc_final-nrseq

...

 

...

    SELECT SINGLE ntgew brgew

     FROM mara INTO (mara-ntgew,mara-brgew)

      WHERE matnr = itab_di_final-codmat.

    itab_di_final-ntgew =

    ( mara-ntgew * itab_di_final-qtd_vinc ).

    itab_di_final-brgew =

    ( mara-brgew * itab_di_final-qtd_vinc ).

    READ TABLE itab_zycit085 WITH KEY nrseqdi = itab_di_final-nrdi.

    IF sy-subrc = 0.

      PERFORM valor_converte_imp USING itab_zycit085-waersfob

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

                                         'USD'

* << Fim da exclusão

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

                                         wa_zycbt007-waersa

* << Fim da inclusão

                                         itab_zycit085-dttax

                                CHANGING itab_di_final-vlfob.

    ENDIF.

    MODIFY itab_di_final INDEX v_tabix.

  ENDLOOP.

ENDFORM.

FORM check_fields_screen_0310.

  LOOP AT tc_di3-cols INTO wa_cols3.

    IF wa_cols3-screen-group1 NE 'NEX'.

      wa_cols3-screen-input = v_status3.

...

 

...

      v_vltot227 = v_vltot227 + itab_zycit432_aux-vl_itnf.

      MODIFY itab_zycit432_aux.

    ENDLOOP.

  ENDIF.

  itab_zycit432[] = itab_zycit432_aux[].

  PERFORM busca_status_intermed.

  MODIFY /pws/zycit432 FROM TABLE itab_zycit432.

  COMMIT WORK.

  PERFORM converter_moeda_exp USING itab_zycit427-vlfob_t

                             itab_zycit427-waers

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

                             /pws/zycbt007-waersb

* << Fim da exclusão

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

                             wa_zycbt007-waersb

* << Fim da inclusão

                             sy-datum

                    CHANGING v_valor227_temp.

  v_saldo227 = itab_zycit427-qtd_iten - v_qtd_tot227.

  v_vlsaldo227 = v_valor227_temp - v_vltot227.

ENDFORM.

FORM busca_status_intermed.

  FREE: itab_zycit373.

  DATA: v_saldo     LIKE itab_zycit373-qtd_apro,

        v_saldo_aux LIKE itab_zycit373-qtd_apro.

  IF NOT itab_zycit432[] IS INITIAL.

...

 

...

    READ TABLE itab_zycit279_ap WITH KEY

                                        nrseq = itab_zycit246-nrseq

                                        ebeln = itab_zycit246-ebeln

                                        ebelp = itab_zycit246-ebelp.

    itab_zycit246-i_vlcif_me =

             itab_zycit246-vltot +

             itab_zycit246-vlfrete +

             itab_zycit246-vlseg.

    itab_zycit246-i_indice = v_propor =

                ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

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

    itab_zycit246-i_waerscifme = 'USD'.

    itab_zycit246-i_waerscifmi = /pws/zycbt007-waersb.

* << Fim da exclusão

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

    itab_zycit246-i_waerscifme = wa_zycbt007-waersa.

    itab_zycit246-i_waerscifmi = wa_zycbt007-waersb.

* << Fim da inclusão

    itab_zycit246-i_vlcif_mi   =

                   itab_zycit246-i_vlcif_me * itab_zycit246-i_txmoeda.

    itab_zycit246-i_vlcifn_mi  =

       itab_zycit246-i_vlcif_mi *

         ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

    itab_zycit246-vlcifn_me = itab_zycit246-i_vlcif_me *

         ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

    CLEAR v_datatx.

    CLEAR itab_zycit435. REFRESH itab_zycit435.

    SELECT * FROM /pws/zycit435 INTO TABLE itab_zycit435.

...

 

...

    IF itab_zycit246-qtd_nacion <= itab_zycit246-qtd_ncm AND

       itab_zycit246-qtd_nacion > 0  AND

       NOT itab_zycit246-i_txselic IS INITIAL.

      CLEAR: itab_zycit279_ap.

      itab_zycit246-i_vlcif_me =

               itab_zycit246-vltot +

               itab_zycit246-vlfrete +

               itab_zycit246-vlseg.

      itab_zycit246-i_indice = v_propor =

                  ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

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

      itab_zycit246-i_waerscifme = 'USD'.

      itab_zycit246-i_waerscifmi = /pws/zycbt007-waersb.

* << Fim da exclusão

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

      itab_zycit246-i_waerscifme = wa_zycbt007-waersa.

      itab_zycit246-i_waerscifmi = wa_zycbt007-waersb.

* << Fim da inclusão

      itab_zycit246-i_vlcif_mi   =

                     itab_zycit246-i_vlcif_me * itab_zycit246-i_txmoeda.

      itab_zycit246-i_vlcifn_mi  =

         itab_zycit246-i_vlcif_mi *

           ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

      itab_zycit246-vlcifn_me = itab_zycit246-i_vlcif_me *

           ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

      CLEAR v_datatx.

      CLEAR itab_zycit435. REFRESH itab_zycit435.

      SELECT * FROM /pws/zycit435 INTO TABLE itab_zycit435.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI040I01

 

...

    SELECT kaln1 UP TO 1 ROWS FROM mbew INTO v_kaln1

           WHERE matnr = v_codcomp

             AND bwkey = /pws/zycie244-werks.

    ENDSELECT.

    IF sy-subrc EQ 0.

      SELECT SINGLE * FROM t001a INTO wat001a

             WHERE bukrs EQ /pws/zycie244-bukrs.

      CLEAR it_ckmlcr. REFRESH it_ckmlcr.

      SELECT * FROM ckmlcr INTO TABLE it_ckmlcr

             WHERE kalnr = v_kaln1

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

                   AND waers = 'USD'.

* << Fim da exclusão

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

                   AND waers = wa_zycbt007-waersa.

* << Fim da inclusão

      SORT it_ckmlcr BY bdatj poper ASCENDING.

      DESCRIBE TABLE it_ckmlcr LINES v_ilinhas.

      READ TABLE it_ckmlcr INDEX v_ilinhas.

      IF sy-subrc EQ 0.

        /pws/zycie245-netpr = it_ckmlcr-stprs / it_ckmlcr-peinh.

        /pws/zycie245-waers = it_ckmlcr-waers.

      ENDIF.

    ENDIF.

    SELECT steuc UP TO 1 ROWS FROM marc INTO /pws/zycie245-j_1bnbm

           WHERE matnr EQ v_codcomp

...

 

...

    SELECT kaln1 UP TO 1 ROWS FROM mbew INTO v_kaln1

           WHERE matnr = v_codmat

             AND bwkey = /pws/zycie244-werks.

    ENDSELECT.

    IF sy-subrc EQ 0.

      SELECT SINGLE * FROM t001a INTO wat001a

             WHERE bukrs EQ /pws/zycie244-bukrs.

      CLEAR it_ckmlcr. REFRESH it_ckmlcr.

      SELECT * FROM ckmlcr INTO TABLE it_ckmlcr

             WHERE kalnr = v_kaln1

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

                   AND waers = 'USD'.

* << Fim da exclusão

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

                   AND waers = wa_zycbt007-waersa.

* << Fim da inclusão

      SORT it_ckmlcr BY bdatj poper ASCENDING.

      DESCRIBE TABLE it_ckmlcr LINES v_ilinhas.

      READ TABLE it_ckmlcr INDEX v_ilinhas.

      IF sy-subrc EQ 0.

        /pws/zycie247-netpr = it_ckmlcr-stprs / it_ckmlcr-peinh.

        /pws/zycie247-waers = it_ckmlcr-waers.

      ENDIF.

    ENDIF.

    SELECT stlan stlnr stlal UP TO 1 ROWS FROM mast

           INTO (/pws/zycie247-stlan,/pws/zycie247-stlnr,

...

 

...

      READ TABLE itab_zycit279_ap WITH KEY

                             ebeln  = itab_zycit246-ebeln

                             ebelp  = itab_zycit246-ebelp

                             docnum = itab_zycit246-docnum.

      itab_zycit246-i_vlcif_me =

               itab_zycit246-vltot +

               itab_zycit246-vlfrete +

               itab_zycit246-vlseg.

      itab_zycit246-i_indice = v_propor =

                  ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

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

      itab_zycit246-i_waerscifme = 'USD'.

      itab_zycit246-i_waerscifmi = /pws/zycbt007-waersb.

* << Fim da exclusão

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

      itab_zycit246-i_waerscifme = wa_zycbt007-waersa.

      itab_zycit246-i_waerscifmi = wa_zycbt007-waersb.

* << Fim da inclusão

      itab_zycit246-i_vlcif_mi   =

                     itab_zycit246-i_vlcif_me * itab_zycit246-i_txmoeda.

      itab_zycit246-i_vlcifn_mi  =

         itab_zycit246-i_vlcif_mi *

           ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

      itab_zycit246-vlcifn_me = itab_zycit246-i_vlcif_me *

           ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

      CLEAR v_datatx.

      CLEAR itab_zycit435. REFRESH itab_zycit435.

      SELECT * FROM /pws/zycit435 INTO TABLE itab_zycit435.

...

 

...

          itab_di-vlfob_t = itab_di-vlfob_u * itab_di-qtd_vinc.

          itab_di-vlfob = itab_di-vlfob_t.

          CLEAR itab_zycit085.

          READ TABLE itab_zycit085 WITH KEY nrseqdi = itab_di-nrdi.

          IF sy-subrc NE 0.

            SELECT SINGLE * FROM /pws/zycit085 INTO itab_zycit085

                WHERE nrseqdi EQ itab_di-nrdi.

          ENDIF.

          IF NOT itab_zycit085-dttax IS INITIAL.

            PERFORM valor_converte_imp USING itab_zycit085-waersfob

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

                                               'USD'

* << Fim da exclusão

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

                                               wa_zycbt007-waersa

* << Fim da inclusão

                                               itab_zycit085-dttax

                                      CHANGING itab_di-vlfob.

            itab_di-vlafrmm = itab_di-vlfrete_t * ( 25 / 100 ).

          ENDIF.

          CLEAR itab_zycit100.

          READ TABLE itab_zycit100 WITH KEY nrseqdi = itab_di-nrdi

                                            ebeln   = itab_di-ebeln

                                            ebelp   = itab_di-ebelp.

          IF sy-subrc NE 0.

            SELECT SINGLE * FROM /pws/zycit100 INTO itab_zycit100

...

 

...

                  v_perc_vinc * itab_zycit100-vlcofins.

          itab_di-vlafrmm = itab_di-vlfrete_t *

                                              ( 25 / 100 ).

          itab_di-afrmm = '25'.

          itab_di-i_vlii =

                  v_perc_vinc * itab_zycit100-vlii.

          itab_di-i_vlipi =

                  v_perc_vinc * itab_zycit100-vlipi.

          itab_di-i_vlicms =

                  v_perc_vinc * itab_zycit100-vlicms.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                  CHANGING itab_di-vlpis.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                 CHANGING itab_di-vlcofins.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                  CHANGING itab_di-i_vlii.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                  CHANGING itab_di-i_vlipi.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                 CHANGING itab_di-i_vlicms.

          itab_di-t_benef = itab_di-i_vlii + itab_di-i_vlipi.

          itab_comp_vinc-qtd_stotal =

                           itab_comp_vinc-qtd_stotal - itab_di-qtd_vinc.

          MODIFY itab_comp_vinc TRANSPORTING qtd_stotal

                 WHERE nrseqre  = itab_comp_vinc-nrseqre

                   AND nrseq    = itab_comp_vinc-nrseq

                   AND codmat   = itab_comp_vinc-codmat

                   AND vbeln_va = itab_comp_vinc-vbeln_va

...

 

...

          itab_di-vlfob_t = itab_di-vlfob_u * itab_di-qtd_vinc.

          itab_di-vlfob = itab_di-vlfob_t.

          CLEAR itab_zycit085.

          READ TABLE itab_zycit085 WITH KEY nrseqdi = itab_di-nrdi.

          IF sy-subrc NE 0.

            SELECT SINGLE * FROM /pws/zycit085 INTO itab_zycit085

                WHERE nrseqdi EQ itab_di-nrdi.

          ENDIF.

          IF NOT itab_zycit085-dttax IS INITIAL.

            PERFORM valor_converte_imp USING itab_zycit085-waersfob

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

                                               'USD'

* << Fim da exclusão

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

                                               wa_zycbt007-waersa

* << Fim da inclusão

                                               itab_zycit085-dttax

                                      CHANGING itab_di-vlfob.

            itab_di-vlafrmm = itab_di-vlfrete_t * ( 25 / 100 ).

          ENDIF.

          itab_di-i_vlcifn_mi =

             ( itab_di-vlfob_u * itab_di-qtd_vinc ) * itab_di-i_txmoeda.

          CLEAR itab_zycit100.

          READ TABLE itab_zycit100 WITH KEY nrseqdi = itab_di-nrdi

                                            ebeln   = itab_di-ebeln

                                            ebelp   = itab_di-ebelp.

...

 

...

                  v_perc_vinc * itab_zycit100-vlcofins.

          itab_di-vlafrmm = itab_di-vlfrete_t *

                                              ( 25 / 100 ).

          itab_di-afrmm = '25'.

          itab_di-i_vlii =

                  v_perc_vinc * itab_zycit100-vlii.

          itab_di-i_vlipi =

                  v_perc_vinc * itab_zycit100-vlipi.

          itab_di-i_vlicms =

                  v_perc_vinc * itab_zycit100-vlicms.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                  CHANGING itab_di-vlpis.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                 CHANGING itab_di-vlcofins.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                  CHANGING itab_di-i_vlii.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                  CHANGING itab_di-i_vlipi.

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

          PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                             'USD'

* << Fim da exclusão

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

          PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                 CHANGING itab_di-i_vlicms.

          itab_di-t_benef =

                   itab_di-i_vlii + itab_di-i_vlipi.

          itab_comp_vinc-qtd_stotal =

                           itab_comp_vinc-qtd_stotal - itab_di-qtd_vinc.

          MODIFY itab_comp_vinc TRANSPORTING qtd_stotal

                 WHERE nrseqre  = itab_comp_vinc-nrseqre

                   AND nrseq    = itab_comp_vinc-nrseq

                   AND codmat   = itab_comp_vinc-codmat

...

 

...

        itab_di-vlfob_t = itab_di-vlfob_u * itab_di-qtd_vinc.

        itab_di-vlfob = itab_di-vlfob_t.

        CLEAR itab_zycit085.

        READ TABLE itab_zycit085 WITH KEY nrseqdi = itab_di-nrdi.

        IF sy-subrc NE 0.

          SELECT SINGLE * FROM /pws/zycit085 INTO itab_zycit085

              WHERE nrseqdi EQ itab_di-nrdi.

        ENDIF.

        IF NOT itab_zycit085-dttax IS INITIAL.

          PERFORM valor_converte_imp USING itab_zycit085-waersfob

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

                                             'USD'

* << Fim da exclusão

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

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                             itab_zycit085-dttax

                                    CHANGING itab_di-vlfob.

          itab_di-vlafrmm = itab_di-vlfrete_t * ( 25 / 100 ).

        ENDIF.

        itab_di-i_vlcifn_mi =

             ( itab_di-vlfob_u * itab_di-qtd_vinc ) * itab_di-i_txmoeda.

        CLEAR itab_zycit100.

        READ TABLE itab_zycit100 WITH KEY nrseqdi = itab_di-nrdi

                                          ebeln   = itab_di-ebeln

                                          ebelp   = itab_di-ebelp.

...

 

...

                v_perc_vinc * itab_zycit100-vlcofins.

        itab_di-vlafrmm = itab_di-vlfrete_t *

                                            ( 25 / 100 ).

        itab_di-afrmm = '25'.

        itab_di-i_vlii =

                v_perc_vinc * itab_zycit100-vlii.

        itab_di-i_vlipi =

                v_perc_vinc * itab_zycit100-vlipi.

        itab_di-i_vlicms =

                v_perc_vinc * itab_zycit100-vlicms.

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

        PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                           'USD'

* << Fim da exclusão

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

        PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                           itab_zycit085-dttax

                                CHANGING itab_di-vlpis.

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

        PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                           'USD'

* << Fim da exclusão

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

        PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                           itab_zycit085-dttax

                               CHANGING itab_di-vlcofins.

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

        PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                           'USD'

* << Fim da exclusão

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

        PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                           itab_zycit085-dttax

                                CHANGING itab_di-i_vlii.

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

        PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                           'USD'

* << Fim da exclusão

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

        PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                           itab_zycit085-dttax

                                CHANGING itab_di-i_vlipi.

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

        PERFORM valor_converte_imp USING   /pws/zycbt007-waersb

                                           'USD'

* << Fim da exclusão

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

        PERFORM valor_converte_imp USING   wa_zycbt007-waersb

                                             wa_zycbt007-waersa

* << Fim da inclusão

                                           itab_zycit085-dttax

                               CHANGING itab_di-i_vlicms.

        itab_di-t_benef = itab_di-i_vlii + itab_di-i_vlipi.

        itab_di-v_sel = v_vsel.

        MODIFY itab_di INDEX tc_di3-current_line.

      ENDIF.

      LOOP AT itab_di_final.

        IF itab_di_final-nrseqre  = itab_det_exp-nrseqre   AND

           itab_di_final-vbeln_va = itab_det_exp-vbeln_va  AND

           itab_di_final-vbeln_vf = itab_det_exp-vbeln_vf  AND

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI040O01

 

...

MODULE status_0200 OUTPUT.

  IF /pws/zycit321 IS INITIAL.

    SELECT SINGLE * FROM /pws/zycit321.

  ENDIF.

  IF /pws/zycbt007 IS INITIAL.

    AUTHORITY-CHECK OBJECT 'S_TCODE' ID 'TCD' FIELD sy-tcode.

    IF sy-subrc NE 0.

      MESSAGE i015 WITH text-290 sy-tcode.

      LEAVE PROGRAM.

    ENDIF.

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

  IF NOT /pws/zycie244-bukrs IS INITIAL.

    IF wa_zycbt007 IS INITIAL.

      SELECT SINGLE * FROM /pws/zycbt007 INTO wa_zycbt007

      WHERE bukrs = /pws/zycie244-bukrs .

    ENDIF.

  ENDIF.

* << Fim da inclusão

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

    SELECT SINGLE * FROM /pws/zycbt007

        WHERE bukrs EQ /pws/zycie244-bukrs.

* << Fim da exclusão

  ENDIF.

  IF /pws/zycie244-vcto_vg    IS INITIAL AND

     NOT /pws/zycie244-dtatoc IS INITIAL AND

     /pws/zycie244-status NE 'A'         AND

     /pws/zycie244-status NE 'I'.

    /pws/zycie244-vcto_vg = /pws/zycie244-dtatoc + 365.

    itab_vencto2-vencto = /pws/zycie244-vcto_fn.

    APPEND itab_vencto2.

  ENDIF.

  PERFORM status_custom.

...

 

...

  IF NOT /pws/zycie245c-codcomp IS INITIAL AND

    /pws/zycie244-tipo NE 'G'.

    CLEAR: v_descr_0210.

    SELECT maktx UP TO 1 ROWS FROM makt INTO v_descr_0210

           WHERE matnr = /pws/zycie245c-codcomp

             AND spras = sy-langu.

    ENDSELECT.

  ENDIF.

  CLEAR: /pws/zycie245c-netpr_t, /pws/zycie245c-qtd_iten,

         /pws/zycie245c-meins.

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

  /pws/zycie245c-waers = 'USD'.

* << Fim da exclusão

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

  /pws/zycie245c-waers = wa_zycbt007-waersa.

* << Fim da inclusão

  LOOP AT itab_zycit246 WHERE i_txselic NE space.

    /pws/zycie245c-qtd_iten = /pws/zycie245c-qtd_iten +

                                  itab_zycit246-qtd_nacion.

    IF NOT itab_zycit246-um_ncm IS INITIAL.

      /pws/zycie245c-meins = itab_zycit246-um_ncm.

    ENDIF.

    /pws/zycie245c-netpr_t = /pws/zycie245c-netpr_t +

      itab_zycit246-vltot + itab_zycit246-vlfrete + itab_zycit246-vlseg.

  ENDLOOP.

  DELETE ADJACENT DUPLICATES FROM itab_zycit246.

...

 

 

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

Modificações efetuadas em REPS /PWS/SAPMZYCI040

 

...

    IF itab_zycit246-qtd_nacion <= itab_zycit246-qtd_ncm AND

       itab_zycit246-qtd_nacion > 0  AND

       NOT itab_zycit246-i_txselic IS INITIAL.

      CLEAR: itab_zycit279_ap.

      itab_zycit246-i_vlcif_me =

               itab_zycit246-vltot +

               itab_zycit246-vlfrete +

               itab_zycit246-vlseg.

      itab_zycit246-i_indice = v_propor =

                  ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

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

      itab_zycit246-i_waerscifme = 'USD'.

      itab_zycit246-i_waerscifmi = /pws/zycbt007-waersb.

* << Fim da exclusão

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

      itab_zycit246-i_waerscifme = wa_zycbt007-waersa.

      itab_zycit246-i_waerscifmi = wa_zycbt007-waersb.

* << Fim da inclusão

      itab_zycit246-i_vlcif_mi   =

                     itab_zycit246-i_vlcif_me * itab_zycit246-i_txmoeda.

      itab_zycit246-i_vlcifn_mi  =

         itab_zycit246-i_vlcif_mi *

           ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

      itab_zycit246-vlcifn_me = itab_zycit246-i_vlcif_me *

           ( itab_zycit246-qtd_nacion / itab_zycit246-qtd_ncm ).

      CLEAR v_datatx.

      CLEAR itab_zycit435. REFRESH itab_zycit435.

      SELECT * FROM /pws/zycit435 INTO TABLE itab_zycit435.

...