CE PLUS - Nota 005469

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Rotina de Pagamento

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

Data/Hora Última Alteração: 10/03/2010 17:40:24

Descrição da Nota: DESENVOLVIMENTO ADICIONAL - SAÍDA DE PAGAMENTO UTILIZANDO CONTA CORRENTE

Sintoma

 

Desenvolvimento Adicional - Saída de pagamento utilizando conta corrente

 

Solução

 

Desenvolvimento Adicional - Saída de pagamento utilizando conta corrente

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 05469 Data: 14/12/2007 Hora: 18:51:06

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

 

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

Nota Número              : 05469

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00003

Agrupamento              : 00027

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

DESENVOLVIMENTO ADICIONAL - SAÍDA DE PAGAMENTO UTILIZANDO CONTA CORRENTE

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

Palavras Chave:

DESENVOLVIMENTO ADICIONAL - SAÍDA DE PAGAMENTO UTILIZANDO CONTA CORRENTE

 

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

Objetos da nota:

DYNP /PWS/SAPMZYCB115                        0201

DYNP /PWS/SAPMZYCB115                        0202

DYNP /PWS/SAPMZYCB115                        0203

DYNP /PWS/SAPMZYCB115                        0302

REPS /PWS/MZYCB115F01

REPS /PWS/MZYCB115F02

REPS /PWS/MZYCB115I01

REPS /PWS/MZYCB115O01

REPS /PWS/MZYCB115TOP

REPS /PWS/MZYCB115X01

REPT /PWS/SAPMZYCB115

TABD /PWS/ZYCBE134

TABD /PWS/ZYCBT134

 

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

05470  - 00001 - RELATÓRIO VALORES RECEBIDOS EM C/C NO EXTERIOR

05471  - 00002 - DEREX - AJUSTES PARA NOVA ORDEM DE PAGAMENTO

05475  - 00003 - RELATÓRIO DE PAGAMENTOS COM RECURSOS NO EXTERIOR

05478  - 00004 - DA - ASSOCIAÇÃO DE ORDENS DE PAGAMENTO

05479  - 00005 - CAPTAÇÂO - ORDEM DE PAGAMENTO

05482  - 00006 - VALORES MANTIDOS NO EXTERIOR - DA COMPLETO

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCB115                        0201

 

Solicitar arquivo para upload.

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCB115                        0202

 

Solicitar arquivo para upload.

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCB115                        0203

 

Solicitar arquivo para upload.

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCB115                        0302

 

Solicitar arquivo para upload.

 

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

Modificações efetuadas em REPS /PWS/MZYCB115F01

 

...

      APPEND itab_zycbt134_aux.

      READ TABLE itab_erro_s WITH KEY nrseq  = itab_zycbt134-nrseq

                                      tpproc = itab_zycbt134-tpproc.

      IF sy-subrc NE 0.

        DELETE itab_zycbt134.

        DELETE itab_zycbt134_g WHERE nrseq  = itab_zycbt134-nrseq

                                 AND tpproc = itab_zycbt134-tpproc.

        v_salvo = 'X'.

      ENDIF.

      IF itab_zycbt134-mdcorresp EQ 'ID'.

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

        LOOP AT itab_zycbt064

          WHERE nrboleto = itab_zycbt134-nrseq.

* << Fim da inclusão

        READ TABLE itab_zycbt118

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

              WITH KEY nrseq    = itab_zycbt134-nrcorresp

                       codmod   = 'I'

                       codmodul = itab_zycbt134-codmodul.

* << Fim da exclusão

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

                WITH KEY nrseq    = itab_zycbt064-nrchave.

* << Fim da inclusão

        MOVE itab_zycbt134-belnr_c TO itab_zycbt118-belnr_p.

        MODIFY itab_zycbt118 TRANSPORTING belnr_p

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

               WHERE nrseq    = itab_zycbt134-nrcorresp AND

                     codmod   = 'I'                     AND

                     codmodul = itab_zycbt134-codmodul.

* << Fim da exclusão

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

                 WHERE nrseq    = itab_zycbt064-nrchave.

        ENDLOOP.

* << Fim da inclusão

        MODIFY /pws/zycbt118 FROM TABLE itab_zycbt118.

      ELSEIF itab_zycbt134-mdcorresp EQ 'CD'.

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

        LOOP AT itab_zycbt064

          WHERE nrboleto = itab_zycbt134-nrseq.

* << Fim da inclusão

        READ TABLE itab_zycbt118

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

              WITH KEY nrseq    = itab_zycbt134-nrcorresp

                       codmod   = 'F'

                       codmodul = itab_zycbt134-codmodul.

* << Fim da exclusão

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

                WITH KEY nrseq    = itab_zycbt064-nrchave.

* << Fim da inclusão

        MOVE itab_zycbt134-belnr_c TO itab_zycbt118-belnr_p.

        MODIFY itab_zycbt118 TRANSPORTING belnr_p

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

               WHERE nrseq    = itab_zycbt134-nrcorresp AND

                     codmod   = 'F'                     AND

                     codmodul = itab_zycbt134-codmodul.

* << Fim da exclusão

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

                 WHERE nrseq    = itab_zycbt064-nrchave.

        ENDLOOP.

* << Fim da inclusão

        MODIFY /pws/zycbt118 FROM TABLE itab_zycbt118.

      ELSEIF itab_zycbt134-mdcorresp EQ 'ED'.

        READ TABLE itab_zycbt031 WITH KEY

          nrseq = itab_zycbt134-nrseq.

        IF sy-subrc = 0.

          LOOP AT itab_zycbt064 WHERE nrboleto = itab_zycbt031-nrseq.

            READ TABLE itab_zycbt004 WITH KEY

               nrseqc = itab_zycbt064-nrchave

               tpdesp = itab_zycbt064-tpdesp

               nrparc = itab_zycbt064-nrparc

...

 

...

    ENDIF.

    SELECT waersb

           UP TO 1 ROWS

           FROM /pws/zycbt007

           INTO itab_zycbt134_g-waersb

           WHERE bukrs = itab_zycbt134_g-bukrs.

    ENDSELECT.

    APPEND itab_zycbt134_g.

  ENDLOOP.

  PERFORM verifica_regime_caixa.

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

  CLEAR: itab_zycbt134_v.

  REFRESH: itab_zycbt134_v.

  SELECT * INTO TABLE itab_zycbt134_v

  FROM /pws/zycbt134

  FOR ALL ENTRIES IN itab_zycbt134_g

  WHERE nrseq    = itab_zycbt134_g-nrseq

    AND dtboleto = itab_zycbt134_g-dtboleto

    AND tpproc   = itab_zycbt134_g-tpproc.

  LOOP AT itab_zycbt134_g.

    READ TABLE itab_zycbt134_v WITH KEY

                                 nrseq    = itab_zycbt134_g-nrseq

                                 dtboleto = itab_zycbt134_g-dtboleto

                                 tpproc   = itab_zycbt134_g-tpproc.

    IF sy-subrc = 0.

      DELETE itab_zycbt134_g WHERE nrseq    = itab_zycbt134_g-nrseq

                               AND dtboleto = itab_zycbt134_g-dtboleto

                               AND tpproc   = itab_zycbt134_g-tpproc.

    ENDIF.

  ENDLOOP.

