CE PLUS - Nota 011371

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DA

Data/Hora da Publicação: 04/08/2011 00:00:00

Data/Hora Última Alteração: 05/08/2011 10:40:19

Descrição da Nota: TRATAMENTO DA FUNÇÃO DE TRANSMISSÃO PARA DA

Sintoma

Fazer tratamento da função de transmissão para enviar dados da DA.

 

 

Solução

Feito tratamento da função de transmissão para enviar dados da DA.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

NÃO CONVERTE O VALOR DA DESPESAS PARA SOMAR AO VALOR FOB

AJUSTES PARA PREENCHIMENTO DAS INFORMAÇÕES DE FABRICANTE.

Informações Complementares

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

Nota Número 11371 Data: 04/08/2011 Hora: 08:45:39

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

 

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

Nota Número              : 11371

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 8.0

Pacote                   : 00008

Agrupamento              : 00080

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

Referência às notas relacionadas:

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

 

08575  - 00001 - 7.0    - 00010  - AJUSTES PARA PREENCHIMENTO DAS INFORMAÇÕES DE FABRICANTE.

10915  - 00002 - 8.0    - 00006  - NÃO CONVERTE O VALOR DA DESPESAS PARA SOMAR AO VALOR FOB

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

TRATAMENTO DA FUNÇÃO DE TRANSMISSÃO PARA DA

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

Palavras Chave:

FUNÇÃO - TRANSMISSÃO - ORIENTADOR - SISCOMEX - DA

 

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

Objetos da nota:

FUNC /PWS/ZYCI_TRANSFER_DI

REPS /PWS/LZYCIGF5X01

REPS /PWS/MZYCI070F01

REPS /PWS/MZYCI070F02

REPS /PWS/MZYCI070F03

REPS /PWS/MZYCI070F05

REPS /PWS/MZYCI070I01

REPS /PWS/MZYCI070O01

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_TRANSFER_DI

 

FUNCTION /pws/zyci_transfer_di .

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

  DATA: BEGIN OF itab_zycit451 OCCURS 0.

          INCLUDE STRUCTURE /pws/zycit451.

  DATA: END OF itab_zycit451.

  DATA: BEGIN OF it_itens_da OCCURS 0.

          INCLUDE STRUCTURE /pws/zycit443.

  DATA: END OF it_itens_da.

  DATA: BEGIN OF itab_zycit500 OCCURS 0.

          INCLUDE STRUCTURE /pws/zycit500.

  DATA: END OF itab_zycit500.

* << Fim da inclusão

...

 

