CE PLUS - Nota 011507

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Fatura Mercadoria

Data/Hora da Publicação: 11/11/2011 17:00:19

Data/Hora Última Alteração: 11/11/2011 17:00:19

Descrição da Nota: DESENVOLVIMENTO FATURA INTERCOMPANY

Sintoma

Feito desenvolvimento para tratamento de fatura intercompany

 

 

Solução

Feito desenvolvimento para tratamento de fatura intercompany

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

Informações Complementares

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

Nota Número 11507 Data: 03/10/2011 Hora: 10:32:15

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

 

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

Nota Número              : 11507

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00009

Agrupamento              : 00088

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

Referência às notas relacionadas:

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

 

10278  - 00001 - 8.0    - 00003  - AJUSTE GRAVAÇÃO DO CABEÇALHO DA REMESSA

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

DESENVOLVIMENTO FATURA INTERCOMPANY

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

Palavras Chave:

FATURA INTERCOMPANY - LATAM - AMÉRICA LATINA

 

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

Objetos da nota:

CLAS /PWS/CL_ZYCI_VALID_DOCUMENT

FUNC /PWS/ZYCI_RECLASSIFICACAO_IA

REPS /PWS/MZYCI001F01

REPS /PWS/MZYCI001F03

REPS /PWS/MZYCI001X01

REPS /PWS/MZYCI003F03

REPS /PWS/MZYCI080F01

REPS /PWS/SAPMZYCI003

REPT /PWS/SAPMZYCI001

REPT /PWS/SAPMZYCI003

REPS /PWS/LZYCIGF10F02

REPS /PWS/LZYCIGF10X01

 

 

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

Modificações efetuadas em TABD /PWS/ZYCIE006

 

Ao final da estrutura, /PWS/ZYCIE006, criar os campos abaixo

 

*Campos

 

     Nome de campo Elem.dados    Tab.verif.    N CtDt Comp. Grupo

 

     BELNR_F_02    RE_BELNR                      CHAR    10

     STATUSP_F_02  /PWS/ZYCBL073                 CHAR     1

     DT_F_02       BUDAT                         DATS     8

     HR_BELNR_F_02 UZEIT                         TIMS     6

 

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

Modificações efetuadas em TABD /PWS/ZYCIT006

 

Ao final da tabela, /PWS/ZYCIT006, criar os campos abaixo

*Campos

 

     Nome de campo Elem.dados    Tab.verif.    N CtDt Comp. Grupo

 

     BELNR_F_02    RE_BELNR                      CHAR    10

     STATUSP_F_02  /PWS/ZYCBL073                 CHAR     1

     DT_F_02       BUDAT                         DATS     8

     HR_BELNR_F_02 UZEIT                         TIMS     6

 

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_RECLASSIFICACAO_IA

 

...

  SELECT SINGLE *

      FROM /pws/zycit093

      WHERE nrseqce   EQ itab_zycit094-nrseqce.

  IF itab_zycit006[] IS INITIAL OR

     itab_zycit094[] IS INITIAL OR

     t_zycit100[] IS INITIAL    OR

     t_zycit003[] IS INITIAL.

    RAISE table_initial.

  ENDIF.

  REFRESH itab_zycit132. CLEAR itab_zycit132.

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

  IF /pws/zycie001-modalidade NE '07' .

* << Fim da inclusão

  LOOP AT itab_zycit006 WHERE belnr_p IS initial AND

                              tpfatura = '01'.

    SELECT *

      FROM /pws/zycit132

      APPENDING TABLE itab_zycit132

      WHERE nrseq     = itab_zycit006-nrseq AND

            eliminado = space.

  ENDLOOP.

  LOOP AT itab_zycit132.

    READ TABLE itab_zycit006 WITH KEY nrseq = itab_zycit132-nrseq.

    IF sy-subrc = 0.

      MOVE: itab_zycit132-belnr_p   TO itab_zycit006-belnr_p,

            itab_zycit132-dt_belnrp TO itab_zycit006-dt_belnrp.

      APPEND itab_zycit006.

    ENDIF.

  ENDLOOP.

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

  ENDIF.

  IF /pws/zycie001-modalidade NE '07'.

* << Fim da inclusão

  LOOP AT itab_zycit006 WHERE belnr_p IS initial.

    DELETE itab_zycit006.

  ENDLOOP.

  SORT itab_zycit006 BY belnr_p.

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

  ELSE.

    LOOP AT itab_zycit006 WHERE belnr_f_02 IS initial.

      DELETE itab_zycit006.

    ENDLOOP.

    SORT itab_zycit006 BY belnr_f_02.

  ENDIF.

* << Fim da inclusão

  CLEAR: itab_matuse.

  REFRESH: itab_matuse.

  IF NOT t_zycit003[] IS INITIAL.

    SELECT ebeln ebelp matnr bwtar j_1bmatuse knttp werks

           FROM ekpo INTO TABLE itab_matuse

           FOR ALL ENTRIES IN t_zycit003

           WHERE ebeln = t_zycit003-ebeln

             AND ebelp = t_zycit003-ebelp.

    IF ( t001-land1 = 'AR' OR t001-land1 = 'CL' ).

      LOOP AT itab_matuse.

...

 

...

    READ TABLE itab_matuse_aux

                          WITH KEY hkont      = itab_cta-konth

                                  j_1bmatuse = itab_matuse-j_1bmatuse.

    IF sy-subrc NE 0.

      MOVE: itab_matuse-j_1bmatuse TO itab_matuse_aux-j_1bmatuse,

            itab_cta-konth         TO itab_matuse_aux-hkont .

      APPEND itab_matuse_aux.

      CLEAR itab_matuse_aux.

    ENDIF.

  ENDLOOP.

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

  IF /pws/zycie001-modalidade NE '07' .

* << Fim da inclusão

  SORT itab_zycit006 BY belnr_p.

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

  ELSE.

    SORT itab_zycit006 BY belnr_f_02.

  ENDIF .

* << Fim da inclusão

  MOVE itab_matuse_aux[] TO itab_matuse_aux3[].

  SORT itab_matuse_aux3 BY hkont.

  DELETE ADJACENT DUPLICATES FROM itab_matuse_aux3 COMPARING hkont.

  LOOP AT itab_zycit006.

    IF NOT itab_matuse_aux3[] IS INITIAL.

      LOOP AT itab_matuse_aux3.

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

        IF /pws/zycie001-modalidade NE '07' .

* << Fim da inclusão

        UNPACK itab_zycit006-belnr_p TO itab_zycit006-belnr_p.

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

        ELSE.

          UNPACK itab_zycit006-belnr_p TO itab_zycit006-belnr_f_02.

        ENDIF.

* << Fim da inclusão

        CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'

             EXPORTING

                  v_bukrs                = i_zycit001-bukrs

                  v_date                 = itab_zycit006-dt_belnrp

...

 