* << Fim da exclusão

  IF itab_zycbt134_g[] IS INITIAL.

    MESSAGE w023.

    pressed_tab = 'FC_SELE'.

    dynpronr    = '0200'.

  ELSE.

    SORT itab_zycbt134_g BY nrseq.

    v_pagos = ' '.

    PERFORM seleciona_dados_origem TABLES itab_zycbt134_g

                                   USING  v_pagos.

    LOOP AT itab_zycbt134_g.

      SELECT *

             UP TO 1 ROWS

             FROM /pws/zycbt134

             WHERE nrseq    = itab_zycbt134_g-nrseq AND

                   dtboleto = itab_zycbt134_g-dtboleto AND

                   tpproc   = itab_zycbt134_g-tpproc.

      ENDSELECT.

      IF sy-subrc EQ 0 .

        DELETE itab_zycbt134_g.

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

      ENDIF.

    ENDLOOP.

    CLEAR: itab_zycbt134_v.

    REFRESH: itab_zycbt134_v.

    SELECT * INTO TABLE itab_zycbt134_v

    FROM /pws/zycbt134

    FOR ALL ENTRIES IN itab_zycbt134_g

    WHERE nrseq    = itab_zycbt134_g-nrseq

      AND dtboleto = itab_zycbt134_g-dtboleto

      AND tpproc   = itab_zycbt134_g-tpproc.

    LOOP AT itab_zycbt134_g.

      READ TABLE itab_zycbt134_v WITH KEY

                                   nrseq    = itab_zycbt134_g-nrseq

                                   dtboleto = itab_zycbt134_g-dtboleto

                                   tpproc   = itab_zycbt134_g-tpproc.

      IF sy-subrc = 0.

        DELETE itab_zycbt134_g WHERE nrseq    = itab_zycbt134_g-nrseq

                                AND dtboleto = itab_zycbt134_g-dtboleto

                                 AND tpproc   = itab_zycbt134_g-tpproc.

* << Fim da inclusão

      ENDIF.

    ENDLOOP.

    IF itab_zycbt134_g[] IS INITIAL.

      MESSAGE w023.

      pressed_tab = 'FC_SELE'.

      dynpronr    = '0200'.

    ENDIF.

  ENDIF.

ENDFORM.

FORM fill_data_f53.

...

 

...

    IF sy-subrc = 0.

      CLEAR v_cpochv.

      CONCATENATE itab_zycbt134-nrseq   itab_zycbt134-dtboleto

                  INTO v_cpochv.

      READ TABLE itab_zycbt032 WITH KEY tcode  = v_text

                                        tabela = text-067

                                        cpochv = v_cpochv

                                        tpmsg  = 'S'.

      IF sy-subrc = 0.

        v_belnr = itab_zycbt032-belnr.

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

        IF NOT v_ccexterior IS INITIAL.

          itab_zycbt134-BCO_CCME     = V_BCOCRED.

          itab_zycbt134-CONTA_CONTAB = V_CONTRAZAO.

          itab_zycbt134-WAERS_CCME   = V_MOEDA.

          IF NOT /pws/zycbt007-cont_disp IS INITIAL.

            IF V_30_PORC EQ 'X'.

              itab_zycbt134-DISPONIBILIDADE = '30'.

            ELSE.

              itab_zycbt134-DISPONIBILIDADE = '70'.

            ENDIF.

          ENDIF.

        ENDIF.

* << Fim da inclusão

        IF itab_zycbt134-mdcorresp EQ 'CP' AND NOT

           itab_zycbt032-belnr     IS INITIAL.

          itab_zycbt134-statusp   = text-079.

          itab_zycbt134-belnr_c   = itab_zycbt032-belnr.

          itab_zycbt134-dtlanc    = itab_zycbe033-budat.

          LOOP AT itab_zycbt064 WHERE nrboleto = itab_zycbt134-nrseq.

            IF itab_zycbt134-tpproc     = ' ' OR

                   itab_zycbt134-tpproc = 'PRINCIPAL'.

              LOOP AT itab_zycbt124 WHERE nrseq = itab_zycbt064-nrchave.

                itab_zycbt124-dtpagto  = itab_zycbt031-dtcredpr.

...

 

...

        itab_acerto_s-dtcont = sy-datum.

        itab_acerto_s-belnr  = v_belnr.

        itab_acerto_s-texto  = text-037.

        APPEND itab_acerto_s.

        MODIFY itab_zycbt134.

        IF /pws/zyglt009-arq_eletro = 'X'

           AND v_ccexterior IS INITIAL.

          PERFORM dados_arquivo_eletronico.

        ENDIF.

        PERFORM transacao_f04.

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

        IF NOT v_ccexterior IS INITIAL.

          PERFORM trata_dados_lanctos_ordens.

        ENDIF.

* << Fim da exclusão

      ELSE.

        PERFORM limpa_status.

        LOOP AT itab_zycbt032 WHERE cpochv = v_cpochv.

          MOVE-CORRESPONDING itab_zycbt134 TO itab_erro_s.

          itab_erro_s-dtcont    = sy-datum.

          itab_erro_s-belnr     = ''.

          itab_erro_s-msg1      = itab_zycbt032-msg(50).

          itab_erro_s-msg2      = itab_zycbt032-msg+50(50).

          APPEND itab_erro_s.

        ENDLOOP.

        CONCATENATE text-080 itab_zycbt134-nrseq text-081

                                    INTO v_msg SEPARATED BY space.

        MOVE-CORRESPONDING itab_zycbt134 TO itab_erro_s.

        itab_erro_s-dtcont    = sy-datum.

        itab_erro_s-belnr     = ''.

        itab_erro_s-msg1      = v_msg.

        APPEND itab_erro_s.

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

        IF NOT v_ccexterior IS INITIAL.

          PERFORM trata_estornos_boleto_ordem USING space.

        ENDIF.

* << Fim da exclusão

      ENDIF.

    ELSE.

      PERFORM limpa_status.

      LOOP AT itab_zycbt034.

        MOVE-CORRESPONDING itab_zycbt134 TO itab_erro_s.

        itab_erro_s-dtcont    = sy-datum.

        itab_erro_s-belnr     = ''.

        CONCATENATE text-264 itab_zycbt034-descricao text-265

                    INTO itab_erro_s-msg1 SEPARATED BY space.

        CONCATENATE text-266 text-267 v_evento

                    INTO itab_erro_s-msg2 SEPARATED BY space.

        APPEND itab_erro_s.

      ENDLOOP.

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

      IF NOT v_ccexterior IS INITIAL.

        PERFORM trata_estornos_boleto_ordem USING space.

* << Fim da exclusão

      ENDIF.

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

    ENDIF.

* << Fim da exclusão

  ELSE.

    PERFORM limpa_status.

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

    IF NOT v_ccexterior IS INITIAL.

      PERFORM trata_estornos_boleto_ordem USING space.

    ENDIF.

* << Fim da exclusão

  ENDIF.

  PERFORM limpa_itabs_contabil.

  IF itab_zycbt134-mdcorresp = 'EL'.

    PERFORM atualiza_docto_liq_el.

  ELSEIF itab_zycbt134-mdcorresp = 'EP'.

    PERFORM atualiza_docto_pres_ep.

  ENDIF.

ENDFORM.

FORM busca_divisao.

  DATA v_gsberf LIKE /pws/zycbt017-gsberf.

...

 

...

            ENDSELECT.

          ELSE.

            itab_zycbt036-dtdocto = itab_zycbt154-dtcont.

          ENDIF.

        ELSE.

          itab_zycbt036-dtdocto = itab_zycbt154-dtcont(4).

        ENDIF.

        APPEND itab_zycbt036.

      ENDLOOP.

    ELSEIF itab_zycbt134_sel-mdcorresp EQ 'CE'.

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

      IF v_mod = 'CO'.

* << Fim da inclusão

      LOOP AT itab_zycbt154

                    WHERE nrcorresp   EQ itab_zycbt134_sel-nrcorresp AND

                          codmod      EQ v_mdcorresp                 AND

                        ( codmodul    EQ 'C'                         OR

                          codmodul    EQ 'CD' )                      AND

                          belnr_cl    EQ space                       AND

                          tpcontr     EQ v_nrparcj.

        itab_zycbt036-tcode  = 'F-30'.

        itab_zycbt036-tabela = '/PWS/ZYCBT134'.

        itab_zycbt036-cpochv = itab_zycbt134_sel-nrseq.

...

 

...

                         gjahr = itab_zycbe033-budat.

            ENDSELECT.

          ELSE.

            itab_zycbt036-dtdocto = itab_zycbt154-dtcont.

          ENDIF.

        ELSE.

          itab_zycbt036-dtdocto = itab_zycbt154-dtcont(4).

        ENDIF.

        APPEND itab_zycbt036.

      ENDLOOP.

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

    ELSE.

* << Fim da exclusão

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

      ELSEIF v_mod = 'JU'.

