CE PLUS - Nota 010191

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Captação

Data/Hora da Publicação: 25/05/2010 00:00:00

Data/Hora Última Alteração: 22/02/2011 13:18:21

Descrição da Nota: CAPTAÇÃO, PREENCHIMENTO SOCIEDADE PARCEIRA NA CONTABILIZAÇÃO

Sintoma

Preenchimento do Campo de Sociedade Parceira na Contabilização da Captação (/pws/zycbt001 /

pws/zycbt004).

 

 

 

Solução

Preenchimento do Campo de Sociedade Parceira na Contabilização da Captação (/pws/zycbt001 /

pws/zycbt004).

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

LIQUIDAÇÃO DE ACC COM PRÉ - CAPTAÇÕES

MAPEAMENTO SOCIEDADE PARCEIRA NAS CONTABILIZAÇÕES

Informações Complementares

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

Nota Número 10191 Data: 25/05/2010 Hora: 11:18:33

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

 

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

Nota Número              : 10191

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00003

Agrupamento              : 00023

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

Referência às notas relacionadas:

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

 

08935  - 00001 - 7.0    - 00010  - LIQUIDAÇÃO DE ACC COM PRÉ - CAPTAÇÕES

10188  - 00002 - 8.0    - 00003  - MAPEAMENTO SOCIEDADE PARCEIRA NAS CONTABILIZAÇÕES

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

CAPTAÇÃO, PREENCHIMENTO SOCIEDADE PARCEIRA NA CONTABILIZAÇÃO

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

Palavras Chave:

CAPTAÇÃO, PREENCHIMENTO SOCIEDADE PARCEIRA, CONTABILIZAÇÃO

 

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

Objetos da nota:

REPS /PWS/MZYCB001F01

REPS /PWS/MZYCB001F02

REPS /PWS/MZYCB001F04

REPS /PWS/MZYCB001I01

REPS /PWS/MZYCB001O01

REPS /PWS/MZYCB001TOP

REPS /PWS/ZYCBR056

TABD /PWS/ZYCBE001

TABD /PWS/ZYCBE004

TABD /PWS/ZYCBT001

TABD /PWS/ZYCBT004

 

 

***********************************************

*                                             *

*  SOLICITAR DOWNLOAD DAS TELAS DA CAPTAÇÃO   *

*                                             *

*  /PWS/SAPMZYCB001             TELA - 0106   *

*  /PWS/SAPMZYCB001             TELA - 0205   *

*                                             *

***********************************************

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

Modificações efetuadas em REPS /PWS/MZYCB001F01

 

...

    itab_zycbt002p-nrseqc = /pws/zycbe001-nrseqc.

    modify itab_zycbt002p.

  endloop.

  loop at itab_zycbt002.

    itab_zycbt002-nrseqc = /pws/zycbe001-nrseqc.

    modify itab_zycbt002.

  endloop.

endform.

form save_zycbt001.

  data: v_ok,

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

        v_dtvincul like /pws/zycbt005-dtvincul.

* << Fim da exclusão

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

        v_dtvincul LIKE /pws/zycbt005-dtvincul,

        v_alt_soc_parc(1) TYPE c.

* << Fim da inclusão

  move /pws/zycbe001 to /pws/zycbt001.

  clear   t_zycbt003_ant.

  refresh t_zycbt003_ant.

  select *

         from /pws/zycbt003

         into table t_zycbt003_ant

         where nrseqc eq /pws/zycbt001-nrseqc.

  select *

         from /pws/zycbt005

         up to 1 rows

...

 

...

  if /pws/zycbe001-fdtlanc = 'O'.

    move /pws/zycbe001-dtcontr to v_data2.

    move wa_zycbt001-dtcontr to v_data3.

  elseif /pws/zycbe001-fdtlanc = 'D'.

    move /pws/zycbe001-dtdesem to v_data2.

    move wa_zycbt001-dtdesem to v_data3.

  elseif /pws/zycbe001-fdtlanc = 'C'.

    move /pws/zycbe001-dtcred to v_data2.

    move wa_zycbt001-dtcred to v_data3.

  endif.

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

  IF wa_zyglt009-flag_soc_parceir = 'X'.

    IF /pws/zycbe001-vbund EQ wa_zycbt001-vbund.

      v_alt_soc_parc = 'N'.

    ELSE.

      v_alt_soc_parc = 'S'.

    ENDIF.

  ELSE.

    v_alt_soc_parc = 'N'.

  ENDIF.

* << Fim da inclusão

  if /pws/zycbe001-tpcontr    eq wa_zycbt001-tpcontr  and

     /pws/zycbe001-bukrs      eq wa_zycbt001-bukrs    and

     /pws/zycbe001-werks      eq wa_zycbt001-werks    and

     /pws/zycbe001-j_1bbranch eq wa_zycbt001-j_1bbranch and

     /pws/zycbe001-gsber      eq wa_zycbt001-gsber    and

     /pws/zycbe001-bcocred    eq wa_zycbt001-bcocred  and

     /pws/zycbe001-conta_contab    eq wa_zycbt001-conta_contab  and

      ( /pws/zycbe001-ftxt is initial or

        not /pws/zycbe001-ftxt is initial and

        /pws/zycbe001-txtinf = wa_zycbt001-txtinf ) and

...

 

...

     /pws/zycbe074-vrgar_or   eq wa_zycbt074-vrgar_or and

     /pws/zycbe074-werks_or   eq wa_zycbt074-werks_or and

     /pws/zycbe074-vtweg_or   eq wa_zycbt074-vtweg_or and

     /pws/zycbe001-status     eq 'C' and

     ( ( /pws/zycbe001-kunnr    eq wa_zycbt001-kunnr and

       wa_zycbt221[]            eq itab_zycbt221_ant[] and

       /pws/zycbe001-tpcontr(1) eq 'D' )             or

       /pws/zycbe001-tpcontr(1) ne 'D' )             and

      ( ( /pws/zycbe001-tpcontr(1) eq 'E'              and

        /pws/zycbe001-desc_receb eq wa_zycbt001-desc_receb ) or

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

        /pws/zycbe001-tpcontr(1) ne 'E' ).

* << Fim da exclusão

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

        /pws/zycbe001-tpcontr(1) NE 'E' )             AND

     v_alt_soc_parc = 'N'.

* << Fim da inclusão

    modify /pws/zycbt001.

    if /pws/zycbe001-dtliquid ne wa_zycbt001-dtliquid.

      concatenate '001' /pws/zycbe001-tpcontr into v_codeven.

      clear itab_zyglt321.

      refresh itab_zyglt321.

      select *

        into table itab_zyglt321

        from /pws/zyglt321

        where ktosl   = 'CPT'

          and codeven = v_codeven.

...

 

...

                into wa_zycbt005_log

                where nrseqc = /pws/zycbe001-nrseqc.

          perform monta_log_cfm using    wa_zycbt005_log

                                        '/PWS/ZYCBT005'

                                changing wa_log.

          perform grava_log using '/PWS/ZYCBT005'

                                  wa_log

                                  'A'.

        endselect.

      endif.

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

    endif.

    if itab_comissao[] eq itab_comissao_ant[] and

       itab_zycbt003[] eq t_zycbt003_ant[].

      message i017.

* << Fim da exclusão

    endif.

    clear v_ok.

    if /pws/zycbe001-nrcontr ne wa_zycbt001-nrcontr.

      perform refresh_zycbt004.

      update /pws/zycbt005 set nrcontr = /pws/zycbe001-nrcontr

                    where nrseqc  = /pws/zycbe001-nrseqc.

      if wa_zycbt007-cfm = 'X'.

        select *

                from /pws/zycbt005

                into wa_zycbt005_log

...

 

...

      loop at itab_zycbt226.

        select single sld_exterior from /pws/zycbt226

         into itab_zycbt226-sld_exterior

        where nrseq = itab_zycbt226-nrseq.

        modify itab_zycbt226.

      endloop.

    endif.

    perform save_zycbt002.

    perform save_zycbt003.

    perform save_zycbt005.

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

    IF wa_zycbt074-fpagto_comis NE 'L'.

      MESSAGE i017.

    ELSE.

      IF itab_comissao[] EQ itab_comissao_ant[] AND

         itab_zycbt003[] EQ t_zycbt003_ant[].

        MESSAGE i017.

      ENDIF.

    ENDIF.

* << Fim da inclusão

    move /pws/zycbe001 to wa_zycbt001.

    move /pws/zycbe074 to wa_zycbt074.

  elseif /pws/zycbe001-status is initial or /pws/zycbe001-status eq 'I'.

    /pws/zycbe001-slpagar = /pws/zycbe001-vlme.

    /pws/zycbe001-status = 'I'.

    /pws/zycbt001-status = 'I'.

    /pws/zycbt001-slpagar = /pws/zycbe001-vlme.

    if /pws/zycbe001-tpcontr(1) eq 'C' or

       /pws/zycbe001-tpcontr(1) eq 'E'.

      select * up to 1 rows

...

 

...

    else.

      clear: /pws/zycbe002, itab_zycbt002.

      refresh itab_zycbt002.

    endif.

  endif.

endform.

form update_itab_zycbt002.

  data:

    v_lines(4) type n,

    v_dtliquid like /pws/zycbt001-dtliquid.

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

  if okcode_old = 'OBJRES1' or okcode = 'OBJRES1'.

    /pws/zycbe002 = itab_zycbt002.