...

                  variante_de_exercicio  = 1

                  data_nao_encontrada    = 2

                  empresa_nao_encontrada = 3

                  period_in_not_valid    = 4

                  period_not_assigned    = 5

                  version_undefined      = 6

                  OTHERS                 = 7.

        IF sy-subrc  NE  0.

          v_gjahr = itab_zycit006-dtlanc+0(4).

        ENDIF.

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

        IF /pws/zycie001-modalidade NE '07' .

* << Fim da inclusão

        SELECT hkont waers dmbtr wrbtr belnr buzei

          FROM bsis

          INTO TABLE itab_bsis_aux1

          WHERE bukrs   EQ /pws/zycie085-bukrs

            AND hkont   EQ itab_matuse_aux3-hkont

            AND gjahr   EQ v_gjahr

            AND belnr   EQ itab_zycit006-belnr_p.

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

        ELSE.

          SELECT hkont waers dmbtr wrbtr belnr buzei

            FROM bsis

            INTO TABLE itab_bsis_aux1

            WHERE bukrs   EQ /pws/zycie085-bukrs

              AND hkont   EQ itab_matuse_aux3-hkont

              AND gjahr   EQ v_gjahr

              AND belnr   EQ itab_zycit006-belnr_f_02.

        ENDIF.

* << Fim da inclusão

        LOOP AT itab_bsis_aux1.

          MOVE: itab_bsis_aux1-hkont TO itab_bsis-hkont,

                itab_bsis_aux1-buzei TO itab_bsis-buzei,

                itab_bsis_aux1-belnr TO itab_bsis-belnr.

          itab_bsis-dmbtr = itab_bsis-dmbtr + itab_bsis_aux1-dmbtr.

          itab_bsis-wrbtr = itab_bsis-wrbtr + itab_bsis_aux1-wrbtr.

        ENDLOOP.

        IF sy-subrc = 0.

          MOVE itab_zycit006-tpfatura TO itab_bsis-tpfatura.

          APPEND itab_bsis.

...

 

...

                                  ebelp = t_zycit100-ebelp.

    PERFORM verifica_receitas USING itab_ekkn-kostl

                                    v_bkzer.

    IF v_bkzer IS INITIAL .

      itab_di-kostl = itab_ekkn-kostl.

    ENDIF.

    itab_di-prctr = itab_ekkn-prctr.

    CLEAR itab_zycit006.

    READ TABLE itab_zycit006

                  WITH KEY nrseq_pgfat = itab_zycit263-nrseq_pgfat.

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

    IF /pws/zycie001-modalidade NE '07' .

* << Fim da inclusão

    CHECK NOT itab_zycit006-belnr_p IS INITIAL.

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

    ELSE.

      CHECK NOT itab_zycit006-belnr_f_02 IS INITIAL.

    ENDIF.

* << Fim da inclusão

    CLEAR: itab_matuse, itab_matuse_aux.

    READ TABLE itab_matuse WITH KEY ebeln = t_zycit100-ebeln

                                      ebelp = t_zycit100-ebelp.

    READ TABLE itab_matuse_aux WITH KEY

...

 

 

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

Modificações efetuadas em REPS /PWS/LZYCIGF10F02

 

* >> Início da inclusão:

FORM multiplos_lancamentos.

  DATA: BEGIN OF it_zycit140_aux OCCURS 0.

          INCLUDE STRUCTURE /pws/zycit140.

  DATA: END OF it_zycit140_aux.

  DATA: v_fretei_custo.

  CLEAR v_fretei_custo   .

  SELECT * FROM /pws/zycmt019 INTO TABLE itab_zycmt019

    WHERE codmod EQ 'PD'.

  IF /pws/zycie006-tpfatura EQ '01' OR

     /pws/zycie006-tpfatura EQ '11'.

    IF NOT itab_zycit003[] IS INITIAL.

      CLEAR: itab_ekkn. FREE itab_ekkn.

      SELECT ebeln ebelp prctr kostl kokrs fistl fipos aufnr ps_psp_pnr

             FROM ekkn INTO TABLE itab_ekkn

             FOR ALL ENTRIES IN itab_zycit003

             WHERE ebeln = itab_zycit003-ebeln

               AND ebelp = itab_zycit003-ebelp.

      CLEAR: itab_matuse. FREE itab_matuse.

      SELECT ebeln ebelp matnr bwtar j_1bmatuse knttp werks

             matkl

             FROM ekpo INTO TABLE itab_matuse

             FOR ALL ENTRIES IN itab_zycit003

             WHERE ebeln = itab_zycit003-ebeln

               AND ebelp = itab_zycit003-ebelp.

    ENDIF.

    CLEAR: itab_classe_aval  , itab_param_classe.

    REFRESH: itab_classe_aval, itab_param_classe.

    IF NOT itab_matuse[] IS INITIAL.

      SELECT werks bwkey FROM t001w INTO TABLE itab_t001w

             FOR ALL ENTRIES IN itab_matuse WHERE

                 werks = itab_matuse-werks.

      LOOP AT itab_matuse.

        READ TABLE itab_t001w WITH KEY werks = itab_matuse-werks.

        IF sy-subrc EQ 0.

          itab_matuse-bwkey = itab_t001w-bwkey.

          MODIFY itab_matuse.

        ENDIF.

      ENDLOOP.

      SELECT matnr bwkey bwtar bklas

       FROM mbew INTO TABLE itab_classe_aval

        FOR ALL ENTRIES IN itab_matuse

      WHERE matnr EQ itab_matuse-matnr

        AND bwkey EQ itab_matuse-bwkey

        AND bwtar EQ itab_matuse-bwtar.

    ENDIF.

    IF NOT itab_classe_aval[] IS INITIAL.

      SELECT * FROM /pws/zycit135 INTO TABLE itab_param_classe

             FOR ALL ENTRIES IN itab_classe_aval

             WHERE bklas EQ itab_classe_aval-bklas.

    ENDIF.

    CLEAR: itab_zycbt035_aux. FREE itab_zycbt035_aux.

    DESCRIBE TABLE itab_zycit003 LINES v_lines.

    LOOP AT itab_zycit003.

      v_index = sy-tabix.

      PERFORM retorna_decimais USING itab_zycit003-waers

                             CHANGING itab_zycit003-total.

      CLEAR itab_ekkn.

      READ TABLE itab_ekkn WITH KEY ebeln = itab_zycit003-ebeln

                                    ebelp = itab_zycit003-ebelp.

      CLEAR: itab_matuse.

      READ TABLE itab_matuse WITH KEY ebeln = itab_zycit003-ebeln

                                      ebelp = itab_zycit003-ebelp.

      IF itab_matuse-knttp IS INITIAL.

        CLEAR: itab_classe_aval.

        READ TABLE itab_classe_aval WITH KEY

                                          matnr = itab_matuse-matnr

                                          bwkey = itab_zycit003-werks

                                          bwtar = itab_matuse-bwtar.

        IF sy-subrc EQ 0.

          MOVE:

             itab_matuse-j_1bmatuse TO itab_zycbt035_aux-matuse,

             itab_classe_aval-bklas TO itab_zycbt035_aux-bklas .

        ELSE.

          MOVE: itab_matuse-j_1bmatuse TO itab_zycbt035_aux-matuse,

                space                  TO itab_zycbt035_aux-bklas .

        ENDIF.

      ELSE.

        MOVE: itab_matuse-j_1bmatuse TO itab_zycbt035_aux-matuse,

              itab_matuse-knttp      TO itab_zycbt035_aux-knttp .

        IF /pws/zycie006-tpfatura EQ '11'.

          MOVE   space                  TO itab_zycbt035_aux-bklas .

        ELSE.

          READ TABLE itab_classe_aval WITH KEY

                                            matnr = itab_matuse-matnr

                                            bwkey = itab_zycit003-werks

                                            bwtar = itab_matuse-bwtar.

          IF sy-subrc EQ 0.

            MOVE   itab_classe_aval-bklas TO itab_zycbt035_aux-bklas .

          ENDIF.

        ENDIF.

        IF itab_matuse-j_1bmatuse IS INITIAL.

          CLEAR: itab_t023.

          READ TABLE itab_t023 WITH KEY matkl = itab_matuse-matkl.

          IF sy-subrc NE 0.

            SELECT SINGLE * FROM t023 INTO itab_t023

                WHERE matkl EQ itab_matuse-matkl.

            APPEND itab_t023.

          ENDIF.

          MOVE: itab_t023-bklas TO itab_zycbt035_aux-bklas.

        ENDIF.

      ENDIF.

      itab_zycbt035_aux-d_valut     = /pws/zycie006-dtd_conta.

      itab_zycbt035_aux-wrbtr       = itab_zycit003-total.

      IF /pws/zycit477 IS INITIAL.

        PERFORM trata_decimais USING    /pws/zycie006-waers

                                 CHANGING itab_zycbt035_aux-wrbtr.

      ENDIF.

      itab_zycbt035_aux-werks = itab_zycit003-werks.

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

        PERFORM verifica_centro_l CHANGING

                      itab_zycbt035_aux-d_prctr

                      itab_zycbt035_aux-c_prctr.

      ENDIF.

      itab_zycbt035_aux-d_gsber     = itab_zycit003-gsber.

      v_tot_wrbtr = v_tot_wrbtr + itab_zycbt035_aux-wrbtr.

      IF v_index EQ v_lines.

        v_dif_wrbtr = v_tot_wrbtr - /pws/zycie006-vltotal.

        IF v_dif_wrbtr NE 0.

          itab_zycbt035_aux-wrbtr = itab_zycbt035_aux-wrbtr -

                                       v_dif_wrbtr.

        ENDIF.

      ENDIF.

      IF NOT /pws/zycie006-frpagto EQ 'D'.

        READ TABLE itab_zycmt019 WITH KEY

                              codmod  = 'PD'

                              tpmatnr = itab_matuse-j_1bmatuse.

        IF sy-subrc EQ 0 AND itab_zycmt019-contabiliza EQ 'X'.

          itab_zycbt035_aux-ebeln = itab_zycit003-ebeln .

          itab_zycbt035_aux-ebelp = itab_zycit003-ebelp .

        ELSE.

          CLEAR: itab_zycbt035_aux-ebeln, itab_zycbt035_aux-ebelp.

        ENDIF.

      ENDIF.

      IF NOT /pws/zycit477 IS INITIAL.

        itab_zycbt035_aux-ebeln = itab_zycit003-ebeln .

        itab_zycbt035_aux-ebelp = itab_zycit003-ebelp .

      ENDIF.

      APPEND itab_zycbt035_aux.

    ENDLOOP.

    CLEAR: itab_zycbt035     ,

           itab_zycbt035_aux2.

    FREE:  itab_zycbt035     ,

           itab_zycbt035_aux2.

    SORT itab_zycbt035_aux BY matuse bklas d_gsber d_prctr c_prctr.

    LOOP AT itab_zycbt035_aux.

      itab_zycbt035_aux2-matuse  = itab_zycbt035_aux-matuse .

      itab_zycbt035_aux2-bklas   = itab_zycbt035_aux-bklas  .

      itab_zycbt035_aux2-d_gsber = itab_zycbt035_aux-d_gsber.

      itab_zycbt035_aux2-wrbtr   = itab_zycbt035_aux-wrbtr  .

      itab_zycbt035_aux2-werks   = itab_zycbt035_aux-werks  .

      itab_zycbt035_aux2-d_prctr = itab_zycbt035_aux-d_prctr.

      itab_zycbt035_aux2-c_prctr = itab_zycbt035_aux-c_prctr.

      itab_zycbt035_aux2-knttp   = itab_zycbt035_aux-knttp  .

      itab_zycbt035_aux2-ebeln =  itab_zycbt035_aux-ebeln .

      itab_zycbt035_aux2-ebelp =  itab_zycbt035_aux-ebelp .

      COLLECT itab_zycbt035_aux2.

    ENDLOOP.

    LOOP AT itab_zycbt035_aux2.

      v_index = sy-tabix.

      CLEAR v_montante.

      v_montante = itab_zycbt035_aux2-wrbtr.

      READ TABLE itab_zycbt035_aux WITH KEY

                        matuse  = itab_zycbt035_aux2-matuse

                        bklas   = itab_zycbt035_aux2-bklas

                        d_gsber = itab_zycbt035_aux2-d_gsber

                        d_prctr = itab_zycbt035_aux2-d_prctr

                        c_prctr = itab_zycbt035_aux2-c_prctr

                        knttp   = itab_zycbt035_aux2-knttp

                        ebeln   = itab_zycbt035_aux2-ebeln

                        ebelp   = itab_zycbt035_aux2-ebelp.

      MOVE itab_zycbt035_aux TO itab_zycbt035.

      itab_zycbt035-wrbtr = v_montante.

      itab_zycbt035-bschl = '40'.

      APPEND itab_zycbt035.

    ENDLOOP.

    CLEAR itab_zycbt035_aux2. FREE itab_zycbt035_aux2.

    LOOP AT itab_zycbt035_aux.

      itab_zycbt035_aux2-wrbtr = itab_zycbt035_aux-wrbtr.

      COLLECT itab_zycbt035_aux2.

    ENDLOOP.

    LOOP AT itab_zycbt035_aux2.

      v_index = sy-tabix.

      CLEAR v_montante.

      v_montante = itab_zycbt035_aux2-wrbtr.

      READ TABLE itab_zycbt035_aux INDEX v_index.

      MOVE itab_zycbt035_aux TO itab_zycbt035.

      CLEAR: itab_zycbt035-matuse , itab_zycbt035-bklas  .

      itab_zycbt035-wrbtr = v_montante.

      IF /pws/zycie006-frpagto = 'D'.

        itab_zycbt035-bschl = '50'.

      ELSEIF /pws/zycie006-frpagto = 'N' OR

             /pws/zycie006-frpagto = 'P'.

        itab_zycbt035-bschl = '31'.

      ENDIF.

      CLEAR : itab_zycbt035-ebeln, itab_zycbt035-ebelp.

      COLLECT itab_zycbt035.

    ENDLOOP.

  ENDIF.