* << Fim da inclusão

      LOOP AT itab_zycbt154

                    WHERE nrcorresp   EQ itab_zycbt134_sel-nrcorresp AND

                          codmod      EQ v_mdcorresp                 AND

                          codmodul(1) EQ itab_zycbt064-tpparc        AND

                          belnr_cl    EQ space                       AND

                          tpcontr     EQ v_nrparcj.

        itab_zycbt036-tcode  = 'F-30'.

        itab_zycbt036-tabela = '/PWS/ZYCBT134'.

        itab_zycbt036-cpochv = itab_zycbt134_sel-nrseq.

        itab_zycbt036-belnr  = itab_zycbt154-belnr_pr.

...

 

...

            ENDSELECT.

          ELSE.

            itab_zycbt036-dtdocto = itab_zycbt154-dtcont.

          ENDIF.

        ELSE.

          itab_zycbt036-dtdocto = itab_zycbt154-dtcont(4).

        ENDIF.

        APPEND itab_zycbt036.

      ENDLOOP.

    ENDIF.

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

    ENDIF.

* << Fim da inclusão

  ELSEIF v_mod = 'CI'.

    LOOP AT itab_zycbt154 WHERE

                        nrcorresp   = itab_zycbt134_sel-nrcorresp AND

                        codmod      = v_mdcorresp                 AND

                      ( codmodul    = 'CI'                        OR

                        codmodul    = 'CF' )                      AND

                        belnr_cl    = space                       AND

                        tpcontr     = v_nrparcj.

      itab_zycbt036-tcode  = 'F-30'.

      itab_zycbt036-tabela = '/PWS/ZYCBT134'.

...

 

...

                  ( codmodul  EQ 'C'                         OR

                    codmodul  EQ 'CD' )                      AND

                    belnr_cl  EQ space                       AND

                    tpcontr   EQ itab_zycbt001-tpcontr       AND

                    codint    EQ itab_zycbt064-nrparc.

              MOVE: itab_zycbt032-belnr TO itab_zycbt154-belnr_cl,

                    'E' TO itab_zycbt154-status.

              MODIFY itab_zycbt154 INDEX sy-tabix.

            ENDLOOP.

          ELSEIF itab_zycbt134_sel-mdcorresp EQ 'CE'.

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

            IF v_mod = 'CO'.

* << Fim da inclusão

            LOOP AT itab_zycbt154 WHERE

                           nrcorresp   = itab_zycbt134_sel-nrcorresp AND

                           codmod      = v_mdcorresp                 AND

                         ( codmodul  EQ 'C'                          OR

                           codmodul  EQ 'CD' )                       AND

                           belnr_cl    = space                       AND

                           tpcontr     = v_nrparcj.

              MOVE itab_zycbt032-belnr TO itab_zycbt154-belnr_cl.

              MODIFY itab_zycbt154 INDEX sy-tabix.

            ENDLOOP.

          ELSE.

            LOOP AT itab_zycbt154 WHERE

                           nrcorresp   = itab_zycbt134_sel-nrcorresp AND

                           codmod      = v_mdcorresp                 AND

                           codmodul(1) = itab_zycbt064-tpparc        AND

                           belnr_cl    = space                       AND

                           tpcontr     = v_nrparcj.

              MOVE itab_zycbt032-belnr TO itab_zycbt154-belnr_cl.

              MODIFY itab_zycbt154 INDEX sy-tabix.

            ENDLOOP.

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

            ENDIF.

* << Fim da inclusão

          ENDIF.

        ELSEIF v_mod = 'CI'.

          LOOP AT itab_zycbt154 WHERE

                        nrcorresp   = itab_zycbt134_sel-nrcorresp AND

                        codmod      = v_mdcorresp                 AND

                      ( codmodul    = 'CF'                        OR

                        codmodul    = 'CI' )                      AND

                        belnr_cl    = space                       AND

                        tpcontr     = v_nrparcj.

            MOVE itab_zycbt032-belnr TO itab_zycbt154-belnr_cl.

...

 

...

           v_mod = 'CO'.

          MOVE itab_zycbt032-belnr TO v_belnr_f_02j.

          READ TABLE itab_zycbt154 WITH KEY

                               codmod      = v_mdcorresp

                               nrcorresp   = itab_zycbt134_sel-nrcorresp

                               codmodul(1) = itab_zycbt064-tpparc

                               tpcontr     = v_nrparcj.

          IF sy-subrc = 0.

            MOVE: itab_zycbt032-belnr TO itab_zycbt154-belnr_pr,

                  itab_zycbt134_sel-vldif TO itab_zycbt154-vlme.

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

            itab_zycbt154-dtcont = itab_zycbt064-dtvencto.

* << Fim da exclusão

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

            itab_zycbt154-dtcont = itab_zycbe033-budat.

* << Fim da inclusão

            IF v_mod = 'JU'.

              itab_zycbt154-codmodul = 'JD'.

            ELSEIF v_mod = 'CO'.

              itab_zycbt154-codmodul = 'CD'.

            ENDIF.

            CLEAR itab_zycbt154-belnr_cl.

            APPEND itab_zycbt154.

            INSERT INTO /pws/zycbt154 VALUES itab_zycbt154.

            COMMIT WORK.

          ELSE.

...

 

...

              MOVE: itab_zycbt001-tpcontr  TO itab_zycbt154-tpcontr,

                    itab_zycbt031-dtcredpr TO itab_zycbt154-dtcont.

              IF itab_zycbt001-tpcontr(01) = 'P' OR

                 itab_zycbt001-tpcontr(01) = 'S' OR

                 itab_zycbt134_sel-mdcorresp EQ 'EO'.

                MOVE: itab_zycbt001-bconegoc TO itab_zycbt154-bco,

                      itab_zycbt031-nrparc   TO itab_zycbt154-codint.

              ENDIF.

            ELSE.

              MOVE: v_nrparcj TO itab_zycbt154-tpcontr.

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

              IF NOT itab_zycbt064-dtvencto IS INITIAL.

                MOVE: itab_zycbt064-dtvencto TO itab_zycbt154-dtcont.

              ELSE.

* << Fim da exclusão

                MOVE: itab_zycbt031-dtcredpr TO itab_zycbt154-dtcont.

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

              ENDIF.

* << Fim da exclusão

            ENDIF.

            APPEND itab_zycbt154.

            INSERT INTO /pws/zycbt154 VALUES itab_zycbt154.

            COMMIT WORK.

          ENDIF.

        ELSEIF v_mod = 'CI'.

          MOVE itab_zycbt032-belnr TO v_belnr_f_02i.

          READ TABLE itab_zycbt154 WITH KEY

                               codmod      = v_mdcorresp

                               nrcorresp   = itab_zycbt134_sel-nrcorresp

                               codmodul(1) = 'CI'

                               tpcontr     = v_nrparcj.

          IF sy-subrc = 0.

            MOVE: itab_zycbt032-belnr       TO itab_zycbt154-belnr_pr,

                  itab_zycbt134_sel-vldifir TO itab_zycbt154-vlme.

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

            itab_zycbt154-dtcont = itab_zycbt064-dtvencto.

* << Fim da exclusão

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

            itab_zycbt154-dtcont = itab_zycbe033-budat.

* << Fim da inclusão

            itab_zycbt154-codmodul = 'CF'.

            CLEAR itab_zycbt154-belnr_cl.

            APPEND itab_zycbt154.

            INSERT INTO /pws/zycbt154 VALUES itab_zycbt154.

            COMMIT WORK.

          ELSE.

            READ TABLE itab_zycbt128 WITH KEY

                                  nrseq = itab_zycbt134_sel-nrcorresp.

            MOVE: itab_zycbt128-tpemprest     TO itab_zycbt154-codint,

                  itab_zycbt128-bcofinan      TO itab_zycbt154-bco.

            itab_zycbt154-codmodul = 'CF'.

            itab_zycbt154-tpcontr  = v_nrparcj.

            CLEAR itab_zycbt154-belnr_cl.

            MOVE: v_mdcorresp                 TO itab_zycbt154-codmod,

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

                  itab_zycbt064-dtvencto      TO itab_zycbt154-dtcont,

* << Fim da exclusão

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

                  itab_zycbe033-budat         to itab_zycbt154-dtcont,