...

 

  PERFORM carrega_exits

          CHANGING

              itab_zyglt100[].

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

  IF v_nrseqdi+7(1) EQ 'P'.

    SELECT * UP TO 1 ROWS FROM /pws/zycit442

    INTO CORRESPONDING FIELDS OF TABLE it_cabecalho_di

           WHERE nrseqda EQ i_nrseqdi

             AND tpdi    EQ i_tpdi.

    SELECT SINGLE * FROM /pws/zycit442

    INTO wa_442

           WHERE nrseqda EQ i_nrseqdi

             AND tpdi    EQ i_tpdi.

    MOVE wa_442-inco1 TO s_inco1.

    IF sy-subrc EQ 0.

      READ TABLE it_cabecalho_di INDEX 1.

      MOVE i_nrseqdi TO it_cabecalho_di-nrseqdi.

      SELECT SINGLE * FROM t001 WHERE bukrs EQ it_cabecalho_di-bukrs.

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

                                  WHERE land1 EQ t001-land1.

      SELECT SINGLE * FROM /pws/zycbt007 INTO /pws/zycbt007

                      WHERE bukrs EQ it_cabecalho_di-bukrs.

      SELECT * FROM t005 INTO TABLE it_t005_di

       WHERE land1 EQ it_cabecalho_di-land.

      IF NOT  it_cabecalho_di-vlseg IS INITIAL.

        p_moeda = it_cabecalho_di-waersseg.

        p_valor = it_cabecalho_di-vlseg.

        PERFORM trata_decimais_di USING p_moeda

                                        p_valor.

        it_cabecalho_di-vlseg = p_valor.

        MODIFY it_cabecalho_di INDEX 1 TRANSPORTING nrseqdi vlseg.

      ENDIF.

      MOVE-CORRESPONDING it_cabecalho_di TO wa_442.

      PERFORM load_pais(/pws/sapmzyci023) USING wa_442-land

              CHANGING it_cabecalho_di-land v_txtpais.

      PERFORM load_waers(/pws/sapmzyci023):

              USING    wa_442-waersseg

              CHANGING it_cabecalho_di-waersseg v_txtw,

              USING    wa_442-waersfre

              CHANGING it_cabecalho_di-waersfre v_txtw,

              USING    wa_442-waers

              CHANGING it_cabecalho_di-waers    v_txtw.

      MODIFY it_cabecalho_di INDEX 1 TRANSPORTING

             land  waersseg waersfre waers.

      IF NOT it_cabecalho_di[] IS INITIAL.

        SELECT * FROM /pws/zycit443

        INTO TABLE it_itens_da

        WHERE nrseqda EQ it_cabecalho_di-nrseqdi.

        IF sy-subrc EQ 0.

          SELECT * FROM /pws/zycit500

          INTO TABLE itab_zycit500

          for all entries in it_itens_da

          WHERE fabrinr EQ it_itens_da-fabrinr

          and   nrseqda eq i_nrseqdi.

        ENDIF.

        LOOP AT it_itens_da.

          MOVE-CORRESPONDING it_itens_da TO it_itens_di.

          MOVE it_itens_da-nrseqda TO it_itens_di-nrseqdi.

          APPEND it_itens_di.

          MOVE-CORRESPONDING it_itens_da TO it_det_itens_di.

          MOVE wa_442-inco1 TO it_det_itens_di-inco1.

          APPEND it_det_itens_di.

        ENDLOOP.

      ENDIF.

      IF NOT it_itens_di[] IS INITIAL.

        READ TABLE it_itens_di INDEX 1.

        IF it_031[] IS INITIAL.

          SELECT * FROM /pws/zycit031 INTO TABLE it_031."#EC CI_NOWHERE

        ENDIF.

        READ TABLE it_031 WITH KEY inco1 = s_inco1.

        IF sy-subrc EQ 0.

          s_inco1_ci = it_031-inco1_ci.

        ELSE.

          s_inco1_ci = s_inco1.

        ENDIF.

        SORT it_itens_di BY adicao ASCENDING.

        v_tot_peso = 0.

        IF NOT it_itens_di[] IS INITIAL.

          SELECT * FROM /pws/zycit450

          INTO CORRESPONDING FIELDS OF TABLE it_doc_vinc_di

                 FOR ALL ENTRIES IN it_itens_di

                 WHERE nrseqda EQ it_itens_di-nrseqdi

                   AND ebeln   EQ it_itens_di-ebeln

                   AND ebelp   EQ it_itens_di-ebelp.

        ENDIF.

        LOOP AT it_doc_vinc_di.

          READ TABLE it_itens_di WITH KEY

                                    nrseqdi = it_doc_vinc_di-nrseqdi

                                    ebeln   = it_doc_vinc_di-ebeln

                                    ebelp   = it_doc_vinc_di-ebelp.

          IF sy-subrc EQ 0.

            IF NOT it_itens_di-adicao IS INITIAL .

              MOVE it_itens_di-adicao TO it_doc_vinc_di-adicao.

              MODIFY it_doc_vinc_di.

            ELSE.

              DELETE it_doc_vinc_di.

            ENDIF.

          ELSE.

            DELETE it_doc_vinc_di.

          ENDIF.

        ENDLOOP.

        LOOP AT it_itens_di.

          PERFORM load_waers(/pws/sapmzyci023):

                   USING    it_itens_di-waersbem

                   CHANGING it_itens_di-waersbem v_txtw.

          PERFORM load_pais(/pws/sapmzyci023) USING it_itens_di-pproc

                  CHANGING it_itens_di-pproc v_txtpais.

          MODIFY it_itens_di.

        ENDLOOP.

        SELECT * FROM /pws/zycit451

            INTO TABLE itab_zycit451

               WHERE nrseqda EQ i_nrseqdi.

        IF NOT itab_zycit451[] IS INITIAL.

          LOOP AT  itab_zycit451.

            v_tabix = sy-tabix.

            itab_zycit451-nrseqda = i_nrseqdi .

            CLEAR: it_adicao_di.

            READ TABLE it_itens_da WITH KEY

                   adicao = itab_zycit451-adicao.

            IF sy-subrc EQ 0.

              MOVE-CORRESPONDING itab_zycit451 TO it_116 .

              MOVE-CORRESPONDING it_itens_da TO it_116 .

              MOVE-CORRESPONDING it_itens_da TO it_adicao_di.

            ENDIF.

            MOVE-CORRESPONDING itab_zycit451 TO it_adicao_di.

            MOVE wa_442-inco1 TO it_adicao_di-inco1.

            IF itab_zycit451-parcvar EQ 'X'.

              it_adicao_di-parcvar2 = 'S'.

            ELSE.

              it_adicao_di-parcvar2 = 'N'.

            ENDIF.

            PERFORM load_waers(/pws/sapmzyci023)

                    USING    itab_zycit451-waersreal

                    CHANGING it_adicao_di-waersreal v_txtw.

            MOVE itab_zycit451-adicao  TO it_adicao_di-adicao.

            CLEAR: it_adicao_di-baseii,

                   it_adicao_di-baseipi,

                   it_adicao_di-basecofi,

                   it_adicao_di-basepis,

                   it_adicao_di-vlfre,

                   it_adicao_di-vlseg,

                   it_adicao_di-qtdeantid .

            CLEAR: it_adicao_di-qtd_iten,

                   it_adicao_di-ntgew,

                   it_adicao_di-qtdeumest,

                   it_adicao_di-vlmle,

                   it_adicao_di-vlmler.

            LOOP AT it_itens_da WHERE adicao = itab_zycit451-adicao.

              it_adicao_di-baseii = it_adicao_di-baseii +

                                    it_itens_da-baseii.

              it_adicao_di-baseipi = it_adicao_di-baseipi +

                                    it_itens_da-baseipi.

              it_adicao_di-vlfre  = it_adicao_di-vlfre  +

                                    it_itens_da-vlfre.

              it_adicao_di-vlseg  = it_adicao_di-vlseg  +

                                    it_itens_da-vlseg.

              it_adicao_di-basepis = it_adicao_di-basepis +

                                    it_itens_da-basepis.

              it_adicao_di-basecofi = it_adicao_di-basecofi +

                                    it_itens_da-basecofins.

              it_adicao_di-qtdeantid =   it_adicao_di-qtdeantid  +

                                    it_itens_da-qtdeantid.

              it_adicao_di-qtd_iten =

              it_adicao_di-qtd_iten + it_itens_da-qtd_iten.

              it_adicao_di-ntgew =

              it_adicao_di-ntgew + it_itens_da-ntgew.

              it_adicao_di-qtdeumest =

              it_adicao_di-qtdeumest + it_itens_da-qtdeumest.

              CASE s_inco1_ci.

                WHEN 'C&F'.

                  v_di_vlmle =  ( it_itens_da-qtd_da *

                                  it_itens_da-vlreal )

                                + it_itens_da-vlfre_fat.

                WHEN 'FOB'.

                  v_di_vlmle = ( it_itens_da-qtd_da *

                                 it_itens_da-vlreal ).

              ENDCASE.

              it_adicao_di-vlmle = v_di_vlmle + it_adicao_di-vlmle.

              it_adicao_di-vlmler = it_adicao_di-vlmler +

                     ( v_di_vlmle *  it_itens_da-dttaxbem ).

            ENDLOOP.

            READ TABLE it_ag_faturas WITH KEY

                 nrseq = it_faturas_di-nrseq.

            IF sy-subrc EQ 0.

              MOVE:

             it_ag_faturas-tpagente  TO it_adicao_di-tpagente,

             it_ag_faturas-perccomis TO it_adicao_di-perccomis,

             it_ag_faturas-chave     TO it_adicao_di-chave,

             it_ag_faturas-conta     TO it_adicao_di-conta.

            ENDIF.

            CONCATENATE i_nrseqdi it_adicao_di-adicao INTO v_txtki.

            SELECT * FROM /pws/zycit200 INTO TABLE it_200 WHERE

                   id LIKE i_nrseqdi.

            CLEAR: v_add, v_obs1.

            LOOP AT it_200.

              v_obs1+v_add = it_200-linha(74).

              v_add = v_add + 75.

              IF sy-tabix >= 3.

                EXIT.

              ENDIF.

            ENDLOOP.

            it_adicao_di-complementares = v_obs1.

            APPEND it_adicao_di.

          ENDLOOP.

        ENDIF.

        LOOP AT it_adicao_di.

          CLEAR: wa_lfa1, wa_adrc, it_forn.

          READ TABLE itab_zycit451 WITH KEY adicao = it_adicao_di.

          READ TABLE it_itens_da WITH KEY adicao = it_adicao_di.

          it_forn-fabric = itab_zycit451-fabricante.

          it_forn-nrseqdi = i_nrseqdi.

          it_forn-adicao  = it_adicao_di-adicao.

          IF itab_zycit451-fabricante = '1'.

            SELECT SINGLE lifnr name1 land1 adrnr

                          stras ort01 ort02 FROM lfa1

                   INTO CORRESPONDING FIELDS OF wa_lfa1

                   WHERE lifnr EQ it_itens_da-lifnr.

            SELECT SINGLE * FROM adrc INTO wa_adrc

                    WHERE addrnumber EQ wa_lfa1-adrnr.

            IF sy-subrc EQ 0.

              it_forn-forn_name1      = wa_lfa1-name1.

              it_forn-forn_logradouro = wa_adrc-street.

              it_forn-forn_nrlogr     = wa_adrc-house_num1.

              it_forn-forn_compl      = wa_lfa1-ort02.

              it_forn-forn_city       = wa_adrc-city1.

              SELECT SINGLE bezei FROM t005u INTO it_forn-forn_regio

                                     WHERE land1 = wa_lfa1-land1 AND

                                                spras = sy-langu AND

                                              bland = wa_adrc-region.

              PERFORM load_pais(/pws/sapmzyci023):

                 USING    wa_lfa1-land1

                 CHANGING it_forn-forn_landa v_txtpais.

              COLLECT it_forn.

            ENDIF.

          ELSEIF itab_zycit451-fabricante = '2'.

            SELECT SINGLE lifnr name1 land1 adrnr

                       stras ort01 ort02 FROM lfa1

                INTO CORRESPONDING FIELDS OF wa_lfa1

                WHERE lifnr EQ it_itens_da-lifnr.

            IF sy-subrc EQ 0.

              SELECT SINGLE * FROM adrc INTO wa_adrc

                      WHERE addrnumber EQ wa_lfa1-adrnr.

              IF sy-subrc EQ 0.

                it_forn-forn_name1      = wa_lfa1-name1.

                it_forn-forn_logradouro = wa_adrc-street.

                it_forn-forn_nrlogr     = wa_adrc-house_num1.

                it_forn-forn_compl      = wa_lfa1-ort02.

                it_forn-forn_city       = wa_adrc-city1.

                SELECT SINGLE bezei FROM t005u INTO it_forn-forn_regio

                                       WHERE land1 = wa_lfa1-land1 AND

                                                  spras = sy-langu AND

                                                bland = wa_adrc-region.

                PERFORM load_pais(/pws/sapmzyci023):

                   USING    wa_lfa1-land1

                   CHANGING it_forn-forn_landa v_txtpais.

              ENDIF.

            ENDIF.

            CLEAR: wa_lfa1, wa_adrc.

            SELECT SINGLE lifnr name1 land1 adrnr

                       stras ort01 ort02 regio FROM lfa1

                INTO CORRESPONDING FIELDS OF wa_lfa1

                WHERE lifnr EQ it_itens_da-lifnrfabr.

            IF sy-subrc EQ 0.

              SELECT SINGLE * FROM adrc INTO wa_adrc

                  WHERE addrnumber EQ wa_lfa1-adrnr.

              IF sy-subrc EQ 0.

                it_forn-fabr_name1      = wa_lfa1-name1.

                it_forn-fabr_logradouro = wa_adrc-street.

                it_forn-fabr_nrlogr     = wa_adrc-house_num1.

                it_forn-fabr_compl      = wa_lfa1-ort02.

                it_forn-fabr_city       = wa_adrc-city1.

                SELECT SINGLE bezei FROM t005u INTO it_forn-fabr_regio

                                       WHERE land1 = wa_lfa1-land1 AND

                                                  spras = sy-langu AND

                                                bland = wa_adrc-region.

                PERFORM load_pais(/pws/sapmzyci023):

                   USING    wa_lfa1-land1

                   CHANGING it_forn-fabr_landa v_txtpais.

                COLLECT it_forn.

              ENDIF.

            ENDIF.

          ELSEIF itab_zycit451-fabricante = '3'.

            READ TABLE itab_zycit500

            WITH KEY fabrinr = it_itens_da-fabrinr.

            IF sy-subrc EQ 0.

              it_forn-forn_name1      = itab_zycit500-name1.

              it_forn-forn_logradouro = itab_zycit500-logradouro.

              it_forn-forn_nrlogr     = itab_zycit500-nrlogr.

              it_forn-forn_compl      = itab_zycit500-compl.

              it_forn-forn_city       = itab_zycit500-city.

              it_forn-forn_regio      = itab_zycit500-regio.

              it_adicao_di-porigem = it_forn-fabr_landa =

              itab_zycit500-lando.

              COLLECT it_forn.

              modify it_adicao_di transporting porigem where

              adicao = it_ADICAO_DI-adicao.

            ENDIF.

          ENDIF.

        ENDLOOP.

        IF NOT it_adicao_di[] IS INITIAL.

          SELECT * FROM /pws/zycit452

          INTO CORRESPONDING FIELDS OF TABLE it_nomencl_di

                 FOR ALL ENTRIES IN it_itens_da

                 WHERE nrseqda EQ it_itens_da-nrseqda

                   AND adicao  EQ it_itens_da-adicao.

          LOOP AT it_nomencl_di.

            it_nomencl_di-nrseqdi = i_nrseqdi.

            MODIFY it_nomencl_di.

          ENDLOOP.

          SELECT * FROM /pws/zycit453

          INTO CORRESPONDING FIELDS OF TABLE it_pagtos_di

                 FOR ALL ENTRIES IN it_adicao_di

                 WHERE nrseqda EQ it_adicao_di-nrseqdi

                   AND adicao  EQ it_adicao_di-adicao.

          LOOP AT it_pagtos_di.

            it_pagtos_di-nrseqdi = i_nrseqdi.

            CLEAR: v_comp.

            DO 18 TIMES.

              v_id = sy-index - 1.

              IF '0123456789' CA it_pagtos_di-comprador+v_id(1).

                CONCATENATE v_comp

                            it_pagtos_di-comprador+v_id(1)

                            INTO v_comp.

              ENDIF.

            ENDDO.

            it_pagtos_di-comprador = v_comp.

            MODIFY it_pagtos_di INDEX sy-tabix

                                TRANSPORTING nrseqdi comprador.

          ENDLOOP.

          SELECT * FROM /pws/zycit454

          INTO CORRESPONDING FIELDS OF TABLE it_parc_var_di

                 FOR ALL ENTRIES IN it_adicao_di

                 WHERE nrseqda EQ it_adicao_di-nrseqdi

                   AND adicao  EQ it_adicao_di-adicao.

          LOOP AT it_parc_var_di.

            it_parc_var_di-nrseqdi = i_nrseqdi.

            MODIFY it_parc_var_di.

          ENDLOOP.

        ENDIF.

      ENDIF.

      IF NOT it_cabecalho_di[] IS INITIAL.

        SELECT * FROM /pws/zycit444

          INTO CORRESPONDING FIELDS OF TABLE it_inst_desp_di

               WHERE nrseqda EQ i_nrseqdi.

        LOOP AT it_inst_desp_di.

          it_inst_desp_di-nrseqdi = i_nrseqdi.

          MODIFY it_inst_desp_di.

        ENDLOOP.

        SELECT * FROM /pws/zycit445

          INTO CORRESPONDING FIELDS OF TABLE it_proc_vinc_di

               WHERE nrseqda EQ i_nrseqdi.

        LOOP AT it_proc_vinc_di.

          it_proc_vinc_di-nrseqdi = i_nrseqdi.

          MODIFY it_proc_vinc_di.

        ENDLOOP.

        SELECT * FROM /pws/zycit014 INTO TABLE it_volumes_di

               WHERE nrseq EQ i_nrseqdi.

        SELECT * FROM /pws/zycit448

           INTO CORRESPONDING FIELDS OF TABLE it_armazens_di

               WHERE nrseqda EQ i_nrseqdi.

        LOOP AT it_armazens_di.

          it_armazens_di-nrseqdi = i_nrseqdi.

          MODIFY it_armazens_di .

        ENDLOOP.

        SELECT * FROM /pws/zycit447

           INTO CORRESPONDING FIELDS OF TABLE it_deb_cta_di

               WHERE nrseqda EQ i_nrseqdi.

        LOOP AT it_deb_cta_di.

          it_deb_cta_di-nrseqdi = i_nrseqdi.

          MODIFY it_deb_cta_di .

        ENDLOOP.

        READ TABLE it_deb_cta_di.

        SELECT SINGLE * FROM lfbk INTO lfbk

               WHERE lifnr EQ it_deb_cta_di-lifnr

               AND   bvtyp EQ it_cabecalho_di-bukrs.

        IF sy-subrc NE 0.

          SELECT SINGLE * FROM lfbk INTO lfbk

                       WHERE lifnr EQ it_deb_cta_di-lifnr.

        ENDIF.

        v_banco = lfbk-bankn.

        REPLACE '-' WITH ' ' INTO v_banco.

        CONDENSE v_banco NO-GAPS.

        IF NOT lfbk-bkont+1(1) IS INITIAL.

          CONCATENATE v_banco

            lfbk-bkont+1(1)

                      INTO  v_banco.

        ENDIF.

        IF /pws/zycit000-digito IS INITIAL AND NOT v_banco IS INITIAL.

          v_compr = strlen( v_banco ) - 1.

          CLEAR: v_banco+v_compr(01).

        ENDIF.

        LOOP AT it_deb_cta_di WHERE lifnr EQ lfbk-lifnr AND

                nrseqdi EQ it_cabecalho_di-nrseqdi.

          MOVE v_banco TO it_deb_cta_di-bankn.

          IF /pws/zycit000-nbanco IS INITIAL.

            /pws/zycit000-nbanco = 3.

          ENDIF.

          CONCATENATE lfbk-bankl(3)

                      lfbk-bankl+/pws/zycit000-nbanco

                      INTO it_deb_cta_di-bankl.

          MODIFY it_deb_cta_di.

        ENDLOOP.

      ENDIF.

      IF sy-subrc EQ 0.

        p_moeda = it_bl_di-waersfre = wa_442-waersfre.

        p_valor = it_bl_di-prepaid  = wa_442-prepaid.

        PERFORM trata_decimais_di USING p_moeda

                                        p_valor.

        it_bl_di-prepaid = p_valor.

        READ TABLE it_bl_di INDEX 1.

        p_valor = it_bl_di-collect = wa_442-collect.

        PERFORM trata_decimais_di USING p_moeda

                                        p_valor.

        it_bl_di-collect = p_valor.

        p_valor = it_bl_di-ternacion = wa_442-ternacion.

        PERFORM trata_decimais_di USING p_moeda

                                        p_valor.

        it_bl_di-ternacion = p_valor.

        it_bl_di-vlfre = ( it_bl_di-prepaid + it_bl_di-collect ) -

              it_bl_di-ternacion.

        MOVE it_bl_di TO wa_093.

        PERFORM load_waers(/pws/sapmzyci023):

                USING    wa_093-waersfre

                CHANGING it_bl_di-waersfre v_txtw.

        PERFORM load_pais(/pws/sapmzyci023):

                USING    wa_093-bandtransp

                CHANGING it_bl_di-bandtransp v_txtpais.

        it_bl_di-meiotransp = wa_442-meiotransp.

        IF it_bl_di-meiotransp EQ 'MA'.

          it_bl_di-meiotransp = '01'.

        ELSEIF it_bl_di-meiotransp EQ 'FL'.

          it_bl_di-meiotransp = '02'.

        ELSEIF it_bl_di-meiotransp EQ 'LC'.

          it_bl_di-meiotransp = '03'.

        ELSEIF it_bl_di-meiotransp EQ 'TA'.

          it_bl_di-meiotransp = '04'.

        ELSEIF it_bl_di-meiotransp EQ 'PS'.

          it_bl_di-meiotransp = '05'.

        ELSEIF it_bl_di-meiotransp EQ 'FR'.

          it_bl_di-meiotransp = '06'.

        ELSEIF it_bl_di-meiotransp EQ 'RD'.

          it_bl_di-meiotransp = '07'.

        ELSEIF it_bl_di-meiotransp EQ 'DT'.

          it_bl_di-meiotransp = '08'.

        ELSEIF it_bl_di-meiotransp EQ 'PP'.

          it_bl_di-meiotransp = '09'.

        ELSEIF it_bl_di-meiotransp EQ 'EN'.

          it_bl_di-meiotransp = '10'.

        ENDIF.

        it_bl_di-tpconh      = wa_442-tpconh.

        it_bl_di-tpdoccheg   = wa_442-tpdoccheg.

        it_bl_di-utilizacao  = wa_442-utilizacao.

        it_bl_di-dtcheg      = wa_442-dtcheg.

        it_bl_di-multimod    = wa_442-multimod.

        it_bl_di-descrtransp = wa_442-descrtransp.

        it_bl_di-embarca     = wa_442-embarca.

        it_bl_di-identconh   = wa_442-identconh.

        it_bl_di-identmaster = wa_442-identmaster.

        it_bl_di-localemb    = wa_442-localemb.

        it_bl_di-placa       = wa_442-placa.

        it_bl_di-brgew       = wa_442-brgew.

        it_bl_di-flagtransp  = wa_442-flagtransp.

        it_bl_di-embarca     = wa_442-embarca.

        it_bl_di-dtemb       = wa_442-dtemb.

        it_bl_di-identdcheg  = wa_442-identdcheg.

        SELECT name1 land1 UP TO 1 ROWS FROM lfa1

                     INTO (it_bl_di-descrtransp,

                           it_bl_di-bandtransp)

                     WHERE lifnr EQ wa_442-transp.

        ENDSELECT.

        PERFORM load_pais(/pws/sapmzyci023):

                 USING    it_bl_di-bandtransp

                 CHANGING it_bl_di-bandtransp v_txtpais.

        APPEND it_bl_di.

      ENDIF.

      CLEAR: it_200. REFRESH: it_200.

      SELECT * FROM /pws/zycit200 INTO TABLE it_200 WHERE

             id = i_nrseqdi.

      CLEAR: v_add, v_obs.

      it_compl_di-mandt   = sy-mandt.

      it_compl_di-nrseqdi = i_nrseqdi.

      it_compl_di-tpdi    = i_tpdi.

      SELECT SINGLE stcd1 FROM lfa1 INTO it_compl_di-cgcagente

             WHERE lifnr = wa_093-agente.

      it_compl_di-r_vlfre = ( wa_093-prepaid + wa_093-collect -

             wa_093-ternacion ) * it_cabecalho_di-ukursfre.

      it_compl_di-r_vlseg = it_cabecalho_di-vlseg *

             it_cabecalho_di-ukursseg.

      READ TABLE it_200 INDEX 1.

      IF sy-subrc EQ 0.

        LOOP AT it_200.

          it_compl_di-complementares = it_200-linha(65).

          APPEND it_compl_di.

        ENDLOOP.

      ELSE.

        APPEND it_compl_di.

      ENDIF.

      LOOP AT it_itens_di.

        CLEAR: it_resumoit_di.

        MOVE-CORRESPONDING it_itens_di TO it_resumoit_di.

        READ TABLE it_det_itens_di WITH KEY

                  nrseq = it_itens_di-nrseq

                  ebeln = it_itens_di-ebeln

                  ebelp = it_itens_di-ebelp.

        IF sy-subrc EQ 0.

          MOVE-CORRESPONDING

               it_det_itens_di TO it_resumoit_di.

        ENDIF.

        MOVE it_itens_di-adicao TO it_resumoit_di-adicao.

        MOVE it_det_itens_di-qtdeumest TO it_resumoit_di-qtd_iten.

        CONCATENATE wa_442-nrseqda

                    it_itens_di-nrseq

                    it_itens_di-ebeln

                    it_itens_di-ebelp INTO v_txtki.

        CLEAR: rtexti.

        REFRESH: rtexti.

        CALL FUNCTION 'READ_TEXT'

             EXPORTING

                  client                  = sy-mandt

                  id                      = 'ZDSI'

                  language                = sy-langu

                  name                    = v_txtki

                  object                  = '/PWS/CIDDI'

             TABLES

                  lines                   = rtexti

             EXCEPTIONS

                  id                      = 1

                  language                = 2

                  name                    = 3

                  not_found               = 4

                  object                  = 5

                  reference_check         = 6

                  wrong_access_to_archive = 7

                  OTHERS                  = 8.

        IF sy-subrc EQ 0.

          CLEAR: v_obs, v_i1.

          LOOP AT rtexti.

            CONDENSE rtexti-tdline.

            CONCATENATE v_obs

                        rtexti-tdline

                        INTO v_obs SEPARATED BY space.

          ENDLOOP.

          it_resumoit_di-txtespec = v_obs(8000).

        ENDIF.

        SELECT SINGLE descr FROM /pws/zyglt204 INTO

  it_resumoit_di-umdesc

               WHERE msehi = it_resumoit_di-meins.

        CASE s_inco1_ci.

          WHEN 'C&F'.

            it_resumoit_di-vlreal =

    ( it_resumoit_di-vlreal + ( it_resumoit_di-vlfre_fat /

                                it_resumoit_di-qtd_iten ) ).

          WHEN 'CIF'.

            it_resumoit_di-vlreal =

    ( it_resumoit_di-vlreal + ( it_resumoit_di-vlseg_fat /

                                it_resumoit_di-qtd_iten )

  +  ( it_resumoit_di-vlfre_fat / it_resumoit_di-qtd_iten ) ).

        ENDCASE.

        APPEND it_resumoit_di.

      ENDLOOP.

      SORT it_resumoit_di BY adicao ASCENDING.

      SELECT SINGLE  nrseqda nrseq FROM /pws/zycit443 INTO

               (/pws/zycit443-nrseqda, /pws/zycit443-nrseq)

                        WHERE nrseqda = i_nrseqdi.

      SELECT SINGLE nrseq FROM /pws/zycit094 INTO /pws/zycit094-nrseq

                  WHERE nrseq = /pws/zycit443-nrseq.    "#EC CI_NOFIRST

      SELECT SINGLE nrseq bukrs FROM /pws/zycit001 INTO

               (/pws/zycit001-nrseq, /pws/zycit001-bukrs)

                     WHERE nrseq = /pws/zycit094-nrseq.

      SELECT SINGLE land1 FROM t001 INTO t001-land1

                    WHERE bukrs EQ /pws/zycit001-bukrs.

      SELECT SINGLE adrnr FROM j_1bbranch INTO local_adrn

        WHERE bukrs  =  it_cabecalho_di-bukrs AND

            branch = it_cabecalho_di-j_1bbranch.

      IF sy-subrc EQ 0.

        SELECT SINGLE region FROM adrc INTO v_region WHERE

               addrnumber = local_adrn.

        IF sy-subrc NE 0.

          CLEAR v_region.

        ENDIF.

      ENDIF.

      SELECT * FROM /pws/zycit020

               INTO TABLE itab_zycit020

         WHERE regio  = v_region AND

               ( baseicms EQ 'X' OR baseii EQ 'X' ) AND

               land1 EQ t001-land1.

      IF sy-subrc NE 0.

        SELECT * FROM /pws/zycit020 INTO TABLE itab_zycit020 WHERE

         regio = space AND ( baseicms EQ 'X' OR baseii EQ 'X' ) AND

         land1 EQ t001-land1.

      ENDIF.

      IF NOT itab_zycit020[] IS INITIAL.

        SELECT SINGLE land1 FROM t001 INTO t001-land1

                  WHERE bukrs EQ /pws/zycie085-bukrs.

        SELECT * FROM /pws/zycit019 INTO TABLE it_019

           FOR ALL ENTRIES IN itab_zycit020

           WHERE codigo EQ itab_zycit020-codigo AND

                 regio  EQ v_region AND

                 land1  EQ t001-land1.

        IF sy-subrc NE 0.

          IF NOT itab_zycit020[] IS INITIAL.

            SELECT * FROM /pws/zycit019 INTO TABLE it_019

              FOR ALL ENTRIES IN itab_zycit020 WHERE

                   codigo EQ itab_zycit020-codigo AND

                   regio = space AND

                   land1 EQ t001-land1..

          ENDIF.

        ENDIF.

        IF sy-subrc NE 0.

          SELECT * FROM /pws/zycit019

                 INTO TABLE it_019

              WHERE land1 EQ t001-land1.                "#EC CI_NOFIRST

        ENDIF.

        SELECT SINGLE nrseq nrseqda FROM /pws/zycit443 INTO

                 (/pws/zycit443-nrseq, /pws/zycit443-nrseqda)

                          WHERE nrseqda = i_nrseqdi.

        SELECT SINGLE nrseq FROM /pws/zycit094 INTO /pws/zycit094-nrseq

                      WHERE nrseq = /pws/zycit443-nrseq."#EC CI_NOFIRST

        SELECT SINGLE nrseq bukrs FROM /pws/zycit001 INTO

                 (/pws/zycit001-nrseq, /pws/zycit001-bukrs)

                       WHERE nrseq = /pws/zycit094-nrseq.

        SELECT SINGLE land1 FROM t001 INTO t001-land1

                      WHERE bukrs EQ /pws/zycit001-bukrs.

        IF NOT it_019[] IS INITIAL.

          SELECT * FROM /pws/zycit039 INTO TABLE it_039

                 FOR ALL ENTRIES IN it_019

                 WHERE codigo = it_019-codigo AND

                     land1 EQ t001-land1.               "#EC CI_NOFIRST

        ENDIF.

        SELECT * FROM /pws/zycit049 INTO TABLE it_049

               WHERE nrseq EQ i_nrseqdi AND

                     vldp  NE 0.

        IF NOT it_049[] IS INITIAL.

          READ TABLE it_itens_di INDEX 1.

          MOVE: it_itens_di-nrseq  TO itab_desp_funcao-nrseq,

                it_itens_di-ebeln  TO itab_desp_funcao-ebeln,

                it_itens_di-ebelp  TO itab_desp_funcao-ebelp.

          LOOP AT it_049 .

            MOVE: it_049-tpdesp  TO itab_desp_funcao-tpdesp,

                  it_049-vlreal  TO itab_desp_funcao-netpr,

                  /pws/zycbt007-waersb TO itab_desp_funcao-waers.

            APPEND itab_desp_funcao.

          ENDLOOP.

          LOOP AT it_049.

            v_idx = sy-tabix.

            READ TABLE it_019 WITH KEY

                 tpdesp = it_049-tpdesp.

            IF sy-subrc EQ 0.

              READ TABLE it_039 WITH KEY

                   codigo = it_019-codigo.

              IF sy-subrc EQ 0.

                IF it_039-peso = 'X'.

                  it_049-peso   = it_039-peso.

                ELSEIF it_039-proporplan = 'X'.

                  it_049-proporplan   = it_039-proporplan.

                ELSEIF it_039-vlreal = 'X'.

                  it_049-vlreal_rat = it_039-vlreal.

                ELSE.

                  it_049-divabs   = it_039-divabs.

                ENDIF.

              ENDIF.

            ENDIF.

            it_049-codigo   = it_019-codigo.

            it_049-tipo     = it_019-tipo.

            it_049-tpdesp   = it_019-tpdesp.

            it_049-coddesp  = it_019-coddesp.

            IF it_049-tipo EQ 'A'.

              IF it_049-tpdesp NE /pws/zycit000-flagfreten.

                IF it_049-waers NE it_cabecalho_di-waersfob.

                  IF it_049-waers EQ /pws/zycbt007-waersb.

                    PERFORM taxa_converte(/pws/sapmzyci023)

                            USING   it_cabecalho_di-waersfob

                            wa_442-dttax

                            CHANGING s_tax.

                    IF NOT s_tax IS INITIAL .

                      it_cabecalho_di-vlfob  = it_cabecalho_di-vlfob +

                           ( it_049-vldp / s_tax ) .

                    ENDIF.

                  ELSE.

                    v_valor = it_049-vldp.

                    PERFORM taxa_converte(/pws/sapmzyci023)

                            USING   it_049-waers

                            wa_442-dttax

                            CHANGING s_tax.

                    v_valor = v_valor * s_tax.

                    PERFORM taxa_converte(/pws/sapmzyci023)

                            USING   it_cabecalho_di-waersfob

                            wa_442-dttax

                            CHANGING s_tax.

                    IF NOT s_tax IS INITIAL.

                      v_valor = v_valor / s_tax.

                    ENDIF.

                    it_cabecalho_di-vlfob  = it_cabecalho_di-vlfob +

                          v_valor .

                  ENDIF.

                ELSE.

                  it_cabecalho_di-vlfob  =

                   it_cabecalho_di-vlfob + it_049-vldp.

                ENDIF.

              ENDIF.

            ENDIF.

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

              PERFORM taxa_converte(/pws/sapmzyci023)

                      USING    it_049-waers wa_442-dttax

                      CHANGING s_tax.

              it_049-vlreal = it_049-vldp * s_tax.

            ELSE.

              it_049-vlreal = it_049-vldp.

            ENDIF.

            v_moeda = it_049-waers.

            PERFORM load_waers(/pws/sapmzyci023):

                    USING    v_moeda

                    CHANGING it_049-waers v_txtw.

            MODIFY it_049 INDEX v_idx.

          ENDLOOP.

          CLEAR: v_tmle.

          LOOP AT it_resumoit_di.

            v_tmle = v_tmle + ( ( it_resumoit_di-qtd_iten *

                                  it_resumoit_di-vlreal ) *

                                  it_resumoit_di-dttaxbem ).

            v_tot_peso = v_tot_peso + it_resumoit_di-ntgew.

          ENDLOOP.

          DESCRIBE TABLE it_resumoit_di LINES v_line.

          LOOP AT it_049.

            LOOP AT it_adicao_di.

              CLEAR: v_vldp, v_vldpr.

              LOOP AT it_resumoit_di WHERE adicao = it_adicao_di-adicao.

                v_mler = ( ( it_resumoit_di-qtd_iten *

                            it_resumoit_di-vlreal ) *

                            it_resumoit_di-dttaxbem ).

                IF it_049-peso = 'X'.

                  t_ivdes2 =  ( it_resumoit_di-ntgew / v_tot_peso ) *

                    it_049-vlreal.

                  t_ivdes3 =  ( it_resumoit_di-ntgew / v_tot_peso ) *

                    it_049-vldp.

                ELSEIF it_049-proporplan = 'X'.

                  t_ivdes2 = ( v_mler / v_tmle  ) * it_049-vlreal.

                  t_ivdes3 = ( v_mler / v_tmle  ) * it_049-vldp.

                ELSEIF it_049-vlreal_rat = 'X'.

                  t_ivdes2 = ( v_mler / v_tmle  ) * it_049-vlreal.

                  t_ivdes3 = ( v_mler / v_tmle  ) * it_049-vldp.

                ELSE.

                  t_ivdes2 = ( 1 / v_line ) *       it_049-vlreal.

                  t_ivdes3 = ( 1 / v_line ) *       it_049-vldp.

                ENDIF.

                v_vldp  = v_vldp  + t_ivdes3.

                v_vldpr = v_vldpr + t_ivdes2.

              ENDLOOP.

              IF it_049-tipo = 'A'.

                READ TABLE it_acresc_sisco WITH KEY

                     adicao = it_adicao_di-adicao

                     codigo = it_049-coddesp.

                IF sy-subrc EQ 0.

                  it_acresc_sisco-vldp = it_acresc_sisco-vldp + v_vldp.

                it_acresc_sisco-vldpr = it_acresc_sisco-vldpr + v_vldpr.

                  MODIFY it_acresc_sisco INDEX sy-tabix TRANSPORTING

                         vldp vldpr.

                ELSE.

                  it_acresc_sisco-nrseqdi = i_nrseqdi.

                  it_acresc_sisco-adicao  = it_adicao_di-adicao.

                  it_acresc_sisco-codigo  = it_049-coddesp.

                  it_acresc_sisco-waers   = it_049-waers.

                  it_acresc_sisco-vldp    = v_vldp.

                  it_acresc_sisco-vldpr   = v_vldpr.

                  APPEND it_acresc_sisco.

                ENDIF.

              ELSEIF it_049-tipo = 'D'.

                READ TABLE it_deduc_sisco WITH KEY

                     adicao = it_adicao_di-adicao

                     codigo = it_049-coddesp.

                IF sy-subrc EQ 0.

                  it_deduc_sisco-vldp  = it_deduc_sisco-vldp  + v_vldp.

                  it_deduc_sisco-vldpr = it_deduc_sisco-vldpr + v_vldpr

    .

                  MODIFY it_deduc_sisco INDEX sy-tabix TRANSPORTING

                         vldp vldpr.

                ELSE.

                  it_deduc_sisco-nrseqdi = i_nrseqdi.

                  it_deduc_sisco-adicao  = it_adicao_di-adicao.

                  it_deduc_sisco-codigo  = it_049-coddesp.

                  it_deduc_sisco-waers   = it_049-waers.

                  it_deduc_sisco-vldp    = v_vldp.

                  it_deduc_sisco-vldpr   = v_vldpr.

                  APPEND it_deduc_sisco.

                ENDIF.

              ENDIF.

            ENDLOOP.

          ENDLOOP.

          SORT it_acresc_sisco BY adicao codigo.

          SORT it_deduc_sisco  BY adicao codigo.

        ENDIF.

      ENDIF.

      PERFORM load_waers(/pws/sapmzyci023):

              USING    wa_442-waersfob

              CHANGING it_cabecalho_di-waersfob v_txtw.

      MODIFY it_cabecalho_di INDEX 1 TRANSPORTING

         vlfob vlfobr  waersfob .

      LOOP AT it_itens_di.

        READ TABLE it_det_itens_di WITH KEY

            nrseq = it_itens_di-nrseq

            ebeln = it_itens_di-ebeln

            ebelp = it_itens_di-ebelp.

        IF sy-subrc EQ 0.

          MOVE it_det_itens_di TO it_det_itens_di_aux.

          APPEND it_det_itens_di_aux.

        ENDIF.

        READ TABLE it_resumoit_di WITH KEY

            nrseq  = it_itens_di-nrseq

            ebeln  = it_itens_di-ebeln

            ebelp  = it_itens_di-ebelp

            adicao = it_itens_di-adicao.

        IF sy-subrc EQ 0.

          MOVE it_resumoit_di TO it_resumoit_di_aux.

          APPEND it_resumoit_di_aux.

        ENDIF.

      ENDLOOP.

      CLEAR   : it_det_itens_di[], it_resumoit_di[].

      REFRESH : it_det_itens_di[], it_resumoit_di[].

      MOVE:  it_det_itens_di_aux[] TO it_det_itens_di[],

             it_resumoit_di_aux[]  TO it_resumoit_di[].

      LOOP AT it_adicao_di  .

        IF it_adicao_di-codregtriipi EQ '2'.

          it_adicao_di-codregtriipi = '0'.

        ENDIF.

        IF it_adicao_di-codregtriipi EQ '4'.

          it_adicao_di-codregtriipi = '2'.

        ENDIF.

        IF it_adicao_di-codregtriipi EQ '3'.

          it_adicao_di-codregtriipi = '4'.

        ENDIF.

        MODIFY it_adicao_di.

      ENDLOOP.

    ENDIF.

  ELSE.