ENDFORM.

FORM get_parameters_f43_f02.

  DATA: v_forn(10) TYPE c.

  DATA: v_de   LIKE tcurf-ffact,

        v_para LIKE tcurf-tfact.

  v_codeven = '001N'.

  REFRESH itab_zycbt013.

  SELECT * FROM /pws/zycbt013 INTO TABLE itab_zycbt013

         WHERE tabela = '/PWS/ZYCIT006'.

  REFRESH: itab_zycbt012.

  SELECT * FROM /pws/zycbt012 INTO TABLE itab_zycbt012

         WHERE codeven = v_codeven

           AND codmod  = 'D'.

  CLEAR wa_zycbt011.

  SELECT SINGLE * FROM /pws/zycbt011 INTO wa_zycbt011

         WHERE codeven = v_codeven

           AND bukrs   = /pws/zycie006-bukrs

           AND codmod  = 'D'.

  LOOP AT itab_zycbt035.

    v_index = sy-tabix.

    CLEAR: v_operacao, v_trans, v_fornec.

    PERFORM verifica_operacao USING itab_zycbt035-bschl

                              CHANGING itab_zycbt035-ktosl

                                       v_trans

                                       v_fornec.

    IF t001-land1 NE 'BR'.

      IF itab_zycbt035-knttp EQ 'F' OR itab_zycbt035-knttp EQ 'K'.

        itab_zycbt035-matuse = 3.

      ELSE.

        itab_zycbt035-matuse = 0.

      ENDIF.

    ENDIF.

    IF v_fornec NE 'X'.

      IF itab_zycbt035-ktosl EQ 'FBK'.

        IF /pws/zycie006-frpagto = 'D'.

          CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'

               EXPORTING

                    input  = /pws/zycie006-banco

               IMPORTING

                    output = v_forn.

        ELSE.

          CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'

               EXPORTING

                    input  = /pws/zycie006-lifnr

               IMPORTING

                    output = v_forn.

        ENDIF.

        CLEAR itab_cta. REFRESH itab_cta.

        PERFORM seek_account_number

                TABLES itab_cta

                USING /pws/zycie006-bukrs

                      itab_zycbt035-ktosl

                      space

                      space

                      v_forn

                      'D'

                      space.

        READ TABLE itab_cta INDEX 1.

      ELSE.

        CLEAR itab_cta. REFRESH itab_cta.

        PERFORM seek_account_number

                TABLES itab_cta

                USING /pws/zycie006-bukrs

                      itab_zycbt035-ktosl

                      itab_zycbt035-werks

                      itab_zycbt035-bklas

                      itab_zycbt035-matuse

                      space

                      space.

        READ TABLE itab_cta INDEX 1.

        IF itab_cta-konth IS INITIAL.

          CLEAR itab_cta. REFRESH itab_cta.

          PERFORM seek_account_number

                  TABLES itab_cta

                  USING /pws/zycie006-bukrs

                        itab_zycbt035-ktosl

                        itab_zycbt035-werks

                        space

                        itab_zycbt035-matuse

                        space

                        space.

        ENDIF.

        READ TABLE itab_cta INDEX 1.

        IF /pws/zycie006-tpfatura EQ '11' AND

          itab_cta-konth IS INITIAL.

          CLEAR itab_cta. REFRESH itab_cta.

          PERFORM seek_account_number

                  TABLES itab_cta

                  USING /pws/zycie006-bukrs

                        itab_zycbt035-ktosl

                        itab_zycbt035-werks

                        itab_zycbt035-bklas

                        space

                        space

                        space.

        ENDIF.

        READ TABLE itab_cta INDEX 1.

      ENDIF.

      itab_zycbt035-d_newko = itab_cta-konth.

    ELSE.

      itab_zycbt035-d_newko = /pws/zycie006-lifnr.

    ENDIF.

    PERFORM verify_null_field USING itab_zycbt035-d_newko

                                                 'C_NEWKO' text-021.

    MODIFY itab_zycbt035 INDEX v_index.

  ENDLOOP.

  CLEAR: itab_zycbt012, itab_param_classe.

ENDFORM.