* << Fim da inclusão

                  itab_zycbe033-bukrs         TO itab_zycbt154-bukrs,

                  itab_zycbe033-d_gsber       TO itab_zycbt154-gsber,

                  itab_zycbe033-waers         TO itab_zycbt154-waers,

                  itab_zycbe033-c_newko       TO itab_zycbt154-c_newko,

                  itab_zycbe033-d_newko       TO itab_zycbt154-d_newko,

                 itab_zycbt134_sel-nrcorresp TO itab_zycbt154-nrcorresp,

                  itab_zycbt134_sel-vldifir   TO itab_zycbt154-vlme,

                  itab_zycbt134_sel-kursf     TO itab_zycbt154-kursf,

                  itab_zycbt032-belnr         TO itab_zycbt154-belnr_pr.

            APPEND itab_zycbt154.

...

 

...

        ELSEIF v_mod = 'IR'.

          MOVE itab_zycbt032-belnr TO v_belnr_f_02i.

          READ TABLE itab_zycbt154 WITH KEY

                               codmod      = v_mdcorresp

                               nrcorresp   = itab_zycbt134_sel-nrcorresp

                               codmodul(1) = 'I'

                               tpcontr     = v_nrparcj.

          IF sy-subrc = 0.

            MOVE: itab_zycbt032-belnr       TO itab_zycbt154-belnr_pr,

                  itab_zycbt134_sel-vldifir TO itab_zycbt154-vlme.

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

            itab_zycbt154-dtcont = itab_zycbt064-dtvencto.

* << Fim da exclusão

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

            itab_zycbt154-dtcont = itab_zycbe033-budat.

* << Fim da inclusão

            IF itab_zycbt134_sel-mdcorresp EQ 'EO'.

              itab_zycbt154-codmodul = 'CF'.

            ELSE.

              itab_zycbt154-codmodul = 'ID'.

            ENDIF.

            CLEAR itab_zycbt154-belnr_cl.

            APPEND itab_zycbt154.

            INSERT INTO /pws/zycbt154 VALUES itab_zycbt154.

            COMMIT WORK.

          ELSE.

...

 

...

              itab_zycbt154-tpcontr  = itab_zycbt001-tpcontr.

              itab_zycbt154-codint   = itab_zycbt064-nrparc.

              itab_zycbt154-bco      = itab_zycbt001-bcofinan.

              itab_zycbt154-gsber    = itab_zycbt001-gsber.

            ELSE.

              itab_zycbt154-codmodul = 'ID'.

              itab_zycbt154-tpcontr  = v_nrparcj.

            ENDIF.

            CLEAR itab_zycbt154-belnr_cl.

            MOVE: v_mdcorresp                 TO itab_zycbt154-codmod,

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

                  itab_zycbt064-dtvencto      TO itab_zycbt154-dtcont,

* << Fim da exclusão

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

                  itab_zycbe033-budat         to itab_zycbt154-dtcont,

* << Fim da inclusão

                  itab_zycbe033-bukrs         TO itab_zycbt154-bukrs,

                  itab_zycbe033-d_gsber       TO itab_zycbt154-gsber,

                  itab_zycbe033-waers         TO itab_zycbt154-waers,

                  itab_zycbe033-c_newko       TO itab_zycbt154-c_newko,

                  itab_zycbe033-d_newko       TO itab_zycbt154-d_newko,

                 itab_zycbt134_sel-nrcorresp TO itab_zycbt154-nrcorresp,

                  itab_zycbt134_sel-vldifir   TO itab_zycbt154-vlme,

                  itab_zycbt134_sel-kursf     TO itab_zycbt154-kursf,

                  itab_zycbt032-belnr         TO itab_zycbt154-belnr_pr.

            APPEND itab_zycbt154.

...

 

...

      IF NOT v_ccexterior IS INITIAL.

        IF v_moeda_ordem IS INITIAL.

          MESSAGE i061 WITH text-024.

          EXIT.

        ENDIF.

        PERFORM consiste_empresa_boleto CHANGING v_ok.

        CHECK v_ok IS INITIAL.

        IF NOT /pws/zyglt009-arq_eletro IS INITIAL.

          MESSAGE i061 WITH text-020 text-022.

        ENDIF.

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

        PERFORM seleciona_ordens_pagto.

        CHECK sy-ucomm NE 'CANCEL'.

        IF itab_zycbt232[] IS INITIAL.

          MESSAGE w061 WITH text-028.

          EXIT.

        ENDIF.

* << Fim da exclusão

      ENDIF.

      PERFORM gera_pagamento.

      PERFORM seleciona_lifnr.

    WHEN 'P-'.

      tc_boletos1-top_line = tc_boletos1-top_line - 13.

      IF tc_boletos1-top_line < 0.

        tc_boletos1-top_line = 1.

      ENDIF.

    WHEN 'P--'.

      tc_boletos1-top_line = 1.

...

 

...

         AND v_ccexterior IS INITIAL.

        MESSAGE i061 WITH text-258.

        EXIT.

      ENDIF.

      IF v_idconta IS INITIAL AND /pws/zyglt009-arq_eletro = 'X'

         AND v_ccexterior IS INITIAL.

        MESSAGE i061 WITH text-269.

        EXIT.

      ENDIF.

      IF NOT v_ccexterior IS INITIAL.

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

        PERFORM associa_ordens_boleto.

        PERFORM consiste_data_lancto_ordens CHANGING v_ok.

        CHECK v_ok IS INITIAL.

* << Fim da exclusão

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

        PERFORM consiste_data_lanc USING v_dtlanc.

        PERFORM consiste_conta_contabil.

* << Fim da inclusão

      ENDIF.

      PERFORM verifica_autorizacao.

      PERFORM salvar_dados.

    WHEN 'DELE'.

      PERFORM elimina_linha.

    WHEN 'P-'.

      tc_boletos2-top_line = tc_boletos2-top_line - 4.

      IF tc_boletos2-top_line < 0.

        tc_boletos2-top_line = 1.

      ENDIF.

...

 

...

      ok_code     = 'FC_GPAG'.

    ELSE.

      CLEAR ok_code.

    ENDIF.

  ENDIF.

ENDFORM.

FORM posiciona_registro.

  CALL SCREEN '0002' STARTING AT 16 12 ENDING AT 46 12.

ENDFORM.

FORM desmembra_docto_provisao_cp.

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

  DATA v_buzei LIKE /pws/zycbt124-buzei.

* << Fim da exclusão

  PERFORM clear_date_batch.

  SELECT *

         UP TO 1 ROWS

         FROM /pws/zycbt011

         INTO wa_zycbt011

         WHERE codmod  = 'F' AND

               codeven = '004P'.

  ENDSELECT.

  REFRESH itab_zyglt321.

  SELECT * FROM /pws/zyglt321

...

 

...

  LOOP AT itab_zycbt034.

    MOVE-CORRESPONDING itab_zycbt134 TO itab_erro_s.

    itab_erro_s-dtcont = sy-datum.

    itab_erro_s-belnr  = ''.

    CONCATENATE text-264 itab_zycbt034-descricao text-265

                INTO itab_erro_s-msg1 SEPARATED BY space.

    itab_erro_s-msg2   = text-266.

    APPEND itab_erro_s.

  ENDLOOP.

  IF itab_zycbt034[] IS INITIAL.

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

    MOVE sy-repid TO v_repid.

    CALL FUNCTION '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

         EXPORTING

              i_codmod                = 'F'

              i_func                  = v_repid

         TABLES

              itab_zyglt100           = itab_zyglt100

         EXCEPTIONS

              i_codmod_nao_encontrado = 1

              i_func_nao_encontrado   = 2

              i_zexit_nao_encontrado  = 3

              OTHERS                  = 4.

    READ TABLE itab_zyglt100 WITH KEY zexit = 'SPG006'.

    IF sy-subrc EQ 0 AND NOT itab_zyglt100-zexit_ativa IS INITIAL.

      PERFORM (itab_zyglt100-formulario)

      IN PROGRAM (itab_zyglt100-programa).

    ELSE.