* << Fim da exclusão

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

  READ TABLE itab_zycbt002 INDEX /pws/zycbe002-nrparc.

  IF sy-subrc = 0.

    /pws/zycbe002-matnr_or   =  itab_zycbt002-matnr_or.

    /pws/zycbe002-bukrs_or   =  itab_zycbt002-bukrs_or.

    /pws/zycbe002-fkart_or   =  itab_zycbt002-fkart_or.

    /pws/zycbe002-gsber_or   =  itab_zycbt002-gsber_or.

    /pws/zycbe002-kaufn_or   =  itab_zycbt002-kaufn_or.

    /pws/zycbe002-kdpos_or   =  itab_zycbt002-kdpos_or.

    /pws/zycbe002-kndnr_or   =  itab_zycbt002-kndnr_or.

    /pws/zycbe002-kokrs_or   =  itab_zycbt002-kokrs_or.

    /pws/zycbe002-kstrg_or   =  itab_zycbt002-kstrg_or.

    /pws/zycbe002-pprctr_or  =  itab_zycbt002-pprctr_or.

    /pws/zycbe002-prctr_or   =  itab_zycbt002-prctr_or.

    /pws/zycbe002-pspnr_or   =  itab_zycbt002-pspnr_or.

    /pws/zycbe002-rkaufnr_or =  itab_zycbt002-rkaufnr_or.

    /pws/zycbe002-spart_or   =  itab_zycbt002-spart_or.

    /pws/zycbe002-versi_or   =  itab_zycbt002-versi_or.

    /pws/zycbe002-vkorg_or   =  itab_zycbt002-vkorg_or.

    /pws/zycbe002-vrgar_or   =  itab_zycbt002-vrgar_or.

    /pws/zycbe002-werks_or   =  itab_zycbt002-werks_or.

    /pws/zycbe002-vtweg_or   =  itab_zycbt002-vtweg_or.

* << Fim da inclusão

  endif.

  perform ver_pro using ' '.

  v_dtliquid = /pws/zycbe001-dtliquid.

  if v_ind_pro eq 'X'.

    loop at itab_zycbt003.

      if itab_zycbt003-dtpror gt v_dtliquid.

        v_dtliquid = itab_zycbt003-dtpror.

      endif.

    endloop.

  endif.

...

 

...

  endif.

  if not /pws/zycbe001-posnr_va is initial.

    itab_zycbe033-posn2  = /pws/zycbe001-posnr_va.

  endif.

  if /pws/zycbe001-tpcontr+0(1) = 'D'.

    move wa_zycbt011-agums to itab_zycbe033-umskz.

    itab_zycbe033-newbs = '19'.

  endif.

  itab_zycbe033-kkber = /pws/zycbe001-area_credito.

  itab_zycbe033-werks = /pws/zycbe001-werks.

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

  itab_zycbe033-vbund = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  if /pws/zycbe001-tpcontr+0(1) = 'D' and

     ( v_opnor = 'X' or

     /pws/zycbe001-tp_pagt_antc = 'N' ).

    if /pws/zycbe001-tpcontr+0(1) = 'D' and

       not wa_zycbt089-rateio_cl is initial.

      clear: wa_zycbt221_aux.

      refresh: wa_zycbt221_aux.

      loop at itab_zycbt221.

        read table wa_zycbt221_aux with key

...

 

...

    if /pws/zycbe004-waers eq wa_zycbt007-waersb.

      move 1 to /pws/zycbe004-txcneg.

    else.

      select *

        from tcurr

        into table itab_tcurr

        where kurst eq  v_kurst

          and fcurr eq  /pws/zycbe004-waers

          and tcurr eq  wa_zycbt007-waersb

         and gdatu ge v_gdatu.                            "#EC PORTABLE

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

     if sy-subrc eq 0.                                    "#EC PORTABLE

* << Fim da exclusão

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

      IF sy-subrc EQ 0.                                   "#EC PORTABLE

* << Fim da inclusão

        read table itab_tcurr index 1.

        move itab_tcurr-ukurs to /pws/zycbe004-txcneg.

      else.

        move 1 to /pws/zycbe004-txcneg.

      endif.

    endif.

  else.

    clear /pws/zycbe004-ftaxa.

  endif.

  if /pws/zycbe004-vlme ne wa_zycbt004-vlme and

...

 

...

  v_vlmi = ( ( /pws/zycbe001-txcneg / v_defator ) *

               v_parafator ) * v_vlme.

  itab_zycbe033-dmbtr = v_vlmi.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-d_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-c_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-c_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-c_fipos = /pws/zycbe001-fipos.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_02'

         exporting

              v_modo          = v_modo_bi

         tables

              t_dados         = itab_zycbe033

...

 

...

                                  'VLMI'

                                  text-094.

  itab_zycbe033-dmbtr   = /pws/zycbe001-vlmi.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-d_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-c_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-c_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-c_fipos = /pws/zycbe001-fipos.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

    if /pws/zycbe001-tpcontr(1) = 'P' or

       /pws/zycbe001-tpcontr(1) = 'S'.

      itab_zycbe033-wrbtr  = itab_zycbt002p-vlme.

      v_vlme = itab_zycbt002p-vlme.

      perform calc_paridade using /pws/zycbe001-waers v_vlme

...

 

...

          when 'D'.

            v_date = /pws/zycbe001-dtdesem.

          when 'O'.

            v_date = /pws/zycbe001-dtcontr.

          when others.

            v_date = /pws/zycbe001-dtcred.

        endcase.

      else.

        v_date = /pws/zycbt074-dtcont.

      endif.

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

      IF v_valor = /pws/zycbe001-belnr2 AND

         /pws/zycbe001-belnr2 NE /pws/zycbe001-belnr AND

         NOT /pws/zycbe001-dtvincul IS INITIAL.

        v_date = /pws/zycbe001-dtvincul.

      ENDIF.

* << Fim da inclusão

      call function '/PWS/ZYGL_OBTEM_ANO_CONTABIL'

           exporting

                v_bukrs                = i_bukrs

                v_date                 = v_date

           importing

                v_year                 = i_gjahr

           exceptions

                variante_de_exercicio  = 1

                data_nao_encontrada    = 2

                empresa_nao_encontrada = 3

...

 

...

                                  'VLMI'

                                  text-094.

  itab_zycbe033-dmbtr   = /pws/zycbe001-vlmi.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-d_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-c_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-c_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-c_fipos = /pws/zycbe001-fipos.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  if /pws/zycbe001-tpcontr+0(1) = 'D'.

    if  wa_zycbt011-agums = 'A'.

      move wa_zycbt011-agums to itab_zycbe033-umskz.

    endif.

  endif.

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

...

 

...

    else.

      loop at itab_zycbt032.

        message i015 with itab_zycbt032-msg.

      endloop.

    endif.

  endif.

  sy-subrc = sysubrc.

endform.

form save_zycbt001_pre.

  data: v_ok,

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

        v_estorna(1) value 'N'.

* << Fim da exclusão

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

        v_estorna(1) VALUE 'N',

        v_alt_soc_parc(1) TYPE c.

* << Fim da inclusão

  perform seleciona_zycbt002.

  loop at itab_zycbt002p_ant.

    read table itab_zycbt002p with key

        belnr = itab_zycbt002p_ant-belnr.

    if sy-subrc = 0.

      if itab_zycbt002p_ant-vlme ne itab_zycbt002p-vlme

        or itab_zycbt002p_ant-przcontr ne itab_zycbt002p-przcontr

        or itab_zycbt002p_ant-belnr is initial.

        itab_zycbt002p-v_flag = 'A'.

        v_estorna = 'S'.

...

 

...

  move /pws/zycbe074 to wa_zycbt074.

  if /pws/zycbe001-fdtlanc = 'O'.

    move /pws/zycbe001-dtcontr to v_data2.

    move wa_zycbt001-dtcontr to v_data3.

  elseif /pws/zycbe001-fdtlanc = 'D'.

    move /pws/zycbe001-dtdesem to v_data2.

    move wa_zycbt001-dtdesem to v_data3.

  elseif /pws/zycbe001-fdtlanc = 'C'.

    move /pws/zycbe001-dtcred to v_data2.

    move wa_zycbt001-dtcred to v_data3.

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

  ENDIF.

  IF wa_zyglt009-flag_soc_parceir = 'X'.

    IF /pws/zycbe001-vbund EQ wa_zycbt001-vbund.

      v_alt_soc_parc = 'N'.

    ELSE.

      v_alt_soc_parc = 'S'.

    ENDIF.

  ELSE.

    v_alt_soc_parc = 'N'.

* << Fim da inclusão

  endif.

  if /pws/zycbe001-tpcontr    eq wa_zycbt001-tpcontr  and

     /pws/zycbe001-bukrs      eq wa_zycbt001-bukrs    and

     /pws/zycbe001-werks      eq wa_zycbt001-werks    and

     /pws/zycbe001-j_1bbranch eq wa_zycbt001-j_1bbranch and

     /pws/zycbe001-gsber      eq wa_zycbt001-gsber    and

     /pws/zycbe001-bcocred    eq wa_zycbt001-bcocred  and

     /pws/zycbe001-conta_contab    eq wa_zycbt001-conta_contab  and

     v_data2                  eq v_data3              and

     /pws/zycbe001-dtcontr    eq wa_zycbt001-dtcontr  and

...

 

...

     /pws/zycbe074-prctr_or   eq wa_zycbt074-prctr_or and

     /pws/zycbe074-pspnr_or   eq wa_zycbt074-pspnr_or and

     /pws/zycbe074-rkaufnr_or eq wa_zycbt074-rkaufnr_or and

     /pws/zycbe074-spart_or   eq wa_zycbt074-spart_or and

     /pws/zycbe074-versi_or   eq wa_zycbt074-versi_or and

     /pws/zycbe074-vkorg_or   eq wa_zycbt074-vkorg_or and

     /pws/zycbe074-vrgar_or   eq wa_zycbt074-vrgar_or and

     /pws/zycbe074-werks_or   eq wa_zycbt074-werks_or and

     /pws/zycbe074-vtweg_or   eq wa_zycbt074-vtweg_or and

     /pws/zycbe001-status   eq 'C' and

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

     v_estorna <> 'S'.

* << Fim da exclusão

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

     v_estorna <> 'S'                                 AND

     v_alt_soc_parc = 'N'.

* << Fim da inclusão

    modify /pws/zycbt001.

    if /pws/zycbe001-dtliquid ne wa_zycbt001-dtliquid.

      concatenate '001' /pws/zycbe001-tpcontr into v_codeven.

      clear itab_zyglt321.

      refresh itab_zyglt321.

      select *

        into table itab_zyglt321

        from /pws/zyglt321

        where ktosl   = 'CPT'

          and codeven = v_codeven.

...

 

...

          loop at t_sydes-types into wa_types.

            v_len = wa_types-length.

            exit.

          endloop.

          perform grava_log using '/PWS/ZYCBT005'

                                  wa_log

                                  'A'.

        endselect.

      endif.

    endif.

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

    message i017.

