CE PLUS - Nota 001988

Módulo: CÂMBIO IMPORTAÇÃO

Funcionalidade: Associação

Data/Hora da Publicação: 28/08/2006 00:00:00

Data/Hora Última Alteração: 18/02/2011 09:44:44

Descrição da Nota: ASSOCIAÇÃO DE FATURAS - DA RATEIO POR ITEM DOC. COMPRA

Sintoma

Desenvolvimento adicional relacionado ao adiantamento de imobilizado, conforme especificação do

produto.

 

 

Solução

Desenvolvimento adicional para tratar as associações de faturas rateando o lançamento contábil por

item de documento de compra. Geração de programa de carga para carregar o campo /PWS/ZYCMT020-SALDO,

antes de iniciar a utilização da nova associação.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

ASSOCIAÇÃO DE FATURAS - CONDIÇÃO DE PAGAMENTO - F-51

Informações Complementares

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

Nota Número 01988 Data: 28/08/2006 Hora: 10:25:28

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

 

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

Nota Número              : 01988

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00024

Agrupamento              : 00128

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

Referência às notas relacionadas:

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

 

01352  - 00001 - 6.0    - 00023  - ASSOCIAÇÃO DE FATURAS - CONDIÇÃO DE PAGAMENTO - F-51

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

ASSOCIAÇÃO DE FATURAS - DA RATEIO POR ITEM DOC. COMPRA

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

Palavras Chave:

ASSOCIAÇÃO DE FATURAS RATEIO POR ITEM DOCUMENTO DE COMPRA

DESENVOLVIMENTO ADICIONAL DA /PWS/ZYCMT020

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

Objetos da nota:

FUNC /PWS/ZYCM_TRANSACAO_F_51N

REPS /PWS/LZYCMGF2F01

REPS /PWS/LZYCMGF2TOP

REPS /PWS/LZYCMGF2X01

REPS /PWS/MZYCB104I01

REPS /PWS/MZYCB106I01

REPS /PWS/MZYCB113I01

REPS /PWS/MZYCM101I01

REPS /PWS/MZYCM101O01

REPS /PWS/ZYCMR906

TABD /PWS/ZYCME020

TABD /PWS/ZYCMT020

TRAN /PWS/ZYCMR906

 

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

Modificações efetuadas em FUNC /PWS/ZYCM_TRANSACAO_F_51N

 

...

      PERFORM bdc_field USING 'BKPF-BRNCH'  t_dados-brnch.

    ENDIF.

    IF NOT t_dados-xblnr IS INITIAL.

      PERFORM bdc_field USING 'BKPF-XBLNR' t_dados-xblnr.

    ENDIF.

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

    IF t_zycbe035[] IS INITIAL.

      t_zycbe035-wrbtr  = t_dados-wrbtr.

      t_zycbe035-wrbtr1 = t_dados-wrbtr1.

      APPEND itab_zycbe035.

    ENDIF.

    DESCRIBE TABLE itab_zycbe035 LINES v_linhas.

    LOOP AT itab_zycbe035.

      v_tabix = sy-tabix.

* << Fim da inclusão

    IF t_dados-wrbtr <> 0.

      PERFORM bdc_field USING 'RF05A-NEWKO' t_dados-agkon.

      PERFORM bdc_field USING 'RF05A-NEWUM' t_dados-agums.

      PERFORM bdc_field USING 'RF05A-NEWBS'  t_dados-newbs.

      PERFORM bdc_field USING 'BDC_OKCODE' '/00'.

      WRITE: t_dados-d_valut TO v_data_val_char,

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

             t_dados-wrbtr   TO v_wrbtr  CURRENCY t_dados-waers.

* << Fim da exclusão

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

               t_zycbe035-wrbtr TO v_wrbtr  CURRENCY t_dados-waers.

* << Fim da inclusão

      MOVE: t_dados-agums TO v_newum,

            t_dados-newbs TO v_newbs,

            t_dados-agkon TO v_agkon.

      PERFORM define_tela USING t_dados-tcode

                                t_dados-bukrs

                                v_agkon

                                v_newbs

                       CHANGING v_newum

                                v_tela.

      PERFORM bdc_screen USING 'SAPMF05A' v_tela.

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

      IF t_dados-ftela EQ 'X'.

        IF NOT v_dtvencto_char = '00.00.0000'.

          PERFORM bdc_field USING 'BSEG-ZFBDT' v_dtvencto_char.

        ENDIF.

      ELSE.

* << Fim da exclusão

        IF NOT t_dados-agums IS INITIAL.

          CLEAR v_zfbdt.

          SELECT SINGLE ulsk1

            INTO v_ulsk1

            FROM t042

...

 

...

            v_zfbdt = 'X'.

          ENDIF.

        ENDIF.

        IF t_dados-agums IS INITIAL OR

           v_zfbdt EQ 'X'.

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

          READ TABLE itab_oculto WITH KEY campo = 'BSEG-ZFBDT'

                                          chave = v_chv.

          IF sy-subrc <> 0 AND NOT v_dtvencto_char = '00.00.0000'.

* << Fim da exclusão

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

          IF NOT v_dtvencto_char = '00.00.0000' AND

             NOT v_dtvencto_char = '  .  .    '.

* << Fim da inclusão

            PERFORM bdc_field USING 'BSEG-ZFBDT' v_dtvencto_char.

          ENDIF.

        ENDIF.

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

      ENDIF.

* << Fim da exclusão

      PERFORM bdc_field  USING: 'BSEG-WRBTR'  v_wrbtr.

      READ TABLE itab_oculto WITH KEY campo = 'BSEG-ZUONR'

                                      chave = v_chv.

      IF sy-subrc <> 0 AND NOT t_dados-c_zuonr IS INITIAL.

        PERFORM bdc_field USING 'BSEG-ZUONR' t_dados-c_zuonr.

...

 

...

      ENDIF.

      READ TABLE itab_oculto WITH KEY campo = 'BSEG-ZTERM'

                                      chave = v_chv.

      IF sy-subrc <> 0 AND NOT t_dados-zterm IS INITIAL.

        PERFORM bdc_field  USING 'BSEG-ZTERM' t_dados-zterm.

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

        ENDIF.

        IF NOT t_zycbe035-ebeln IS INITIAL.

          PERFORM define_campo TABLES t_telas

                               USING  'BSEG-EBELN'

                                      v_programa

                                      v_tela.

          IF v_invisible EQ 0.

            IF v_input EQ 1 OR v_required EQ 1.

              PERFORM bdc_field  USING: 'BSEG-EBELN' t_zycbe035-ebeln.

            ENDIF.

          ENDIF.

        ENDIF.

        IF NOT t_zycbe035-ebelp IS INITIAL.

          PERFORM define_campo TABLES t_telas

                               USING  'BSEG-EBELP'

                                      v_programa

                                      v_tela.

          IF v_invisible EQ 0.

            IF v_input EQ 1 OR v_required EQ 1.

              PERFORM bdc_field  USING: 'BSEG-EBELP' t_zycbe035-ebelp.

            ENDIF.

          ENDIF.

* << Fim da inclusão

      ENDIF.

      IF t_dados-wrbtr1 > 0.

        PERFORM bdc_field USING 'RF05A-NEWKO' t_dados-agkon.

        PERFORM bdc_field USING 'RF05A-NEWUM' t_dados-agums.

        PERFORM bdc_field USING 'RF05A-NEWBS' t_dados-newbs.

...

 

...

        IF sy-subrc <> 0 AND NOT t_dados-c_sgtxt IS INITIAL.

          PERFORM bdc_field  USING 'BSEG-SGTXT'  t_dados-c_sgtxt.

        ENDIF.

        PERFORM bdc_field USING 'BDC_OKCODE'  '/00'.

      ELSE.

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

          IF v_linhas = v_tabix.

* << Fim da inclusão

        PERFORM bdc_field USING:'BDC_OKCODE'   '=SL'.

      ENDIF.

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

        ENDIF.

* << Fim da inclusão

    ELSE.

      PERFORM bdc_field USING 'RF05A-NEWKO' t_dados-agkon.

      PERFORM bdc_field USING 'RF05A-NEWUM' t_dados-agums.

      PERFORM bdc_field USING 'RF05A-NEWBS' t_dados-newbs.

      PERFORM bdc_field USING 'BDC_OKCODE' '/00'.

      WRITE: t_dados-d_valut TO v_data_val_char,

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

             t_dados-wrbtr1 TO v_wrbtr  CURRENCY     t_dados-waers.

* << Fim da exclusão

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

               t_zycbe035-wrbtr1 TO v_wrbtr  CURRENCY t_dados-waers.

* << Fim da inclusão

    ENDIF.

    IF  t_dados-wrbtr1 > 0.

      MOVE: t_dados-agums TO v_newum,

            t_dados-newbs TO v_newbs,

            t_dados-agkon TO v_agkon.

...

 

...

                                v_newbs

                       CHANGING v_newum

                                v_tela.

      PERFORM bdc_screen USING 'SAPMF05A' v_tela.

      WRITE: t_dados-d_valut TO v_data_val_char,

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

             t_dados-wrbtr1 TO v_wrbtr  CURRENCY     t_dados-waers.

* << Fim da exclusão

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

               t_zycbe035-wrbtr1 TO v_wrbtr CURRENCY t_dados-waers.

* << Fim da inclusão

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

      IF t_dados-ftela EQ 'X'.

        IF NOT v_dtvencto_char = '00.00.0000'.

          PERFORM bdc_field USING 'BSEG-ZFBDT' v_dtvencto_char.

        ENDIF.

      ELSE.

        IF t_dados-agums IS INITIAL OR v_zfbdt EQ 'X'.

          READ TABLE itab_oculto WITH KEY campo = 'BSEG-ZFBDT'

                                          chave = v_chv.

          IF sy-subrc <> 0 AND NOT v_dtvencto_char = '00.00.0000'.

* << Fim da exclusão

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

        IF ( t_dados-agums IS INITIAL OR v_zfbdt EQ 'X' ) AND

             NOT v_dtvencto_char = '00.00.0000' AND

             NOT v_dtvencto_char = '  .  .    '.

* << Fim da inclusão

            PERFORM bdc_field USING 'BSEG-ZFBDT' v_dtvencto_char.

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

          ENDIF.

        ENDIF.

* << Fim da exclusão

      ENDIF.

      PERFORM bdc_field USING 'BSEG-WRBTR' v_wrbtr.

      READ TABLE itab_oculto WITH KEY campo = 'BSEG-ZUONR'

                                      chave = v_chv.

      IF sy-subrc <> 0 AND NOT t_dados-d_zuonr IS INITIAL.

...

 

...

      ENDIF.

      READ TABLE itab_oculto WITH KEY campo = 'BSEG-ZTERM'

                                      chave = v_chv.

      IF sy-subrc <> 0 AND NOT t_dados-zterm IS INITIAL.

        PERFORM bdc_field  USING 'BSEG-ZTERM' t_dados-zterm.

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

        ENDIF.

        IF NOT t_zycbe035-ebeln IS INITIAL.

          PERFORM define_campo TABLES t_telas

                               USING  'BSEG-EBELN'

                                      v_programa

                                      v_tela.

          IF v_invisible EQ 0.

            IF v_input EQ 1 OR v_required EQ 1.

              PERFORM bdc_field  USING: 'BSEG-EBELN' t_zycbe035-ebeln.

            ENDIF.

          ENDIF.

        ENDIF.

        IF NOT t_zycbe035-ebelp IS INITIAL.

          PERFORM define_campo TABLES t_telas

                               USING  'BSEG-EBELP'

                                      v_programa

                                      v_tela.

          IF v_invisible EQ 0.

            IF v_input EQ 1 OR v_required EQ 1.

              PERFORM bdc_field  USING: 'BSEG-EBELP' t_zycbe035-ebelp.

            ENDIF.

          ENDIF.