* << Fim da inclusão

    CALL FUNCTION '/PWS/ZYCA_TRANSACAO_F_51Q'

         EXPORTING

              v_modo          = v_modo_bi

              v_buzei         = v_buzei

         IMPORTING

              v_dtlanc        = v_dtlanc2

         TABLES

              t_dados         = itab_zycbe033

              t_campo         = itab_zycbt034

              t_zycbt032      = itab_zycbt032

              t_zycbt036      = itab_zycbt036

         EXCEPTIONS

              campo_em_branco = 1

              periodo_fechado = 2

              OTHERS          = 3.

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

    ENDIF.

* << Fim da inclusão

    IF sy-subrc = 0.

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

                                        tabela = '/PWS/ZYCBT124'

                                        cpochv = itab_zycbt124-nrseq

                                        tpmsg  = 'S'.

      IF sy-subrc = 0.

        IF v_dtlanc2 NE itab_zycbt124-dtdocto AND

           NOT v_dtlanc2 = '00000000' AND

           NOT v_dtlanc2 = '        '.

          itab_zycbt124-dtdocto = v_dtlanc2.

...

 

...

        itab_acerto_s-belnr  = v_belnr.

        itab_acerto_s-texto  = text-037.

        APPEND itab_acerto_s.

        itab_zycbt134-zlsch  = /pws/zycbt145-zlsch.

        MODIFY itab_zycbt134.

        IF /pws/zyglt009-arq_eletro = 'X'

           AND v_ccexterior IS INITIAL.

          PERFORM dados_arquivo_eletronico.

        ENDIF.

        PERFORM transacao_f04.

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

        IF NOT v_ccexterior IS INITIAL.

          PERFORM trata_dados_lanctos_ordens.

        ENDIF.

* << Fim da exclusão

      ELSE.

        PERFORM limpa_status.

        LOOP AT itab_zycbt064 WHERE nrboleto = itab_zycbt134-nrseq.

          LOOP AT itab_zycbt124 WHERE buzei > 0

                                  AND belnr_f51 NE '0000000000'

                                  AND belnr_f51 NE '          '

                                  AND nrseq    EQ itab_zycbt064-nrchave.

            READ TABLE itab_zycat025 WITH KEY tpimp(4) = 'IRRF'

                                        nrseq = itab_zycbt134-nrcorresp.

            IF   sy-subrc NE 0 OR

...

 

...

          itab_erro_s-msg2   = itab_zycbt032-msg+50(50).

          APPEND itab_erro_s.

        ENDLOOP.

        CONCATENATE text-080 itab_zycbt134-nrseq text-081

                                    INTO v_msg SEPARATED BY space.

        MOVE-CORRESPONDING itab_zycbt134 TO itab_erro_s.

        itab_erro_s-dtcont = sy-datum.

        itab_erro_s-belnr  = ''.

        itab_erro_s-msg1   = v_msg.

        APPEND itab_erro_s.

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

      ENDIF.

* << Fim da exclusão

      IF NOT v_ccexterior IS INITIAL.

        PERFORM trata_estornos_boleto_ordem USING space.

      ENDIF.

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

      ENDIF.

* << Fim da inclusão

    ELSE.

      PERFORM limpa_status.

      LOOP AT itab_zycbt064 WHERE nrboleto = itab_zycbt134-nrseq.

        LOOP AT itab_zycbt124 WHERE buzei > 0

...

 

...

      LOOP AT itab_zycbt034.

        MOVE-CORRESPONDING itab_zycbt134 TO itab_erro_s.

        itab_erro_s-dtcont = sy-datum.

        itab_erro_s-belnr  = ''.

        CONCATENATE text-264 itab_zycbt034-descricao text-265

                    INTO itab_erro_s-msg1 SEPARATED BY space.

        CONCATENATE text-266 text-267 v_evento

                    INTO itab_erro_s-msg2 SEPARATED BY space.

        APPEND itab_erro_s.

      ENDLOOP.

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

    ENDIF.

* << Fim da exclusão

    IF NOT v_ccexterior IS INITIAL.

      PERFORM trata_estornos_boleto_ordem USING space.

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

      ENDIF.

* << Fim da inclusão

    ENDIF.

  ELSE.

    PERFORM limpa_status.

    LOOP AT itab_zycbt064 WHERE nrboleto = itab_zycbt134-nrseq.

      LOOP AT itab_zycbt124 WHERE buzei > 0

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB115F02

 

...

    CLEAR   itab_zyglt321.

    REFRESH itab_zyglt321.

    IF     itab_zycbt134-mdcorresp(1) = 'C'.

      READ TABLE itab_zycbt124 INDEX 1.

      IF itab_zycbt134-mdcorresp = 'CP' AND

         itab_zycbt124-tpoper = 'R'.

        SELECT *

               FROM /pws/zyglt321

               INTO TABLE itab_zyglt321

               WHERE ktosl   = 'RCF' AND

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

                     codeven = '009O'.

* << Fim da exclusão

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

                     codeven = '009'.

* << Fim da inclusão

      ELSE.

        SELECT *

               FROM /pws/zyglt321

               INTO TABLE itab_zyglt321

               WHERE ktosl   = 'DSF' AND

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

                     codeven = '009O'.

* << Fim da exclusão

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

                     codeven = '009'.

* << Fim da inclusão

      ENDIF.

    ELSEIF itab_zycbt134-mdcorresp(1) = 'E'.

      SELECT *

             FROM /pws/zyglt321

             INTO TABLE itab_zyglt321

             WHERE ktosl   = 'DSE' AND

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

                   codeven = '009O'.

* << Fim da exclusão

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

                     codeven = '009'.

* << Fim da inclusão

    ELSEIF itab_zycbt134-mdcorresp(1) = 'I'.

      SELECT *

             FROM /pws/zyglt321

             INTO TABLE itab_zyglt321

             WHERE ktosl   = 'DSI' AND

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

                   codeven = '009O'.

* << Fim da exclusão

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

                     codeven = '009'.

* << Fim da inclusão

    ENDIF.

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

      READ TABLE itab_zycbe035 INDEX 1.

* << Fim da inclusão

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

    CLEAR v_tabix.

    LOOP AT itab_zycbt232_assoc WHERE nrboleto = itab_zycbt134-nrseq

                                  AND tpproc   = itab_zycbt134-tpproc.

      v_tabix = v_tabix + 1.

      READ TABLE itab_zycbt226 WITH KEY

                                      nrseq = itab_zycbt232_assoc-nrseq.

      CHECK sy-subrc = 0.

      READ TABLE itab_zycbe035 WITH KEY

                                  cpochv = itab_zycbt232_assoc-nrseq.

      CHECK sy-subrc = 0.

* << Fim da exclusão

      LOOP AT itab_zyglt321.

        CASE itab_zyglt321-cpor3.

          WHEN 'SGTXT'.

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

            IF itab_zyglt321-cpocb = 'NRSEQ'.

              itab_zycbe035-c_sgtxt = itab_zycbt232_assoc-nrseq.

              itab_zycbe035-d_sgtxt = itab_zycbt232_assoc-nrseq.

            ELSEIF itab_zyglt321-cpocb = 'REF_OP'.

              itab_zycbe035-c_sgtxt = itab_zycbt226-ref_op.

              itab_zycbe035-d_sgtxt = itab_zycbt226-ref_op.

            ELSEIF itab_zyglt321-cpocb = 'OBS'.

              itab_zycbe035-c_sgtxt = itab_zycbt226-obs.

              itab_zycbe035-d_sgtxt = itab_zycbt226-obs.

            ELSEIF itab_zyglt321-cpocb = 'NRBOLETO'.

              itab_zycbe035-c_sgtxt = itab_zycbt232_assoc-nrboleto.

              itab_zycbe035-d_sgtxt = itab_zycbt232_assoc-nrboleto.

* << Fim da exclusão

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

            IF itab_zyglt321-cpocb = 'NRCORRESP'.

              itab_zycbe035-c_sgtxt = itab_zycbt031-NRCORRESP.

              itab_zycbe035-d_sgtxt = itab_zycbt031-nrcorresp.

            ELSEIF itab_zyglt321-cpocb = 'NRSEQ'.

              itab_zycbe035-c_sgtxt = itab_zycbt031-nrseq.

              itab_zycbe035-d_sgtxt = itab_zycbt031-nrseq.