* << Fim da inclusão

  SELECT * UP TO 1 ROWS FROM /pws/zycit085 INTO TABLE it_cabecalho_di

         WHERE nrseqdi EQ i_nrseqdi

           AND tpdi    EQ i_tpdi.

  IF sy-subrc EQ 0.

    READ TABLE it_cabecalho_di INDEX 1.

    SELECT SINGLE * FROM t001 WHERE bukrs EQ it_cabecalho_di-bukrs.

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

                                WHERE land1 EQ t001-land1.

    SELECT SINGLE * FROM /pws/zycbt007 INTO /pws/zycbt007

                    WHERE bukrs EQ it_cabecalho_di-bukrs.

...

 

...

        SELECT * FROM /pws/zycit014 INTO TABLE it_volumes_di

               FOR ALL ENTRIES IN it_cabecalho_di

               WHERE nrseq EQ it_cabecalho_di-nrbl.

        SELECT * FROM /pws/zycit096 INTO TABLE it_armazens_di

               FOR ALL ENTRIES IN it_cabecalho_di

               WHERE nrseqdi EQ it_cabecalho_di-nrseqdi.

        SELECT * FROM /pws/zycit095 INTO TABLE it_deb_cta_di

               FOR ALL ENTRIES IN it_cabecalho_di

               WHERE nrseqdi EQ it_cabecalho_di-nrseqdi.

        READ TABLE it_deb_cta_di.

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

          SELECT SINGLE * FROM lfbk INTO lfbk

                 WHERE lifnr EQ it_deb_cta_di-lifnr

                 AND   bvtyp EQ it_cabecalho_di-bukrs.

          IF sy-subrc NE 0.