* << Fim da inclusão

      ENDIF.

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

        IF v_linhas = v_tabix.

* << Fim da inclusão

      PERFORM bdc_field USING:'BDC_OKCODE'   '=SL'.

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

        ENDIF.

* << Fim da inclusão

    ENDIF.

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

    ENDLOOP.

* << Fim da inclusão

    CLEAR v_xpos.

...

 

 

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

Modificações efetuadas em REPS /PWS/LZYCMGF2F01

 

...

      MODIFY /pws/zycbt131 FROM TABLE itab_zycbt131.

      MODIFY /pws/zycbt108 FROM TABLE itab_zycbt108.

      UPDATE /pws/zycbt112 SET   slassoc = /pws/zycbe112-slassoc

                             belnr2 = /pws/zycbe112-belnr2

                      WHERE   nrseq = /pws/zycbe112-nrseq.

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

      LOOP AT itab_zycmt020.

        UPDATE /pws/zycmt020 SET saldo = itab_zycmt020-saldo

                             WHERE nrseq  = itab_zycmt020-nrseq

                               AND codmod = itab_zycmt020-codmod

                               AND ebeln  = itab_zycmt020-ebeln

                               AND ebelp  = itab_zycmt020-ebelp.

      ENDLOOP.

* << Fim da inclusão

      LOOP AT itab_zycbt108 WHERE belnr_lq NE '          '.

        IF itab_zycbt108-slfat EQ 0.

          UPDATE /pws/zycbt119 SET  slpgfat = itab_zycbt108-slfat

                               belnr_p = itab_zycbt108-belnr_lq

                               dtpagto = sy-datum

...

 

...

        MODIFY /pws/zycbt108 FROM TABLE itab_zycbt108.

        UPDATE /pws/zycbt112 SET   slassoc = /pws/zycbe112-slassoc

                               belnr2 = /pws/zycbe112-belnr2

                               fassoc = 'X'

                        WHERE   nrseq = /pws/zycbe112-nrseq.

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

        LOOP AT itab_zycmt020.

          UPDATE /pws/zycmt020 SET saldo = itab_zycmt020-saldo

                               WHERE nrseq  = itab_zycmt020-nrseq

                                 AND codmod = itab_zycmt020-codmod

                                 AND ebeln  = itab_zycmt020-ebeln

                                 AND ebelp  = itab_zycmt020-ebelp.

        ENDLOOP.

* << Fim da inclusão

        LOOP AT itab_zycbt108 WHERE belnr_lq NE '          '.

          IF itab_zycbt108-slfat EQ 0.

            UPDATE /pws/zycbt119 SET  slpgfat = itab_zycbt108-slfat

                                 belnr_p = itab_zycbt108-belnr_lq

                                 dtpagto = sy-datum

...

 

...

FORM limpa_itabs_contabil.

  CLEAR:

    itab_zycbt034,

    itab_zycbe033,

    itab_zycbt032,

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

    itab_zycbt036.

* << Fim da exclusão

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

    itab_zycbt036,

    itab_zycbe035.

* << Fim da inclusão

  REFRESH:

    itab_zycbt034,

    itab_zycbe033,

    itab_zycbt032,

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

    itab_zycbt036.

* << Fim da exclusão

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

    itab_zycbt036,

    itab_zycbe035.

* << Fim da inclusão

ENDFORM.

FORM limpa_flag.

  CLEAR itab_zycbt131-vldif.

  CLEAR itab_zycbt131-flag.

  MODIFY itab_zycbt131 TRANSPORTING vldif flag

...

 

...

      MODIFY /pws/zycbt131 FROM TABLE itab_zycbt131.

      MODIFY /pws/zycbt108 FROM TABLE itab_zycbt108.

      UPDATE /pws/zycbt117 SET   slpgant = /pws/zycbe117-slpgant

                             belnr2 = /pws/zycbe117-belnr2

                      WHERE   nrseq = /pws/zycbe117-nrseq.

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

      LOOP AT itab_zycmt020.

        UPDATE /pws/zycmt020 SET saldo = itab_zycmt020-saldo

                             WHERE nrseq  = itab_zycmt020-nrseq

                               AND codmod = itab_zycmt020-codmod

                               AND ebeln  = itab_zycmt020-ebeln

                               AND ebelp  = itab_zycmt020-ebelp.

      ENDLOOP.

* << Fim da inclusão

      LOOP AT itab_zycbt108 WHERE belnr_lq NE '          '.

        IF itab_zycbt108-slfat EQ 0.

          UPDATE /pws/zycbt119 SET  slpgfat = itab_zycbt108-slfat

                               belnr_p = itab_zycbt108-belnr_lq

                               dtpagto = sy-datum

...

 

...

        MODIFY /pws/zycbt131 FROM TABLE itab_zycbt131.

        MODIFY /pws/zycbt108 FROM TABLE itab_zycbt108.

        UPDATE /pws/zycbt117 SET   slpgant = /pws/zycbe117-slpgant

                               belnr2 = /pws/zycbe117-belnr2

                        WHERE   nrseq = /pws/zycbe117-nrseq.

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

        LOOP AT itab_zycmt020.

          UPDATE /pws/zycmt020 SET saldo = itab_zycmt020-saldo

                               WHERE nrseq  = itab_zycmt020-nrseq

                                 AND codmod = itab_zycmt020-codmod

                                 AND ebeln  = itab_zycmt020-ebeln

                                 AND ebelp  = itab_zycmt020-ebelp.

        ENDLOOP.

* << Fim da inclusão

        LOOP AT itab_zycbt108 WHERE belnr_lq NE '          '.

          IF itab_zycbt108-slfat EQ 0.

            UPDATE /pws/zycbt119 SET  slpgfat = itab_zycbt108-slfat

                                 belnr_p = itab_zycbt108-belnr_lq

                                 dtpagto = sy-datum

...

 

...

  IF v_ind_mudanca IS INITIAL.

    IF v_ind_errocont IS INITIAL.

      MODIFY /pws/zycbt131 FROM TABLE itab_zycbt131.

      MODIFY /pws/zycbt108 FROM TABLE itab_zycbt108.

      MODIFY /pws/zycbt119 FROM /pws/zycbe119.

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

      LOOP AT itab_zycmt020.

        UPDATE /pws/zycmt020 SET saldo = itab_zycmt020-saldo

                             WHERE nrseq  = itab_zycmt020-nrseq

                               AND codmod = itab_zycmt020-codmod

                               AND ebeln  = itab_zycmt020-ebeln

                               AND ebelp  = itab_zycmt020-ebelp.

      ENDLOOP.

* << Fim da inclusão

      LOOP AT itab_zycbt108 WHERE belnr_lq NE '          '.

        IF itab_zycbt108-slfat EQ 0.

          UPDATE /pws/zycbt119 SET  slpgfat = itab_zycbt108-slfat

                               belnr_p = itab_zycbt108-belnr_lq

                               dtpagto = sy-datum

...

 

...

      v_sucesso = 'X'.

      IF v_erro_estorno IS INITIAL.

        MODIFY /pws/zycbt131 FROM TABLE itab_zycbt131.

        MODIFY /pws/zycbt108 FROM TABLE itab_zycbt108.

        MODIFY /pws/zycbt119 FROM /pws/zycbe119.

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

        LOOP AT itab_zycmt020.

          UPDATE /pws/zycmt020 SET saldo = itab_zycmt020-saldo

                               WHERE nrseq  = itab_zycmt020-nrseq

                                 AND codmod = itab_zycmt020-codmod

                                 AND ebeln  = itab_zycmt020-ebeln

                                 AND ebelp  = itab_zycmt020-ebelp.

        ENDLOOP.

* << Fim da inclusão

        LOOP AT itab_zycbt108 WHERE belnr_lq NE '          '.

          IF itab_zycbt108-slfat EQ 0.

            UPDATE /pws/zycbt119 SET  slpgfat = itab_zycbt108-slfat

                                 belnr_p = itab_zycbt108-belnr_lq

                                 dtpagto = sy-datum

...

 

...

        CLEAR: /pws/zycbe119-belnr2.

      ENDIF.

      MODIFY /pws/zycbt108 FROM itab_zycbt108.

      MODIFY /pws/zycbt119 FROM /pws/zycbe119.

    ENDIF.

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

    LOOP AT itab_zycmt020.

      UPDATE /pws/zycmt020 SET saldo = itab_zycmt020-saldo

                           WHERE nrseq  = itab_zycmt020-nrseq

                             AND codmod = itab_zycmt020-codmod

                             AND ebeln  = itab_zycmt020-ebeln

                             AND ebelp  = itab_zycmt020-ebelp.

    ENDLOOP.

* << Fim da inclusão

    IF v_tpdoc EQ 'I'.

      v_mdcorresp = 'IF'.

    ELSEIF v_tpdoc EQ 'A'.

      v_mdcorresp = 'IA'.

    ELSEIF v_tpdoc EQ 'P'.

...

 

...

ENDFORM.

FORM desmembra_docto_financiamento.

  DATA : v_codeven LIKE /pws/zycbt011-codeven,

         v_linhas(2) TYPE n.

  PERFORM limpa_itabs_contabil.

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

  IF itab_zycmt020[] IS INITIAL.

    SELECT * FROM /pws/zycmt020 INTO TABLE itab_zycmt020

             WHERE nrseq  = /pws/zycbe112-nrseq

               AND codmod = 'FI'.

  ENDIF.

* << Fim da inclusão

  CLEAR wa_zycbt007.

  SELECT SINGLE * FROM /pws/zycbt007

                  INTO wa_zycbt007

                  WHERE bukrs EQ /pws/zycbe112-bukrs.

  CONCATENATE '001' /pws/zycbe112-codint INTO v_codeven.

...

 

...

                        WHERE bukrs EQ /pws/zycbe112-bukrs

                          AND belnr EQ itab_zycbt036-belnr

                          AND gjahr EQ itab_zycbt036-dtdocto(4)

                          AND augbl EQ ' '

                          AND koart EQ 'K'.

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

    LOOP AT itab_zycmt020.

      itab_zycmt020-vlassoc = itab_zycmt020-saldo.

      itab_zycmt020-saldo   = space.

      MODIFY itab_zycmt020.

    ENDLOOP.

* << Fim da inclusão

    v_ok = 'X'.

    EXIT.

  ENDIF.

  IF NOT /pws/zycbe112-ftxt IS INITIAL.

    itab_zycbe033-d_sgtxt = /pws/zycbe112-txtinf.

...

 

...

  itab_zycbe033-d_prctr = /pws/zycbe112-prctr.

  itab_zycbe033-d_fictr = /pws/zycbe112-fictr.

  itab_zycbe033-c_fictr = /pws/zycbe112-fictr.

  itab_zycbe033-d_fipos = /pws/zycbe112-fipos.

  itab_zycbe033-c_fipos = /pws/zycbe112-fipos.

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

  IF NOT itab_zycmt020[] IS INITIAL.

    PERFORM rateio_itens_pedido USING 'FI'.

  ENDIF.