* << Fim da inclusão

            ELSEIF itab_zyglt321-cpocb IS INITIAL AND

               NOT itab_zyglt321-descr IS INITIAL.

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

              itab_zycbe035-c_sgtxt = itab_zyglt321-descr.

              itab_zycbe035-d_sgtxt = itab_zyglt321-descr.

* << Fim da exclusão

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

              itab_zycbe035-c_sgtxt = wa_zycbt011-txtdesc.

              itab_zycbe035-d_sgtxt = wa_zycbt011-txtdesc.

* << Fim da inclusão

            ENDIF.

          WHEN 'XBLNR'.

            IF itab_zyglt321-cpocb = 'NRSEQ'.

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

              WRITE itab_zycbt232_assoc-nrseq TO v_xblnr NO-ZERO.

* << Fim da exclusão

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

              WRITE itab_zycbt031-nrseq TO v_xblnr NO-ZERO.

* << Fim da inclusão

              CONDENSE v_xblnr.

              CONCATENATE sy-uzeit+2(2) ':' sy-uzeit+4(2)

                          INTO itab_zycbe033-xblnr.

              CONCATENATE v_xblnr itab_zycbe033-xblnr

                          INTO itab_zycbe033-xblnr SEPARATED BY space.

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

            ELSEIF itab_zyglt321-cpocb = 'NRBOLETO'.

              WRITE itab_zycbt232_assoc-nrboleto TO v_xblnr NO-ZERO.

* << Fim da exclusão

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

            ELSEIF itab_zyglt321-cpocb = 'NRCORRESP'.

              WRITE itab_zycbt031-nrcorresp TO v_xblnr NO-ZERO.

* << Fim da inclusão

              CONDENSE v_xblnr.

              CONCATENATE sy-uzeit+2(2) ':' sy-uzeit+4(2)

                          INTO itab_zycbe033-xblnr.

              CONCATENATE v_xblnr itab_zycbe033-xblnr

                          INTO itab_zycbe033-xblnr SEPARATED BY space.

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

            ELSEIF itab_zyglt321-cpocb IS INITIAL AND

                   NOT itab_zyglt321-descr IS INITIAL.

              itab_zycbe033-xblnr = itab_zyglt321-descr.

* << Fim da exclusão

            ENDIF.

          WHEN 'ZFBDT'.

            IF itab_zyglt321-cpocb = 'DTINCL'.

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

              itab_zycbe035-zfbdt = itab_zycbt226-dtincl.

            ELSEIF itab_zyglt321-cpocb = 'DTLANCTO'.

              itab_zycbe035-zfbdt = itab_zycbt226-dtlancto.

            ELSEIF itab_zyglt321-cpocb = 'DTLIMITE'.

              itab_zycbe035-zfbdt = itab_zycbt226-dtlimite.

            ELSEIF itab_zyglt321-cpocb = 'DTLANCTO_SAIDA'.

              itab_zycbe035-zfbdt = itab_zycbt232_assoc-dtlancto_saida.

            ELSEIF itab_zyglt321-cpocb = 'DTINCL_031'.

* << Fim da exclusão

              itab_zycbe035-zfbdt = itab_zycbt031-dtincl.

            ELSEIF itab_zyglt321-cpocb = 'DTBOLETO'.

              itab_zycbe035-zfbdt = itab_zycbt031-dtboleto.

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

            ENDIF.

          WHEN 'ZUONR'.

            IF itab_zyglt321-cpocb = 'NRSEQ'.

              itab_zycbe035-c_zuonr = itab_zycbt031-nrseq.

              itab_zycbe035-d_zuonr = itab_zycbt031-nrseq.

            ELSEIF itab_zyglt321-cpocb = 'NRCORRESP'.

              itab_zycbe035-d_zuonr = itab_zycbt031-nrcorresp.

              itab_zycbe035-c_zuonr = itab_zycbt031-nrcorresp.

* << Fim da inclusão

            ENDIF.

          WHEN 'VALUT'.

            IF itab_zyglt321-cpocb = 'DTINCL'.

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

              itab_zycbe035-c_valut = itab_zycbt226-dtincl.

            ELSEIF itab_zyglt321-cpocb = 'DTLANCTO'.

              itab_zycbe035-c_valut = itab_zycbt226-dtlancto.

            ELSEIF itab_zyglt321-cpocb = 'DTLIMITE'.

              itab_zycbe035-c_valut = itab_zycbt226-dtlimite.

            ELSEIF itab_zyglt321-cpocb = 'DTLANCTO_SAIDA'.

             itab_zycbe035-c_valut = itab_zycbt232_assoc-dtlancto_saida.

            ELSEIF itab_zyglt321-cpocb = 'DTINCL_031'.

* << Fim da exclusão

              itab_zycbe035-c_valut = itab_zycbt031-dtincl.

            ELSEIF itab_zyglt321-cpocb = 'DTBOLETO'.

              itab_zycbe035-c_valut = itab_zycbt031-dtboleto.

            ENDIF.

        ENDCASE.

      ENDLOOP.

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

      CONCATENATE 'OP' itab_zycbt232_assoc-nrseq INTO

                   itab_zycbe035-c_zuonr SEPARATED BY space.

* << Fim da exclusão

      CLEAR v_cpochv.

      itab_zycbe035-mandt  = sy-mandt.

      itab_zycbe035-tcode  = 'F-51'.

      itab_zycbe035-tabela = text-067.

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

      CONCATENATE itab_zycbt134-nrseq  itab_zycbt134-dtboleto

                  INTO v_cpochv.

      itab_zycbe035-cpochv = v_cpochv.

* << Fim da exclusão

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

      itab_zycbe035-cpochv = itab_zycbe033-cpochv.

* << Fim da inclusão

      itab_zycbe035-bschl = '50'.

      itab_zycbe033-newbs = '50'.

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

      itab_zycbe035-wrbtr = itab_zycbt232_assoc-vlr_associado.

      itab_zycbe035-waers = itab_zycbt232_assoc-waers.

      MODIFY itab_zycbe035 INDEX v_tabix.

    ENDLOOP.

    itab_zycbe033-gsber = itab_zycbt134-gsber.

* << Fim da exclusão

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

      itab_zycbe035-wrbtr = itab_zycbt134-VL_PAGTO.

      itab_zycbe035-waers = v_moeda.

      MODIFY itab_zycbe035 INDEX 1.

* << Fim da inclusão

  ELSE.

    IF itab_zycbt134-mdcorresp = 'CP'.

      CLEAR   itab_zyglt321.

      REFRESH itab_zyglt321.

      SELECT *

             FROM /pws/zyglt321

             INTO TABLE itab_zyglt321

             WHERE ktosl   = 'DSF' AND

                   codeven = '009'.

      READ TABLE itab_zycbt124 WITH KEY

...

 

...

          ENDIF.

        ENDIF.

      ENDIF.

    ENDLOOP.

  ELSE.

    PERFORM trata_estornos_boleto_ordem USING space.

  ENDIF.

  COMMIT WORK.

ENDFORM.

FORM seleciona_contas_ordens.

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

  LOOP AT itab_zycbt232_assoc WHERE nrboleto = itab_zycbt134-nrseq

                                AND tpproc   = itab_zycbt134-tpproc.

    READ TABLE itab_zycbt226 WITH KEY nrseq = itab_zycbt232_assoc-nrseq.

    IF sy-subrc = 0.

      IF itab_zycbt226-destino = 30.

        PERFORM busca_conta_bco_me_mi USING    'C'

                                               itab_zycbt226-bukrs

                                               itab_zycbt226-bco_me

                                               itab_zycbt226-waers

                                      CHANGING itab_zycbe035-c_newko.

* << Fim da exclusão

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

  DATA:

    v_codaux1 type /pws/zygle316-codaux1,

    v_codaux2 type /pws/zygle316-codaux2.

* << Fim da inclusão

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

      ELSEIF itab_zycbt226-destino = 70.

        PERFORM busca_conta_bco_me_mi USING   'C'

                                              itab_zycbt226-bukrs

                                              itab_zycbt232_assoc-bco_mi