* << Fim da inclusão

        SELECT SINGLE * FROM lfbk INTO lfbk

               WHERE lifnr EQ it_deb_cta_di-lifnr.

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

          ENDIF.

* << Fim da inclusão

        v_banco = lfbk-bankn.

        REPLACE '-' WITH ' ' INTO v_banco.

        CONDENSE v_banco NO-GAPS.

        IF NOT lfbk-bkont+1(1) IS INITIAL.

          CONCATENATE v_banco

...

 

 

 

...

    ENDIF.

    IF it_adicao_di-codregtriipi EQ '3'.

      it_adicao_di-codregtriipi = '4'.

    ENDIF.

    MODIFY it_adicao_di.

  ENDLOOP.

  SELECT * FROM /pws/zycit486 INTO TABLE

  it_merc_cab WHERE nrseqdi EQ i_nrseqdi.

  SELECT * FROM /pws/zycit485 INTO TABLE

  it_merc_ad WHERE nrseqdi EQ i_nrseqdi.

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

  ENDIF.

* << Fim da inclusão

  READ TABLE itab_zyglt100 WITH KEY zexit = 'TDI001' BINARY SEARCH.

  IF sy-subrc = 0

      AND NOT itab_zyglt100-programa IS INITIAL

      AND NOT itab_zyglt100-formulario IS INITIAL.

    it_cabecalho_di2[] = it_cabecalho_di[].

    it_itens_di2[]     = it_itens_di[].

    it_det_itens_di2[] = it_det_itens_di[].

    it_inst_desp_di2[] = it_inst_desp_di[].

    it_proc_vinc_di2[] = it_proc_vinc_di[].

    it_volumes_di2[]   = it_volumes_di[].

...

 

 

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

Modificações efetuadas em REPS /PWS/LZYCIGF5X01

 

...

 

* >> Início da inclusão:

tables : /pws/zycit443.

* << Fim da inclusão

DATA BEGIN OF COMMON PART k.

...

 

...

 

* >> Início da inclusão:

data:

wa_442 LIKE /pws/zycie442.

* << Fim da inclusão

DATA END OF COMMON PART k.

 

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

Modificações efetuadas em REPS /PWS/MZYCI070F01

 