* << Fim da inclusão

  CLEAR:   itab_zyglt100.

  REFRESH: itab_zyglt100.

  v_syrepid = sy-repid.

  CALL FUNCTION '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

       EXPORTING

...

 

...

         TABLES

              t_dados         = itab_zycbe033

              t_campo         = itab_zycbt034

              t_zycbt036      = itab_zycbt036

              t_zycbt032      = itab_zycbt032

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

              t_zycbe035      = itab_zycbe035

* << Fim da inclusão

         EXCEPTIONS

              campo_em_branco = 1

              OTHERS          = 2.

    IF sy-subrc = 0.

      READ TABLE itab_zycbt032 WITH KEY tcode  = 'F-51'

...

 

...

      ELSE.

        LOOP AT itab_zycbt032.

          MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg+0(50)

                            itab_zycbt032-msg+50(50).

        ENDLOOP.

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

        v_ok = ' '.

* << Fim da inclusão

      ENDIF.

    ELSE.

      LOOP AT itab_zycbt034.

        MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

      ENDLOOP.

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

      v_ok = ' '.

* << Fim da inclusão

    ENDIF.

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

  ELSE.

    LOOP AT itab_zycbt034.

      MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

    ENDLOOP.

    v_ok = ' '.

* << Fim da inclusão

  ENDIF.

ENDFORM.

FORM preenche_doc_financiamento.

  REFRESH itab_zycbt036.

  CLEAR itab_zycbt036.

...

 

...

  APPEND itab_zycbt036.

ENDFORM.

FORM reclassifica_financiamento.

  DATA : v_codeven LIKE /pws/zycbt011-codeven.

  IF NOT itab_zycbt131-belnr_rfin IS INITIAL.

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

    IF ok_code NE 'SAVE'.

      CHECK v_estorno_ok = 'X'.

    ENDIF.

* << Fim da inclusão

    PERFORM limpa_itabs_contabil.

    CLEAR wa_zycbt007.

    SELECT SINGLE * FROM /pws/zycbt007

                    INTO wa_zycbt007

                    WHERE bukrs EQ /pws/zycbe112-bukrs.

...

 

...

    REFRESH itab_zyglt321.

    SELECT * FROM /pws/zyglt321

             INTO TABLE itab_zyglt321

             WHERE ktosl   = 'FIN'

               AND codeven = v_codeven.

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

    IF itab_zycmt020[] IS INITIAL.

      SELECT * FROM /pws/zycmt020 INTO TABLE itab_zycmt020

               WHERE nrseq  = /pws/zycbe112-nrseq

                 AND codmod = 'FI'.

    ENDIF.

* << Fim da inclusão

    itab_zycbe033-mandt = sy-mandt.

    itab_zycbe033-tcode = 'F-51'.

    itab_zycbe033-tabela = '/PWS/ZYCBT112'.

    itab_zycbe033-cpochv = /pws/zycbe112-nrseq.

    itab_zycbe033-c_valut = /pws/zycbe112-dtvencto.

...

 

...

    itab_zycbe033-d_prctr = /pws/zycbe112-prctr.

    itab_zycbe033-d_fictr = /pws/zycbe112-fictr.

    itab_zycbe033-c_fictr = /pws/zycbe112-fictr.

    itab_zycbe033-d_fipos = /pws/zycbe112-fipos.

    itab_zycbe033-c_fipos = /pws/zycbe112-fipos.

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

    IF NOT itab_zycmt020[] IS INITIAL.

      PERFORM rateio_itens_pedido_estorno USING 'FI'.

    ENDIF.

* << Fim da inclusão

    CLEAR:   itab_zyglt100.

    REFRESH: itab_zyglt100.

    v_syrepid = sy-repid.

    CALL FUNCTION '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

         EXPORTING

...

 

...

           TABLES

                t_dados         = itab_zycbe033

                t_campo         = itab_zycbt034

                t_zycbt036      = itab_zycbt036

                t_zycbt032      = itab_zycbt032

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

                t_zycbe035      = itab_zycbe035

* << Fim da inclusão

           EXCEPTIONS

                campo_em_branco = 1

                OTHERS          = 2.

      IF sy-subrc = 0.

        READ TABLE itab_zycbt032 WITH KEY tcode  = 'F-51'

...

 

...

        ELSE.

          LOOP AT itab_zycbt032.

            MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg+0(50)

                              itab_zycbt032-msg+50(50).

          ENDLOOP.

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

          CLEAR v_estorno_ok.

* << Fim da inclusão

        ENDIF.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

        ENDLOOP.

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

        CLEAR v_estorno_ok.

* << Fim da inclusão

      ENDIF.

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

    ELSE.

      CLEAR v_estorno_ok.

* << Fim da inclusão

    ENDIF.

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

  ELSEIF NOT itab_zycmt020_aux[] IS INITIAL.

    itab_zycmt020[] = itab_zycmt020_aux[].

* << Fim da inclusão

  ENDIF.

ENDFORM.

FORM preenche_doc_assoc_finan.

  REFRESH itab_zycbt036.

  CLEAR itab_zycbt036.

...

 

...

                 WHERE belnr EQ itab_zycbt131-belnr_rfin

                   AND bukrs EQ /pws/zycbe112-bukrs

                   AND gjahr EQ itab_zycbe033-budat(4).

    IF NOT bkpf-kursf IS INITIAL AND

       NOT bkpf-kursf EQ '0.00000'.

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

      IF NOT itab_zycmt020[]  IS INITIAL.

        CLEAR v_reais_fi_rateio.

        LOOP AT itab_zycmt020.

          v_reais_fi_rateio = itab_zycmt020-vlassoc

                              / ( 10 ** ( tcurx-currdec - 2 ) ).

          v_reais_fi_rateio = ( ( bkpf-kursf / v_defator )

                                 * v_parafator ) * v_reais_fi_rateio.

          v_reais_fi = v_reais_fi + v_reais_fi_rateio.

        ENDLOOP.

      ELSE.

* << Fim da inclusão

      v_reais_fi = itab_zycbt131-vlmefin

                             / ( 10 ** ( tcurx-currdec - 2 ) ).

      v_reais_fi = ( ( bkpf-kursf / v_defator )

                             * v_parafator ) * v_reais_fi.

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

      ENDIF.

* << Fim da inclusão

    ENDIF.

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

  ELSE.

    IF NOT itab_zycmt020[]  IS INITIAL.

      CLEAR v_reais_fi_rateio.

      LOOP AT itab_zycmt020.

        v_reais_fi_rateio = itab_zycmt020-vlassoc

                            / ( 10 ** ( tcurx-currdec - 2 ) ).

        v_reais_fi_rateio = ( ( v_txcbrl / v_defator )

                               * v_parafator ) * v_reais_fi_rateio.

        v_reais_fi = v_reais_fi + v_reais_fi_rateio.

      ENDLOOP.

* << Fim da inclusão

  ELSE.

    v_reais_fi = itab_zycbt131-vlmefin

                         / ( 10 ** ( tcurx-currdec - 2 ) ).

    v_reais_fi = ( ( v_txcbrl / v_defator )

                           * v_parafator ) * v_reais_fi.

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

    ENDIF.

* << Fim da inclusão

  ENDIF.

  CLEAR lfb1.

  SELECT SINGLE akont FROM lfb1

               INTO lfb1-akont

               WHERE lifnr EQ itab_zycbt108-lifnr

...

 

...

    tcurx-currdec = 2.

  ENDIF.

  IF NOT skb1-xsalh IS INITIAL OR

     NOT t001-xslta IS INITIAL.

    CLEAR bkpf.

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

    IF NOT itab_zycbt108-dtassoc IS INITIAL.

      SELECT SINGLE kursf FROM bkpf

                   INTO bkpf-kursf

                   WHERE belnr EQ itab_zycbt131-belnr_rfat

                     AND bukrs EQ itab_zycbt108-bukrs

                     AND gjahr EQ itab_zycbt108-dtassoc(4).

    ELSE.

* << Fim da inclusão

    SELECT SINGLE kursf FROM bkpf

                 INTO bkpf-kursf

                 WHERE belnr EQ itab_zycbt131-belnr_rfat

                   AND bukrs EQ itab_zycbt108-bukrs

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

                   AND gjahr EQ itab_zycbe033-budat(4).

* << Fim da exclusão

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

                     AND gjahr EQ itab_zycbt108-bldat(4).

    ENDIF.