* << Fim da exclusão

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

  v_codaux1 = v_bcocred.

  V_codaux2 = v_moeda.

  SHIFT V_codaux1 LEFT DELETING LEADING '0'.

  IF wa_zycbt007-cont_disp EQ 'X'.

    IF V_70_PORC EQ 'X'.

      PERFORM busca_conta_contabil

        USING 'C'

              'EMP1'

              'FBK'

              V_codaux1

              V_codaux2

              '70'

        CHANGING itab_zycbe033-c_newko.

      itab_zycbe035-c_newko = itab_zycbe033-c_newko.

      APPEND itab_zycbe035.

    ELSEIF V_30_PORC EQ 'X'.

      PERFORM busca_conta_contabil

        USING 'C'

              'EMP1'

              'FBK'

              V_codaux1

              V_codaux2

              '30'

        CHANGING itab_zycbe033-c_newko.

      itab_zycbe035-c_newko = itab_zycbe033-c_newko.

      APPEND itab_zycbe035.

    ENDIF.

  ELSE.

    PERFORM busca_conta_contabil

      USING 'C'

            'EMP1'

            'FBK'

            V_codaux1

            V_codaux2

* << Fim da inclusão

                                              space

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

                                      CHANGING itab_zycbe035-c_newko.

      ENDIF.

      itab_zycbe035-cpochv  = itab_zycbt232_assoc-nrseq.

* << Fim da exclusão

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

      CHANGING itab_zycbe033-c_newko.

    itab_zycbe035-c_newko = itab_zycbe033-c_newko.

* << Fim da inclusão

      APPEND itab_zycbe035.

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

      itab_zycbe033-c_newko = itab_zycbe035-c_newko.

* << Fim da exclusão

    ENDIF.

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

  ENDLOOP.

* << Fim da exclusão

ENDFORM.

FORM consiste_data_lancto_ordens CHANGING p_ok.

...

 

...

            date_after_range             = 2

            date_before_range            = 3

            date_invalid                 = 4

            holiday_calendar_id_missing  = 5

            holiday_calendar_not_found   = 6

            OTHERS                       = 7.

  IF v_feriado = 'X'.

    v_dia_mont = v_dia_mont - 1.

  ENDIF.

ENDFORM.

* >> Início da inclusão:

form user_command_0302.

endform.

form busca_conta_contabil

  USING p_tipo     TYPE char1

        p_bukrs    TYPE /pws/zyglt316-bukrs

        p_chave    TYPE /pws/zyglt316-ktosl

        p_codaux1  TYPE /pws/zygle316-codaux1

        p_codaux2  TYPE /pws/zygle316-codaux2

        p_codaux3  TYPE /pws/zygle316-codaux3

  CHANGING p_conta.

  DATA: itab_zyglt316 TYPE STANDARD TABLE OF /pws/zyglt316,

        wa_zyglt316 LIKE LINE OF itab_zyglt316.

  CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'

       EXPORTING

            bukrs           = p_bukrs

            ktosl           = p_chave

            codaux1         = p_codaux1

            codaux2         = p_codaux2

            codaux3         = p_codaux3

       TABLES

            account         = itab_zyglt316

       EXCEPTIONS

            key_not_found   = 1

            rules_not_found = 2

            OTHERS          = 3.

  READ TABLE itab_zyglt316 INDEX 1 INTO wa_zyglt316.

  IF sy-subrc = 0.

    MOVE wa_zyglt316-konts TO p_conta.

  ELSE.

    CLEAR p_conta.

  ENDIF.

endform.

form consiste_data_lanc

     using

        p_dtlanc  TYPE /pws/zycbt134-dtlanc.

  CHECK NOT v_bcocred IS INITIAL.

  IF p_dtlanc IS INITIAL.

    MESSAGE e208.

    EXIT.

  ENDIF.

endform.

form consiste_conta_contabil.

  IF V_CONTRAZAO IS INITIAL.

    MESSAGE e061 WITH 'Conta Contábil Inválida.'(288).

  ENDIF.

endform.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCB115I01

 

...

    WHEN '0201'.

      PERFORM user_command_0201.

    WHEN '0202'.

      PERFORM user_command_0202.

    WHEN '0203'.

      PERFORM user_command_0203.

    WHEN '0300'.

      PERFORM user_command_0300.

    WHEN '0003'.

      PERFORM user_command_0003.

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

    WHEN '0302'.

      PERFORM user_command_0302.

* << Fim da inclusão

  ENDCASE.

ENDMODULE.

MODULE altera_itab_zycbt134 INPUT.

  PERFORM altera_itab_zycbt134.

ENDMODULE.

MODULE user_command_0002 INPUT.

  CASE ok_code.

    WHEN 'ENTE'.

      READ TABLE itab_zycbt134_pagos WITH KEY nrseq = v_nrbol.

      IF sy-subrc NE 0 AND NOT v_nrbol IS INITIAL.

...

 

...

  CHECK ok_code = 'FC_GPAG'.

  CLEAR:   itab_zycbt134, itab_zycbt232.

  REFRESH: itab_zycbt134, itab_zycbt232.

ENDMODULE.

module altera_itab_zycbt232_dados input.

  PERFORM altera_itab_zycbt232_dados.

endmodule.

MODULE ajuda_pesquisa_tipo_banco INPUT.

  PERFORM ajuda_pesquisa_tipo_banco.

ENDMODULE.

* >> Início da inclusão:

module altera_302 input.

 CHECK NOT v_bcocred IS INITIAL.

  DATA:

    v_codaux1 TYPE /pws/zygle316-codaux1,

    v_codaux2 TYPE /pws/zygle316-codaux2,

    v_codaux3 TYPE /pws/zygle316-codaux3.

  v_codaux1 = v_bcocred.

  v_codaux2 = v_moeda_ordem.

  IF NOT v_30_porc IS INITIAL.

    v_codaux3 = '30'.

  ELSEIF NOT v_70_porc IS INITIAL.

    v_codaux3 = '70'.

  ENDIF.

  SHIFT v_codaux1 LEFT DELETING LEADING '0'.

 IF /pws/zycbt007-cont_disp EQ 'X'.

  PERFORM busca_conta_contabil

      USING 'C'

            /pws/zycbe134-bukrs

            'FBK'

            v_codaux1

            v_codaux2

            v_codaux3

      CHANGING

            v_contrazao.

 ELSE.

  PERFORM busca_conta_contabil

      USING 'C'

            /pws/zycbe134-bukrs

            'FBK'

            v_codaux1

            v_codaux2

            space

      CHANGING

            v_contrazao.

 ENDIF.

endmodule.

module consiste_data_lancamento input.

 CHECK ts_saida-activetab EQ 'FC_EPAG'

   AND ok_code EQ 'EXEC'.

 CHECK NOT v_bcocred IS INITIAL.

 PERFORM consiste_data_lanc

    USING

     v_dtlanc.

endmodule.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCB115O01

 

...

             screen-name = 'Q_MOEDA'       OR

             screen-name = 'V_MOEDA_ORDEM'.

            screen-invisible = '1'.

            screen-input     = '0'.

            MODIFY SCREEN.

          ENDIF.

        ENDLOOP.

        v_30_porc = 'X'.

        v_70_porc = ' '.

      ENDIF.

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

      IF v_ccexterior = 'X'.

        IF /pws/zycbt007-cont_disp IS INITIAL.

          LOOP AT SCREEN.

            IF screen-name = 'Q_PORCENTAGEM' OR

               screen-name = 'V_30_PORC'     OR

               screen-name = 'V_70_PORC'.

               screen-invisible = '1'.

               screen-input     = '0'.

               MODIFY SCREEN.

            ENDIF.

          ENDLOOP.

          v_30_porc = 'X'.

          v_70_porc = ' '.

        ENDIF.

      ENDIF.