FORM fill_date_f43_f02.

  DATA: v_ukurs   TYPE  /pws/zycit085-ukursfob.

  itab_zycbe033-mandt = sy-mandt.

  itab_zycbe033-tcode = v_trans.

  itab_zycbe033-tabela = '/PWS/ZYCIT006'.

  itab_zycbe033-tabela = '/PWS/ZYCIT006'.

  itab_zycbe033-cpochv = /pws/zycie006-nrseq.

  itab_zycbe033-bldat   = /pws/zycie006-dtincl.

  itab_zycbe033-d_valut = sy-datlo.

  itab_zycbe033-d_valut = /pws/zycie006-dtincl.

  itab_zycbe033-c_valut = /pws/zycie006-dtincl.

  itab_zycbe033-budat   = sy-datlo.

  /pws/zycie006-dtlanc       = sy-datlo.

  SELECT SINGLE * FROM /pws/zycit286 WHERE tpfatura =

 /pws/zycie006-tpfatura.

  IF /pws/zycit286-conversao = 'DTDOC'.

    itab_zycbe033-wwert = /pws/zycie006-dtincl.

  ELSE.

    itab_zycbe033-wwert = sy-datlo.

  ENDIF.

  itab_zycbe033-bktxt = /pws/zycbt007-bktxt.

  itab_zycbe033-zterm  = /pws/zycie006-zterm.

  itab_zycbe033-zfbdt = /pws/zycie006-dtbase.

  itab_zycbe033-ebene = /pws/zycie006-ebene.

  IF NOT t035-bild1 IS INITIAL.

    itab_zycbe033-dataprvtsr = /pws/zycie006-dataprvtsr.

  ELSE.

    CLEAR itab_zycbe033-dataprvtsr.

  ENDIF.

  itab_zycbe033-zlspr    =  /pws/zycie006-zlspr.

  itab_zycbe033-zlsch    =  /pws/zycie006-zlsch.

  CLEAR: v_zuonr, v_xblnr, v_sgtxt, v_bktxt.

  CALL FUNCTION '/PWS/ZYCI_TEXTOS_CONTABEIS'

       EXPORTING

            v_nrseq   = /pws/zycie001-nrseq

            v_nrfat   = /pws/zycie006-nrfat

            v_codeven = v_codeven

            v_ktosl   = '  '

       IMPORTING

            v_zuonr   = v_zuonr

            v_xblnr   = v_xblnr

            v_sgtxt   = v_sgtxt

            v_bktxt   = v_bktxt.

  itab_zycbe033-bktxt = v_bktxt.

  IF v_sgtxt IS INITIAL.

    READ TABLE itab_zycit003 INDEX 1.

    CONCATENATE text-007 /pws/zycie006-nrfat text-015

    itab_zycit003-ebeln INTO v_sgtxt SEPARATED BY space.

  ENDIF.

  itab_zycbe033-d_sgtxt = itab_zycbe033-c_sgtxt = v_sgtxt.

  itab_zycbe033-xblnr = v_xblnr.

  LOOP AT itab_zycbt035.

    CLEAR: v_zuonr, v_xblnr, v_sgtxt, v_bktxt.

    CALL FUNCTION '/PWS/ZYCI_TEXTOS_CONTABEIS'

         EXPORTING

              v_nrseq   = /pws/zycie001-nrseq

              v_nrfat   = /pws/zycie006-nrfat

              v_codeven = v_codeven

              v_ktosl   = itab_zycbt035-ktosl

         IMPORTING

              v_zuonr   = v_zuonr

              v_xblnr   = v_xblnr

              v_sgtxt   = v_sgtxt

              v_bktxt   = v_bktxt.

    itab_zycbt035-d_zuonr = itab_zycbt035-c_zuonr = v_zuonr.

    itab_zycbt035-d_xblnr = itab_zycbt035-c_xblnr = v_xblnr.

    itab_zycbt035-d_sgtxt = itab_zycbt035-c_sgtxt = v_sgtxt.

    MODIFY itab_zycbt035.

  ENDLOOP.

  itab_zycbe033-d_zuonr = itab_zycbe033-c_zuonr = v_zuonr.

  PERFORM verify_null_field USING /pws/zycie006-bukrs 'BUKRS' text-010.

  itab_zycbe033-bukrs  = /pws/zycie006-bukrs.

  PERFORM verify_null_field USING /pws/zycie006-waers 'WAERS' text-011.

  itab_zycbe033-waers  = /pws/zycie006-waers.

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

    CLEAR v_ukurs.

  ELSE.

    v_ukurs  = v_kursf.

  ENDIF.

  IF /pws/zycit000-kurst IS INITIAL.

    v_kurst = 'M'.

  ELSE.

    v_kurst = /pws/zycit000-kurst.

  ENDIF.

  itab_zycbe033-kursf = v_ukurs.

  PERFORM verify_null_field USING wa_zycbt011-blart 'BLART' text-012.

  itab_zycbe033-blart  = wa_zycbt011-blart.

  IF t001-land1 EQ 'BR'.

    itab_zycbe033-brnch = /pws/zycie006-j_1bbranch.

  ELSE.

    CLEAR itab_zycbe033-brnch.

  ENDIF.

  itab_zycbe033-ps_psp_pnr = /pws/zycie006-ps_psp_pnr.

  READ TABLE itab_zycit003 INDEX 1.

  itab_zycbe033-d_gsber = itab_zycbe033-c_gsber =  itab_zycit003-gsber.

  itab_zycbe033-bvtyp = /pws/zycie006-bcofav.

  APPEND itab_zycbe033.

  FREE itab_contas.

  LOOP AT itab_zycbt035.

    MOVE-CORRESPONDING itab_zycbt035 TO itab_contas.

    APPEND itab_contas.

  ENDLOOP.

  IF itab_zycbt034[] IS INITIAL.

    CALL FUNCTION '/PWS/ZYCI_TRANSACAO_F_02C'

         EXPORTING

              v_modo          = 'N'

         TABLES

              t_dados         = itab_zycbe033

              t_campo         = itab_zycbt034

              t_zycbt032      = itab_zycbt032

              t_contas        = itab_contas

         EXCEPTIONS

              campo_em_branco = 1

              periodo_fechado = 2

              OTHERS          = 3.

    IF sy-subrc = 0 .

      READ TABLE itab_zycbt032 WITH KEY tcode  = v_trans

                                        tabela = '/PWS/ZYCIT006'

                                        cpochv = /pws/zycie006-nrseq

                                        tpmsg  = 'S'.

      IF sy-subrc EQ 0.

        CLEAR: itab_mensagens, itab_msg.

        itab_msg-msgid = '/PWS/ZYCIM'.

        itab_msg-msgnr = '057'.

        itab_msg-msgv1 = itab_zycbt032-belnr.

        CALL FUNCTION 'MESSAGE_PREPARE'

             EXPORTING

                  language               = sy-langu

                  msg_id                 = itab_msg-msgid

                  msg_no                 = itab_msg-msgnr

                  msg_var1               = itab_msg-msgv1

             IMPORTING

                  msg_text               = itab_mensagens-mensagem

             EXCEPTIONS

                  function_not_completed = 1

                  message_not_found      = 2

                  OTHERS                 = 3.

        APPEND itab_mensagens.

        /pws/zycie006-belnr_f_02   = itab_zycbt032-belnr.

        /pws/zycie006-statusp_f_02 = 'C'.

        /pws/zycie006-dt_f_02 = sy-datum.

        /pws/zycie006-hr_belnr_f_02 = sy-uzeit.

        CLEAR: v_ano.

        CALL FUNCTION '/PWS/ZYGL_OBTEM_ANO_CONTABIL'

             EXPORTING

                  v_bukrs                = /pws/zycie006-bukrs

                  v_date                 = itab_zycbe033-budat

             IMPORTING

                  v_year                 = v_ano

             EXCEPTIONS

                  variante_de_exercicio  = 1

                  data_nao_encontrada    = 2

                  empresa_nao_encontrada = 3

                  period_in_not_valid    = 4

                  period_not_assigned    = 5

                  version_undefined      = 6

                  OTHERS                 = 7.

        IF sy-subrc <> 0.

        ENDIF.

        SELECT SINGLE * FROM bseg

        WHERE bukrs = /pws/zycie006-bukrs

          AND belnr = itab_zycbt032-belnr

          AND gjahr = v_ano

          AND zterm = itab_zycbe033-zterm.

        IF sy-subrc = 0.

          /pws/zycie006-dtbase = bseg-zfbdt.

        ENDIF.

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

FORM clear_tables.

  CLEAR :  itab_rbkp, itab_rseg, t_zycit263, itab_t052,

     itab_zycit036_aux, itab_zycit036, /pws/zycet076, lfa1,

     /pws/zycbt064,  /pws/zycbt131,

     /pws/zycbt119, /pws/zycbt108, /pws/zycie006, v_ntgew, v_fdgrv.

  REFRESH: itab_rbkp, itab_rseg, t_zycit263, itab_t052,

           itab_zycit036_aux, itab_zycit036.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/LZYCIGF10X01

 

 

...

* >> Início da inclusão:

  DATA: BEGIN OF itab_zycit036_aux OCCURS 0.

          INCLUDE STRUCTURE /pws/zycit036.

  DATA: total LIKE /pws/zycit036-vlreal.

  DATA: END OF itab_zycit036_aux.

* << Fim da inclusão

 