...

 

  IF v_erro_lote = 'S'.

    MESSAGE i039 WITH text-498.

    EXIT.

  ENDIF.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF NOT /pws/zycie442-waersfob IS INITIAL.

      PERFORM: taxa_converte

        USING    /pws/zycie442-waersfob

                 /pws/zycie442-dttax

        CHANGING /pws/zycie442-ukursfob.

    ENDIF.

    IF NOT /pws/zycie442-waersfre IS INITIAL.

      PERFORM: taxa_converte

        USING    /pws/zycie442-waersfre

                 /pws/zycie442-dttax

        CHANGING /pws/zycie442-ukursfre.

    ENDIF.

    IF NOT /pws/zycie442-waersseg IS INITIAL.

      PERFORM: taxa_converte

        USING    /pws/zycie442-waersseg

                 /pws/zycie442-dttax

        CHANGING /pws/zycie442-ukursseg.

    ENDIF.

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

  ENDIF.

* << Fim da exclusão

  PERFORM visualiza_rateio.

 

...

 

...

 

  DELETE FROM /pws/zycit447 WHERE nrseqda = /pws/zycie442-nrseqda.

  MODIFY /pws/zycit447 FROM TABLE itab_zycit447.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF NOT /pws/zycie442-nrbl IS INITIAL.

      v_calci = 'S'.

    ENDIF.

 

...

 

...

 

    LOOP AT itab_zycit049.

      MOVE-CORRESPONDING itab_zycit049 TO itab_zycit049di2.

      APPEND itab_zycit049di2.

    ENDLOOP.

    DELETE FROM /pws/zycit049 WHERE nrseq = /pws/zycie442-nrseqda.

    MODIFY /pws/zycit049 FROM TABLE itab_zycit049di2.

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

  ENDIF.

* << Fim da exclusão

  DELETE FROM /pws/zycit200 WHERE id = /pws/zycie442-nrseqda.

  MODIFY /pws/zycit200 FROM TABLE itab_zycit200.

  DELETE FROM /pws/zycit443 WHERE nrseqda = /pws/zycie442-nrseqda.

  CLEAR:   itab_zycit443.

  REFRESH: itab_zycit443.

...

 

...

 

  DELETE itab_zycit442 WHERE nrseqda = /pws/zycie442-nrseqda.

  APPEND /pws/zycie442 TO itab_zycit442.

  SORT itab_zycit442 BY nrseqda.

  COMMIT WORK.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    MESSAGE i017 WITH text-060.

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

  ELSE.

    MESSAGE i017 WITH text-061.

  ENDIF.

* << Fim da exclusão

...

 

...

 

  ENDLOOP.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF /pws/zycie442 NE wa_zycit442.

      v_changed = '1'.

    ENDIF.

...

 

...

      v_changed = '1'.

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

    ENDIF.

* << Fim da exclusão

  ENDIF.

ENDFORM.

 

...

 

...

 

FORM save_data_item.

  DATA : v_waersdif LIKE /pws/zycie443a-waersbem.

  CLEAR: v_waersdif.

  DATA wa_itab_aux LIKE itab_it.

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

  IF v_dit = 'S' AND

    ( /pws/zycie442-meiotransp = 'PS' OR

      /pws/zycie093-meiotransp = 'PS' )

                 AND /pws/zycie442-tpdi       = 'S'.

    /pws/zycie443a-vlii  = t_iirec.

    /pws/zycie443a-vlipi = t_ipirec.

  ENDIF.

* << Fim da exclusão

...

 

 

...

    ENDIF.

  ELSE.

    IF  /pws/zycie442-meiotransp = 'PS'

        AND /pws/zycie442-tpdi EQ 'S'

        AND /pws/zycie443a-advalii IS INITIAL.

      /pws/zycie443a-advalii = '60'.

    ENDIF.

  ENDIF.

  t_iibas = t_ivadu.

  a_iicalc  = ( ( /pws/zycie443a-advalii  / 100 ) * t_iibas ).

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF NOT /pws/zycie443a-reduzida IS INITIAL.

      a_iiredu  = ( ( /pws/zycie443a-reduzida / 100 ) * t_iibas ).

    ELSE.

      CLEAR: a_iiredu.

    ENDIF.

    a_iiacor  = ( ( /pws/zycie443a-acordorate / 100 ) * t_iibas ).

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

  ENDIF.

* << Fim da exclusão

  CLEAR: t_iirec.

  CASE /pws/zycie443a-codregtri.

    WHEN '1' OR '3' OR '4' OR '5' OR '7' OR '8'.

      IF /pws/zycie442-ntimp  NE '09' AND /pws/zycie442-ntimp  NE '11'.

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

        IF v_dit = 'S' AND NOT /pws/zycie443a-codregtri = '5'.

          t_iirec = a_iicalc.

          itab_it-vlii   = t_iirec.

        ELSE.

* << Fim da exclusão

          IF NOT a_iiredu IS INITIAL.

            t_iirec = a_iiredu.

          ELSE.

            IF /pws/zycie443a-acordo EQ '2'.

              t_iirec = a_iiredu = a_iiacor.

            ELSE.

              IF NOT /pws/zycie442-meiotransp EQ 'PS' OR

                ( NOT /pws/zycie001-meioemba = 'PS' AND

                  v_embimp EQ 'X' ).

                t_iirec = a_iicalc.

...

 

...

          ENDIF.

          itab_it-vlii   = t_iirec.

          IF /pws/zycie443a-codregtri CA '35'.

            CLEAR: t_iirec.

          ENDIF.

          s_wiireco = s_wiireco + t_iirec.

          s_wiicalc = s_wiicalc + a_iicalc.

          s_wiiredu = s_wiiredu + a_iiredu.

          s_wiidevi = s_wiidevi + a_iidevi.

        ENDIF.

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

      ENDIF.

* << Fim da exclusão

  ENDCASE.

  itab_it-baseii       = t_iibas.

  itab_it-ii_calculado = a_iicalc.

  itab_it-ii_reduzido  = a_iiredu.

  itab_it-ii_devido    = a_iidevi.

  itab_it-ii_recolher  = t_iirec .

ENDFORM.

FORM load_iipi USING p_tipo.

  IF itab_it-codregtri EQ '5' .

    t_ipibas  = ( t_ivadu + itab_it-ii_calculado ).

  ELSE.

    t_ipibas  = ( t_ivadu + t_iirec ).

  ENDIF.

  a_ipidevi = ( ( /pws/zycie443a-advalipi / 100 ) * t_ipibas ).

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF /pws/zycie443a-codregtriipi EQ '4' AND

      ( ( /pws/zycie003-advalipi IS INITIAL AND

        v_embimp EQ 'X' ) OR

       /pws/zycie443a-advalipi IS INITIAL ).

      a_ipidevi =

        ( /pws/zycie443a-unit_valor * /pws/zycie443a-unit_qtde ).

    ENDIF.

    IF /pws/zycie443a-codregtriipi EQ '2'.

      a_ipidevi = ( ( /pws/zycie443a-reduzidaipi / 100 ) * t_ipibas ).

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

    ENDIF.

* << Fim da exclusão

  ENDIF.

  itab_it-vlipi   = a_ipidevi.

  CLEAR t_ipirec.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF

       '26'  NA /pws/zycie443a-codregtri.

      t_ipirec = a_ipidevi.

      IF p_tipo = 'A'.

...

 

...

        ENDIF.

      ELSE.

        IF ' 15' NA /pws/zycie443a-codregtriipi .

          s_wipireco = s_wipireco + t_ipirec.

        ELSE.

          CLEAR t_ipirec.

        ENDIF.

        s_wipidevi = s_wipidevi + a_ipidevi.

      ENDIF.

    ENDIF.

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

  ELSE.

    IF ' 35' NA /pws/zycie443a-codregtri AND

       /pws/zycie442-ntimp NE '09'       AND

       /pws/zycie442-ntimp NE '11'.

      t_ipirec = a_ipidevi.

    ENDIF.

  ENDIF.

* << Fim da exclusão

  itab_it-baseipi = t_ipibas.

  itab_it-ipi_devido   = a_ipidevi.

  itab_it-ipi_recolher = t_ipirec .

ENDFORM.

...

 

...

  MOVE itab_it[] TO itab_ita[].

  PERFORM atualiza_doccmp.

  v_acto       = 'A'.

  v_txtdisplay = space.

  v_txtsave    = 'X'.

  IF v_tcode EQ '/PWS/ZYCI070_E'.

    v_acto       = 'E'.

    v_txtdisplay = 'X'.

    v_txtsave    = space.

  ENDIF.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF v_tcode EQ '/PWS/ZYCI070_C'.

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                          DUMMY

                                          ID 'ACTVT' FIELD '01'.

      IF sy-subrc NE 0.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycie442-bukrs

                                            ID 'ACTVT' FIELD '01'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycie442-bukrs.

...

 

...

                                            /pws/zycie442-bukrs

                                            ID 'ACTVT' FIELD '03'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycie442-bukrs.

        ENDIF.

      ENDIF.

    ENDIF.

    PERFORM check USING vl_erro.

    IF NOT vl_erro IS INITIAL.

      MESSAGE e013 WITH text-226.

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

    ENDIF.

    CALL SCREEN '0050'.

  ELSE.

    IF v_tcode EQ '/PWS/ZYCI070_C'.

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                          DUMMY

                                          ID 'ACTVT' FIELD '01'.

      IF sy-subrc NE 0.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycie442-bukrs

                                            ID 'ACTVT' FIELD '01'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycie442-bukrs.

        ENDIF.

      ELSE.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycie442-bukrs

                                            ID 'ACTVT' FIELD '01'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycie442-bukrs.

        ENDIF.

      ENDIF.

    ELSEIF v_tcode EQ '/PWS/ZYCI070_A'.

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                          DUMMY

                                          ID 'ACTVT' FIELD '02'.

      IF sy-subrc NE 0.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycie442-bukrs

                                            ID 'ACTVT' FIELD '02'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycie442-bukrs.

        ENDIF.

      ELSE.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycie442-bukrs

                                            ID 'ACTVT' FIELD '02'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycie442-bukrs.

        ENDIF.

      ENDIF.

    ELSEIF v_tcode EQ '/PWS/ZYCI070_E'.

      AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS'

                                          DUMMY

                                          ID 'ACTVT' FIELD '03'.

      IF sy-subrc NE 0.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycie442-bukrs

                                            ID 'ACTVT' FIELD '03'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycie442-bukrs.

        ENDIF.

      ELSE.

        AUTHORITY-CHECK OBJECT 'F_BKPF_BUK' ID 'BUKRS' FIELD

                                            /pws/zycie442-bukrs

                                            ID 'ACTVT' FIELD '03'.

        IF sy-subrc NE 0.

          MESSAGE e083(f5) WITH /pws/zycie442-bukrs.

        ENDIF.

* << Fim da exclusão

      ENDIF.

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

    ENDIF.

    gc_subscreen-prog = '0200'.

* << Fim da exclusão

    CALL SCREEN '0050'.

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

  ENDIF.

* << Fim da exclusão

ENDFORM.

...

 

...

reco.

  PERFORM calc_init USING 'I' p_recalc.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF v_embimp EQ 'X'.

      v_bltofat = /pws/zycie093-prepaid +

      /pws/zycie093-collect.

    ELSE.

      v_bltofat = /pws/zycie442-prepaid +

      /pws/zycie442-collect.

    ENDIF.

    v_sgtofat = /pws/zycie442-vlseg.

    IF NOT v_sgtofat IS INITIAL .

      PERFORM retorna_decimais

...

 

...

      /pws/zycie442-vlfobr = s_fbvr = v_tmle.

      IF v_tval2 LT '0'.

        IF v_msgfre NE 'N'.

          MESSAGE i015 WITH  text-454 text-488.

          CLEAR v_tval2.

          EXIT.

        ELSE.

          MESSAGE i015 WITH  text-454 text-488.

          CLEAR v_tval2.

          EXIT.

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

        ENDIF.

      ENDIF.

    ELSE.

      IF /pws/zycie442-vlfob IS INITIAL.

        /pws/zycie442-vlfob = v_tval2.