* << Fim da exclusão

    clear v_ok.

    if /pws/zycbe001-nrcontr ne wa_zycbt001-nrcontr.

      perform refresh_zycbt004.

      update /pws/zycbt005 set nrcontr = /pws/zycbe001-nrcontr

                    where nrseqc  = /pws/zycbe001-nrseqc.

      if wa_zycbt007-cfm = 'X'.

        select *

               from /pws/zycbt005

               into wa_zycbt005_log

               where nrseqc = /pws/zycbe001-nrseqc.

...

 

...

                                changing wa_log.

          perform grava_log using '/PWS/ZYCBT006'

                                  wa_log

                                  'A'.

        endselect.

      endif.

    endif.

    perform save_zycbt002.

    perform save_zycbt003.

    perform save_zycbt005.

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

    IF /pws/zycbe074-fpagto_comis NE 'L'.

      MESSAGE i017.

    ELSE.

      IF itab_comissao[] EQ itab_comissao_ant[] AND

         itab_zycbt003[] EQ t_zycbt003_ant[].

        MESSAGE i017.

      ENDIF.

    ENDIF.

* << Fim da inclusão

    move /pws/zycbe001 to wa_zycbt001.

    move /pws/zycbe074 to wa_zycbt074.

  elseif ( /pws/zycbe001-tpcontr ne wa_zycbt001-tpcontr or

     /pws/zycbe001-bukrs      ne wa_zycbt001-bukrs    or

     /pws/zycbe001-werks      ne wa_zycbt001-werks    or

     /pws/zycbe001-j_1bbranch ne wa_zycbt001-j_1bbranch or

     /pws/zycbe001-gsber      ne wa_zycbt001-gsber    or

     /pws/zycbe001-bcocred    ne wa_zycbt001-bcocred  or

     /pws/zycbe001-conta_contab    ne wa_zycbt001-conta_contab  or

     /pws/zycbe001-dtcontr    ne wa_zycbt001-dtcontr  or

...

 

...

                                  'VLMI'

                                  text-094.

  itab_zycbe033-dmbtr   = wa_zycbt001-vlmi.

  itab_zycbe033-d_gsber = wa_zycbt001-gsber.

  itab_zycbe033-d_kostl = wa_zycbt001-kostl.

  itab_zycbe033-d_prctr = wa_zycbt001-prctr.

  itab_zycbe033-c_gsber = wa_zycbt001-gsber.

  itab_zycbe033-c_kostl = wa_zycbt001-kostl.

  itab_zycbe033-c_prctr = wa_zycbt001-prctr.

  itab_zycbe033-c_fipos = wa_zycbt001-fipos.

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

  itab_zycbe033-vbund   = wa_zycbt001-vbund.

* << Fim da inclusão

  read table itab_zyglt100 with key zexit = 'CPT004' binary search.

  if sy-subrc eq 0.

    if not itab_zyglt100-zexit_ativa is initial.

      perform (itab_zyglt100-formulario)

              in program (itab_zyglt100-programa)

              using      okcode

              changing   e_subrc.

      if e_subrc ne 0.

        exit.

      endif.

...

 

...

                                  'VLMI'

                                  text-094.

  itab_zycbe033-dmbtr   = wa_zycbt001-vlmi.

  itab_zycbe033-d_gsber = wa_zycbt001-gsber.

  itab_zycbe033-d_kostl = wa_zycbt001-kostl.

  itab_zycbe033-d_prctr = wa_zycbt001-prctr.

  itab_zycbe033-c_gsber = wa_zycbt001-gsber.

  itab_zycbe033-c_kostl = wa_zycbt001-kostl.

  itab_zycbe033-c_prctr = wa_zycbt001-prctr.

  itab_zycbe033-c_fipos = wa_zycbt001-fipos.

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

  itab_zycbe033-vbund   = wa_zycbt001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  clear sy-subrc.

  sysubrc = 0.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_30_A'

         exporting

              v_modo          = v_modo_bi

...

 

...

    else.

      itab_zycbe033-belnr = /pws/zycbe001-belnr.

    endif.

  else.

    if not itab_zycbt002p-belnr2 is initial.

      itab_zycbe033-belnr = itab_zycbt002p-belnr2.

    else.

      itab_zycbe033-belnr = itab_zycbt002p-belnr.

    endif.

  endif.

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

  itab_zycbe033-vbund     = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i274 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_30_A'

         exporting

              v_modo          = v_modo_bi

         tables

              t_dados         = itab_zycbe033

...

 

...

                                  text-020.

  itab_zycbe033-blart  = wa_zycbt011-blart.

  itab_zycbe033-bktxt   = wa_zycbt007-bktxt.

  itab_zycbe033-agums   = wa_zycbt011-agums.

  itab_zycbe033-agkoa   = wa_zycbt011-koart.

  itab_zycbe033-zfbdt   = itab_zycbe033-budat.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-c_valut = itab_zycbe033-budat.

  itab_zycbe033-d_valut = itab_zycbe033-budat.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  clear: itab_zycbt036.

  refresh: itab_zycbt036.

  itab_zycbt036-tcode  = 'F-30'.

  itab_zycbt036-tabela = '/PWS/ZYCBT091'.

  itab_zycbt036-cpochv = v_cpochv.

  if /pws/zycbe001-tpcontr(1) eq 'A'.

    itab_zycbt036-belnr  = /pws/zycbe001-belnr2.

  else.

    itab_zycbt036-belnr  = itab_zycbt002p-belnr2.

...

 

...

    else.

      itab_zycbe033-belnr = /pws/zycbe001-belnr.

    endif.

  else.

    if not itab_zycbt002p-belnr2 is initial.

      itab_zycbe033-belnr = itab_zycbt002p-belnr2.

    else.

      itab_zycbe033-belnr = itab_zycbt002p-belnr.

    endif.

  endif.

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

  itab_zycbe033-vbund     = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i274 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_02'

         exporting

              v_modo          = v_modo_bi

         tables

              t_dados         = itab_zycbe033

...

 

...

          v_descprzcontr = text-491.

        endif.

       endif.

      endif.

    endif.

  endif.

endform.

form save_zycbt001_tr.

  data: v_boleto(1)    value 'N',

        v_alt_princ(1) value 'N',

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

        v_ok.

* << Fim da exclusão

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

        v_ok,

        v_alt_soc_parc(1) TYPE c.

* << Fim da inclusão

  select single *

    from /pws/zycbt031

    where nrcorresp eq /pws/zycbe001-nrseqc and

          mdcorresp  eq 'ED'            and

          ( tpdesp eq 'P' or tpdesp eq 'PR' ).

  if sy-subrc eq 0.

    v_boleto = 'S'.

    perform seleciona_zycbt002.

    loop at itab_zycbt002p_ant.

      read table itab_zycbt002p with key

...

 

...

  move /pws/zycbe001 to /pws/zycbt001.

  if /pws/zycbe001-fdtlanc = 'O'.

    move /pws/zycbe001-dtcontr to v_data2.

    move wa_zycbt001-dtcontr to v_data3.

  elseif /pws/zycbe001-fdtlanc = 'D'.

    move /pws/zycbe001-dtdesem to v_data2.

    move wa_zycbt001-dtdesem to v_data3.

  elseif /pws/zycbe001-fdtlanc = 'C'.

    move /pws/zycbe001-dtcred to v_data2.

    move wa_zycbt001-dtcred to v_data3.

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

  ENDIF.

  IF wa_zyglt009-flag_soc_parceir = 'X'.

    IF /pws/zycbe001-vbund EQ wa_zycbt001-vbund.

      v_alt_soc_parc = 'N'.

    ELSE.

      v_alt_soc_parc = 'S'.

    ENDIF.

  ELSE.

    v_alt_soc_parc = 'N'.

* << Fim da inclusão

  endif.

  if /pws/zycbe001-tpcontr    eq wa_zycbt001-tpcontr    and

     /pws/zycbe001-bukrs      eq wa_zycbt001-bukrs      and

     /pws/zycbe001-werks      eq wa_zycbt001-werks      and

     /pws/zycbe001-j_1bbranch eq wa_zycbt001-j_1bbranch and

     /pws/zycbe001-gsber      eq wa_zycbt001-gsber      and

     /pws/zycbe001-bcocred    eq wa_zycbt001-bcocred    and

     v_data2             eq v_data3                and

     /pws/zycbe001-dtliquid   eq wa_zycbt001-dtliquid   and

     /pws/zycbe001-waers      eq wa_zycbt001-waers      and

...

 

...

     /pws/zycbe074-prctr_or   eq wa_zycbt074-prctr_or and

     /pws/zycbe074-pspnr_or   eq wa_zycbt074-pspnr_or and

     /pws/zycbe074-rkaufnr_or eq wa_zycbt074-rkaufnr_or and

     /pws/zycbe074-spart_or   eq wa_zycbt074-spart_or and

     /pws/zycbe074-versi_or   eq wa_zycbt074-versi_or and

     /pws/zycbe074-vkorg_or   eq wa_zycbt074-vkorg_or and

     /pws/zycbe074-vrgar_or   eq wa_zycbt074-vrgar_or and

     /pws/zycbe074-werks_or   eq wa_zycbt074-werks_or and

     /pws/zycbe074-vtweg_or   eq wa_zycbt074-vtweg_or and

     /pws/zycbe001-status     eq 'C'               and

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

     v_alt_princ         eq 'N'.

* << Fim da exclusão

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

     v_alt_princ         EQ 'N'                    AND

     v_alt_soc_parc       = 'N'.

* << Fim da inclusão

    modify /pws/zycbt001.

    if wa_zycbt007-cfm = 'X'.

      if /pws/zycbe001-tpcontr(1) ne 'C' and

         /pws/zycbe001-tpcontr(1) ne 'E'.

        select single *

               from /pws/zycbt001

               into wa_zycbt001_log

               where nrseqc = /pws/zycbt001-nrseqc.

        perform monta_log_cfm using    wa_zycbt001_log

                                      '/PWS/ZYCBT001'

...

 

...

          loop at t_sydes-types into wa_types.

            v_len = wa_types-length.

            exit.

          endloop.

          perform grava_log using '/PWS/ZYCBT005'

                                  wa_log

                                  'A'.

        endselect.

      endif.

    endif.

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

    message i017.

* << Fim da exclusão

    clear v_ok.

    if /pws/zycbe001-nrcontr ne wa_zycbt001-nrcontr.

      perform refresh_zycbt004.

      update /pws/zycbt005 set nrcontr = /pws/zycbe001-nrcontr

                    where nrseqc  = /pws/zycbe001-nrseqc.

      if wa_zycbt007-cfm = 'X'.

        select *

               from /pws/zycbt005

               into wa_zycbt005_log

               where nrseqc = /pws/zycbe001-nrseqc.

...

 

...

                                changing wa_log.

          perform grava_log using '/PWS/ZYCBT006'

                                  wa_log

                                  'A'.

        endselect.

      endif.

    endif.

    perform save_zycbt002.

    perform save_zycbt003.

    perform save_zycbt005.

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

    IF wa_zycbt074-fpagto_comis NE 'L'.

      MESSAGE i017.

    ELSE.

      IF itab_comissao[] EQ itab_comissao_ant[] AND

         itab_zycbt003[] EQ t_zycbt003_ant[].

        MESSAGE i017.

      ENDIF.

    ENDIF.

* << Fim da inclusão

    move /pws/zycbe001 to wa_zycbt001.

    move /pws/zycbe074 to wa_zycbt074.

  elseif /pws/zycbe001-status is initial or /pws/zycbe001-status eq 'I'.

    /pws/zycbe001-slpagar = /pws/zycbe001-vlme.

    /pws/zycbe001-status = 'I'.

    /pws/zycbt001-status = 'I'.

    /pws/zycbt001-slpagar = /pws/zycbe001-vlme.

    /pws/zycbe001-slvinc   = /pws/zycbe001-vlme.

    /pws/zycbt001-slvinc   = /pws/zycbe001-vlme.

    /pws/zycbe001-slreserv = /pws/zycbe001-vlme.

...

 

...

       sy-tcode ne '/PWS/ZYCB001_E'.

      perform verifica_despesa_cotacao.

    endif.

    commit work and wait.

    perform executa_exit_cliente using 'CPT020'.

    leave to screen 0.

  endif.

endform.

form soma_juros_total.

  clear /pws/zycbe001-vltotjur.

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

  SELECT * FROM /pws/zycbt006 INTO TABLE itab_zycbt006

           WHERE nrseqc = /pws/zycbe001-nrseqc.

* << Fim da inclusão

  loop at itab_zycbt002.

    select *

            from /pws/zycbt216

            into table itab_zycbt216

            where nrseqc = itab_zycbt002-nrseqc and

                  tpparc = 'J'                  and

                  nrparc = itab_zycbt002-nrparc.

    if sy-subrc eq 0.

      clear v_dtfinal.

      loop at itab_zycbt216.

...

 

...

    itab_zycbe033-belnr = /pws/zycbe204-belnr.

    itab_zycbe033-newbs = '19'.

    itab_zycbe033-umskz = wa_zycbt011-agums.

    if /pws/zycbe204-text is initial.

      itab_zycbe033-d_sgtxt = wa_zycbt011-txtdesc.

      itab_zycbe033-c_sgtxt = wa_zycbt011-txtdesc.

    else.

      itab_zycbe033-d_sgtxt = /pws/zycbe204-text.

      itab_zycbe033-c_sgtxt = /pws/zycbe204-text.

    endif.

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

    itab_zycbe033-vbund = /pws/zycbe001-vbund.

* << Fim da inclusão

    append itab_zycbe033.

    loop at itab_zycbt034.

      message i016 with itab_zycbt034-descricao.

    endloop.

    if itab_zycbt034 is initial.

      call function '/PWS/ZYCB_TRANSACAO_F_29'

           exporting

                v_modo     = v_modo_bi

           tables

                t_dados    = itab_zycbe033

...

 

...

                                  'VLMI'

                                  text-094.

  itab_zycbe033-dmbtr   = /pws/zycbe204-vlmi.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-d_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-c_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-c_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-c_fipos = /pws/zycbe001-fipos.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034[] is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_30_N'

         exporting

              v_modo          = v_modo_bi

         tables

              t_dados         = itab_zycbe033

...

 

...

  endif.

  if v_calc eq ' '.

    if itab_zycbt002-dtpagto is initial.

      if not itab_zycbt216-txjtotal is initial.

        if not itab_zycbt216-tptxjur is initial.

          read table itab_zycbt010

               with key tptxjur = itab_zycbt216-tptxjur.

          if not itab_zycbt010-nrdias is initial.

            if not itab_zycbt216-dtfinal is initial.

              if not itab_zycbt216-dtinicio is initial.

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

                if /pws/zycbe001-ffrcalc = 'S'.

* << Fim da exclusão

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

                IF /pws/zycbe001-ffrcalc = 'L'.

* << Fim da inclusão

                  v_vlmeamj = /pws/zycbe001-vlme.

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

                  loop at itab_zycbt002p where

                                      dtfinal <= itab_zycbt216-dtinicio.

                    v_vlmeamj = v_vlmeamj - itab_zycbt002p-vlme.

* << Fim da exclusão

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

                  DESCRIBE TABLE itab_zycbt002p LINES v_linha.

                  READ TABLE itab_zycbt002p INDEX v_linha.

                  IF sy-subrc = 0.

                    IF itab_zycbt002p-dtfinal = itab_zycbt002-dtfinal.

                      LOOP AT itab_zycbt006

                              WHERE dtpagto =< itab_zycbt002-dtfinal

                                AND status = 'C'.

                        SELECT parid

                               UP TO 1 ROWS

                               FROM /pws/zycbt005

                               INTO itab_zycbt005-parid

                               WHERE nrseqc  = itab_zycbt006-nrseqc

                                AND tpdesp   = itab_zycbt006-tpdesp

                                AND nrparc   = itab_zycbt006-nrparc

                                AND dtincl   = itab_zycbt006-dtincl

                                AND nrinvoic = itab_zycbt006-nrinvoic

                                AND nrparcf  = itab_zycbt006-nrparcf

                                AND gsberf   = itab_zycbt006-gsberf

                                AND dtvincul = itab_zycbt006-dtvincul

                                AND dtvencto = itab_zycbt006-dtvencto.

                        ENDSELECT.

                        v_vlmeamj = v_vlmeamj -

                       ( itab_zycbt006-vlme * itab_zycbt005-parid ).

                      ENDLOOP.

                    ELSE.

                      LOOP AT itab_zycbt006

                              WHERE dtpagto < itab_zycbt002-dtfinal

                                AND status = 'C'.

                        SELECT parid

                               UP TO 1 ROWS

                               FROM /pws/zycbt005

                               INTO itab_zycbt005-parid

                               WHERE nrseqc  = itab_zycbt006-nrseqc

                                AND tpdesp   = itab_zycbt006-tpdesp

                                AND nrparc   = itab_zycbt006-nrparc

                                AND dtincl   = itab_zycbt006-dtincl

                                AND nrinvoic = itab_zycbt006-nrinvoic

                                AND nrparcf  = itab_zycbt006-nrparcf

                                AND gsberf   = itab_zycbt006-gsberf

                                AND dtvincul = itab_zycbt006-dtvincul

                                AND dtvencto = itab_zycbt006-dtvencto.

                        ENDSELECT.

                        v_vlmeamj = v_vlmeamj -

                       ( itab_zycbt006-vlme * itab_zycbt005-parid ).

* << Fim da inclusão

                  endloop.

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

                    ENDIF.

                  ENDIF.

* << Fim da inclusão

                else.

                  v_vlmeamj = /pws/zycbe001-vlme.

                endif.

                itab_zycbt216-vlme =

                   ( ( v_vlmeamj * ( itab_zycbt216-txjtotal / 100 ) )

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB001F02

 

...

    move /pws/zycbe001 to wa_zycbt001.

    move /pws/zycbe074 to wa_zycbt074.

    perform save_zycbt002.

    perform save_zycbt003.

    update /pws/zycbt060 set nrcontr = /pws/zycbe001-nrcontr

                  where nrseq   = /pws/zycbe001-nrseqc.

    update /pws/zycbt061 set nrcontr = /pws/zycbe001-nrcontr

                  where nrseq   = /pws/zycbe001-nrseqc.

    update /pws/zycbt062 set nrcontr = /pws/zycbe001-nrcontr

                  where nrseq   = /pws/zycbe001-nrseqc.

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

    if wa_zycbt074-fpagto_comis ne 'L'.

* << Fim da inclusão

    message i017.

  else.

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

      if itab_comissao[] eq itab_comissao_ant[] and

         itab_zycbt003[] eq t_zycbt003_ant[].

        message i017.

      endif.

    endif.

  else.

* << Fim da inclusão

    perform lancamento_pre_acc.

    modify /pws/zycbt001.

    if wa_zycbt007-cfm = 'X'.

      if /pws/zycbe001-tpcontr(1) ne 'C' and

         /pws/zycbe001-tpcontr(1) ne 'E'.

        select single *

               from /pws/zycbt001

               into wa_zycbt001_log

               where nrseqc = /pws/zycbe001-nrseqc.

        perform monta_log_cfm using    wa_zycbt001_log

...

 

...

  if sy-subrc ne 0.

    message i015 with text-243 text-244.

    exit.

  endif.

  clear sy-subrc.

  v_prim = space.

  clear: v_count, v_total.

  loop at itab_zycbt061 where nrseq = /pws/zycbe001-nrseqc.

    v_total = v_total + 1.

  endloop.

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

  clear v_erro_bi.

* << Fim da inclusão

  loop at itab_zycbt061 where nrseq = /pws/zycbe001-nrseqc.

    select single *

           from /pws/zycbt001

           into wa_zycbt001_pre

           where nrseqc = itab_zycbt061-nrseq_c.

    v_count = v_count + 1.

    if v_count eq v_total.

      v_prim = 'L'.

    endif.

    perform retorna_saldo_acc changing v_belnr

                                       v_budat

                                       v_prim.

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

    if sy-subrc ne 0.

      v_erro_bi = 'X'.

      exit.

    endif.

* << Fim da inclusão

    modify itab_zycbt061.

  endloop.

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

  if v_erro_bi = 'X'.

    sy-subrc = 4.

  else.

* << Fim da inclusão

  clear sy-subrc.

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

  endif.

* << Fim da inclusão

endform.

form lancamento_pre_acc.

  data: valor    like /pws/zycbt002-vlme,

        belnr    like /pws/zycbt001-belnr,

        v_docto1 like /pws/zycbt001-belnr,

        budat    like sy-datum,

        subrc    like sy-subrc,

        v_prim   type c,

        v_lines  like sy-tabix.

  clear: valor,

...

 

...

        cod_rze      like /pws/zycbt011-agums,

        texto_acc    like /pws/zycbt011-txtdesc,

        texto_pre    like /pws/zycbt011-txtdesc,

        vlmi         like /pws/zycbt002-vlme,

        mensagem(90) type c,

        v_budat(10)  type c,

        v_datum(10)  type c.

  perform clear_date_batch.

  clear itab_zycbt036.

  refresh itab_zycbt036.

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

  if /pws/zycbe001-tpcontr(1) = 'D'.

    v_desm_acc_dp = 'X'.

  endif.

* << Fim da inclusão

  perform pega_contas_acc_pre changing conta_acc texto_acc

                                       conta_pre texto_pre

                                       cod_rze.

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

  clear v_desm_acc_dp.

* << Fim da inclusão

  itab_zycbe033-tcode  = 'F-30'.

  itab_zycbe033-cpochv = wa_zycbt001_pre-nrseqc.

  itab_zycbe033-tabela = 'ZYCBT001'.

  case wa_zycbt001_pre-fdtlanc.

    when 'O'.

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

      itab_zycbe033-budat = wa_zycbt001_pre-dtcontr.

* << Fim da exclusão

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

      itab_zycbe033-budat = /pws/zycbe001-dtcontr.

* << Fim da inclusão

    when 'D'.

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

      itab_zycbe033-budat = wa_zycbt001_pre-dtdesem.

* << Fim da exclusão

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

      itab_zycbe033-budat = /pws/zycbe001-dtdesem.

* << Fim da inclusão

    when 'C'.

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

      itab_zycbe033-budat = wa_zycbt001_pre-dtcred.

* << Fim da exclusão

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

      itab_zycbe033-budat = /pws/zycbe001-dtcred.

* << Fim da inclusão

  endcase.

  perform verify_null_field using itab_zycbe033-budat

                                  'DTLANC'

                                  text-023.

  perform determina_periodo using itab_zycbe033-budat

                         changing v_monat.

  perform determina_ano using itab_zycbe033-budat

                              wa_zycbt001_pre-bukrs

                                changing v_ano.

  perform period_refresh.

...

 

...

  itab_zycbe033-d_gsber = wa_zycbt001_pre-gsber.

  itab_zycbe033-d_kostl = wa_zycbt001_pre-kostl.

  itab_zycbe033-d_prctr = wa_zycbt001_pre-prctr.

  itab_zycbe033-d_fipos = wa_zycbt001_pre-fipos.

  itab_zycbe033-d_fictr = wa_zycbt001_pre-fictr.

  itab_zycbe033-c_gsber = wa_zycbt001_pre-gsber.

  itab_zycbe033-c_kostl = wa_zycbt001_pre-kostl.

  itab_zycbe033-c_prctr = wa_zycbt001_pre-prctr.

  itab_zycbe033-c_fipos = wa_zycbt001_pre-fipos.

  itab_zycbe033-c_fictr = wa_zycbt001_pre-fictr.

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

  itab_zycbe033-vbund   = wa_zycbt001_pre-vbund.

* << Fim da inclusão

  if not wa_zycbt001_pre-j_1bbranch is initial.

    perform verifica_pais_filial using wa_zycbt001_pre-bukrs

                                       wa_zycbt001_pre-j_1bbranch.

    itab_zycbe033-brnch   = wa_zycbt001_pre-j_1bbranch.

  else.

    select single * from t001w

      where werks = wa_zycbt001_pre-werks.

    if sy-subrc eq 0.

      perform verifica_pais_filial using wa_zycbt001_pre-bukrs

                                         t001w-j_1bbranch.

...

 

...

  endif.

  if wa_zycbt001_pre-tpcontr = 'A'.

    itab_zycbe033-d_newko1 = conta_acc.

  elseif wa_zycbt001_pre-tpcontr ne 'A'.

    itab_zycbe033-d_newko1 = conta_pre.

  endif.

  if /pws/zycbt001-tpcontr(1) = 'D'.

    itab_zycbe033-newbs   = '19'.

    itab_zycbe033-agkoa   = 'D'.

    itab_zycbe033-umskz   =  cod_rze.

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

    v_dp = 'X'.

* << Fim da exclusão

  else.

    itab_zycbe033-newbs   = '50'.

    itab_zycbe033-agkoa   = 'S'.

  endif.

  concatenate text-467 /pws/zycbe001-nrseqc

             into itab_zycbe033-d_zuonr

             separated by space.

  itab_zycbt036-tcode   = itab_zycbe033-tcode.

  itab_zycbt036-tabela  = itab_zycbe033-tabela.

  itab_zycbt036-cpochv  = itab_zycbe033-cpochv.

...

 

...

    if sy-subrc = 0.

      read table itab_zycbt032 with key tcode  = 'F-30'

                                        tabela = 'ZYCBT001'

                                        cpochv = wa_zycbt001_pre-nrseqc

                                        tpmsg  = 'S'.

      if sy-subrc = 0.

        itab_zycbt061-belnr_d = itab_zycbt032-belnr.

        itab_zycbt061-budat_d = itab_zycbe033-budat.

        wa_zycbt001_pre-belnr2   = itab_zycbt032-belnr.

        wa_zycbt001_pre-dtvincul = itab_zycbe033-budat.

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

        if /pws/zycbe001-tpcontr+0(1) = 'D' and

           wa_zycbt001_pre-tpcontr    = 'A'.

          update /pws/zycbt001 set belnr   = wa_zycbt001_pre-belnr2

                                   dtvincul = wa_zycbt001_pre-dtvincul

                             where nrseqc  = wa_zycbt001_pre-nrseqc.

          commit work.

        else.

* << Fim da exclusão

          update /pws/zycbt001 set belnr2   = wa_zycbt001_pre-belnr2

                                   dtvincul = wa_zycbt001_pre-dtvincul

                              where nrseqc  = wa_zycbt001_pre-nrseqc.

          commit work.

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

        endif.

* << Fim da exclusão

        itab_contabil-nrseqpre = /pws/zycbe001-nrseqc.

        itab_contabil-nrparpre = space.

        itab_contabil-nrseqacc = wa_zycbt001_pre-nrseqc.

...

 

...

                                  text-018.

  itab_zycbe033-bukrs  = /pws/zycbe001-bukrs.

  perform verify_null_field using /pws/zycbe001-waers

                                  'WAERS'

                                  text-019.

  itab_zycbe033-waers  = /pws/zycbe001-waers.

  perform verify_null_field using wa_zycbt011-blart

                                  'BLART'

                                  text-020.

  itab_zycbe033-blart  = wa_zycbt011-blart.

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

  if v_dp ne 'X'.

* << Fim da exclusão

    itab_zycbe033-d_newko = conta_pre.

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

  else.

    itab_zycbe033-d_newko = conta_acc.

  endif.

  if /pws/zycbt001-tpcontr(1) = 'D' and

     v_dp  is initial.

* << Fim da exclusão

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

  if /pws/zycbt001-tpcontr(1) = 'D'.

* << Fim da inclusão

    itab_zycbe033-newbs   = '19'.

    itab_zycbe033-agkoa   = 'D'.

    itab_zycbe033-umskz   =  cod_rze.

  else.

    itab_zycbe033-newbs   = '50'.

    itab_zycbe033-agkoa   = 'S'.

  endif.

  perform campos_liquida_pt_acc.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

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

  if v_dp ne 'X'.

* << Fim da exclusão

    itab_zycbe033-wrbtr   = /pws/zycbe001-vlme.

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

  else.

    itab_zycbe033-wrbtr   = wa_zycbt001_pre-slvinc.

  endif.

* << Fim da exclusão

  itab_zycbe033-werks   = /pws/zycbe001-werks.

  itab_zycbe033-kursf = /pws/zycbe001-txcneg.

  perform verify_null_field using /pws/zycbe001-txcneg

                                  'TXCAMB'

                                  text-027.

  concatenate text-488 /pws/zycbe001-nrseqc

              into itab_zycbe033-c_zuonr

              separated by space.

  if v_dp = 'X'.

    if wa_zycbt001_pre-tpcontr = 'A'.

      itab_zycbe033-c_zuonr = wa_zycbt001_pre-dtcontr.

    endif.

  endif.

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

  itab_zycbe033-c_zuonr = /pws/zycbe001-nrseqc.

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  if itab_zycbt061-tpcontr_c(1) ca 'PS'.

    if  /pws/zycbe001-tpcontr eq 'A'.

      select *

      from /pws/zycbt067 into table itab_zycbt067

       where nrseq_c = itab_zycbt061-nrseq_c.  "#EC CI_NOFIRST

      select *

      from /pws/zycbt002 into table itab_zycbt002p1

      for all entries in itab_zycbt067

      where nrseqc = itab_zycbt067-nrseq_c and

...

 

...

      itab_partidas-belnr   = itab_zycbt061-belnr_d.

      if /pws/zycbe001-tpcontr ne 'A'.

        if wa_zycbt001_pre-tpcontr = 'A'.

          itab_partidas-agkon   = conta_acc.

        else.

          itab_partidas-agkon   = conta_pre.

        endif.

      else.

        itab_partidas-agkon   = conta_acc.

      endif.

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

      if /pws/zycbe001-tpcontr(1) = 'D'

         and wa_zycbt001_pre-slvinc > 0.

        itab_partidas-agkoa   = 'D'.

        itab_partidas-agums   = cod_rze.

      else.

* << Fim da inclusão

      itab_partidas-agkoa   = 'S'.

      itab_partidas-agums   = space.

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

      endif.

* << Fim da inclusão

      itab_partidas-bukrs   = wa_zycbt001_pre-bukrs.

      itab_partidas-shkzg   = 'H'.

      if itab_zycbt061-baixa eq 'X'.

        itab_partidas-v_sinal = '-'.

        concatenate text-488 /pws/zycbe001-nrseqc

...

 

...

        p_budat = itab_zycbe033-budat.

        if /pws/zycbe001-tpcontr+0(1) = 'P'.

        /pws/zycbe001-belnr = /pws/zycbt001-belnr = itab_zycbt032-belnr.

        endif.

        itab_contabil-nrseqpre = /pws/zycbe001-nrseqc.

        itab_contabil-nrparpre = space.

        clear itab_contabil-nrseqacc.

        itab_contabil-belnr    = itab_zycbt032-belnr.

        itab_contabil-msg      = text-247.

        append itab_contabil.

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

        if /pws/zycbe001-tpcontr+0(1) = 'D' and

           wa_zycbt001_pre-tpcontr    = 'A'.

          update /pws/zycbt001 set belnr2   = p_belnr

                              where nrseqc  = wa_zycbt001_pre-nrseqc.

        endif.

* << Fim da exclusão

        select *

        from /pws/zycbt067 into table itab_zycbt067

         where nrseq_c = wa_zycbt001_pre-nrseqc.        "#EC CI_NOFIRST

        if sy-subrc = 0.

          select *

            from /pws/zycbt002 into table itab_zycbt002p1

            for all entries in itab_zycbt067

            where nrseqc = itab_zycbt067-nrseq_c and

                  tpparc = 'P'                   and

                  nrparc = itab_zycbt067-nrparc.

...

 

...

           where tabela = 'ZYCBT001'.

  if not wa_zycbt001_pre is initial.

    concatenate '001' wa_zycbt001_pre-tpcontr into v_codeven.

    clear wa_zycbt011.

    select single * from /pws/zycbt011

                    into wa_zycbt011

                    where codeven = v_codeven

                    and codmod  = 'E'.

    texto_acc = wa_zycbt011-txtdesc.

    cod_rze =   wa_zycbt011-agums.

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

    if /pws/zycbt001-tpcontr(1) = 'D' and v_desm_acc_dp is initial

       and wa_zycbt001_pre-slvinc > 0.

      conta_acc = /pws/zycbe001-kunnr.

    else.

* << Fim da inclusão

    concatenate wa_zycbt001_pre-tpcontr

                wa_zycbt001_pre-przcontr

                into v_codaux

                separated by space.

    call function '/PWS/ZYGL_READ_ACCOUNT_NUMBER'

         exporting

              bukrs           = wa_zycbt001_pre-bukrs

              ktosl           = 'CPT'

              codaux1         = v_codaux

         tables

              account         = itab_zyglt316

         exceptions

              key_not_found   = 1

              rules_not_found = 2

              others          = 3.

    if sy-subrc eq 0.

      read table itab_zyglt316 index 1.

      conta_acc = itab_zyglt316-konth.

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

      endif.

* << Fim da inclusão

    endif.

  endif.

  concatenate '001' /pws/zycbe001-tpcontr into v_codeven.

  clear wa_zycbt011.

  select single * from /pws/zycbt011

                  into wa_zycbt011

                  where codeven = v_codeven

                  and codmod  = 'E'.

  texto_pre = wa_zycbt011-txtdesc.

  cod_rze   = wa_zycbt011-agums.

...

 

...

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-wrbtr   = /pws/zycbe001-vlme.

  itab_zycbe033-kursf = /pws/zycbe001-txcneg.

  perform verify_null_field using /pws/zycbe001-txcneg

                                  'TXCAMB'

                                  text-027.

  if p_first eq 'L'.

    itab_zycbe033-flag_nc = 'X'.

    p_first = 'X'.

  endif.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  itab_zycbt036-tcode   = 'F-30'.

  itab_zycbt036-tabela  = 'ZYCBT002'.

  itab_zycbt036-cpochv  = itab_zycbe033-cpochv.

  itab_zycbt036-residuo = itab_zycbt002p-vlme.

  append itab_zycbt036.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

...

 

...

    itab_zycbe033-augtx   = /pws/zycbe001-txtinf.

  endif.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-wrbtr = /pws/zycbe001-vlme.

  itab_zycbe033-koart = 'S'.

  itab_zycbe033-kursf = /pws/zycbe001-txcneg.

  perform verify_null_field using /pws/zycbe001-txcneg

                                  'TXCAMB'

                                  text-027.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  read table itab_zyglt100 with key zexit = 'CPT005' binary search.

  if sy-subrc eq 0.

    if not itab_zyglt100-zexit_ativa is initial.

      perform (itab_zyglt100-formulario)

              in program (itab_zyglt100-programa)

              using      okcode

              changing   e_subrc.

      if e_subrc ne 0.

        exit.

      endif.

...

 

...

        v_cpochv  like /pws/zycbe033-cpochv,

        conta_acc like /pws/zycbt012-saknr1,

        conta_pre like /pws/zycbt012-saknr1,

        cod_rze   like /pws/zycbt011-agums,

        texto_acc like /pws/zycbt011-txtdesc,

        texto_pre like /pws/zycbt011-txtdesc,

        v_dp.

  perform clear_date_batch.

  clear: itab_zycbt036.

  refresh itab_zycbt036.

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

  if /pws/zycbe001-tpcontr(1) = 'D'.

    v_desm_acc_dp = 'X'.

  endif.

* << Fim da inclusão

  perform pega_contas_acc_pre changing conta_acc texto_acc

                                       conta_pre texto_pre

                                       cod_rze.

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

  clear v_desm_acc_dp.

* << Fim da inclusão

  itab_zycbe033-tcode  = 'F-30'.

  v_cpochv             = wa_zycbt001_pre-nrseqc.

  itab_zycbe033-cpochv = v_cpochv.

  itab_zycbe033-tabela = 'ZYCBT001'.

...

 

...

  itab_zycbe033-c_gsber = wa_zycbt001_pre-gsber.

  itab_zycbe033-d_gsber = wa_zycbt001_pre-gsber.

  itab_zycbe033-wrbtr   = itab_zycbt061-vlalt.

  itab_zycbe033-kursf = wa_zycbt001_pre-txcneg.

  perform verify_null_field using wa_zycbt001_pre-txcneg

                                  'TXCAMB'

                                  text-027.

  if p_first eq 'L'.

    itab_zycbe033-flag_nc = 'X'.

  endif.

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

  itab_zycbe033-vbund   = wa_zycbt001_pre-vbund.

* << Fim da inclusão

  read table itab_zyglt100 with key zexit = 'CPT006' binary search.

  if sy-subrc eq 0.

    if not itab_zyglt100-zexit_ativa is initial.

      perform (itab_zyglt100-formulario)

              in program (itab_zyglt100-programa)

              using      okcode

              changing   e_subrc.

      if e_subrc ne 0.

        exit.

      endif.

...

 

...

          when 'NRSEQC'.

            itab_zycbe033-c_zuonr = wa_zycbt001_pre-nrseqc.

            itab_zycbe033-d_zuonr = wa_zycbt001_pre-nrseqc.

          when 'TPCONTR'.

            itab_zycbe033-c_zuonr = wa_zycbt001_pre-tpcontr.

            itab_zycbe033-d_zuonr = wa_zycbt001_pre-tpcontr.

        endcase.

    endcase.

  endloop.

  if wa_zycbt001_pre-tpcontr = 'A'.

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

    itab_zycbe033-d_zuonr = wa_zycbt001_pre-dtvincul.

* << Fim da exclusão

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

    case wa_zycbt001_pre-fdtlanc.

      when 'D'.

        v_date = wa_zycbt001_pre-dtdesem.

      when 'O'.

        v_date = wa_zycbt001_pre-dtcontr.

      when others.

        v_date = wa_zycbt001_pre-dtcred.

    endcase.

    itab_zycbe033-d_zuonr = v_date.

* << Fim da inclusão

  endif.

  itab_zycbe033-bktxt  = /pws/zycbt007-bktxt.

  perform verify_null_field using wa_zycbt001_pre-bukrs

                                  'BUKRS'

                                  text-018.

  itab_zycbe033-bukrs  = wa_zycbt001_pre-bukrs.

  perform verify_null_field using wa_zycbt001_pre-waers

                                  'WAERS'

                                  text-019.

  itab_zycbe033-waers  = wa_zycbt001_pre-waers.

...

 

...

                                  text-020.

  itab_zycbe033-blart  = wa_zycbt011-blart.

  itab_zycbe033-d_gsber = wa_zycbt001_pre-gsber.

  itab_zycbe033-c_gsber = wa_zycbt001_pre-gsber.

  itab_zycbe033-kursf   = wa_zycbt001_pre-txcneg.

  itab_zycbe033-d_newko = p_conta.

  itab_zycbe033-agkoa   = 'S'.

  itab_zycbe033-newbs = '50'.

  itab_zycbe033-belnr   = p_belnr.

  itab_zycbe033-dtdocto = p_budat.

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

  itab_zycbe033-vbund   = wa_zycbt001_pre-vbund.

* << Fim da inclusão

  read table itab_zyglt100 with key zexit = 'CPT007' binary search.

  if sy-subrc eq 0.

    if not itab_zyglt100-zexit_ativa is initial.

      perform (itab_zyglt100-formulario)

              in program (itab_zyglt100-programa)

              using      okcode

              changing   e_subrc.

      if e_subrc ne 0.

        exit.

      endif.

...

 

...

      itab_partidas-v_sinal = '-'.

      itab_partidas-dtdocto = p_budat.

      append itab_partidas.

    endif.

  endif.

  if wa_zycbt001_pre-tpcontr = 'PT'.

    concatenate wa_zycbt001_pre-nrseqc wa_zycbt001_pre-tpcontr

    into v_zuonr.

  else.

    if wa_zycbt001_pre-tpcontr = 'A'.

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

      v_zuonr = wa_zycbt001_pre-dtvincul.

* << Fim da exclusão

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

      case wa_zycbt001_pre-fdtlanc.

        when 'D'.

          v_date = wa_zycbt001_pre-dtdesem.

        when 'O'.

          v_date = wa_zycbt001_pre-dtcontr.

        when others.

          v_date = wa_zycbt001_pre-dtcred.

      endcase.

      v_zuonr = v_date.

* << Fim da inclusão

    else.

      v_zuonr = wa_zycbt001_pre-nrseqc.

    endif.

  endif.

  if itab_zycbt034 is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_30_W'

         exporting

              v_modo          = v_modo_bi

              v_zuonr         = v_zuonr

         tables

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB001F04

 

...

    itab_zycbe033-belnr = /pws/zycbe001-belnr2.

  else.

    itab_zycbe033-belnr = /pws/zycbe001-belnr.

  endif.

  if /pws/zycbe001-tpcontr+0(1) = 'D'.

    if  wa_zycbt011-agums = 'A'.

      move wa_zycbt011-agums to itab_zycbe033-umskz.

    endif.

  endif.

  itab_zycbe033-brnch = /pws/zycbe001-j_1bbranch.

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

  itab_zycbe033-vbund = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i227 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_30_A'

         exporting

              v_modo          = v_modo_bi

         tables

              t_dados         = itab_zycbe033

...

 

...

  itab_zycbe033-wrbtr   = v_vldev.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-d_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-d_fipos = /pws/zycbe001-fipos.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-c_kostl = /pws/zycbe001-kostl.

  itab_zycbe033-c_prctr = /pws/zycbe001-prctr.

  itab_zycbe033-c_fipos = /pws/zycbe001-fipos.

  itab_zycbe033-brnch   = /pws/zycbe001-j_1bbranch.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  clear: v_calcula, /pws/zycbe074-mont_mi_canc.

  call customer-function '100'

    importing

      v_calcula = v_calcula.

  if v_calcula = 'X' and /pws/zycbt089-f_cont_canc = '5'.

    perform calcula_montante_mi using v_vldev.

  endif.

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

...

 

...

  if not /pws/zycbe001-belnr2 is initial.

    itab_zycbe033-belnr = /pws/zycbe001-belnr2.

  else.

    itab_zycbe033-belnr = /pws/zycbe001-belnr.

  endif.

  if /pws/zycbe001-tpcontr+0(1) = 'D'.

    if  wa_zycbt011-agums = 'A'.

      move wa_zycbt011-agums to itab_zycbe033-umskz.

    endif.

  endif.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i227 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_02'

         exporting

              v_modo          = v_modo_bi

         tables

              t_dados         = itab_zycbe033

...

 

...

  itab_zycbe033-blart  = wa_zycbt011-blart.

  itab_zycbe033-bktxt   = wa_zycbt007-bktxt.

  itab_zycbe033-agums   = wa_zycbt011-agums.

  itab_zycbe033-agkoa   = wa_zycbt011-koart.

  itab_zycbe033-zfbdt   = itab_zycbe033-budat.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-agkoa   = 'S'.

  itab_zycbe033-c_valut = itab_zycbe033-budat.

  itab_zycbe033-d_valut = itab_zycbe033-budat.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  itab_zycbt036-tcode  = 'F-30'.

  itab_zycbt036-tabela = '/PWS/ZYCBT001'.

  itab_zycbt036-cpochv = /pws/zycbe001-nrseqc.

  itab_zycbt036-belnr  = /pws/zycbe001-belnr2.

  append itab_zycbt036.

  itab_zycbt036-tcode  = 'F-30'.

  itab_zycbt036-tabela = '/PWS/ZYCBT001'.

  itab_zycbt036-cpochv = /pws/zycbe001-nrseqc.

  itab_zycbt036-belnr  = v_belnr_est.

...

 

...

            using itab_zycbt003-dtpror 'DTPROR' text-350.

    if /pws/zycbe001-fdtlanc = 'O'.

      itab_zycbe033-gjahs = /pws/zycbe001-dtcontr.

    elseif /pws/zycbe001-fdtlanc = 'D'.

      itab_zycbe033-gjahs = /pws/zycbe001-dtdesem.

    elseif /pws/zycbe001-fdtlanc = 'C'.

      itab_zycbe033-gjahs = /pws/zycbe001-dtcred.

    endif.

    perform verify_null_field

            using itab_zycbe033-gjahs 'GJAHS' text-351.

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

    itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

    append itab_zycbe033.

    loop at itab_zycbt034.

      message i016 with itab_zycbt034-descricao.

    endloop.

    if itab_zycbt034[] is initial.

      call function '/PWS/ZYCB_TRANSACAO_FB02'

           exporting

                v_modo          = v_modo_bi

                v_captacao      = 'X'

           tables

...

 

...

  else.

    select single * from t001w

      where werks = /pws/zycbe004-werks.

    if sy-subrc eq 0.

      perform verifica_pais_filial using /pws/zycbe001-bukrs

                                         t001w-j_1bbranch.

      itab_zycbe033-brnch = t001w-j_1bbranch.

    endif.

  endif.

  move wa_zycbt007-condpgvista to itab_zycbe033-zterm.

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

  itab_zycbe033-vbund   = /pws/zycbe004-vbund.

* << Fim da inclusão

  clear:   itab_zyglt100.

  refresh: itab_zyglt100.

  if itab_zyglt100[] is initial.

    v_repid = sy-repid.

    call function '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

         exporting

              i_codmod                = 'E'

              i_func                  = v_repid

         tables

              itab_zyglt100           = itab_zyglt100

...

 

...

  if not /pws/zycbe001-ps_posid is initial.

    itab_zycbe033-ps_posid = /pws/zycbe001-ps_posid.

  elseif not /pws/zycbe001-vbeln_va is initial.

    itab_zycbe033-vbeln2 = /pws/zycbe001-vbeln_va.

  endif.

  if not /pws/zycbe001-posnr_va is initial.

    itab_zycbe033-posn2  = /pws/zycbe001-posnr_va.

  endif.

  itab_zycbe033-kkber = /pws/zycbe001-area_credito.

  itab_zycbe033-werks = /pws/zycbe001-werks.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

    concatenate /pws/zycbe001-nrseqc /pws/zycbe001-tpcontr

      into v_zuonr.

    v_repid = sy-repid.

    call function '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

         exporting

...

 

...

           and gjahr = v_year.

    itab_partidas-v_sinal = '+'.

    itab_partidas-d_zuonr = space.

    append itab_partidas.

  endloop.

  if /pws/zycbe001-capital eq 'X'.

    itab_zycbe033-wrbtr = /pws/zycbe001-vlme.

  else.

    itab_zycbe033-wrbtr = v_valor.

  endif.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  read table itab_zyglt100 with key zexit = 'CPT008' binary search.

  if sy-subrc eq 0.

    if not itab_zyglt100-zexit_ativa is initial.

      perform (itab_zyglt100-formulario)

              in program (itab_zyglt100-programa)

              using      okcode

              changing   e_subrc.

      if e_subrc ne 0.

        exit.

      endif.

...

 

...

  endif.

  if not /pws/zycbe001-ps_posid is initial.

    itab_zycbe033-ps_posid = /pws/zycbe001-ps_posid.

  elseif not /pws/zycbe001-vbeln_va is initial.

    itab_zycbe033-vbeln2 = /pws/zycbe001-vbeln_va.

  endif.

  if not /pws/zycbe001-posnr_va is initial.

    itab_zycbe033-posn2  = /pws/zycbe001-posnr_va.

  endif.

  itab_zycbe033-kkber = /pws/zycbe001-area_credito.

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

  itab_zycbe033-vbund = /pws/zycbe001-vbund.

* << Fim da inclusão

endform.

form volta_part_banco using p_belnr.

  perform clear_date_batch.

  perform verif_dt_lancto.

  if v_lanc ne 'S'.

    move wa_zycbt001 to /pws/zycbe001.

    exit.

  endif.

  clear itab_zycbt036.

  refresh itab_zycbt036.

...

 

...

              using      okcode

              changing   e_subrc.

      if e_subrc ne 0.

        exit.

      endif.

    endif.

  endif.

  if not estorno_ok is initial.

    itab_zycbe033-d_newko = itab_zyglt316-konts.

  endif.

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

  itab_zycbe033-vbund   = wa_zycbt001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034 is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_30_A'

         exporting

              v_modo          = v_modo_bi

         tables

              t_dados         = itab_zycbe033

...

 

...

      itab_zycbe033-bldat = itab_zycbe033-budat.

    endif.

    if p_comissao-txtinf is initial.

      itab_zycbe033-d_sgtxt = wa_zycbt011-txtdesc.

      itab_zycbe033-c_sgtxt = wa_zycbt011-txtdesc.

    else.

      itab_zycbe033-d_sgtxt = p_comissao-txtinf.

      itab_zycbe033-c_sgtxt = p_comissao-txtinf.

    endif.

    perform seleciona_zyglt321_comissao using p_comissao.

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

    itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

    append itab_zycbe033.

    call function '/PWS/ZYCB_TRANSACAO_F_02'

         exporting

              v_modo          = v_modo_bi

         tables

              t_dados         = itab_zycbe033

              t_campo         = itab_zycbt034

              t_zycbt032      = itab_zycbt032

         exceptions

              campo_em_branco = 1

...

 

...

       exceptions

            key_not_found   = 1

            rules_not_found = 2

            others          = 3.

  if sy-subrc eq 0 .

    read table itab_zyglt316 index 1.

    itab_zycbe033-d_newko = itab_zyglt316-konts.

  endif.

  itab_zycbe033-agkoa   = 'K'.

  itab_zycbe033-c_newko = /pws/zyglt025-lifnr.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  loop at itab_zycbt034.

    message i016 with itab_zycbt034-descricao.

  endloop.

  if itab_zycbt034[] is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_02'

         exporting

              v_modo          = v_modo_bi

         importing

              v_budat_docto   = /pws/zycbt243-budat_desp

...

 

...

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-wrbtr   = /pws/zycbe001-vlme.

  itab_zycbe033-werks   = /pws/zycbe001-werks.

  itab_zycbe033-kursf = /pws/zycbe001-txcneg.

  perform verify_null_field using /pws/zycbe001-txcneg

                                  'TXCAMB'

                                  text-027.

  concatenate text-488 /pws/zycbe001-nrseqc

              into itab_zycbe033-c_zuonr

              separated by space.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  select *

  from /pws/zycbt067 into table itab_zycbt067

   where nrseq_c = itab_zycbt061-nrseq_c.      "#EC CI_NOFIRST

  loop at itab_zycbt067 .

    perform pega_contas_pre_new changing conta_acc texto_acc

                                         conta_pre texto_pre

                                         cod_rze.

    itab_partidas-tcode   = 'F-30'.

    itab_partidas-tabela  = 'ZYCBT001'.

...

 

...

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-wrbtr   = /pws/zycbe001-vlme.

  itab_zycbe033-kursf = /pws/zycbe001-txcneg.

  perform verify_null_field using /pws/zycbe001-txcneg

                                  'TXCAMB'

                                  text-027.

  if p_first eq 'L'.

    itab_zycbe033-flag_nc = 'X'.

    p_first = 'X'.

  endif.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  itab_zycbt036-tcode   = 'F-30'.

  itab_zycbt036-tabela  = 'ZYCBT002'.

  itab_zycbt036-cpochv  = itab_zycbe033-cpochv.

  itab_zycbt036-residuo = itab_zycbt002p-vlme.

  append itab_zycbt036.

  v_atrib = 'X'.

  if wa_zycbt001_pre-tpcontr = 'PT'.

    concatenate wa_zycbt001_pre-nrseqc wa_zycbt001_pre-tpcontr

    into v_zuonr.

...

 

...

    itab_zycbe033-c_sgtxt = /pws/zycbe001-txtinf.

    itab_zycbe033-augtx   = /pws/zycbe001-txtinf.

  endif.

  itab_zycbe033-c_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-d_gsber = /pws/zycbe001-gsber.

  itab_zycbe033-wrbtr   = /pws/zycbe001-vlme.

  itab_zycbe033-kursf = /pws/zycbe001-txcneg.

  perform verify_null_field using /pws/zycbe001-txcneg

                                  'TXCAMB'

                                  text-027.

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

  itab_zycbe033-vbund   = /pws/zycbe001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  itab_zycbt036-tcode   = 'F-30'.

  itab_zycbt036-tabela  = 'ZYCBT002'.

  itab_zycbt036-cpochv  = itab_zycbe033-cpochv.

  if wa_zycbt001_pre-tpcontr ne 'PT'.

    itab_zycbt036-residuo = wa_zycbt001_pre-slvinc.

  else.

    read table itab_zycbt067 with key /pws/zycbe001-nrseqc.

    itab_zycbt036-residuo = itab_zycbt067-vlme.

  endif.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB001I01

 

...

      v_dtfinal = itab_zycbt002-dtfinal.

      if v_dtfinal is initial.

        v_dtfinal = v_dtaux.

      endif.

      if itab_zycbt002-nrdias eq '00000' and

        itab_zycbt002-dtinicio = itab_zycbt002-dtfinal.

        delete itab_zycbt002.

      endif.

    endloop.

  elseif sy-dynnr eq '0114'.

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

    select * from /pws/zycbt006 into table itab_zycbt006

             where nrseqc = /pws/zycbe001-nrseqc.

* << Fim da inclusão

    loop at itab_zycbt216.

      perform dias_juros_esc.

      modify itab_zycbt216.

      v_dtfinal = itab_zycbt216-dtfinal.

      if v_dtfinal is initial.

        v_dtfinal = v_dtaux.

      endif.

      if itab_zycbt216-nrdias eq '00000' and

        itab_zycbt216-dtinicio = itab_zycbt216-dtfinal.

        delete itab_zycbt216.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB001O01

 

...

            screen-required = 0.

            modify screen.

          endif.

        endif.

        if screen-name eq 'OBJRES'.

          screen-input = 1.

          modify screen.

        endif.

    endcase.

  endloop.

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

  if ( sy-tcode ne '/PWS/ZYCB001_E' and v_status_s ne '0' ) or

       v_status_s = '1'.

     loop at screen.

        if screen-name eq '/PWS/ZYCBE001-VBUND'.

           if not wa_zyglt009-flag_soc_parceir is initial.

              screen-input = '1'.

           else.

              clear /pws/zycbe001-vbund.

              screen-input = '0'.

           endif.

        endif.

        modify screen.

     endloop.

  endif.

* << Fim da inclusão

endmodule.

module status_0800 output.

  set pf-status '0108'.

endmodule.

module preenche_dados output.

  if sy-dynnr eq '0108'.

    if wa_zycbt074 is initial.

      select single * from /pws/zycbt074

             into corresponding fields of wa_zycbt074

                     where nrseqc = v_nrseqc.

...

 

...

    modify screen.

  endloop.

  if v_status_s200 = 0.

    loop at screen.

      screen-input = 0.

      modify screen.

    endloop.

  elseif v_status_s200 = 1.

    loop at screen.

      screen-input = 1.

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

      modify screen.

    endloop.

  endif.

  if v_status_s200 = 1.

     loop at screen.

        if screen-name eq '/PWS/ZYCBE004-VBUND'.

           if not wa_zyglt009-flag_soc_parceir is initial.

              screen-input = '1'.

           else.

              clear /pws/zycbe004-vbund.

              screen-input = '0'.

           endif.

        endif.

* << Fim da inclusão

      modify screen.

    endloop.

  endif.

endmodule.

module set_status output.

  if v_status_s eq '0'.

    set pf-status '0114' excluding 'SAVE'.

  else.

    set pf-status '0114'.

  endif.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB001TOP

 

...

  v_beln             like /pws/zycbt004-belnr,

  v_altcanc(1),

  v_altliq(1),

  v_numseq           like /pws/zycbt091-nrseql,

  v_altval(1),

  v_vlliq_me         like /pws/zycbt091-vlme,

  v_vlliq_mi         like /pws/zycbt091-vlmi,

  v_juros_ok(1),

  v_parc_ant         like /pws/zycbt091-nrseql,

  v_encerrado,

* >> Início da inclusão:

  v_desm_acc_dp      type c,

* << Fim da inclusão

  v_dtlanc           like sy-datum,

  v_monat            like t001b-frpe1,

  v_ano              like  t009b-bdatj,

  v_jur_est          like /pws/zycbt004-vlme,

  v_belnr_cl         like /pws/zycbt001-belnr,

  v_belnr_est        like /pws/zycbt001-belnr,

  v_dtpag            like /pws/zycbt004-dtpagto,

  v_nrdiascontr      type i,

  v_altdesp(1)       type c,

  v_est_aprov        type c,

...

 

 

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

Modificações efetuadas em REPS /PWS/ZYCBR056

 

...

       tables

            account         = itab_zyglt316

       exceptions

            key_not_found   = 1

            rules_not_found = 2

            others          = 3.

  if sy-subrc eq 0 .

    read table itab_zyglt316 index 1.

    itab_zycbe033-agkon = itab_zyglt316-konth.

  endif.

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

  itab_zycbe033-vbund = /pws/zycbt001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  if v_codaux3                  eq 'ACC' and

     /pws/zyglt009-cont_rot_sep eq 'S'   and

     wa_zycbt007-fprovisao      eq 'C'.

    loop at itab_relat where tpjuros = 'A'.

      itab_zycbt036-tcode   = 'F-30'.

      itab_zycbt036-tabela  = '/PWS/ZYCBT001'.

      itab_zycbt036-cpochv  = p_nrseqc.

      itab_zycbt036-belnr   = itab_relat-belnr.

      itab_zycbt036-dtdocto = itab_relat-budat.

...

 

...

  else.

    perform verify_null_field using v_cta_desp

                                      'D_NEWKO'

                                      text-015.

    itab_zycbe033-d_newko = v_cta_desp.

    perform verify_null_field using v_cta_prov

                                      'C_NEWKO'

                                      text-013.

    itab_zycbe033-c_newko = v_cta_prov.

  endif.

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

  itab_zycbe033-vbund = /pws/zycbt001-vbund.

* << Fim da inclusão

  append itab_zycbe033.

  perform verify_null_field using wa_zycbt011-koart

                                  'KOART'

                                  text-019.

  if itab_zycbt034[] is initial.

    call function '/PWS/ZYCB_TRANSACAO_F_02'

         exporting

              v_modo          = v_modo_bi

         tables

              t_dados         = itab_zycbe033

...

 

 

 

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

Modificações efetuadas em TABD /PWS/ZYCBT001

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCBT001

DESCRIÇÃO BREVE: CB - Captação de Contrato

 

CARACTERÍSTICAS

 

* INCLUIR O NOVO CAMPO NO FINAL DA TABELA

CAMPOS NOVOS

 

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

...

 

INSTITUICAO  /PWS/ZYGLL889

* >> Início da inclusão:

VBUND         RASSC           ''  ''    T880           ''            ''         T880

* << Fim da inclusão

 

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

Modificações efetuadas em TABD /PWS/ZYCBT004

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCBT004

DESCRIÇÃO BREVE: CB - Despesas

 

CARACTERÍSTICAS

 

* INCLUIR O NOVO CAMPO NO FINAL DA TABELA

CAMPOS NOVOS

 

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

...

 

FRGGR         FRGGR

* >> Início da inclusão:

VBUND         RASSC           ''  ''    T880           ''            ''         T880

* << Fim da inclusão

 

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

Modificações efetuadas em TABD /PWS/ZYCBE001

 

MODIFICAR ESTRUTURA: /PWS/ZYCBE001

DESCRIÇÃO BREVE: CB - Captação de Contrato

 

COMPONENTES NOVOS

COMPONENTE:     TP. COMP:      TAB.VERIF.:       CPO.REF.:    AJUD. PESQU.

...

 

INSTITUICAO     /PWS/ZYGLL889

* >> Início da inclusão:

VBUND           RASSC          T880                           CSH_T880

* << Fim da inclusão

 

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

Modificações efetuadas em TABD /PWS/ZYCBE004

 

MODIFICAR ESTRUTURA: /PWS/ZYCBE004

DESCRIÇÃO BREVE: CB - Despesas

 

COMPONENTES NOVOS

COMPONENTE:     TP. COMP:      TAB.VERIF.:       CPO.REF.:    AJUD. PESQU.

...

 

FRGGR           FRGGR

* >> Início da inclusão:

VBUND           RASSC          T880                           CSH_T880

* << Fim da inclusão

 

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