* >> Início da inclusão:

 datA:  v_trans(4) TYPE c                     ,

        v_item.

        invoice_created,

        no_quantity    ,

        no_data.

* << Fim da inclusão

  DATA: END OF COMMON PART.

 

 

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

Modificações efetuadas em CLAS /PWS/CL_ZYCI_VALID_DOCUMENT

 

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F01

 

...

      ENDIF.

      LOOP AT itab_zycit263.

        v_tabix = sy-tabix.

        READ TABLE itab_zycit006 WITH KEY

             nrseq_pgfat = itab_zycit263-nrseq_pgfat

             eliminado   = space.

        IF sy-subrc NE 0.

          DELETE itab_zycit263 INDEX v_tabix.

        ENDIF.

      ENDLOOP.

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

      CLEAR itab_zycit006. REFRESH itab_zycit006.

      IF NOT itab_zycit263[] IS INITIAL.

        SELECT * FROM /pws/zycit006                     "#EC CI_NOFIELD

          INTO TABLE itab_zycit006

          FOR ALL ENTRIES IN itab_zycit263

          WHERE nrseq_pgfat EQ itab_zycit263-nrseq_pgfat

            AND eliminado EQ space.

      ENDIF.

* << Fim da inclusão

    ENDIF.

  ENDIF.

  IF NOT /pws/zycit094-nrseqce IS INITIAL.

    SELECT SINGLE * FROM /pws/zycit006                  "#EC CI_NOFIELD

      INTO itab_zycit006

      WHERE nrseqce = /pws/zycit094-nrseqce

        AND eliminado EQ space.

    IF sy-subrc EQ 0.

      v_exfat = 'X'.

    ENDIF.

...

 

...

         /pws/zycie003-ebeln

         /pws/zycie006-nrseq

         e_status

      TO MEMORY ID '003'.

    EXPORT itab_sele[]

      TO MEMORY ID 'IP003B'.

    IF v_status_s = 1.

      IF NOT /pws/zycie001-modalidade EQ '02'.

        IF ( /pws/zycie001-modalidade EQ '03' AND

            itab_zycit003-servico EQ 'X' ) .

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

        ELSEIF /pws/zycie001-modalidade = '07' .

          PERFORM call_intercompany.

* << Fim da inclusão

        ELSE.

          SELECT SINGLE * FROM /pws/zycit094            "#EC CI_NOFIRST

            WHERE nrseq = /pws/zycie001-nrseq.

          IF sy-subrc NE 0.

            IF /pws/zycie001-regime EQ '13'.

              PERFORM gera_bl_nac.

            ELSE.

              MESSAGE s061 WITH text-026 text-027.

              EXIT.

            ENDIF.

...

 

...

      ENDIF.

      PERFORM valida_trans USING '/PWS/ZYCI003_C' ''.

    ELSE.

      MESSAGE s015 WITH text-073.

    ENDIF.

  ELSE.

    CLEAR v_subrc.

    IF /pws/zycie001-modalidade EQ '02'

    OR /pws/zycie001-modalidade EQ '03'.

      v_subrc = 'X'.

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

    ELSEIF /pws/zycie001-modalidade = '07' .

      PERFORM call_intercompany.

* << Fim da inclusão

    ELSE.

      SELECT SINGLE * FROM /pws/zycit094                "#EC CI_NOFIRST

       WHERE nrseq = /pws/zycie001-nrseq.

      IF sy-subrc EQ 0.

        v_subrc = 'X'.

      ELSEIF /pws/zycie001-regime EQ '13'.

        PERFORM gera_bl_nac.

        v_subrc = 'X'.

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

      ELSE.

        MESSAGE s061 WITH text-026 text-027.

* << Fim da inclusão

      ENDIF.

    ENDIF.

    IF v_subrc EQ 'X'.

      LOOP AT itab_zycit263.

        v_nrseq_pgfat = itab_zycit263-nrseq_pgfat.

      ENDLOOP.

      IF sy-subrc EQ 0

        OR v_exfat = 'X'.

        SELECT SINGLE * FROM /pws/zycit006              "#EC CI_NOFIELD

         INTO /pws/zycit006

...

 

...

             /pws/zycie001-j_1bbranch

             v_lifnr

            /pws/zycie003-ebeln

             /pws/zycie006-nrseq

             e_status

          TO MEMORY ID '003'.

        PERFORM valida_trans USING '/PWS/ZYCI003_L' ''.

      ELSE.

        MESSAGE s061 WITH text-072.

      ENDIF.

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

    ELSE.

      MESSAGE s061 WITH text-026 text-027.

* << Fim da exclusão

    ENDIF.

  ENDIF.

  PERFORM recuperando_itens.

  FREE MEMORY ID '003'.

  FREE MEMORY ID 'IP003B'.

ENDFORM.

 

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI001F03

 

...

 

* >> Início da inclusão:

FORM call_intercompany.

  IF NOT sy-tcode EQ '/PWS/ZYCI001_E'.

    SELECT SINGLE * FROM /pws/zycit094                  "#EC CI_NOFIRST

       WHERE nrseq = /pws/zycie001-nrseq.

    IF sy-subrc EQ 0.

      IF itab_zycit006[] IS INITIAL.

        v_interc = 'X'.

      ELSE.

        LOOP AT itab_zycit003.

          READ TABLE itab_zycit263 WITH KEY

               nrseq = itab_zycit003-nrseq

               ebeln = itab_zycit003-ebeln

               ebelp = itab_zycit003-ebelp

               eliminado = space.

          IF sy-subrc NE 0.

            v_interc = 'X'.

          ENDIF.

        ENDLOOP.

      ENDIF.

      IF v_interc = 'X'.

        CALL FUNCTION '/PWS/ZYCI_FATURA_INTERCOMPANY'

             EXPORTING

                  p_nrseq         = /pws/zycie001-nrseq

             EXCEPTIONS

                  no_quantity     = 1

                  no_data         = 2

                  abort           = 3

                  invoice_created = 4

                  OTHERS          = 5.

        IF sy-subrc EQ 0 .

          SELECT * FROM /pws/zycit263 INTO TABLE itab_zycit263

          WHERE nrseq = /pws/zycie001-nrseq

          AND eliminado = space.

          IF NOT itab_zycit263[] IS INITIAL.

            SELECT * FROM /pws/zycit006                 "#EC CI_NOFIELD

                INTO TABLE itab_zycit006

                FOR ALL ENTRIES IN itab_zycit263

                WHERE nrseq_pgfat EQ itab_zycit263-nrseq_pgfat

                  AND eliminado EQ space.

          ENDIF.

          MESSAGE i015 WITH text-527.

          EXIT.

        ELSEIF sy-subrc EQ 1.

          MESSAGE i015 WITH text-527.

        ELSEIF sy-subrc EQ 3.

          EXIT.

        ELSEIF sy-subrc EQ 4.

          MESSAGE i015 WITH text-527.

          EXIT.

        ELSE.

          MESSAGE i015 WITH text-526.

        ENDIF.

        LOOP AT itab_zycit003.

          READ TABLE itab_zycit263 WITH KEY

               nrseq = itab_zycit003-nrseq

               ebeln = itab_zycit003-ebeln

               ebelp = itab_zycit003-ebelp

               eliminado = space.

          IF sy-subrc EQ 0.

            v_subrc = 'X'.

          ENDIF.

        ENDLOOP.

      ELSE.

        v_subrc = 'X'.

      ENDIF.

    ELSE.

      MESSAGE s061 WITH text-026 text-027.

    ENDIF.

  ELSE.

    v_subrc = 'X' .

  ENDIF.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI001X01

 