* << Fim da inclusão

    WHEN '0202'.

      IF itab_zycbt134_g-bukrs IS INITIAL.

        LOOP AT itab_zycbt134_g WHERE bukrs NE space.

          EXIT.

        ENDLOOP.

      ENDIF.

      SELECT arq_eletro

             UP TO 1 ROWS

             FROM /pws/zyglt009

             INTO /pws/zyglt009-arq_eletro

             WHERE bukrs = itab_zycbt134_g-bukrs.

      ENDSELECT.

      IF v_ccexterior = 'X'.

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

        v_subtela = '0300'.

* << Fim da exclusão

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

        v_subtela = '0302'.

* << Fim da inclusão

      ELSE.

        v_subtela = '0301'.

      ENDIF.

      LOOP AT SCREEN.

        IF v_ccexterior = 'X'              AND

           ( screen-name = 'Q_BANCO'       OR

             screen-name = 'V_BCOEMP'      OR

             screen-name = 'V_IDCONTA'     OR

             screen-name = 'V_DTPAGTO'     OR

             screen-name = 'V_BCOEMPT'     OR

...

 

...

             screen-name = 'V_PROPBCO'     OR

             screen-name = 'V_BCOEMP_TX'   OR

             screen-name = 'PROPBCO' ).

          screen-input = 0.

          screen-invisible = 1.

        ELSE.

          IF ( screen-name = 'V_BCOEMP'        OR

               screen-name = 'V_IDCONTA'       OR

               screen-name = 'V_DTPAGTO'       OR

               screen-name = 'V_BCOEMPT'       OR

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

               screen-name = 'V_BVTYP'         OR

* << Fim da inclusão

               screen-name = 'V_IDCONTAT'      OR

               screen-name = 'V_DTPAGTO_TXT' ) AND

               /pws/zyglt009-arq_eletro = ' '.

            screen-input = 0.

            screen-invisible = 1.

          ELSEIF ( screen-name = 'BCOCRED'    OR

                   screen-name = 'V_BCOCRED'  OR

                   screen-name = 'V_BCODESCR' OR

                   screen-name = 'V_PROPBCO'  OR

                   screen-name = 'PROPBCO' )  AND

...

 

...

MODULE status_0003 OUTPUT.

  CLEAR   itab_pf_status.

  REFRESH itab_pf_status.

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

    itab_pf_status-fcode = 'SAVE'.

    APPEND itab_pf_status.

  ENDIF.

  SET PF-STATUS '0003' EXCLUDING itab_pf_status.

  SET TITLEBAR  '0003'.

ENDMODULE.

* >> Início da inclusão:

module set_screen_302 output.

  CHECK ts_saida-ACTIVETAB EQ 'FC_EPAG'.

  LOOP AT SCREEN.

    IF screen-name = 'V_BCOCRED'.

      screen-input     = 1.

      MODIFY SCREEN.

    ENDIF.

    IF ( screen-name = 'V_CONTRAZAO' OR

         screen-name = 'V_MOEDA' ).

      screen-input     = 0.

      MODIFY SCREEN.

    ENDIF.

    IF screen-name = 'V_DTLANC'.

      screen-input     = 1.

      MODIFY SCREEN.

    ENDIF.

  ENDLOOP.

endmodule.

module carrega_302 output.

 MOVE:  v_moeda_ordem          TO v_moeda.

endmodule.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCB115TOP

 

...

  v_tot_pis_brl      LIKE /pws/zycbt031-vlmi,

  v_tot_cofins_brl   LIKE /pws/zycbt031-vlmi,

  v_meiopag          LIKE t042z-text1,

  v_reg1(6)          TYPE n,

  v_reg2(6)          TYPE n,

  v_nrbol            LIKE /pws/zycbt134-nrseq,

  v_pagos(1)         TYPE c,

  v_conta            LIKE bseg-hkont,

  v_zlsch            LIKE /pws/zycbt145-zlsch,

  v_flag(1)          TYPE n,

* >> Início da exclusão:

  v_dtlanc2(10)      TYPE c,

* << Fim da exclusão

  v_waersb           LIKE /pws/zycbt007-waersb,

  v_bukrs_aux        LIKE /pws/zycbt031-bukrs,

  v_bukrs_p          LIKE /pws/zycbt031-bukrs,

  v_index2           LIKE sy-index           ,

  v_cred_imp         LIKE /pws/zyglt009-cont_impostos,

  v_cod_mod          TYPE c VALUE 'E',

  v_exit             LIKE /pws/zyglt100-zexit VALUE 'SPG001',

  v_associado        type c,

  v_porcentagem(2)    TYPE c,

  v_propdcont(1)      TYPE c,

  v_propdcont2(1)     TYPE c,

  v_subtela(4)        TYPE n,

  v_bcopagto(10)      TYPE c,

  v_soma_bol          TYPE /pws/zycbe134-vlme,

  v_soma_ordem        TYPE /pws/zycbe134-vlme,

  v_saldo_boleto      TYPE /pws/zycbe134-vlme,

  v_moeda_ordem       TYPE /pws/zycbe134-waers,

* >> Início da inclusão:

  v_contrazao         TYPE /pws/zycbe134-conta_contab,

  v_moeda             TYPE /pws/zycbe134-waers,

* << Fim da inclusão

  v_bcooper1          TYPE /pws/zycbt031-bcooper,

  v_ok(1)             TYPE c,

  v_erro_bi           TYPE c,

  v_defator           TYPE tcurr-ffact,

  v_parafator         TYPE tcurr-tfact,

  v_txc               TYPE bkpf-kursf,

  v_nrseq             TYPE /pws/zycbt134-nrseq,

  v_tpproc            TYPE /pws/zycbt134-tpproc,

  wa_zycbt232         TYPE /pws/zycbt232,

  v_aux_ce            TYPE i,

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB115X01

 

...

        ok               TYPE c,

        mark.

DATA: END OF itab_zycbt232.

DATA: itab_zycbt232_assoc  LIKE itab_zycbt232 OCCURS 0 WITH HEADER LINE,

      itab_zycbt232_dados  LIKE itab_zycbt232 OCCURS 0 WITH HEADER LINE,

      itab_zycbt232_dados2 LIKE itab_zycbt232 OCCURS 0 WITH HEADER LINE.

DATA: v_ccbrasil           TYPE c,

      v_ccexterior         TYPE c,

      v_30_porc            TYPE c,

      v_70_porc            TYPE c.

* >> Início da inclusão:

DATA: v_buzei       TYPE /pws/zycbt124-buzei,

      v_dtlanc2(10) TYPE c.

* << Fim da inclusão

DATA: END OF COMMON PART.

 

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

Modificações efetuadas em REPT /PWS/SAPMZYCB115

 

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

Incluído símbolo de texto:

 

Idioma: PT

 

Símbolo: 288

 

Texto: (24 caracteres)

"Conta Contábil Inválida."

 

Comprimento máximo: 24

 

 

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

Modificações efetuadas em TABD /PWS/ZYCBE134

 

MODIFICAR ESTRUTURA: /PWS/ZYCBE134

DESCRIÇÃO BREVE: GL - Saída de Pagamento - Boletos

 

CAMPOS NOVOS

 

CAMPOS:            TP. CAMPO

 

BCO_CCME     /PWS/ZYCBL023

CONTA_CONTAB     SAKNR

WAERS_CCME     WAERS

DISPONIBILIDADE    /PWS/ZYGLL1346

 

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

Modificações efetuadas em TABD /PWS/ZYCBT134

 

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYCBT134

DESCRIÇÃO BREVE: GL - Saída de Pagamento - Boletos

 

CAMPOS NOVOS

 

CAMPOS:           TP. CAMPO       CH: INI:

 

BCO_CCME    /PWS/ZYCBL023   ' ' ' '

CONTA_CONTAB    SAKNR           ' ' ' '

WAERS_CCME    WAERS           ' ' ' '

DISPONIBILIDADE   /PWS/ZYGLL1346  ' ' ' '

DISPONIBILIDADE   /PWS/ZYGLL1346  ' ' ' '

DISPONIBILIDADE   /PWS/ZYGLL1346  ' ' ' '

DISPONIBILIDADE   /PWS/ZYGLL1346  ' ' ' '

DISPONIBILIDADE   /PWS/ZYGLL1346  ' ' ' '

DISPONIBILIDADE   /PWS/ZYGLL1346  ' ' ' '