* << Fim da inclusão

    IF NOT bkpf-kursf IS INITIAL AND

       NOT bkpf-kursf EQ '0.00000'.

      v_reais_fa = itab_zycbt131-vlme /

                             ( 10 ** ( tcurx-currdec - 2 ) ).

      v_reais_fa = ( ( bkpf-kursf / v_defator )

...

 

...

  v_variacao = v_reais_fi - v_reais_fa.

ENDFORM.

FORM reclassifica_fatura.

  DATA : v_codeven LIKE /pws/zycbt011-codeven.

  IF NOT itab_zycbt131-belnr_rfat IS INITIAL.

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

    IF ok_code NE 'SAVE'.

      CHECK v_estorno_ok = 'X'.

    ENDIF.

* << Fim da inclusão

    READ TABLE itab_zycbt108 WITH KEY belnr = itab_zycbt131-belnr

                               nrseq_pgfat = itab_zycbt131-nrseq_pgfat.

    PERFORM limpa_itabs_contabil.

    SELECT SINGLE * FROM /pws/zycbt119 INTO /pws/zycbt119

           WHERE nrseq = itab_zycbt108-nrseq_pgfat.

...

 

...

        ELSE.

          LOOP AT itab_zycbt032.

            MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg+0(50)

                              itab_zycbt032-msg+50(50).

          ENDLOOP.

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

          CLEAR v_estorno_ok.

* << Fim da inclusão

        ENDIF.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

        ENDLOOP.

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

        CLEAR v_estorno_ok.

* << Fim da inclusão

      ENDIF.

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

    ELSE.

      CLEAR v_estorno_ok.

* << Fim da inclusão

    ENDIF.

  ENDIF.

ENDFORM.

FORM preenche_doc_assoc_fat.

  REFRESH itab_zycbt036.

...

 

...

  ENDIF.

ENDFORM.

FORM desmembra_docto_pgant.

  DATA : v_codeven LIKE /pws/zycbt011-codeven.

  PERFORM limpa_itabs_contabil.

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

  IF itab_zycmt020[] IS INITIAL.

    SELECT * FROM /pws/zycmt020 INTO TABLE itab_zycmt020

             WHERE nrseq  = /pws/zycbe117-nrseq

               AND codmod = 'PA'.

  ENDIF.

* << Fim da inclusão

  CLEAR wa_zycbt007.

  SELECT SINGLE * FROM /pws/zycbt007

                  INTO wa_zycbt007

                  WHERE bukrs EQ /pws/zycbe117-bukrs.

  CONCATENATE '005' /pws/zycbe117-codint INTO v_codeven.

...

 

...

  itab_zycbe033-agkon = /pws/zycbe117-lifnr.

  PERFORM verify_null_field USING itab_zycbe033-agkon

                                  'AGKON'

                                  text-027.

  PERFORM preenche_doc_pgant.

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

  IF v_vlres  EQ itab_zycbt131-vlmefin.

* << Fim da exclusão

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

  IF v_vlres EQ itab_zycbt131-vlmefin.

* << Fim da inclusão

    READ TABLE itab_zycbt036 INDEX 1.

    itab_zycbt131-belnr_rfin = itab_zycbt036-belnr.

    MODIFY itab_zycbt131 TRANSPORTING belnr_rfin

                      WHERE belnr EQ itab_zycbt108-belnr

                       AND nrseq_pgfat EQ itab_zycbt108-nrseq_pgfat.

...

 

...

                          AND belnr EQ itab_zycbt036-belnr

                          AND gjahr EQ itab_zycbt036-dtdocto(4)

                          AND augbl EQ ' '

                          AND koart EQ 'K'

                          AND bschl EQ '29'.

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

    LOOP AT itab_zycmt020.

      itab_zycmt020-vlassoc = itab_zycmt020-saldo.

      itab_zycmt020-saldo   = space.

      MODIFY itab_zycmt020.

    ENDLOOP.

* << Fim da inclusão

    v_ok = 'X'.

    EXIT.

  ENDIF.

  itab_zycbe033-xblnr = /pws/zycbe117-nrseq.

  CONCATENATE /pws/zycbe117-nrseq 'A' INTO itab_zycbe033-d_zuonr.

...

 

...

  itab_zycbe033-c_fipos = /pws/zycbe117-fipos.

  itab_zycbe033-d_fipos = /pws/zycbe117-fipos.

  itab_zycbe033-c_fictr = /pws/zycbe117-fictr.

  itab_zycbe033-d_fictr = /pws/zycbe117-fictr.

  itab_zycbe033-zfbdt = /pws/zycbe117-dtvencto.

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

  IF NOT itab_zycmt020[] IS INITIAL.

    PERFORM rateio_itens_pedido USING 'PA'.

  ENDIF.

* << Fim da inclusão

  CLEAR:   itab_zyglt100.

  REFRESH: itab_zyglt100.

  v_syrepid = sy-repid.

  CALL FUNCTION '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

       EXPORTING

...

 

...

         TABLES

              t_dados         = itab_zycbe033

              t_campo         = itab_zycbt034

              t_zycbt036      = itab_zycbt036

              t_zycbt032      = itab_zycbt032

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

              t_zycbe035      = itab_zycbe035

* << Fim da inclusão

         EXCEPTIONS

              campo_em_branco = 1

              OTHERS          = 2.

    IF sy-subrc = 0.

      READ TABLE itab_zycbt032 WITH KEY tcode  = 'F-51'

...

 

...

      ELSE.

        LOOP AT itab_zycbt032.

          MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg+0(50)

                            itab_zycbt032-msg+50(50).

        ENDLOOP.

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

        v_ok = ' '.

* << Fim da inclusão

      ENDIF.

    ELSE.

      LOOP AT itab_zycbt034.

        MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

      ENDLOOP.

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

      v_ok = ' '.

* << Fim da inclusão

    ENDIF.

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

  ELSE.

    LOOP AT itab_zycbt034.

      MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

    ENDLOOP.

    v_ok = ' '.

* << Fim da inclusão

  ENDIF.

ENDFORM.

FORM preenche_doc_pgant.

  REFRESH itab_zycbt036.

  CLEAR itab_zycbt036.

...

 

...

  ENDIF.

ENDFORM.

FORM reclassifica_pgtoant.

  DATA : v_codeven LIKE /pws/zycbt011-codeven.

  IF NOT itab_zycbt131-belnr_rfin IS INITIAL.

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

    IF ok_code NE 'SAVE'.

      CHECK v_estorno_ok = 'X'.

    ENDIF.

* << Fim da inclusão

    PERFORM limpa_itabs_contabil.

    CLEAR wa_zycbt007.

    SELECT SINGLE * FROM /pws/zycbt007

                    INTO wa_zycbt007

                    WHERE bukrs EQ /pws/zycbe117-bukrs.

    CONCATENATE '005' /pws/zycbe117-codint INTO v_codeven.

    SELECT SINGLE * FROM /pws/zycbt011

           INTO wa_zycbt011

           WHERE codeven = v_codeven

           AND codmod  = 'I'.

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

    IF itab_zycmt020[] IS INITIAL.

      SELECT * FROM /pws/zycmt020 INTO TABLE itab_zycmt020

               WHERE nrseq  = /pws/zycbe117-nrseq

                 AND codmod = 'PA'.

    ENDIF.

* << Fim da inclusão

    itab_zycbe033-mandt = sy-mandt.

    itab_zycbe033-tcode = 'F-51'.

    itab_zycbe033-tabela = '/PWS/ZYCBT112'.

    itab_zycbe033-cpochv = /pws/zycbe117-nrseq.

    itab_zycbe033-c_valut = /pws/zycbe117-dtvencto.

...

 

...

    itab_zycbe033-d_prctr = /pws/zycbe117-prctr.

    itab_zycbe033-c_fipos = /pws/zycbe117-fipos.

    itab_zycbe033-d_fipos = /pws/zycbe117-fipos.

    itab_zycbe033-c_fictr = /pws/zycbe117-fictr.

    itab_zycbe033-d_fictr = /pws/zycbe117-fictr.

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

    IF NOT itab_zycmt020[] IS INITIAL.

      PERFORM rateio_itens_pedido_estorno USING 'PA'.

    ENDIF.

* << Fim da inclusão

    CLEAR:   itab_zyglt100.

    REFRESH: itab_zyglt100.

    v_syrepid = sy-repid.

    CALL FUNCTION '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

         EXPORTING

...

 

...

           TABLES

                t_dados         = itab_zycbe033

                t_campo         = itab_zycbt034

                t_zycbt036      = itab_zycbt036

                t_zycbt032      = itab_zycbt032

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

                t_zycbe035      = itab_zycbe035

* << Fim da inclusão

           EXCEPTIONS

                campo_em_branco = 1

                OTHERS          = 2.

      IF sy-subrc = 0.

        READ TABLE itab_zycbt032 WITH KEY tcode  = 'F-51'

...

 

...

        ELSE.

          LOOP AT itab_zycbt032.

            MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg+0(50)

                              itab_zycbt032-msg+50(50).

          ENDLOOP.

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

          CLEAR v_estorno_ok.

* << Fim da inclusão

        ENDIF.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

        ENDLOOP.

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

        CLEAR v_estorno_ok.

* << Fim da inclusão

      ENDIF.

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

    ELSE.

      CLEAR v_estorno_ok.

* << Fim da inclusão

    ENDIF.

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

  ELSEIF NOT itab_zycmt020_aux[] IS INITIAL.

    itab_zycmt020[] = itab_zycmt020_aux[].

* << Fim da inclusão

  ENDIF.

ENDFORM.

FORM preenche_doc_assoc_pgtoant.

  REFRESH itab_zycbt036.

  CLEAR itab_zycbt036.

...

 

...

        MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg.

        itab_zycbt131-belnr_as = itab_zycbt032-belnr.

        MODIFY itab_zycbt131 TRANSPORTING belnr_as

                            WHERE belnr EQ itab_zycbt108-belnr

                         AND nrseq_pgfat EQ itab_zycbt108-nrseq_pgfat.

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

        IF ( /pws/zyglt009-contpa = 'Y' AND /pws/zycbe117-codint = 'IM'

 ) OR

          ( /pws/zyglt009-contpa = 'Y' AND /pws/zycbe117-codint = 'ES'

            AND v_trans IS INITIAL ).

* << Fim da exclusão

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

        IF ( /pws/zyglt009-contpa = 'Y' AND

             /pws/zycbe117-codint = 'IM' ) OR

           ( /pws/zyglt009-contpa = 'Y' AND

             /pws/zycbe117-codint = 'ES' AND v_trans IS INITIAL ).

* << Fim da inclusão

          /pws/zycbe117-slpgant = v_saldo_pa.

        ENDIF.

      ELSE.

        LOOP AT itab_zycbt032.

          MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg+0(50)

...

 

...

                 WHERE belnr EQ itab_zycbt131-belnr_rfin

                   AND bukrs EQ /pws/zycbe117-bukrs

                   AND gjahr EQ itab_zycbe033-budat(4).

    IF NOT bkpf-kursf IS INITIAL AND

       NOT bkpf-kursf EQ '0.00000'.

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

      IF NOT itab_zycmt020[]  IS INITIAL.

        CLEAR v_reais_fi_rateio.

        LOOP AT itab_zycmt020.

          v_reais_fi_rateio = itab_zycmt020-vlassoc

                              / ( 10 ** ( tcurx-currdec - 2 ) ).

          v_reais_fi_rateio = ( ( bkpf-kursf / v_defator )

                                 * v_parafator ) * v_reais_fi_rateio.

          v_reais_fi = v_reais_fi + v_reais_fi_rateio.

        ENDLOOP.

      ELSE.

* << Fim da inclusão

      v_reais_fi = itab_zycbt131-vlmefin

                             / ( 10 ** ( tcurx-currdec - 2 ) ).

      v_reais_fi = ( ( bkpf-kursf / v_defator )

                             * v_parafator ) * v_reais_fi.

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

      ENDIF.

* << Fim da inclusão

    ENDIF.

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

  ELSE.

    IF NOT itab_zycmt020[]  IS INITIAL.

      CLEAR v_reais_fi_rateio.

      LOOP AT itab_zycmt020.

        v_reais_fi_rateio = itab_zycmt020-vlassoc

                            / ( 10 ** ( tcurx-currdec - 2 ) ).

        v_reais_fi_rateio = ( ( v_txcbrl / v_defator )

                               * v_parafator ) * v_reais_fi_rateio.

        v_reais_fi = v_reais_fi + v_reais_fi_rateio.

      ENDLOOP.

* << Fim da inclusão

  ELSE.

    v_reais_fi = itab_zycbt131-vlmefin

                         / ( 10 ** ( tcurx-currdec - 2 ) ).

    v_reais_fi = ( ( v_txcbrl / v_defator )

                           * v_parafator ) * v_reais_fi.

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

    ENDIF.

* << Fim da inclusão

  ENDIF.

  CLEAR lfb1.

  SELECT SINGLE akont FROM lfb1

               INTO lfb1-akont

               WHERE lifnr EQ itab_zycbt108-lifnr

...

 

...

    tcurx-currdec = 2.

  ENDIF.

  IF NOT skb1-xsalh IS INITIAL OR

     NOT t001-xslta IS INITIAL.

    CLEAR bkpf.

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

    IF NOT itab_zycbt108-dtassoc IS INITIAL.

      SELECT SINGLE kursf FROM bkpf

                   INTO bkpf-kursf

                   WHERE belnr EQ itab_zycbt131-belnr_rfat

                     AND bukrs EQ itab_zycbt108-bukrs

                     AND gjahr EQ itab_zycbt108-dtassoc(4).

    ELSE.

* << Fim da inclusão

    SELECT SINGLE kursf FROM bkpf

                 INTO bkpf-kursf

                 WHERE belnr EQ itab_zycbt131-belnr_rfat

                   AND bukrs EQ itab_zycbt108-bukrs

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

                   AND gjahr EQ itab_zycbe033-budat(4).

* << Fim da exclusão

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

                     AND gjahr EQ itab_zycbt108-bldat(4).

    ENDIF.

* << Fim da inclusão

    IF NOT bkpf-kursf IS INITIAL AND

       NOT bkpf-kursf EQ '0.00000'.

      v_reais_fa = itab_zycbt131-vlme /

                             ( 10 ** ( tcurx-currdec - 2 ) ).

      v_reais_fa = ( ( bkpf-kursf / v_defator )

...

 

...

  ENDIF.

ENDFORM.

FORM desmembra_docto_pgfat.

  DATA : v_codeven LIKE /pws/zycbt011-codeven.

  PERFORM limpa_itabs_contabil.

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

  IF itab_zycmt020[] IS INITIAL.

    SELECT * FROM /pws/zycmt020 INTO TABLE itab_zycmt020

             WHERE nrseq  = /pws/zycbe119-nrseq

               AND codmod = 'PG'.

  ENDIF.

* << Fim da inclusão

  CLEAR wa_zycbt007.

  SELECT SINGLE * FROM /pws/zycbt007

                  INTO wa_zycbt007

                  WHERE bukrs EQ /pws/zycbe119-bukrs.

  CONCATENATE '007' /pws/zycbe119-codint INTO v_codeven.

...

 

...

                          AND belnr EQ itab_zycbt036-belnr

                          AND gjahr EQ itab_zycbt036-dtdocto(4)

                          AND augbl EQ ' '

                          AND koart EQ 'K'

                          AND bschl EQ '29'.

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

    LOOP AT itab_zycmt020.

      itab_zycmt020-vlassoc = itab_zycmt020-saldo.

      itab_zycmt020-saldo   = space.

      MODIFY itab_zycmt020.

    ENDLOOP.

* << Fim da inclusão

    v_ok = 'X'.

    EXIT.

  ENDIF.

  itab_zycbe033-xblnr = /pws/zycbe119-nrseq.

  CONCATENATE /pws/zycbe119-nrseq 'A' INTO itab_zycbe033-d_zuonr.

...

 

...

  itab_zycbe033-c_fipos = /pws/zycbe119-fipos.

  itab_zycbe033-d_fipos = /pws/zycbe119-fipos.

  itab_zycbe033-c_fictr = /pws/zycbe119-fictr.

  itab_zycbe033-d_fictr = /pws/zycbe119-fictr.

  itab_zycbe033-zfbdt = /pws/zycbe119-dtvencto.

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

  IF NOT itab_zycmt020[] IS INITIAL.

    PERFORM rateio_itens_pedido USING 'PG'.

  ENDIF.

* << Fim da inclusão

  CLEAR:   itab_zyglt100.

  REFRESH: itab_zyglt100.

  v_syrepid = sy-repid.

  CALL FUNCTION '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

       EXPORTING

...

 

...

         TABLES

              t_dados         = itab_zycbe033

              t_campo         = itab_zycbt034

              t_zycbt036      = itab_zycbt036

              t_zycbt032      = itab_zycbt032

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

              t_zycbe035      = itab_zycbe035

* << Fim da inclusão

         EXCEPTIONS

              campo_em_branco = 1

              OTHERS          = 2.

    IF sy-subrc = 0.

      READ TABLE itab_zycbt032 WITH KEY tcode  = 'F-51'

...

 

...

      ELSE.

        LOOP AT itab_zycbt032.

          MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg+0(50)

                            itab_zycbt032-msg+50(50).

        ENDLOOP.

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

        v_ok = ' '.

* << Fim da inclusão

      ENDIF.

    ELSE.

      LOOP AT itab_zycbt034.

        MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

      ENDLOOP.

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

      v_ok = ' '.

* << Fim da inclusão

    ENDIF.

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

  ELSE.

    LOOP AT itab_zycbt034.

      MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

    ENDLOOP.

    v_ok = ' '.

* << Fim da inclusão

  ENDIF.

ENDFORM.

FORM preenche_doc_pgfat.

  REFRESH itab_zycbt036.

  CLEAR itab_zycbt036.

...

 

...

  ENDIF.

ENDFORM.

FORM reclassifica_pgtofat.

  DATA : v_codeven LIKE /pws/zycbt011-codeven.

  IF NOT itab_zycbt131-belnr_rfin IS INITIAL.

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

    IF ok_code NE 'SAVE'.

      CHECK v_estorno_ok = 'X'.

    ENDIF.

* << Fim da inclusão

    PERFORM limpa_itabs_contabil.

    CLEAR wa_zycbt007.

    SELECT SINGLE * FROM /pws/zycbt007

                    INTO wa_zycbt007

                    WHERE bukrs EQ /pws/zycbe119-bukrs.

    CONCATENATE '007' 'A' INTO v_codeven.

    SELECT SINGLE * FROM /pws/zycbt011

           INTO wa_zycbt011

           WHERE codeven = v_codeven

           AND codmod  = 'I'.

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

    IF itab_zycmt020[] IS INITIAL.

      SELECT * FROM /pws/zycmt020 INTO TABLE itab_zycmt020

               WHERE nrseq  = /pws/zycbe119-nrseq

                 AND codmod = 'PG'.

    ENDIF.

* << Fim da inclusão

    itab_zycbe033-mandt = sy-mandt.

    itab_zycbe033-tcode = 'F-51'.

    itab_zycbe033-tabela = '/PWS/ZYCBT112'.

    itab_zycbe033-cpochv = /pws/zycbe119-nrseq.

    itab_zycbe033-c_valut = /pws/zycbe119-dtvencto.

...

 

...

                                    'BLART'

                                    text-066.

    itab_zycbe033-blart  = wa_zycbt011-blart.

    itab_zycbe033-c_gsber = /pws/zycbe119-gsber.

    itab_zycbe033-d_gsber = /pws/zycbe119-gsber.

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

    IF NOT itab_zycmt020[] IS INITIAL.

      PERFORM rateio_itens_pedido_estorno USING 'PG'.

    ENDIF.

* << Fim da inclusão

    CLEAR:   itab_zyglt100.

    REFRESH: itab_zyglt100.

    v_syrepid = sy-repid.

    CALL FUNCTION '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

         EXPORTING

...

 

...

           TABLES

                t_dados         = itab_zycbe033

                t_campo         = itab_zycbt034

                t_zycbt036      = itab_zycbt036

                t_zycbt032      = itab_zycbt032

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

                t_zycbe035      = itab_zycbe035

* << Fim da inclusão

           EXCEPTIONS

                campo_em_branco = 1

                OTHERS          = 2.

      IF sy-subrc = 0.

        READ TABLE itab_zycbt032 WITH KEY tcode  = 'F-51'

...

 

...

        ELSE.

          LOOP AT itab_zycbt032.

            MESSAGE i015(/pws/zycmm) WITH itab_zycbt032-msg+0(50)

                              itab_zycbt032-msg+50(50).

          ENDLOOP.

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

          CLEAR v_estorno_ok.

* << Fim da inclusão

        ENDIF.

      ELSE.

        LOOP AT itab_zycbt034.

          MESSAGE i016(/pws/zycmm) WITH itab_zycbt034-descricao.

        ENDLOOP.

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

        CLEAR v_estorno_ok.

* << Fim da inclusão

      ENDIF.

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

    ELSE.

      CLEAR v_estorno_ok.

* << Fim da inclusão

    ENDIF.

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

  ELSEIF NOT itab_zycmt020_aux[] IS INITIAL.

    itab_zycmt020[] = itab_zycmt020_aux[].

* << Fim da inclusão

  ENDIF.

ENDFORM.

FORM preenche_doc_assoc_pgtofat.

  REFRESH itab_zycbt036.

  CLEAR itab_zycbt036.

...

 

...

                 WHERE belnr EQ itab_zycbt131-belnr_rfin

                   AND bukrs EQ /pws/zycbe119-bukrs

                   AND gjahr EQ itab_zycbe033-budat(4).

    IF NOT bkpf-kursf IS INITIAL AND

       NOT bkpf-kursf EQ '0.00000'.

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

      IF NOT itab_zycmt020[]  IS INITIAL.

        CLEAR v_reais_fi_rateio.

        LOOP AT itab_zycmt020.

          v_reais_fi_rateio = itab_zycmt020-vlassoc

                              / ( 10 ** ( tcurx-currdec - 2 ) ).

          v_reais_fi_rateio = ( ( bkpf-kursf / v_defator )

                                 * v_parafator ) * v_reais_fi_rateio.

          v_reais_fi = v_reais_fi + v_reais_fi_rateio.

        ENDLOOP.

      ELSE.

* << Fim da inclusão

      v_reais_fi = itab_zycbt131-vlmefin

                             / ( 10 ** ( tcurx-currdec - 2 ) ).

      v_reais_fi = ( ( bkpf-kursf / v_defator )

                             * v_parafator ) * v_reais_fi.

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

      ENDIF.

* << Fim da inclusão

    ENDIF.

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

  ELSE.

    IF NOT itab_zycmt020[]  IS INITIAL.

      CLEAR v_reais_fi_rateio.

      LOOP AT itab_zycmt020.

        v_reais_fi_rateio = itab_zycmt020-vlassoc

                            / ( 10 ** ( tcurx-currdec - 2 ) ).

        v_reais_fi_rateio = ( ( v_txcbrl / v_defator )

                               * v_parafator ) * v_reais_fi_rateio.

        v_reais_fi = v_reais_fi + v_reais_fi_rateio.

      ENDLOOP.

* << Fim da inclusão

  ELSE.

    v_reais_fi = itab_zycbt131-vlmefin

                         / ( 10 ** ( tcurx-currdec - 2 ) ).

    v_reais_fi = ( ( v_txcbrl / v_defator )

                           * v_parafator ) * v_reais_fi.

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

    ENDIF.

* << Fim da inclusão

  ENDIF.

  CLEAR lfb1.

  SELECT SINGLE akont FROM lfb1

               INTO lfb1-akont

               WHERE lifnr EQ itab_zycbt108-lifnr

...

 

...

    tcurx-currdec = 2.

  ENDIF.

  IF NOT skb1-xsalh IS INITIAL OR

     NOT t001-xslta IS INITIAL.

    CLEAR bkpf.

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

    IF NOT itab_zycbt108-dtassoc IS INITIAL.

      SELECT SINGLE kursf FROM bkpf

                   INTO bkpf-kursf

                   WHERE belnr EQ itab_zycbt131-belnr_rfat

                     AND bukrs EQ itab_zycbt108-bukrs

                     AND gjahr EQ itab_zycbt108-dtassoc(4).

    ELSE.

* << Fim da inclusão

    SELECT SINGLE kursf FROM bkpf

                 INTO bkpf-kursf

                 WHERE belnr EQ itab_zycbt131-belnr_rfat

                   AND bukrs EQ itab_zycbt108-bukrs

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

                   AND gjahr EQ itab_zycbe033-budat(4).

* << Fim da exclusão

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

                     AND gjahr EQ itab_zycbt108-bldat(4).

    ENDIF.

* << Fim da inclusão

    IF NOT bkpf-kursf IS INITIAL AND

       NOT bkpf-kursf EQ '0.00000'.

      v_reais_fa = itab_zycbt131-vlme /

                             ( 10 ** ( tcurx-currdec - 2 ) ).

      v_reais_fa = ( ( bkpf-kursf / v_defator )

...

 

...

    USING    p_telas-name p_telas-group1 p_telas-group2

             p_telas-group3 p_telas-group4

    CHANGING v_input v_output v_required

             v_invisible.

ENDFORM.

* >> Início da inclusão:

FORM rateio_itens_pedido USING p_tipo.

  itab_zycmt020_aux[] = itab_zycmt020[].

  CLEAR: v_soma_rateio, v_soma_dif.

  LOOP AT itab_zycmt020.

    v_tabix = sy-tabix.

    CLEAR: itab_zycbe035, v_dif_rateio.

    itab_zycbe035-tcode  = 'F-51'.

    itab_zycbe035-tabela = '/PWS/ZYCBT112'.

    IF     p_tipo = 'PA'.

      itab_zycbe035-cpochv = /pws/zycbe117-nrseq.

    ELSEIF p_tipo = 'PG'.

      itab_zycbe035-cpochv = /pws/zycbe119-nrseq.

    ELSEIF p_tipo = 'FI'.

      itab_zycbe035-cpochv = /pws/zycbe112-nrseq.

    ENDIF.

    itab_zycbe035-ebeln   = itab_zycmt020-ebeln.

    itab_zycbe035-ebelp   = itab_zycmt020-ebelp.

    itab_zycbe035-wrbtr1 = itab_zycbt131-vlmefin *

                           ( itab_zycmt020-pgto / 100 ).

    itab_zycbe035-wrbtr = itab_zycmt020-saldo =

                          itab_zycmt020-saldo - itab_zycbe035-wrbtr1.

    IF itab_zycmt020-saldo < 0.

      v_dif_rateio = itab_zycmt020-saldo * -1.

      itab_zycbe035-wrbtr1 = itab_zycbe035-wrbtr1 - v_dif_rateio.

      CLEAR: itab_zycmt020-saldo, itab_zycbe035-wrbtr.

    ENDIF.

    itab_zycmt020-vlassoc = itab_zycbe035-wrbtr1.

    v_soma_rateio = v_soma_rateio + itab_zycbe035-wrbtr1.

    v_soma_dif    = v_soma_dif    + v_dif_rateio.

    APPEND itab_zycbe035.

    MODIFY itab_zycmt020.

  ENDLOOP.

  IF NOT v_soma_dif IS INITIAL.

    v_soma_rateio = v_soma_rateio + v_soma_dif.

    LOOP AT itab_zycmt020 WHERE saldo > 0.

      READ TABLE itab_zycbe035 INDEX sy-tabix.

      IF sy-subrc = 0 AND v_soma_dif > 0.

        v_saldo_ant = itab_zycmt020-saldo.

        itab_zycmt020-saldo = itab_zycmt020-saldo - v_soma_dif.

        IF itab_zycmt020-saldo < 0.

          v_soma_dif = itab_zycmt020-saldo * -1.

          CLEAR: itab_zycmt020-saldo, itab_zycbe035-wrbtr.

        ELSE.

          itab_zycbe035-wrbtr = itab_zycmt020-saldo.

          CLEAR v_soma_dif.

        ENDIF.

        itab_zycmt020-vlassoc = itab_zycbe035-wrbtr1 =

               itab_zycbe035-wrbtr1 + v_saldo_ant - itab_zycmt020-saldo.

        MODIFY itab_zycmt020 INDEX sy-tabix.

        MODIFY itab_zycbe035 INDEX sy-tabix.

      ENDIF.

    ENDLOOP.

  ENDIF.

  IF     v_soma_rateio GT itab_zycbt131-vlmefin.

    v_dif_rateio = v_soma_rateio - itab_zycbt131-vlmefin.

    itab_zycbe035-wrbtr1 = 0 - 1.

    WHILE itab_zycbe035-wrbtr1 < 0.

      IF sy-index > 1.

        v_tabix = v_tabix - 1.

        IF v_tabix = 0.

          EXIT.

        ENDIF.

      ENDIF.

      READ TABLE itab_zycbe035 INDEX v_tabix.

      IF sy-subrc = 0.

        itab_zycbe035-wrbtr1 = itab_zycbe035-wrbtr1 - v_dif_rateio.

        itab_zycbe035-wrbtr  = itab_zycbe035-wrbtr  + v_dif_rateio.

        IF itab_zycbe035-wrbtr1 >= 0.

          MODIFY itab_zycbe035 INDEX v_tabix.

          READ TABLE itab_zycmt020 INDEX v_tabix.

          IF sy-subrc = 0.

            itab_zycmt020-saldo   = itab_zycmt020-saldo + v_dif_rateio.

            itab_zycmt020-vlassoc = itab_zycbe035-wrbtr1.

            MODIFY itab_zycmt020 INDEX v_tabix.

          ENDIF.

        ENDIF.

      ENDIF.

    ENDWHILE.

  ELSEIF v_soma_rateio LT itab_zycbt131-vlmefin.

    v_dif_rateio =  itab_zycbt131-vlmefin - v_soma_rateio.

    itab_zycbe035-wrbtr = 0 - 1.

    WHILE itab_zycbe035-wrbtr < 0.

      IF sy-index > 1.

        v_tabix = v_tabix - 1.

        IF v_tabix = 0.

          EXIT.

        ENDIF.

      ENDIF.

      READ TABLE itab_zycbe035 INDEX v_tabix.

      IF sy-subrc = 0.

        itab_zycbe035-wrbtr1 = itab_zycbe035-wrbtr1 + v_dif_rateio.

        itab_zycbe035-wrbtr  = itab_zycbe035-wrbtr  - v_dif_rateio.

        IF itab_zycbe035-wrbtr >= 0.

          MODIFY itab_zycbe035 INDEX v_tabix.

          READ TABLE itab_zycmt020 INDEX v_tabix.

          IF sy-subrc = 0.

            itab_zycmt020-saldo   = itab_zycmt020-saldo - v_dif_rateio.

            itab_zycmt020-vlassoc = itab_zycbe035-wrbtr1.

            MODIFY itab_zycmt020 INDEX v_tabix.

          ENDIF.

        ENDIF.

      ENDIF.

    ENDWHILE.

  ENDIF.

ENDFORM.

FORM rateio_itens_pedido_estorno USING p_tipo.

  itab_zycmt020_aux[] = itab_zycmt020[].

  CLEAR v_soma_rateio.

  LOOP AT itab_zycmt020.

    v_tabix = sy-tabix.

    CLEAR itab_zycbe035.

    itab_zycbe035-tcode  = 'F-51'.

    itab_zycbe035-tabela = '/PWS/ZYCBT112'.

    IF     p_tipo = 'PA'.

      itab_zycbe035-cpochv = /pws/zycbe117-nrseq.

    ELSEIF p_tipo = 'PG'.

      itab_zycbe035-cpochv = /pws/zycbe119-nrseq.

    ELSEIF p_tipo = 'FI'.

      itab_zycbe035-cpochv = /pws/zycbe112-nrseq.

    ENDIF.

    itab_zycbe035-ebeln   = itab_zycmt020-ebeln.

    itab_zycbe035-ebelp   = itab_zycmt020-ebelp.

    IF     p_tipo = 'PA'.

      v_saldo_estorno = /pws/zycbe117-slpgant + itab_zycbt131-vlmefin.

      IF v_saldo_estorno = /pws/zycbe117-vlme.

        itab_zycbe035-wrbtr1 = itab_zycmt020-vlpago.

      ENDIF.

    ELSEIF p_tipo = 'PG'.

      v_saldo_estorno = /pws/zycbe119-slpgfat + itab_zycbt131-vlmefin.

      IF v_saldo_estorno = /pws/zycbe119-vlme.

        itab_zycbe035-wrbtr1 = itab_zycmt020-vlpago.

      ENDIF.

    ELSEIF p_tipo = 'FI'.

      v_saldo_estorno = /pws/zycbe112-slassoc + itab_zycbt131-vlmefin.

      IF v_saldo_estorno = /pws/zycbe112-vlme.

        itab_zycbe035-wrbtr1 = itab_zycmt020-vlpago.

      ENDIF.

    ENDIF.

    IF itab_zycbe035-wrbtr1 IS INITIAL.

      itab_zycbe035-wrbtr1 =  itab_zycbt131-vlmefin *

                              ( itab_zycmt020-pgto / 100 ).

      itab_zycbe035-wrbtr = itab_zycmt020-saldo =

                            itab_zycmt020-saldo + itab_zycbe035-wrbtr1.

      itab_zycmt020-vlassoc = itab_zycbe035-wrbtr1.

      v_soma_rateio = v_soma_rateio + itab_zycbe035-wrbtr1.

    ELSE.

      itab_zycbe035-wrbtr = itab_zycmt020-saldo = itab_zycmt020-vlassoc

                          = itab_zycbe035-wrbtr1.

      v_soma_rateio = itab_zycbt131-vlmefin.

    ENDIF.

    CLEAR itab_zycbe035-wrbtr1.

    APPEND itab_zycbe035.

    MODIFY itab_zycmt020.

  ENDLOOP.

  IF     v_soma_rateio GT itab_zycbt131-vlmefin.

    v_dif_rateio = v_soma_rateio - itab_zycbt131-vlmefin.

    itab_zycbe035-wrbtr = 0 - 1.

    WHILE itab_zycbe035-wrbtr < 0.

      IF sy-index > 1.

        v_tabix = v_tabix - 1.

        IF v_tabix = 0.

          EXIT.

        ENDIF.

      ENDIF.

      READ TABLE itab_zycbe035 INDEX v_tabix.

      IF sy-subrc = 0.

        itab_zycbe035-wrbtr  = itab_zycbe035-wrbtr  - v_dif_rateio.

        IF itab_zycbe035-wrbtr >= 0.

          MODIFY itab_zycbe035 INDEX v_tabix.

          READ TABLE itab_zycmt020 INDEX v_tabix.

          IF sy-subrc = 0.

            itab_zycmt020-saldo   = itab_zycmt020-saldo - v_dif_rateio.

            MODIFY itab_zycmt020 INDEX v_tabix.

          ENDIF.

        ENDIF.

      ENDIF.

    ENDWHILE.

  ELSEIF v_soma_rateio LT itab_zycbt131-vlmefin.

    v_dif_rateio =  itab_zycbt131-vlmefin - v_soma_rateio.

    itab_zycbe035-wrbtr  = itab_zycbe035-wrbtr  + v_dif_rateio.

    MODIFY itab_zycbe035 INDEX v_tabix.

    itab_zycmt020-saldo = itab_zycmt020-saldo + v_dif_rateio.

    MODIFY itab_zycmt020 INDEX v_tabix.

  ENDIF.

ENDFORM.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/LZYCMGF2TOP

 

...

        tcurx,

        vbkpf,

        bsak,

        bkpf,

        /pws/zycbt039.

* >> Início da inclusão:

DATA: BEGIN OF itab_zycmt020 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycmt020.

DATA: vlassoc LIKE /pws/zycmt020-pgto.

DATA: END OF itab_zycmt020.

data: itab_zycmt020_aux like itab_zycmt020 occurs 0 with header line.

* << Fim da inclusão

DATA: BEGIN OF itab_erro OCCURS 0,

        belnr  LIKE /pws/zycbt005-belnr,

        msg    LIKE /pws/zycbt032-msg,

      END OF itab_erro.

DATA  v_ok_code LIKE sy-ucomm.

...

 

...

  v_vlres      LIKE /pws/zycbt131-vlme,

  v_vlass      LIKE /pws/zycbt131-vlme,

  v_belnr_f43  LIKE bkpf-belnr,

  v_variacao   LIKE /pws/zycbt112-vlme,

  v_sy_tcode   LIKE sy-tcode,

* >> Início da inclusão:

  v_soma_rateio     type /pws/zycbe131-vlmefin,

  v_soma_dif        type /pws/zycbe131-vlmefin,

  v_saldo_ant       type /pws/zycbe131-vlmefin,

  v_dif_rateio      type /pws/zycbe131-vlmefin,

  v_saldo_estorno   type /pws/zycmt020-saldo,

  v_reais_fi_rateio type /pws/zycbt117-vlme,

  v_tabix           type sy-tabix,

* << Fim da inclusão

  v_syrepid    LIKE sy-repid,

  e_subrc      LIKE sy-subrc,

  v_input        LIKE screen-input,

  v_output       LIKE screen-output,

  v_required     LIKE screen-required,

...

 

 

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

Modificações efetuadas em REPS /PWS/LZYCMGF2X01

 

...

     itab_zycbt034  LIKE /pws/zycbt034 OCCURS 10 WITH HEADER LINE,

     itab_zycbt032  LIKE /pws/zycbt032 OCCURS 10 WITH HEADER LINE,

     itab_zycbe033  LIKE /pws/zycbe033 OCCURS 10 WITH HEADER LINE,

     itab_zycbt013  LIKE /pws/zycbt013 OCCURS 10 WITH HEADER LINE,

     itab_zycbt012  LIKE /pws/zycbt012 OCCURS 10 WITH HEADER LINE,

* >> Início da exclusão:

     itab_zycbt036  LIKE /pws/zycbt036 OCCURS 10 WITH HEADER LINE.

* << Fim da exclusão

* >> Início da inclusão:

     itab_zycbt036  LIKE /pws/zycbt036 OCCURS 10 WITH HEADER LINE,

     itab_zycbe035  type /pws/zycbe035 occurs 10 with header line.

* << Fim da inclusão

DATA:  v_num LIKE itab_zycbt036-belnr.

DATA : wa_zycbe112 LIKE /pws/zycbe112,

       wa_zycbt112 LIKE /pws/zycbt112,

       wa_zycbe117 LIKE /pws/zycbe117,

       wa_zycbe119 LIKE /pws/zycbe119,

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB104I01

 

...

                                   /pws/zycbe117-vlme.

          v_saldo = v_saldo + itab_zycmt020-vlpago.

        ELSE.

          itab_zycmt020-vlpago = /pws/zycbe117-vlme - v_saldo.

        ENDIF.

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

        itab_zycmt020-saldo = itab_zycmt020-vlpago.

* << Fim da inclusão

        MODIFY itab_zycmt020.

      ENDLOOP.

    ENDIF.

    CLEAR v_saldo.

  ENDLOOP.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB106I01

 

...

                                   /pws/zycbe119-vlme.

          v_saldo = v_saldo + itab_zycmt020-vlpago.

        ELSE.

          itab_zycmt020-vlpago = /pws/zycbe119-vlme - v_saldo.

        ENDIF.

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

        itab_zycmt020-saldo = itab_zycmt020-vlpago.

* << Fim da inclusão

        MODIFY itab_zycmt020.

      ENDLOOP.

    ENDIF.

    CLEAR v_saldo.

  ENDLOOP.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB113I01

 

...

                                itab_zycbt131-vlme.

        itab_zycbt131-slfat = itab_zycbt131-slfat +

                                itab_zycbt131-vlme.

        CLEAR: itab_zycbt131-vlme, itab_zycbt131-vlmefin.

        MODIFY itab_zycbt131 INDEX sy-tabix.

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

        /pws/zycbe112-slassoc = wa_zycbe112-slassoc.

        exit.

* << Fim da inclusão

      ENDIF.

    ENDLOOP.

  ENDIF.

ENDMODULE.

MODULE saldo_fatura INPUT.

...

 

...

                                itab_zycbt131-vlme.

        itab_zycbt131-slfat = itab_zycbt131-slfat +

                                itab_zycbt131-vlme.

        CLEAR: itab_zycbt131-vlme, itab_zycbt131-vlmefin.

        MODIFY itab_zycbt131 INDEX sy-tabix.

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

        /pws/zycbe119-slpgfat = wa_zycbe119-slpgfat.

        exit.

* << Fim da inclusão

      ENDIF.

    ENDLOOP.

  ENDIF.

ENDMODULE.

MODULE saldo_antecipado INPUT.

...

 

...

                                itab_zycbt131-vlme.

        itab_zycbt131-slfat = itab_zycbt131-slfat +

                                itab_zycbt131-vlme.

        CLEAR: itab_zycbt131-vlme, itab_zycbt131-vlmefin.

        MODIFY itab_zycbt131 INDEX sy-tabix.

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

        /pws/zycbe117-slpgant = wa_zycbe117-slpgant.

        exit.

* << Fim da inclusão

      ENDIF.

    ENDLOOP.

  ENDIF.

ENDMODULE.

MODULE verifica_paridade INPUT.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCM101I01

 

...

                                   /pws/zycbe112-vlme.

          v_saldo = v_saldo + itab_zycmt020-vlpago.

        ELSE.

          itab_zycmt020-vlpago = /pws/zycbe112-vlme - v_saldo.

        ENDIF.

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

        IF /pws/zycbe112-fassoc is initial.

          itab_zycmt020-saldo = itab_zycmt020-vlpago.

        ENDIF.

* << Fim da inclusão

        MODIFY itab_zycmt020.

      ENDLOOP.

    ENDIF.

    CLEAR v_saldo.

  ENDLOOP.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCM101O01

 

...

         screen-name = 'BTN3'.

        screen-input = 0.

        MODIFY SCREEN.

      ENDIF.

    ENDLOOP.

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

  ELSEIF NOT /pws/zycbe112-fassoc IS INITIAL.

    LOOP AT tc_pgto-cols INTO wa_cols.

      IF wa_cols-screen-name = '/PWS/ZYCME020-EBELN'.

        wa_cols-screen-input = '0'.

      ENDIF.

      MODIFY tc_pgto-cols FROM wa_cols.

    ENDLOOP.

* << Fim da inclusão

  ENDIF.

ENDMODULE.

MODULE exibe_zycmt020 OUTPUT.

  MOVE: itab_zycmt020      TO /pws/zycme020,

        itab_zycmt020-mark TO mark.

...

 

 

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

Modificações efetuadas em REPS /PWS/ZYCMR906

 

* >> Início da inclusão: Criar novo programa

Classe de Desenvolvimento: /PWS/ZYCM

 

*-----------------------------------------------------------------------

* PROCWORK Software

* Produto: ASPEN CE

* Módulo: FI

* Descrição: CM - Atualização Saldo Rateio da Associação de Faturas

* Help Desk: 11-5504-0270

*-----------------------------------------------------------------------

* ESTE PROGRAMA NÃO DEVE SER ALTERADO SEM PRÉVIA CONSULTA

*-----------------------------------------------------------------------

* Nome                Data         Descrição

* Renato C. Mendes    11.08.2006   Codificação Inicial

*-----------------------------------------------------------------------

REPORT  /pws/zycmr906 message-id /pws/zycmm.

 

* Tabela rateio por item de documento de compra

DATA: BEGIN OF itab_zycmt020 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycmt020.

DATA: END OF itab_zycmt020.

 

* Tabela de associação de faturas

DATA: BEGIN OF itab_zycbt131 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycbt131.

DATA: END OF itab_zycbt131.

 

* Tabela de Pagamento de Fatura

DATA: BEGIN OF itab_zycbt119 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycbt119.

DATA: END OF itab_zycbt119.

 

* Tabela de Pagamento Antecipado

DATA: BEGIN OF itab_zycbt117 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycbt117.

DATA: END OF itab_zycbt117.

 

* Tabela de Financiamento

DATA: BEGIN OF itab_zycbt112 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycbt112.

DATA: END OF itab_zycbt112.

 

DATA: v_answer TYPE c.

 

START-OF-SELECTION.

  CALL FUNCTION 'POPUP_TO_CONFIRM_STEP'

       EXPORTING

            defaultoption  = 'Y'

            textline1      = text-001

            textline2      = text-002

            titel          = text-003

            start_column   = 25

            start_row      = 6

            cancel_display = ' '

       IMPORTING

            answer         = v_answer.

  IF v_answer EQ 'J'.

    PERFORM carrega_dados.

    PERFORM rateia_saldo_item.

  ENDIF.

 

END-OF-SELECTION.

*&---------------------------------------------------------------------*

*&      Form  carrega_dados

*&---------------------------------------------------------------------*

* Objetivo: Carrega dados das associações de fatura

* ----------------------------------------------------------------------

* Parâmetros:   ( --> Entrada ) ( <-- Saída ) ( <-> Tabelas )

* ----------------------------------------------------------------------

* --> <nenhum>

* <-- <nenhum>

* <-> <nenhum>

* ----------------------------------------------------------------------

* Chamado     Data            Descrição

* ----------------------------------------------------------------------

* 324750      11.08.2006      Codificação Inicial

* ----------------------------------------------------------------------

FORM carrega_dados.

 

  SELECT * FROM /pws/zycmt020 INTO TABLE itab_zycmt020.

 

  IF NOT itab_zycmt020[] IS INITIAL.

 

    SELECT * FROM /pws/zycbt131 INTO TABLE itab_zycbt131

             FOR ALL ENTRIES IN itab_zycmt020

             WHERE nrseq = itab_zycmt020-nrseq.

 

    SELECT * FROM /pws/zycbt119 INTO TABLE itab_zycbt119

             FOR ALL ENTRIES IN itab_zycmt020

             WHERE nrseq = itab_zycmt020-nrseq.

 

    SELECT * FROM /pws/zycbt117 INTO TABLE itab_zycbt117

             FOR ALL ENTRIES IN itab_zycmt020

             WHERE nrseq = itab_zycmt020-nrseq.

 

    SELECT * FROM /pws/zycbt112 INTO TABLE itab_zycbt112

             FOR ALL ENTRIES IN itab_zycmt020

             WHERE nrseq = itab_zycmt020-nrseq.

 

  ENDIF.

 

ENDFORM.                    " carrega_dados

*&---------------------------------------------------------------------*

*&      Form  rateia_saldo_item

*&---------------------------------------------------------------------*

* Objetivo: Ratear o saldo a associar dos processos que já foram

*           associados parcialmente, atualizando a tabela /PWS/ZYCMT020

*           que contém os itens do pedido de compra

* ----------------------------------------------------------------------

* Parâmetros:   ( --> Entrada ) ( <-- Saída ) ( <-> Tabelas )

* ----------------------------------------------------------------------

* --> <nenhum>

* <-- <nenhum>

* <-> <nenhum>

* ----------------------------------------------------------------------

* Chamado     Data            Descrição

* ----------------------------------------------------------------------

* 324750      11.08.2006      Codificação Inicial

* ----------------------------------------------------------------------

FORM rateia_saldo_item.

 

  DATA: v_soma_saldo TYPE /pws/zycmt020-saldo,

        v_tabix      TYPE sy-tabix,

        v_registro   TYPE sy-tabix.

 

  SORT itab_zycmt020 BY nrseq codmod.

 

* Pagamento Antecipado--------------------------------------------------

  LOOP AT itab_zycbt117.

*   Considera apenas pagamento antecipado associado parcialmente

    IF NOT itab_zycbt117-slpgant IS INITIAL AND

           itab_zycbt117-slpgant LT itab_zycbt117-vlme.

      CLEAR v_soma_saldo.

*     Lê itens do pedido de compra para ratear saldos zerados

      LOOP AT itab_zycmt020 WHERE nrseq  EQ itab_zycbt117-nrseq

                              AND codmod EQ 'PA'

                              AND saldo  IS initial.

        v_tabix = sy-tabix.

*       Rateia por item cada associação feita para o processo

        CLEAR v_registro.

        LOOP AT itab_zycbt131 WHERE mdcorresp EQ 'IA'

                                AND nrseq     EQ itab_zycbt117-nrseq.

          v_registro = v_registro + 1.

          IF v_registro EQ 1.

            itab_zycmt020-saldo = itab_zycmt020-vlpago -

               ( itab_zycbt131-vlmefin * ( itab_zycmt020-pgto / 100 ) ).

          ELSE.

            itab_zycmt020-saldo = itab_zycmt020-saldo -

               ( itab_zycbt131-vlmefin * ( itab_zycmt020-pgto / 100 ) ).

          ENDIF.

        ENDLOOP.

        v_soma_saldo = v_soma_saldo + itab_zycmt020-saldo.

        MODIFY itab_zycmt020 INDEX v_tabix.

      ENDLOOP.

*     Ajusta saldo se houve diferença de centavos no rateio

      IF v_soma_saldo GT itab_zycbt117-slpgant.

        itab_zycmt020-saldo = itab_zycmt020-saldo -

                           ( v_soma_saldo - itab_zycbt117-slpgant ).

        MODIFY itab_zycmt020 INDEX v_tabix.

      ELSEIF v_soma_saldo LT itab_zycbt117-slpgant AND NOT

             v_soma_saldo IS INITIAL.

        itab_zycmt020-saldo = itab_zycmt020-saldo +

                           ( itab_zycbt117-slpgant - v_soma_saldo ).

        MODIFY itab_zycmt020 INDEX v_tabix.

      ENDIF.

*   Se o saldo esta total, atualiza totalizando saldo da /PWS/ZYCMT020

    ELSEIF itab_zycbt117-slpgant EQ itab_zycbt117-vlme.

      LOOP AT itab_zycmt020 WHERE nrseq  EQ itab_zycbt117-nrseq

                              AND codmod EQ 'PA'

                              AND saldo  IS initial.

        v_tabix = sy-tabix.

        itab_zycmt020-saldo = itab_zycmt020-vlpago.

        MODIFY itab_zycmt020 INDEX v_tabix.

      ENDLOOP.

    ENDIF.

  ENDLOOP.

 

* Pagamento de Fatura---------------------------------------------------

  LOOP AT itab_zycbt119.

*   Considera apenas pagamento de fatura associado parcialmente

    IF NOT itab_zycbt119-slpgfat IS INITIAL AND

           itab_zycbt119-slpgfat LT itab_zycbt119-vlme.

      CLEAR v_soma_saldo.

*     Lê itens do pedido de compra para ratear saldos zerados

      LOOP AT itab_zycmt020 WHERE nrseq  EQ itab_zycbt119-nrseq

                              AND codmod EQ 'PG'

                              AND saldo  IS initial.

        v_tabix = sy-tabix.

*       Rateia por item cada associação feita para o processo

        CLEAR v_registro.

        LOOP AT itab_zycbt131 WHERE mdcorresp EQ 'IP'

                                AND nrseq     EQ itab_zycbt119-nrseq.

          v_registro = v_registro + 1.

          IF v_registro EQ 1.

            itab_zycmt020-saldo = itab_zycmt020-vlpago -

             ( itab_zycbt131-vlmefin * ( itab_zycmt020-pgto / 100 ) ).

          ELSE.

            itab_zycmt020-saldo = itab_zycmt020-saldo -

             ( itab_zycbt131-vlmefin * ( itab_zycmt020-pgto / 100 ) ).

          ENDIF.

        ENDLOOP.

        v_soma_saldo = v_soma_saldo + itab_zycmt020-saldo.

        MODIFY itab_zycmt020 INDEX v_tabix.

      ENDLOOP.

*     Ajusta saldo se houve diferença de centavos no rateio

      IF v_soma_saldo GT itab_zycbt119-slpgfat.

        itab_zycmt020-saldo = itab_zycmt020-saldo -

                           ( v_soma_saldo - itab_zycbt119-slpgfat ).

        MODIFY itab_zycmt020 INDEX v_tabix.

      ELSEIF v_soma_saldo LT itab_zycbt119-slpgfat AND NOT

             v_soma_saldo IS INITIAL.

        itab_zycmt020-saldo = itab_zycmt020-saldo +

                           ( itab_zycbt119-slpgfat - v_soma_saldo ).

        MODIFY itab_zycmt020 INDEX v_tabix.

      ENDIF.

*   Se o saldo esta total, atualiza totalizando saldo da /PWS/ZYCMT020

    ELSEIF itab_zycbt119-slpgfat EQ itab_zycbt119-vlme.

      LOOP AT itab_zycmt020 WHERE nrseq  EQ itab_zycbt119-nrseq

                              AND codmod EQ 'PG'

                              AND saldo  IS initial.

        v_tabix = sy-tabix.

        itab_zycmt020-saldo = itab_zycmt020-vlpago.

        MODIFY itab_zycmt020 INDEX v_tabix.

      ENDLOOP.

    ENDIF.

  ENDLOOP.

 

* Financiamento---------------------------------------------------------

  LOOP AT itab_zycbt112.

*   Considera apenas financiamento associado parcialmente

    IF NOT itab_zycbt112-slassoc IS INITIAL AND

           itab_zycbt112-slassoc LT itab_zycbt112-vlme.

      CLEAR v_soma_saldo.

*     Lê itens do pedido de compra para ratear saldos zerados

      LOOP AT itab_zycmt020 WHERE nrseq  EQ itab_zycbt112-nrseq

                              AND codmod EQ 'FI'

                              AND saldo  IS initial.

        v_tabix = sy-tabix.

*       Rateia por item cada associação feita para o processo

        CLEAR v_registro.

        LOOP AT itab_zycbt131 WHERE mdcorresp EQ 'IF'

                                AND nrseq     EQ itab_zycbt112-nrseq.

          v_registro = v_registro + 1.

          IF v_registro EQ 1.

            itab_zycmt020-saldo = itab_zycmt020-vlpago -

             ( itab_zycbt131-vlmefin * ( itab_zycmt020-pgto / 100 ) ).

          ELSE.

            itab_zycmt020-saldo = itab_zycmt020-saldo -

             ( itab_zycbt131-vlmefin * ( itab_zycmt020-pgto / 100 ) ).

          ENDIF.

        ENDLOOP.

        v_soma_saldo = v_soma_saldo + itab_zycmt020-saldo.

        MODIFY itab_zycmt020 INDEX v_tabix.

      ENDLOOP.

*     Ajusta saldo se houve diferença de centavos no rateio

      IF v_soma_saldo GT itab_zycbt112-slassoc.

        itab_zycmt020-saldo = itab_zycmt020-saldo -

                           ( v_soma_saldo - itab_zycbt112-slassoc ).

        MODIFY itab_zycmt020 INDEX v_tabix.

      ELSEIF v_soma_saldo LT itab_zycbt112-slassoc AND NOT

             v_soma_saldo IS INITIAL.

        itab_zycmt020-saldo = itab_zycmt020-saldo +

                           ( itab_zycbt112-slassoc - v_soma_saldo ).

        MODIFY itab_zycmt020 INDEX v_tabix.

      ENDIF.

*   Se o saldo esta total, atualiza totalizando saldo da /PWS/ZYCMT020

    ELSEIF itab_zycbt112-slassoc EQ itab_zycbt112-vlme.

      LOOP AT itab_zycmt020 WHERE nrseq  EQ itab_zycbt112-nrseq

                              AND codmod EQ 'FI'

                              AND saldo  IS initial.

        v_tabix = sy-tabix.

        itab_zycmt020-saldo = itab_zycmt020-vlpago.

        MODIFY itab_zycmt020 INDEX v_tabix.

      ENDLOOP.

    ENDIF.

  ENDLOOP.

 

  MODIFY /pws/zycmt020 FROM TABLE itab_zycmt020[].

  COMMIT WORK.

 

  message s061 with text-004.

 

ENDFORM.                    " rateia_saldo_item

* >> Fim da inclusão: Criar novo programa

 

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

Modificações efetuadas em REPT /PWS/ZYCMR906

 

MODIFICAR SÍMBOLOS DE TEXTO :

 

TEXTOS NOVOS:

SÍM.:   TEXTO:                                                  CD. CM.

 

001 Confirma atualização do saldo da tabela                  39  39

002 /PWS/ZYCMT020, referente a associação de faturas?        49  49

003 Atualização tabela                                       18  18

004 Atualização do saldo finalizada.                         32  32

 

 

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

Modificações efetuadas em TABD /PWS/ZYCME020

 

MODIFICAR ESTRUTURA: /PWS/ZYCME020

DESCRIÇÃO BREVE: CM - Item do Pedido

 

CARACTERÍSTICAS

 

CAMPOS NOVOS

 

CAMPOS:         TP. CAMPO   CH: INI: TAB.VERIF.:    TAB.REF.:     CPO.RE

SALDO           BWERT                               /PWS/ZYCMT020 WAERS

 

 

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

Modificações efetuadas em TABD /PWS/ZYCMT020

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCMT020

DESCRIÇÃO BREVE: CM - Item do Pedido

 

CARACTERÍSTICAS

 

CAMPOS NOVOS

 

CAMPOS:         TP. CAMPO   CH: INI: TAB.VERIF.:    TAB.REF.:     CPO.RE

 

SALDO           BWERT                               /PWS/ZYCMT020 WAERS

 

 

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

Modificações efetuadas em TRAN /PWS/ZYCMR906

 

CÓDIGO DE TRANSAÇÃO: /PWS/ZYCMR906

 

ATRIBUTOS DA TRANSAÇÃO

TEXTO BREVE: CM - Atualização Saldo Rateio da Ass

Classe de Desenvolvimento: /PWS/ZYCM

 

OBJETO DE EXECUÇÃO

(_) - PROGRAMA E TELA (TRANSAÇÃO DE DIÁLOGO)

(X) - PROGRAMA E TELA DE SELEÇÃO (TRANSAÇÃO DE REPORT)

 

TEXTO DA TRANSAÇÃO: CM - Atualização Saldo Rateio da Ass

PROGRAMA: /PWS/ZYCMR906

TELA(SELEÇÃO): 1000

INÍCIO COM VARIANTE: _____________________________________________

OBJETO DE AUTORIZAÇÃO: ___________________________________________

(_) - ATUALIZAÇÃO DA VARIANTE DA TRANSAÇÃO STANDARD PERMITIDA

 

CLASSIFICAÇÃO

 

CLASSIFICAÇÃO DE TRANSAÇÃO:

(X) - TRANSAÇÃO PROFESSIONAL USER

(_) - TRANSAÇÃO EASY WEB      SERVIÇO: ___________________________

 

CAPACIDADE GUI:

(_) SAP GUI PARA HTML

(_) SAP GUI PARA JAVA

(_) SAP GUI PARA WINDOWS