...

 

* >> Início da inclusão:

  DATA: v_interc.

* << Fim da inclusão

DATA: END OF COMMON PART a.

 

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F03

 

form dele_fatura_intercompany changing v_del.

    PERFORM verifica_ano_contabil USING /pws/zycie006-dt_mr1m

                                  CHANGING v_ano .

    SELECT SINGLE * FROM rbkp

              WHERE belnr EQ /pws/zycie006-belnr_mr1m

              AND   gjahr EQ v_ano.

    IF sy-subrc EQ 0 AND rbkp-stblg IS INITIAL.

       v_del = 'X' .

       message i016 with text-213 text-214.

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

  ELSE.

    LOOP AT itab_zycit003.

      UPDATE /pws/zycit263 SET eliminado   = 'X' WHERE

                nrseq       = itab_zycit003-nrseq AND

                ebeln       = itab_zycit003-ebeln AND

                ebelp       = itab_zycit003-ebelp AND

                nrseq_pgfat = /pws/zycie006-nrseq_pgfat.

    ENDLOOP.

    CLEAR: /pws/zycie006-belnr_p, /pws/zycie006-statusp,

           /pws/zycie006-statusp_mr1m, /pws/zycie006-belnr_mr1m,

           /pws/zycie006-dt_mr1m.

    MODIFY /pws/zycit006 FROM /pws/zycie006.

    /pws/zycie006-eliminado = 'X'.

    MODIFY /pws/zycit006 FROM /pws/zycie006.

    COMMIT WORK.

* << Fim da inclusão

    endif.

endform.

* >> Início da inclusão:

FORM rateio_seguro.

  DATA:   v_tot_acum  LIKE /pws/zycit003-netpr,

          v_tot_acum2 LIKE /pws/zycit003-netpr.

  v_vlreal = /pws/zycie006-vlseg.

  PERFORM retorna_decimais USING /pws/zycie006-waers

                          CHANGING v_vlreal.

  CLEAR v_tot_acum.

  CLEAR v_tot_acum2.

  LOOP AT itab_zycit003.

    MOVE sy-tabix TO v_tabix.

    v_tot_acum = v_tot_acum +  ( itab_zycit003-vlreal *

                  itab_zycit003-qtd_iten ) + itab_zycit003-vlfre_fat .

    v_tot_acum2 = v_tot_acum2 +  ( itab_zycit003-vlreal *

                  itab_zycit003-qtd_iten ).

  ENDLOOP.

  CLEAR v_tot_vlseg.

  v_vlreal = /pws/zycie006-vlseg.

  PERFORM retorna_decimais USING /pws/zycie006-waers

                          CHANGING v_vlreal.

  IF /pws/zycie006-ratseg = 1.

    LOOP AT itab_zycit003.

      IF sy-tabix = v_line.

        itab_zycit003-vlseg_fat = v_vlreal - v_tot_vlseg.

        v_tot_vlseg = v_tot_vlseg * 100.

        v_tot_frete_aux = trunc( v_tot_vlseg ) / 100.

        itab_zycit003-vlseg_aux = v_vlreal - v_tot_frete_aux.

      ELSE.

        itab_zycit003-vlseg_fat = ( ( itab_zycit003-vlreal *

           itab_zycit003-qtd_iten ) + itab_zycit003-vlfre_fat ) /

          v_tot_acum * v_vlreal.

        itab_zycit003-vlseg_aux = itab_zycit003-vlseg_fat.

        v_tot_vlseg = v_tot_vlseg + itab_zycit003-vlseg_fat.

      ENDIF.

      MODIFY itab_zycit003.

    ENDLOOP.

  ELSEIF /pws/zycie006-ratseg = 2.

    LOOP AT itab_zycit003.

      IF sy-tabix = v_line.

        itab_zycit003-vlseg_fat = v_vlreal - v_tot_vlseg.

        v_tot_vlseg = v_tot_vlseg * 100.

        v_tot_frete_aux = trunc( v_tot_vlseg ) / 100.

        itab_zycit003-vlseg_aux = v_vlreal - v_tot_frete_aux.

      ELSE.

        itab_zycit003-vlseg_fat = v_vlreal * itab_zycit003-ntgew

                   / /pws/zycie006-ntgew.

        itab_zycit003-vlseg_aux = itab_zycit003-vlseg_fat.

        v_tot_vlseg = v_tot_vlseg + itab_zycit003-vlseg_fat.

      ENDIF.

      MODIFY itab_zycit003.

    ENDLOOP.

  ELSEIF /pws/zycie006-ratseg = 3.

    LOOP AT itab_zycit003.

      v_tot_vlseg = v_tot_vlseg + itab_zycit003-vlseg_fat.

      itab_zycit003-vlseg_aux = itab_zycit003-vlseg_fat.

      MODIFY itab_zycit003.

    ENDLOOP.

    IF v_tot_vlseg NE v_vlreal.

      MESSAGE w015 WITH text-104.

    ENDIF.

  ELSEIF /pws/zycie006-ratseg = 4.

    LOOP AT itab_zycit003.

      IF sy-tabix = v_line.

        itab_zycit003-vlseg_fat = /pws/zycie006-vlseg - v_tot_vlseg.

        v_tot_vlseg = v_tot_vlseg * 100.

        v_tot_frete_aux = trunc( v_tot_vlseg ) / 100.

        itab_zycit003-vlseg_aux = v_vlreal - v_tot_frete_aux.

      ELSE.

        itab_zycit003-vlseg_fat =  ( itab_zycit003-vlreal *

           itab_zycit003-qtd_iten )  /

          v_tot_acum2 * /pws/zycie006-vlseg.

        itab_zycit003-vlseg_aux = itab_zycit003-vlseg_fat.

        v_tot_vlseg = v_tot_vlseg + itab_zycit003-vlseg_fat.

      ENDIF.

      MODIFY itab_zycit003.

    ENDLOOP.

  ELSEIF /pws/zycie006-ratseg IS INITIAL AND

         /pws/zycie006-vlseg IS INITIAL.

    LOOP AT itab_zycit003.

      CLEAR: itab_zycit003-vlseg_fat, itab_zycit003-vlseg_aux.

      MODIFY itab_zycit003.

    ENDLOOP.

  ENDIF.

ENDFORM.

* << Fim da inclusão

 

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI080F01

 