* << Fim da exclusão

      ENDIF.

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

      /pws/zycie442-vlfobr = s_fbvr = v_tmle.

* << Fim da exclusão

    ENDIF.

  ENDIF.

  PERFORM load_fbvl.

  CLEAR: v_desp_acr, v_desp_brl.

  PERFORM load_sevl.

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

  PERFORM soma_despesa_acr.

* << Fim da inclusão

  IF NOT itab_it[] IS INITIAL.

    CLEAR:

      /pws/zycie442-vlpis,

      /pws/zycie442-vlcofins.

  ENDIF.

  LOOP AT itab_it.

    v_idx = sy-tabix.

    IF itab_it-qtdeumest IS INITIAL.

      PERFORM qtd_estatic USING itab_it-matnr

                                itab_it-j_1bnbm

...

 

...

                        itab_it TO /pws/zycie003.

    IF /pws/zycie442-mdadicao = 'N'.

      IF /pws/zycie442-vlfob IS INITIAL.

        /pws/zycie442-vlfob =  v_tval.

      ENDIF.

    ENDIF.

    IF s_fbvr IS INITIAL.

      PERFORM load_fbvl.

    ENDIF.

    PERFORM calc_itab_vals USING 'I'.

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

    IF v_dit = 'S'.

      /pws/zycie442-vlii   = /pws/zycie442-vlii   + t_iirec.

      /pws/zycie442-vlipi  = /pws/zycie442-vlipi  + t_ipirec.

      /pws/zycie442-vlicms = /pws/zycie442-vlicms + t_icms.

    ELSE.

      s_wadreco = s_waddevi = s_waddevi + ( itab_it-baseantid *

* << Fim da exclusão

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

    s_waddevi = s_waddevi + ( itab_it-baseantid *

* << Fim da inclusão

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

      itab_it-qtdeantid ).

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

    ENDIF.

* << Fim da exclusão

    itab_it-vlfre_me = v_tot_fre.

    itab_it-vlseg_me = v_tot_seg.

    itab_it-vlfre    = t_ivfre.

    itab_it-vlseg    = t_ivseg.

    itab_it-vldiffob = t_vldif.

...

 

...

    /pws/zycie442-vlfre = /pws/zycie093-prepaid +

      /pws/zycie093-collect - /pws/zycie093-ternacion.

    /pws/zycie093-waersfre = /pws/zycie442-waersfre.

  ELSE.

    /pws/zycie442-vlfre = /pws/zycie442-prepaid +

      /pws/zycie442-collect - /pws/zycie442-ternacion.

  ENDIF.

  PERFORM trata_decimais

    USING    /pws/zycie442-waersfre

    CHANGING /pws/zycie442-vlfre.

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

  IF v_dit = 'S' AND

    ( /pws/zycie442-meiotransp NE 'PS' OR

      /pws/zycie093-meiotransp NE 'PS' ).

    t_vlii   = /pws/zycie442-vlii.

    t_vlipi  = /pws/zycie442-vlipi.

    t_vlicms = /pws/zycie442-vlicms.

  ENDIF.

  LOOP AT itab_zycit049 WHERE tipo = 'A'.

    IF NOT itab_zycit049-waers IS INITIAL.

      IF itab_zycit049-waers NE /pws/zycie442-waersfob.

        PERFORM: calc_ret_moeda:

          USING    itab_zycit049-waers

                   /pws/zycie442-waersfob

          CHANGING itab_zycit049-vldp.

        v_tval2 = v_tval2 + itab_zycit049-vldp.

      ELSE.

        v_tval2 = v_tval2 + itab_zycit049-vldp.

      ENDIF.

    ENDIF.

  ENDLOOP.

  PERFORM load_fbvl.

  LOOP AT itab_zycit049 WHERE tipo = 'A'.

    IF itab_zycit049-waers = wa_zycbt007-waersb.

      s_fbvr = s_fbvr + itab_zycit049-vldp.

    ELSE.

      PERFORM calc_ret_moeda

        USING    itab_zycit049-waers

                 wa_zycbt007-waersb

        CHANGING itab_zycit049-vldp.

      s_fbvr = s_fbvr + itab_zycit049-vldp.

    ENDIF.

  ENDLOOP.

  /pws/zycie442-vlfobr = s_fbvr.

* << Fim da exclusão

ENDFORM.

 

...

 

...

    ENDIF.

  ENDLOOP.

  MOVE: it_adi[]   TO it_alist[],

        it_adi[]   TO it_adia[].

  DELETE ADJACENT DUPLICATES FROM it_alist COMPARING adicao.

  DATA: local_adia LIKE it_adia.

  SORT it_adia BY adicao valor.

  DESCRIBE TABLE it_alist      LINES v_line.

  DESCRIBE TABLE itab_zycit451 LINES v_linha.

  IF v_line NE v_linha.

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

    IF v_dit EQ 'N'.

* << Fim da exclusão

      IF NOT /pws/zycie442-dttax IS INITIAL.

        MESSAGE s015 WITH text-010.

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

      ENDIF.

* << Fim da exclusão

    ENDIF.

    CLEAR:   itab_zycit449, itab_zycit450, itab_zycit451,

             itab_zycit453, itab_zycit452, itab_zycit454.

    REFRESH: itab_zycit449, itab_zycit450, itab_zycit451,

             itab_zycit452, itab_zycit453, itab_zycit454.

...

 

...

      itab_itb-advalicms = itab_it-advalicms.

    ENDIF.

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

      IF itab_it-codregtriicms IS INITIAL.

        itab_it-codregtriicms = '1'.

      ENDIF.

      IF itab_it-codregtripiscofi IS INITIAL.

        itab_it-codregtripiscofi = '5'.

      ENDIF.

    ENDIF .

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

    IF v_dit = 'N'.

* << Fim da exclusão

      IF itab_it-advalii   IS INITIAL.

        itab_it-advalii   = itab_zycit003-aliqii.

      ENDIF.

      IF itab_it-advalipi  IS INITIAL.

        itab_it-advalipi  = itab_zycit003-aliqipi.

      ENDIF.

      IF itab_it-advalicms IS INITIAL.

        itab_it-advalicms = itab_zycit003-aliqicms.

      ENDIF.

      IF itab_it-codmat IS INITIAL.

...

 

...

        v_waers = itab_it-waersbem.

      ELSE.

        IF v_waers NE itab_it-waersbem.

          /pws/zycie442-mdadicao = 'N'.

        ENDIF.

      ENDIF.

      IF itab_it-entrega IS INITIAL.

        PERFORM fill_entrega.

      ENDIF.

      PERFORM set_codregtri.

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

    ELSE.

      IF itab_it-pproc IS INITIAL.

        itab_it-pproc = itab_it-porigem.

      ENDIF.

    ENDIF.

* << Fim da exclusão

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

      SELECT SINGLE matnr FROM ekpo INTO v_matnr

        WHERE ebeln EQ itab_it-ebeln

        AND   ebelp EQ itab_it-ebelp.

      IF itab_it-basredpis IS INITIAL.

        SELECT SINGLE *  FROM /pws/zycit406 INTO wa_zycit406

          WHERE pais EQ 'BR'

          AND   matnr EQ v_matnr

          AND   tributos EQ 'PIS'.

        IF sy-subrc EQ 0.

...

 

...

      v_tmle = v_tmle + ( ( itab_it-qtd_da * itab_it-vlreal )

                      * itab_it-dttaxbem ).

    ELSE.

      v_tval = v_tval + ( itab_it-qtd_itencacl * itab_it-vlreal ).

      v_tmle = v_tmle + ( ( itab_it-qtd_itencacl * itab_it-vlreal )

                      * itab_it-dttaxbem ).

    ENDIF.

  ENDLOOP.

  v_tmle_d2 = v_tmle.

  PERFORM data_sort.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF /pws/zycie442-mdadicao = 'S'.

      IF /pws/zycie442-waersfob IS INITIAL.

        /pws/zycie442-waersfob = v_waers.

      ENDIF.

      LOOP AT itab_it.

        itab_it-dttaxbem = /pws/zycie442-ukursfob.

        itab_it-waersbem = /pws/zycie442-waersfob.

        MODIFY itab_it INDEX sy-tabix TRANSPORTING dttaxbem waersbem.

      ENDLOOP.

      IF /pws/zycie442-vlseg IS INITIAL AND sy-tcode = '/PWS/ZYCI070_C'.

...

 

...

        IF sy-subrc EQ 0.

          /pws/zycie442-waersseg = itab_zycit006-waers.

        ENDIF.

        PERFORM retorna_decimais USING /pws/zycie442-waersseg

                               CHANGING /pws/zycie442-vlseg.

      ENDIF.

    ELSE.

      CLEAR: /pws/zycie442-waersfob, /pws/zycie442-vlfob,

             /pws/zycie442-ukursfob.

      /pws/zycie442-waersfob = 'USD'.

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

    ENDIF.

* << Fim da exclusão

  ENDIF.

  READ TABLE itab_zycit001 INDEX 1.

  IF sy-subrc EQ 0.

    s_inco1 = itab_zycit001-inco1.

    /pws/zycie442-codreg = itab_zycit001-regime.

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

    IF v_dit = 'S'.

      /pws/zycie442-ntimp = itab_zycit001-regime.

    ENDIF.

* << Fim da exclusão

    IF /pws/zycie442-j_1bbranch IS INITIAL.

      /pws/zycie442-j_1bbranch = itab_zycit001-j_1bbranch.

    ENDIF.

  ELSE.

    s_inco1 = /pws/zycie442-inco1.

  ENDIF.

  CLEAR /pws/zycit062.

  SELECT SINGLE * FROM j_1bbranch

    WHERE bukrs = /pws/zycie442-bukrs

     AND branch = /pws/zycie442-j_1bbranch.

...

 

...

         /pws/zycie451-baseii,   v_tot_plan,

         a_basepc.

  LOOP AT itab_it.

    v_tntgew = v_tntgew + itab_it-ntgew.

  ENDLOOP.

  LOOP AT itab_itb.

    v_idx = itab_itb-seq.

    MOVE itab_itb TO wa_it.

    MOVE-CORRESPONDING: itab_itb TO /pws/zycie443a,

                        itab_itb TO /pws/zycie003.

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

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

* << Fim da exclusão

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

    a_addevi = a_addevi + ( itab_itb-baseantid * (

* << Fim da inclusão

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

    itab_itb-qtdeantid ).

    a_baseii   = a_baseii   + itab_itb-baseii.

    a_baseipi  = a_baseipi  + itab_itb-baseipi .

    a_iitcalc  = a_iitcalc  + itab_itb-ii_calculado.

    a_iitredu  = a_iitredu  + itab_itb-ii_reduzido .

    a_iitdevi  = a_iitdevi  + itab_itb-ii_devido   .

    a_iitreco  = a_iitreco  + itab_itb-ii_recolher .

    a_ipitdevi = a_ipitdevi + itab_itb-ipi_devido  .

    a_ipitreco = a_ipitreco + itab_itb-ipi_recolher.

    a_addevi   = a_addevi   + itab_itb-ad_devido   .

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

    a_adreco   = a_adreco   + itab_itb-ad_recolher .

* << Fim da exclusão

    a_itseg    = a_itseg    + itab_itb-vlseg       .

    a_itfre    = a_itfre    + itab_itb-vlfre       .

    a_pistcalc  = a_pistcalc  + itab_itb-pis_calculado.

    a_pistredu  = a_pistredu  + itab_itb-pis_reduzido .

    a_pistdevi  = a_pistdevi  + itab_itb-pis_devido .

    a_pistreco  = a_pistreco  + itab_itb-pis_recolher .

    a_coftcalc  = a_coftcalc  + itab_itb-cof_calculado.

    a_coftredu  = a_coftredu  + itab_itb-cof_reduzido .

    a_coftdevi  = a_coftdevi  + itab_itb-cof_devido   .

    a_coftreco  = a_coftreco  + itab_itb-cof_recolher .

...

 

 

...

 

FORM refresh_all USING p_recalc TYPE char1.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF /pws/zycie442-mdadicao EQ 'S'.

      PERFORM: taxa_converte

        USING    /pws/zycie442-waersfob

                 /pws/zycie442-dttax

        CHANGING /pws/zycie442-ukursfob.

      PERFORM:

        load_fbvl,

        fill_mdadicao.

    ELSE.

      LOOP AT itab_it

...

 

...

    PERFORM calc_itab USING p_recalc.

    IF NOT itab_it[] IS INITIAL.

      PERFORM adic_list.

      CLEAR v_pos.

      LOOP AT it_alist.

        v_pos = v_pos + 1.

        PERFORM: adic_change,

                 adic_load,

                 calc_itab_adic,

                 save_adic.

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

      ENDLOOP.

    ENDIF.

  ELSE.

    IF NOT /pws/zycie442-waersfre IS INITIAL.

      PERFORM: taxa_converte

        USING    /pws/zycie442-waersfre

                 /pws/zycie442-dttax

        CHANGING /pws/zycie442-ukursfre,

        load_frvl.

    ENDIF.

    IF NOT /pws/zycie442-waersseg IS INITIAL.

      PERFORM: taxa_converte

        USING    /pws/zycie442-waersseg

                 /pws/zycie442-dttax

        CHANGING /pws/zycie442-ukursseg,

        load_sgvl.

    ENDIF.

    LOOP AT itab_it

      WHERE NOT waersbem IS initial

        AND waersbem NE wa_zycbt007-waersb.

      PERFORM: taxa_converte

        USING    itab_it-waersbem

                 /pws/zycie442-dttax

        CHANGING itab_it-dttaxbem.

      MODIFY itab_it INDEX sy-tabix TRANSPORTING dttaxbem.

* << Fim da exclusão

    ENDLOOP.

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

    SORT itab_it BY nrseq ebeln ebelp.

    PERFORM calc_itab USING p_recalc.

* << Fim da exclusão

  ENDIF.

  PERFORM propoe_banco.

  PERFORM atualiza_qtd_po.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI070F02

 

...

           load_sewa,

           load_pais USING /pws/zycie442-land CHANGING s_ppais s_pdesc,

           load_urf,

           load_tra,

           load_reca,

           load_seto,

           load_tdo,

           load_uti,

           load_con,

           load_para.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    SORT itab_it BY nrseq ebeln ebelp.

    PERFORM: load_typeview,

             load_cana,

             load_reg,

             load_lfa,

             load_blag,

             load_ban,

             load_fbwa,

             load_fbvl,

             load_coll,

...

 

...

               load_blag,

               load_blitens,

               load_reg,

               calc_itab USING 'X'.

      PERFORM: load_cnpj

        USING    /pws/zycie442-j_1bbranch

                 /pws/zycie442-bukrs

        CHANGING s_cnpj.

      PERFORM concatena_empresa.

      PERFORM atualiza_peso_desemb.

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

      IF v_dit = 'N'.

* << Fim da exclusão

        PERFORM: adic_list,

                 adic_li_data.

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

      ENDIF.

* << Fim da exclusão

      MOVE /pws/zycie442 TO wa_zycit442.

    ELSE.

      IF NOT /pws/zycie442-codreg IS INITIAL

        AND /pws/zycie442-codreg NE '02'

        AND /pws/zycie442-codreg NE '04'.

...

 

...

 

      IF sy-subrc = 0.

        CLEAR: /pws/zycie093-gewei_b.

        t_blid = /pws/zycie093-identify.

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

        IF v_dit = 'S'.

          /pws/zycie093-prepaid = /pws/zycie093-vlfre.

        ENDIF.

* << Fim da exclusão

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

...

 

...

 

FORM load_frvl.

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

  IF v_dit = 'N'.

    IF v_embimp EQ 'X'.

      v_fretc = /pws/zycie093-prepaid + /pws/zycie093-collect -

                /pws/zycie093-ternacion.

    ELSE.

      v_fretc = /pws/zycie442-prepaid + /pws/zycie442-collect -

                /pws/zycie442-ternacion.

    ENDIF.

  ELSE.

* << Fim da exclusão

    IF v_embimp EQ 'X'.

      v_fretc = /pws/zycie093-prepaid + /pws/zycie093-collect -

                /pws/zycie093-ternacion.

    ELSE.

      v_fretc = /pws/zycie442-prepaid + /pws/zycie442-collect -

                /pws/zycie442-ternacion.

    ENDIF.

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

  ENDIF.

* << Fim da exclusão

  PERFORM trata_decimais

    USING    /pws/zycie442-waersfre

    CHANGING v_fretc.

  s_frvr_d2 = s_frvr = v_fretc * /pws/zycie442-ukursfre.

ENDFORM.

...

 

...

 

    /pws/zycie080-lifnr       = wa_lfa1-lifnr.

    /pws/zycie080-name1       = wa_lfa1-name1.

    /pws/zycie080-landa       = wa_adrc-country.

    /pws/zycie080-logradouro  = wa_adrc-street.

    /pws/zycie080-nrlogr      = wa_adrc-house_num1.

    /pws/zycie080-compl       = wa_lfa1-ort02.

    /pws/zycie080-city        = wa_adrc-city1.

    IF /pws/zycie451-fabricante EQ 3.

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

      PERFORM load_pais USING /pws/zycie451-paisfab

* << Fim da exclusão

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

      PERFORM load_pais USING /PWS/ZYCIE080A-LANDA

* << Fim da inclusão

                              CHANGING a_spais1 a_pais1.

    ELSE.

      PERFORM load_pais USING    /pws/zycie080-landa

                           CHANGING a_spais1 a_pais1.

    ENDIF.

  ELSE.

    SELECT SINGLE bezei FROM t005u INTO /pws/zycie080a-regio

    WHERE land1 = wa_lfa1-land1 AND

          spras = sy-langu AND

          bland = wa_adrc-region.

...

 

...

 

FORM load_banco

  USING p_lifnr

        p_tipo

        p_bankl

        p_bankn

        p_banks.

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

  IF v_dit = 'S'.

    CLEAR: s_pgnom.

    IF p_tipo IS INITIAL AND NOT sy-tcode EQ '/PWS/ZYCI070_C'.

      CLEAR: s_pgbks, s_pgbkl, s_pgbkn, s_pgage, s_pgcc, s_pgban.

    ENDIF.

    IF p_bankl IS INITIAL.

* << Fim da exclusão

      SELECT SINGLE * FROM lfbk WHERE lifnr = p_lifnr AND

                                      bvtyp = /pws/zycie442-bukrs.

      IF sy-subrc NE 0.

        SELECT SINGLE * FROM lfbk WHERE lifnr = p_lifnr.

      ENDIF.

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

      IF sy-subrc = 0.

        s_pgbks = /pws/zycie447a-banks = lfbk-banks.

        s_pgbkl = /pws/zycie447a-bankl = lfbk-bankl.

        s_pgbkn = /pws/zycie447a-bankn = lfbk-bankn.

        s_pgnom                   = lfbk-koinh.

        s_pgcc  = lfbk-bankn.

        CONCATENATE s_pgcc '-'  lfbk-bkont+1(1) INTO s_pgcc.

      ENDIF.

    ELSEIF p_banks IS INITIAL.

      SELECT SINGLE * FROM lfbk WHERE lifnr = p_lifnr AND

                                      bankl = p_bankl AND

                                      bankn = p_bankn AND

                                      bvtyp = /pws/zycie442-bukrs.

      IF sy-subrc NE 0.

        SELECT SINGLE * FROM lfbk WHERE lifnr = p_lifnr AND

                                        bankl = p_bankl AND

                                        bankn = p_bankn.

      ENDIF.

      IF sy-subrc = 0.

        s_pgbks = /pws/zycie447a-banks = lfbk-banks.

        s_pgbkl = /pws/zycie447a-bankl = lfbk-bankl.

        s_pgbkn = /pws/zycie447a-bankn = lfbk-bankn.

        s_pgnom                   = lfbk-koinh.

        s_pgcc  = lfbk-bankn.

        CONCATENATE s_pgcc '-'  lfbk-bkont+1(1) INTO s_pgcc.

      ENDIF.

    ELSE.

      SELECT SINGLE * FROM lfbk WHERE lifnr = p_lifnr AND

                                      bankl = p_bankl AND

                                      bankn = p_bankn AND

                                      banks = p_banks AND

                                      bvtyp = /pws/zycie442-bukrs.

      IF sy-subrc NE 0.

        SELECT SINGLE * FROM lfbk WHERE lifnr = p_lifnr AND

                                        bankl = p_bankl AND

                                        bankn = p_bankn AND

                                        banks = p_banks.

* << Fim da exclusão

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

  IF sy-subrc EQ 0.

    s_pgban = lfbk-bankl+0(03).

    IF /pws/zycit000-nbanco IS INITIAL.

      /pws/zycit000-nbanco = 3.

* << Fim da inclusão

      ENDIF.

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

      IF sy-subrc = 0.

        s_pgbks = /pws/zycie447a-banks = lfbk-banks.

        s_pgbkl = /pws/zycie447a-bankl = lfbk-bankl.

        s_pgbkn = /pws/zycie447a-bankn = lfbk-bankn.

        s_pgnom                   = lfbk-koinh.

* << Fim da exclusão

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

    s_pgage = lfbk-bankl+/pws/zycit000-nbanco.

* << Fim da inclusão

        s_pgcc  = lfbk-bankn.

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

    IF NOT lfbk-bkont+1(1) IS INITIAL.

* << Fim da inclusão

        CONCATENATE s_pgcc '-'  lfbk-bkont+1(1) INTO s_pgcc.

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

      ENDIF.

    ENDIF.

  ELSEIF v_dit = 'N'.

    SELECT SINGLE * FROM lfbk WHERE lifnr = p_lifnr AND

                                    bvtyp = /pws/zycie442-bukrs.

    IF sy-subrc NE 0.

      SELECT SINGLE * FROM lfbk WHERE lifnr = p_lifnr.

* << Fim da exclusão

    ENDIF.

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

    IF sy-subrc = 0.

      s_pgban = lfbk-bankl+0(03).

      s_pgage = lfbk-bankl+4(11).

      s_pgcc  = lfbk-bankn.

      CONCATENATE s_pgcc '-'  lfbk-bkont+1(1) INTO s_pgcc.

* << Fim da exclusão

      s_pgnom = lfbk-koinh.

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

    ENDIF.

* << Fim da exclusão

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

    s_pgbks =  s_pgban.

    s_pgbkl =  lfbk-bankl.

    s_pgbkn =  lfbk-bankn.

* << Fim da inclusão

  ENDIF.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI070F03

 

...

 

  IF itab_it[] IS INITIAL.

    v_tfrefat = /pws/zycie442-vlfre.

  ENDIF.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    v_bltofat = /pws/zycie442-prepaid +

      /pws/zycie442-collect.

    v_sgtofat = /pws/zycie442-vlseg.

    IF NOT v_sgtofat IS INITIAL .

      PERFORM retorna_decimais

        USING    /pws/zycie442-waersseg

        CHANGING v_sgtofat.

    ENDIF.

    CASE s_inco1_ci.

      WHEN 'C&F'.

...

 

...

        IF NOT v_sgtofat IS INITIAL .

          PERFORM trata_decimais

            USING    /pws/zycie442-waersseg

            CHANGING v_sgtofat.

        ENDIF.

        v_tdif = v_tfrefat - v_bltofat .

        v_bltofat = /pws/zycie442-prepaid +

          /pws/zycie442-collect - /pws/zycie442-ternacion.

        PERFORM calc_conv_frete CHANGING v_bltofat.

    ENDCASE.

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

  ENDIF.

* << Fim da exclusão

  CLEAR v_ntgew.

  IF NOT itab_it[] IS INITIAL.

    CLEAR v_tfrefat.

  ENDIF.

...

 

...

  CALL FUNCTION '/PWS/ZYCI_ENQUEUE_ZYCIT442'

       EXPORTING

            nrseqda          = /pws/zycie442-nrseqda

       EXCEPTIONS

            foreign_lock   = 1

            system_failure = 2.

  CASE sy-subrc.

    WHEN 1.

      MESSAGE w015 WITH text-229 text-230.

      v_status_s = '0'.

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

      IF v_dit = 'N'.

* << Fim da exclusão

        v_tcode = '/PWS/ZYCI070_E'.

        v_acto = 'E'.

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

      ENDIF.

* << Fim da exclusão

    WHEN 2.

      MESSAGE a015 WITH text-118.

      v_status_s = '0'.

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

      IF v_dit = 'N'.

* << Fim da exclusão

        v_tcode = '/PWS/ZYCI070_E'.

        v_acto = 'E'.

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

      ENDIF.

* << Fim da exclusão

  ENDCASE.

ENDFORM.

...

 

...

FORM load_compl.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    IF v_embimp EQ 'X'.

      SELECT * FROM /pws/zycit257 INTO TABLE itab_zycit257

          WHERE meiotransp EQ /pws/zycie093-meiotransp

               AND codint  EQ '023'

               AND tdspras EQ sy-langu.

    ELSE.

      SELECT * FROM /pws/zycit257 INTO TABLE itab_zycit257

          WHERE meiotransp EQ /pws/zycie442-meiotransp

               AND codint  EQ '023'

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

               AND tdspras EQ sy-langu.

    ENDIF.

  ELSE.

    IF v_embimp EQ 'X'.

      SELECT * FROM /pws/zycit257 INTO TABLE itab_zycit257

          WHERE meiotransp EQ /pws/zycie093-meiotransp

               AND codint  EQ '025'

               AND tdspras EQ sy-langu.

    ELSE.

      SELECT * FROM /pws/zycit257 INTO TABLE itab_zycit257

          WHERE meiotransp EQ /pws/zycie442-meiotransp

               AND codint  EQ '025'

* << Fim da exclusão

               AND tdspras EQ sy-langu.

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

    ENDIF.

* << Fim da exclusão

  ENDIF.

  IF sy-subrc EQ 0.

    LOOP AT itab_zycit257.

      MOVE: 'X' TO itab_zycit104-flag,

            'I' TO itab_zycit104-codmod,

           itab_zycit257-codint    TO itab_zycit104-codint,

...

 

...

    INTO /pws/zycit094

    FROM /pws/zycit094

    WHERE nrseqce = /pws/zycie093-nrseqce.

  SELECT SINGLE *

    INTO /pws/zycit001

    FROM /pws/zycit001

    WHERE nrseq = /pws/zycit094-nrseq.

  IF NOT /pws/zycit001-inco1 IS INITIAL.

    /pws/zycie442-inco1 = /pws/zycit001-inco1.

  ENDIF.

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

  IF v_dit = 'N'.

* << Fim da exclusão

    SELECT SINGLE *

      INTO /pws/zycit274

      FROM /pws/zycit274

      WHERE nomeacao = '05'.

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

    IF sy-subrc = 0 AND NOT /pws/zycit274-autonome IS INITIAL

                    AND NOT /pws/zycie442-bukrs    IS INITIAL

                    AND NOT /pws/zycie442-identify IS INITIAL.

      CONCATENATE /pws/zycit001-bukrs '-' /pws/zycit001-nrseq

             INTO /pws/zycie442-identify.

    ENDIF.

  ELSEIF v_dit = 'S'.

    SELECT SINGLE *

      INTO /pws/zycit274

      FROM /pws/zycit274

      WHERE nomeacao = '06'.

* << Fim da exclusão

    IF sy-subrc = 0 AND NOT /pws/zycit274-autonome IS INITIAL

                    AND NOT /pws/zycie442-bukrs    IS INITIAL

                    AND NOT /pws/zycie442-identify IS INITIAL.

      CONCATENATE /pws/zycit001-bukrs '-' /pws/zycit001-nrseq

             INTO /pws/zycie442-identify.

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

    ENDIF.

* << Fim da exclusão

  ENDIF.

ENDFORM.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI070F05

 

...

 

* >> Início da inclusão:

form soma_despesa_acr.

  DATA:   v_vldp LIKE itab_zycit049-vldp.

  LOOP AT itab_zycit049 WHERE tipo = 'A' AND

          vldp > 0.

    IF itab_zycit049-tpdesp NE /pws/zycit000-flagfreten.

      IF itab_zycit049-waers  NE wa_zycbt007-waersb.

        PERFORM trata_decimais USING itab_zycit049-waers

                       CHANGING itab_zycit049-vldp.

      ENDIF.

      IF itab_zycit049-waers NE /pws/zycie442-waersfob.

        PERFORM taxa_converte USING  /pws/zycie442-waersfob

                                     /pws/zycie442-dttax

                                     CHANGING v_taxa.

        IF NOT v_taxa IS INITIAL.

          v_tval2 = v_tval2 + ( itab_zycit049-vldp / v_taxa ).

        ENDIF.

      ELSE.

        v_tval2 = v_tval2 + itab_zycit049-vldp.

      ENDIF.

      v_desp_acr = v_desp_acr + itab_zycit049-vldp.

      IF itab_zycit049-waers = wa_zycbt007-waersb.

        s_fbvr = s_fbvr + itab_zycit049-vldp.

        v_desp_brl = v_desp_brl + itab_zycit049-vldp.

      ELSE.

        v_vldp = itab_zycit049-vldp.

        PERFORM calc_conv_moeda

        USING  itab_zycit049-waers

               wa_zycbt007-waersb

               CHANGING v_vldp.

        s_fbvr = s_fbvr + v_vldp.

      ENDIF.

      IF itab_zycit049-waers EQ 'USD'.

        PERFORM load_sevl.

      ENDIF.

    ENDIF.

  ENDLOOP.

endform.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI070I01

 

...

 

MODULE modi_datait INPUT.

  itab_it-mark = wa_it-mark.

  MOVE: v_saldo_da TO itab_it-v_saldo_da,

        v_qtd_da   TO itab_it-qtd_da,

        v_vlreal   TO itab_it-vlreal.

  IF itab_it-mandt IS INITIAL.

    itab_it-mandt = sy-mandt.

  ENDIF.

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

  IF v_dit = 'S'.

  ELSE.

* << Fim da exclusão

    itab_it-lifnrfabr = /pws/zycie443a-lifnrfabr.

    MODIFY itab_it TRANSPORTING mark v_saldo_da qtd_da vlreal ntgew

                                lifnrfabr

                      WHERE ebeln EQ itab_it-ebeln

                        AND ebelp EQ itab_it-ebelp.

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

  ENDIF.

* << Fim da exclusão

ENDMODULE.

 

...

 

...

      CHANGING t_regdes.

  ELSEIF sy-dynnr =  '0232'.

    itab_it-codregtri = /pws/zycie443a-codregtri.

    PERFORM load_regt

      USING    /pws/zycie443a-codregtri

               w_ntimp

               '1'

      CHANGING t_regdes.

    PERFORM fill_clas.

  ELSE.

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

    IF v_dit = 'N'.

* << Fim da exclusão

      CLEAR w_ntimp.

      PERFORM load_regt

        USING /pws/zycie443a-codregtriipi

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

              w_ntimp

              '2'

        CHANGING t_regde2.

    ELSEIF v_dit = 'S'.

      PERFORM load_regt

        USING    /pws/zycie443a-codregtriipi

* << Fim da exclusão

                 w_ntimp

                 '2'

        CHANGING t_regde2.

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

    ENDIF.

* << Fim da exclusão

  ENDIF.

ENDMODULE.

 

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI070O01

 

...

      itab_fabric-logradouro = /pws/zycie080-logradouro.

      itab_fabric-nrlogr     = /pws/zycie080-nrlogr.

      itab_fabric-compl      = /pws/zycie080-compl.

      itab_fabric-regio      = /pws/zycie080-regio.

      itab_fabric-city       = /pws/zycie080-city.

      IF NOT /pws/zycie080-lifnr IS INITIAL.

        APPEND itab_fabric.

      ENDIF.

    ENDIF.

    /pws/zycit500-name1 = itab_fabric-name1.

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

    IF /pws/zycie443a-lifnrfabr NE /pws/zycie443a-lifnr.

      itab_zycit451-fabricante =  2.

    ELSE.

      itab_zycit451-fabricante = 1.

    ENDIF.

    MODIFY itab_zycit451 TRANSPORTING fabricante

    WHERE adicao = /pws/zycie443a-adicao.

* << Fim da inclusão

  ELSEIF NOT itab_it-fabrinr IS INITIAL.

    READ TABLE itab_zycit500 WITH KEY fabrinr = itab_it-fabrinr.

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

    IF  itab_zycit500-name1      IS INITIAL AND

        itab_zycit500-logradouro IS INITIAL AND

        itab_zycit500-nrlogr     IS INITIAL AND

        itab_zycit500-compl      IS INITIAL AND

        itab_zycit500-regio      IS INITIAL AND

        itab_zycit500-city       IS INITIAL.

      itab_zycit451-fabricante =  3.

    ELSE.

      itab_zycit451-fabricante = 2.

    ENDIF.

* << Fim da inclusão

    /pws/zycit500-name1 = itab_zycit500-name1.

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

    MODIFY itab_zycit451 TRANSPORTING fabricante

   WHERE adicao = /pws/zycie443a-adicao.

* << Fim da inclusão

  ENDIF.

ENDMODULE.

 

...

 

...

 /pws/zycie451-taxarate.

    a_1parcnum    = a_2parcnum    = a_3parcnum    =

 /pws/zycie451-parcnum.

    a_1periodic   = a_2periodic   = a_3periodic   =

 /pws/zycie451-periodic.

    a_1indice     = a_2indice     = a_3indice     =

 /pws/zycie451-indice.

    a_1valtot     = a_2valtot     = a_3valtot     =

 /pws/zycie451-valtot.

    CLEAR: /pws/zycie080, /pws/zycie080a.

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

    v_fabric = 3.

* << Fim da exclusão

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

    /pws/zycie451-fabricante = v_fabric = 3.

* << Fim da inclusão

    READ TABLE itab_it WITH KEY adicao = wa_it-adicao.

    PERFORM load_forn USING: itab_it-lifnr '800'.

    IF NOT itab_it-lifnrfabr IS INITIAL.

      IF itab_it-lifnrfabr NE itab_it-lifnr.

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

        v_fabric = 2.

* << Fim da exclusão

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

        /pws/zycie451-fabricante = v_fabric = 2.

* << Fim da inclusão

        PERFORM load_forn USING itab_it-lifnrfabr '80A'.

      ELSE.

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

        v_fabric = 1.

* << Fim da exclusão

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

        /pws/zycie451-fabricante = v_fabric = 1.

* << Fim da inclusão

      ENDIF.

    ELSEIF NOT itab_it-fabrinr IS INITIAL.

...

 

...

      /pws/zycie080a-compl      = itab_zycit500-compl.

      /pws/zycie080a-city       = itab_zycit500-city.

      PERFORM load_pais USING    /pws/zycie080a-landa

                        CHANGING a_spais2 a_pais2.

      IF  /pws/zycie080a-name1      IS INITIAL AND

          /pws/zycie080a-logradouro IS INITIAL AND

          /pws/zycie080a-nrlogr     IS INITIAL AND

          /pws/zycie080a-compl      IS INITIAL AND

          /pws/zycie080a-regio      IS INITIAL AND

          /pws/zycie080a-city       IS INITIAL.

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

        v_fabric = 3.

* << Fim da exclusão

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

        /pws/zycie451-fabricante = v_fabric = 3.

* << Fim da inclusão

        wa_it-porigem = /pws/zycie080a-landa.

        a_spais = a_spais2.

        a_pais = a_pais2.

      ELSE.

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

        v_fabric = 2.

* << Fim da exclusão

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

        /pws/zycie451-fabricante = v_fabric = 2.

* << Fim da inclusão

      ENDIF.

    ENDIF.

    PERFORM: load_cncm USING wa_it-j_1bnbm,

             load_pais USING wa_it-porigem

                       CHANGING a_spais a_pais,

             load_pais USING /pws/zycie080-landa

                       CHANGING a_spais1 a_pais1,

             load_inco USING /pws/zycie442-inco1,

 

...