...

    itab_zycit223_s-nfremessa =

    itab_zycit044-nfremessa   = /pws/zycie043-nfremessa.

    MODIFY itab_zycit223_s TRANSPORTING nfremessa

                      WHERE ebeln = itab_zycit044-ebeln

                        AND ebelp = itab_zycit044-ebelp.

    MODIFY itab_zycit044.

  ENDLOOP.

  itab_zycie033-bktxt   = /pws/zycie043-nfremessa.

  READ TABLE itab_zycit085 INDEX 1.

  itab_zycie033-xblnr = itab_zycit085-nana.

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

  SELECT SINGLE tp_movto

  FROM /pws/zycit507

  INTO itab_zycie033-bwartwe

  WHERE modalidade = /pws/zycit001-modalidade .

  IF  itab_zycie033-bwartwe IS INITIAL.

* << Fim da inclusão

  itab_zycie033-bwartwe  = '101'.

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

  ENDIF.

* << Fim da inclusão

  itab_zycie033-bukrs  =  /pws/zycie043-bukrs.

  APPEND itab_zycie033.

  IF NOT itab_zycit223_s[] IS INITIAL.

    LOOP AT itab_zycit031.

      READ TABLE itab_zycit223_s WITH KEY ebeln = itab_zycit031-ebeln

                                          ebelp = itab_zycit031-ebelp.

...

 

 

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

Modificações efetuadas em REPS /PWS/SAPMZYCI003

 

* >> Início da inclusão:

INCLUDE /PWS/MZYCI003F03.

* << Fim da inclusão

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCI001

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 144

 

Texto: (28 caracteres)

"Proveedor no será eliminado."

 

Comprimento máximo: 30

 

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

Modificado símbolo de texto:

 

Idioma: ES

 

Símbolo: 455

 

Texto: (44 caracteres)

"Embarque possue item(s) con saldo a recibir!"

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 510

 

Texto: (25 caracteres)

"Embarque ya tiene avance,"

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 511

 

Texto: (33 caracteres)

"Embarque ya tiene Débito Directo,"

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 512

 

Texto: (26 caracteres)

"Embarque ya tiene entrega,"

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 513

 

Texto: (39 caracteres)

"no es posible seleccionar varios itens."

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 516

 

Texto: (26 caracteres)

"No se puede vincular item."

 

Comprimento máximo: 45

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 517

 

Texto: (36 caracteres)

"Embarque ya tiene Factura de gastos."

 

Comprimento máximo: 37

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 518

 

Texto: (23 caracteres)

"Incoterm no registrado."

 

Comprimento máximo: 24

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 526

 

Texto: (19 caracteres)

"No MIRO data found."

 

Comprimento máximo: 36

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 526

 

Texto: (36 caracteres)

"Nenhum documento de MIRO encontrado."

 

Comprimento máximo: 36

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 527

 

Texto: (29 caracteres)

"Intercompany Invoice created."

 

Comprimento máximo: 39

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 527

 

Texto: (39 caracteres)

"Fatura Intercompany criada com sucesso."

 

Comprimento máximo: 39

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 528

 

Texto: (53 caracteres)

"Insufficient quantity to create Intercompany Invoice."

 

Comprimento máximo: 60

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 528

 

Texto: (60 caracteres)

"Quantidade insuficiente para geração de Fatura Intercompany."

 

Comprimento máximo: 60

 

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

Incluído texto de seleção:

 

Idioma: EN

 

Variável (SELECT-OPTION / PARAMETER): SO_NTGD

 

Texto: (18 caracteres)

"Net weight"

 

Referência ao Dictionary: NÃO

 

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

Incluído texto de seleção:

 

Idioma: PT

 

Variável (SELECT-OPTION / PARAMETER): SO_NTGD

 

Texto: (20 caracteres)

"Peso líquido"

 

Referência ao Dictionary: NÃO

 

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

Incluído texto de seleção:

 

Idioma: ES

 

Variável (SELECT-OPTION / PARAMETER): SO_NTGD

 

Texto: (17 caracteres)

"Peso neto"

 

Referência ao Dictionary: NÃO

 

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

Modificado texto de seleção:

 

Idioma: EN

 

Variável (SELECT-OPTION / PARAMETER): SO_WRKS

 

Texto: (13 caracteres)

"Plant"

 

Referência ao Dictionary: NÃO

 

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

Modificado texto de seleção:

 

Idioma: PT

 

Variável (SELECT-OPTION / PARAMETER): SO_WRKS

 

Texto: (14 caracteres)

"Centro"

 

Referência ao Dictionary: NÃO

 

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

Incluído texto de seleção:

 

Idioma: ES

 

Variável (SELECT-OPTION / PARAMETER): SO_WRKS

 

Texto: (14 caracteres)

"Centro"

 

Referência ao Dictionary: NÃO

 

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

Incluído texto de seleção:

 

Idioma: EN

 

Variável (SELECT-OPTION / PARAMETER): SO_WRS

 

Texto: (16 caracteres)

"Currency"

 

Referência ao Dictionary: NÃO

 

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

Incluído texto de seleção:

 

Idioma: PT

 

Variável (SELECT-OPTION / PARAMETER): SO_WRS

 

Texto: (13 caracteres)

"Moeda"

 

Referência ao Dictionary: NÃO

 

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

Incluído texto de seleção:

 

Idioma: ES

 

Variável (SELECT-OPTION / PARAMETER): SO_WRS

 

Texto: (14 caracteres)

"Moneda"

 

Referência ao Dictionary: NÃO

 

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCI003

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 212

 

Texto: (21 caracteres)

"for this invoice type"

 

Comprimento máximo: 25

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 213

 

Texto: (33 caracteres)

"To eliminate Intercompany Invoice"

 

Comprimento máximo: 33

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 213

 

Texto: (33 caracteres)

"Para eliminar Fatura Intercompany"

 

Comprimento máximo: 33

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 214

 

Texto: (30 caracteres)

"MIRO must be eliminated in R3."

 

Comprimento máximo: 30

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 214

 

Texto: (30 caracteres)

"MIRO deve ser estornada no R3."

 

Comprimento máximo: 30

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 215

 

Texto: (42 caracteres)

"Existe Prestação de Contas com Valor Real."

 

Comprimento máximo: 50

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 216

 

Texto: (8 caracteres)

"Supplier"

 

Comprimento máximo: 10

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 216

 

Texto: (10 caracteres)

"Fornecedor"

 

Comprimento máximo: 10

 

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

Incluído símbolo de texto:

 

Idioma: ES

 

Símbolo: 216

 

Texto: (9 caracteres)

"Proveedor"

 

Comprimento máximo: 10

 

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

Incluído símbolo de texto:

 

Idioma: EN

 

Símbolo: 217

 

Texto: (18 caracteres)

"Incoterm not valid"

 

Comprimento máximo: 20

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 217

 

Texto: (17 caracteres)

"Incoterm inválido"

 

Comprimento máximo: 20