CE PLUS - Nota 004861

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Rotina de Pagamento

Data/Hora da Publicação: 28/09/2007 00:00:00

Data/Hora Última Alteração: 10/03/2010 17:09:12

Descrição da Nota: DA SAÍDA DE PAGAMENTO - COMPENSAÇÃO AUTOMÁTICA CC ME

Sintoma

 

Criar parâmetro para permitir lançar ou não lançar automaticamente compensação de Conta Corrente ME.

Efetuar tratamentos Saída de Pagamento na ida e no estorno.

 

Solução

 

DA Saída de Pagamento CC ME

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 04861 Data: 28/09/2007 Hora: 16:44:02

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

 

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

Nota Número              : 04861

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00003

Agrupamento              : 00015

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

DA SAÍDA DE PAGAMENTO - COMPENSAÇÃO AUTOMÁTICA CC ME

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

Palavras Chave:

DA SAÍDA DE PAGAMENTO COMPENSAÇÃO AUTOMÁTICA CC ME

CONTE CORRENTE ME

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

Objetos da nota:

DTEL /PWS/ZYGLL1359

DYNP /PWS/SAPMZYGL007                        0114

REPS /PWS/MZYCB115F01

REPS /PWS/MZYCB115F02

REPS /PWS/MZYCB115X01

REPS /PWS/MZYGL007I01

REPS /PWS/MZYGL007O01

REPS /PWS/MZYGL007TOP

TABD /PWS/ZYGLT009

 

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

Modificações efetuadas em DTEL /PWS/ZYGLL1359

 

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

Elemento de dados incluído: /PWS/ZYGLL1359

Classe de desenvolvimento: /PWS/ZYGL

Idioma original: PT

Descrição breve incluída: (45 caracteres), idioma: PT

"GL - Compensação Automática Conta Corrente ME"

Categoria de dados: Domínio

Domínio: XFELD

ID parâmetro:

Nome componente default:

Documentar modificações: NÃO

Nome da ajuda de pesquisa:

Parâmetro da ajuda de pesquisa:

Comprimento máximo do denominador breve: 10

Denominador breve incluído (10 caracteres), idioma: PT

"C.aut.CCME"

Comprimento máximo do denominador médio: 16

Denominador médio incluído (16 caracteres), idioma: PT

"Comp. Aut. CC ME"

Comprimento máximo do denominador longo: 34

Denominador longo incluído (34 caracteres), idioma: PT

"GL - Compensação Automática C/C ME"

Comprimento máximo do título: 45

Título incluído (45 caracteres), idioma: PT

"GL - Compensação Automática Conta Corrente ME"

 

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYGL007                        0114

 

 

Solicitar à equipe do produto/câmbio arquivo para upload da tela.

 

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB115F01

 

...

      APPEND itab_zycbt134_estorno_aux.

    ENDLOOP.

    DO 3 TIMES.

      IF NOT itab_zycbt134_estorno-belnrcomp     IS INITIAL OR

         NOT itab_zycbt134_estorno-belnrcompir   IS INITIAL OR

         NOT itab_zycbt134_estorno-belnrcompcide IS INITIAL.

        PERFORM estorna_documento_tesouraria.

      ENDIF.

    ENDDO.

    PERFORM executa_estorno.

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

    LOOP AT itab_zycbt134_estorno_aux.

* << Fim da exclusão

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

    LOOP AT itab_zycbt134_estorno_aux

                                WHERE nok IS initial.

* << Fim da inclusão

      DELETE itab_zycbt134_pagos

                 WHERE nrseq    = itab_zycbt134_estorno_aux-nrseq    AND

                       dtboleto = itab_zycbt134_estorno_aux-dtboleto AND

                       tpproc   = itab_zycbt134_estorno_aux-tpproc.

      CLEAR itab_zycbt134.

      READ TABLE itab_zycbt134_estorno

                 WITH KEY nrseq    = itab_zycbt134_estorno_aux-nrseq

                          dtboleto = itab_zycbt134_estorno_aux-dtboleto.

      IF sy-subrc EQ 0.

        MOVE itab_zycbt134_estorno TO itab_zycbt134_g.

        CLEAR: itab_zycbt134_g-statuspg, itab_zycbt134_g-mark,

               itab_zycbt134_g-bcocred.

        APPEND itab_zycbt134_g.

      ENDIF.

    ENDLOOP.

    SORT itab_zycbt134_g BY nrseq vlcide vlir.

    IF NOT itab_zycbt134_estorno_aux[] IS INITIAL.

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

      LOOP AT itab_zycbt134_estorno_aux.

* << Fim da exclusão

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

      LOOP AT itab_zycbt134_estorno_aux

                                WHERE nok IS initial.

* << Fim da inclusão

        IF itab_zycbt134_estorno_aux-mdcorresp EQ 'ID'.

          READ TABLE itab_zycbt118

                WITH KEY nrseq    = itab_zycbt134_estorno_aux-nrcorresp

                         codmod   = 'I'

                         codmodul = itab_zycbt134_estorno_aux-codmodul.

          MOVE itab_zycbt118-belnrdesp TO itab_zycbt118-belnr_p.

          MODIFY itab_zycbt118 TRANSPORTING belnr_p

               WHERE nrseq    = itab_zycbt134_estorno_aux-nrcorresp AND

                     codmod   = 'I'                                 AND

                     codmodul = itab_zycbt134_estorno_aux-codmodul.

...

 

...

  CLEAR: v_answer, ok_code.

ENDFORM.

FORM executa_estorno.

  DATA v_belnr_cl LIKE /pws/zycet010-belnr51.

  PERFORM verifica_documentos_clearing.

  SORT itab_zycbt134_estorno BY nrseq    ASCENDING

                                tpproc   ASCENDING

                                belnr_c  DESCENDING

                                belnr_ci DESCENDING.

  LOOP AT itab_zycbt134_estorno.

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

    CLEAR v_erro_bi.

* << Fim da inclusão

    SELECT *

           UP TO 1 ROWS

           FROM /pws/zycbt145

           WHERE nrseq EQ itab_zycbt134_estorno-nrseq.

    ENDSELECT.

    SELECT *

           UP TO 1 ROWS

           FROM /pws/zycbt007

           INTO wa_zycbt007

           WHERE bukrs EQ itab_zycbt134_estorno-bukrs.

...

 

...

               itab_zycbt133-vclear = 'X'.

              PERFORM fbra_clearing_emp.

            ENDIF.

          ENDIF.

        ENDIF.

      ENDIF.

      PERFORM fill_data_fbra.

    ENDIF.

    IF itab_zycbt134_estorno-mdcorresp = 'EP'.

      PERFORM doc_prest.

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

    ENDIF.

    IF NOT v_erro_bi IS INITIAL.

      itab_zycbt134_estorno_aux-nok = 'X'.

      MODIFY itab_zycbt134_estorno_aux TRANSPORTING nok

                      WHERE nrseq  = itab_zycbt134_estorno_aux-nrseq

                        AND tpproc = itab_zycbt134_estorno_aux-tpproc.

* << Fim da inclusão

    ENDIF.

  ENDLOOP.

ENDFORM.

FORM seleciona_lifnr.

  IF NOT itab_zycbt134_g[] IS INITIAL.

    SELECT lifnr umskz gjahr belnr

           FROM bsik

           INTO TABLE itab_bsik

           FOR ALL ENTRIES IN itab_zycbt134_g

           WHERE bukrs EQ itab_zycbt134_g-bukrs      AND

...

 

...

    ENDIF.

    READ TABLE itab_zycbt154 WITH KEY belnr_cl   = v_belnr.

    IF sy-subrc NE 0.

      READ TABLE itab_zycbt154 WITH KEY belnr_pr = v_belnr.

    ENDIF.

    IF sy-subrc NE 0.

      PERFORM trata_estornos_boleto_ordem USING 'X'.

      PERFORM limpa_itabs_contabil.

    ENDIF.

  ENDIF.

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

  CHECK v_erro_bi IS INITIAL.

* << Fim da inclusão

  v_ano1 = itab_zycbt134_estorno-dtlanc(4).

  PERFORM get_parameters_estorno.

  IF sy-index = 2.

    v_bcoc = itab_zycbt134_estorno-bcocredir.

  ELSE.

    v_bcoc = itab_zycbt134_estorno-bcocred.

  ENDIF.

  IF itab_zycbt134_estorno-mdcorresp = 'CP'.

    itab_zycbe033-belnr = itab_zycbt134_estorno-belnr_c.

    PERFORM verify_null_field USING itab_zycbt134_estorno-belnr_c

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB115F02

 

...

  IF sy-subrc = 0.

    IF itab_zycbe033-wrbtr > 0.

      itab_zycbe033-c_newko = itab_zyglt316-konts.

    ELSEIF itab_zycbe033-wrbtr < 0.

      itab_zycbe033-c_newko = itab_zyglt316-konth.

    ENDIF.

  ENDIF.

ENDFORM.

FORM desmembra_conta_corrente_me USING p_estorno.

  DATA: v_assoc_tot TYPE c.

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

  CHECK  NOT /pws/zyglt009-comp_aut_cc IS INITIAL.

* << Fim da inclusão

  PERFORM limpa_itabs_contabil.

  PERFORM get_parameters_ordem.

  itab_zycbe033-tcode  = 'F-30'.

  itab_zycbe033-tabela = 'ZYCBT134'.

  CONCATENATE itab_zycbt232_assoc-nrseq itab_zycbt232_assoc-nrboleto

              itab_zycbt232_assoc-tpproc

              INTO v_cpochv.

  itab_zycbe033-cpochv = v_cpochv.

  itab_zycbe033-bukrs    = itab_zycbt226-bukrs.

  PERFORM verify_null_field USING itab_zycbe033-bukrs

...

 

...

      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.

    v_erro_bi = 'X'.

  ENDIF.

ENDFORM.

FORM compensacao_doctos_boleto_orde.

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

  CHECK  NOT /pws/zyglt009-comp_aut_cc IS INITIAL.

* << Fim da inclusão

  PERFORM limpa_itabs_contabil.

  PERFORM get_parameters_ordem.

  itab_zycbe033-tcode  = 'F-30'.

  itab_zycbe033-tabela = 'ZYCBT134'.

  CONCATENATE itab_zycbt232_assoc-nrseq itab_zycbt232_assoc-nrboleto

              itab_zycbt232_assoc-tpproc

              INTO v_cpochv.

  itab_zycbe033-cpochv = v_cpochv.

  itab_zycbe033-budat = itab_zycbt232_assoc-dtlancto_saida.

  itab_zycbe033-bldat = itab_zycbt232_assoc-dtlancto_saida.

...

 

...

      CONCATENATE text-266 text-267 v_evento

                  INTO itab_erro_s-msg2 SEPARATED BY space.

      APPEND itab_erro_s.

    ENDLOOP.

    v_erro_bi = 'X'.

  ENDIF.

ENDFORM.

FORM efetua_estorno_bol_ordem USING p_estorno_bol.

  READ TABLE itab_zycbt226 WITH KEY nrseq = itab_zycbt232_assoc-nrseq.

  IF sy-subrc = 0.

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

    IF NOT itab_zycbt232_assoc-belnr_comp IS INITIAL.

* << Fim da exclusão

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

    IF NOT itab_zycbt232_assoc-belnr_comp IS INITIAL

       and not /pws/zyglt009-COMP_AUT_CC is initial.

* << Fim da inclusão

      IF itab_zycbt226-destino = '30'.

        PERFORM executa_fbra_fb08 USING

                                     'X'

                                     itab_zycbt232_assoc-bukrs

                                     itab_zycbt232_assoc-belnr_comp

                                     itab_zycbt232_assoc-dtlancto_comp

                                     'COMP'.

        IF v_erro_bi IS INITIAL.

          CLEAR: itab_zycbt232_assoc-belnr_comp,

                 itab_zycbt232_assoc-dtlancto_comp.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB115X01

 

...

      vlmicide    LIKE /pws/zycbt031-vlmicide,

      taxacide    LIKE /pws/zycbt031-taxacide,

      zlsch       LIKE /pws/zycbt145-zlsch,

      v_meiopag   LIKE t042z-text1,

      waersb      LIKE /pws/zycbt007-waersb,

      bcooper     LIKE /pws/zycbt031-bcooper,

      vlded       LIKE /pws/zycbt031-vldedirrf,

      pagtoirrf   LIKE /pws/zycbt031-pagtoirrf,

      controle(1) TYPE c,

      index(2)    TYPE n,

* >> Início da inclusão:

      nok(1)      TYPE c,

* << Fim da inclusão

      mark.

DATA: END OF itab_zycbt134_g.

DATA: itab_zycbt134 LIKE itab_zycbt134_g OCCURS 50

                                        WITH HEADER LINE.

DATA: itab_zycbt134_aux LIKE itab_zycbt134_g OCCURS 50

                                        WITH HEADER LINE.

DATA: itab_zycbt134_pagos LIKE itab_zycbt134_g OCCURS 50

                                        WITH HEADER LINE.

DATA: itab_zycbt134_pagos_aux LIKE itab_zycbt134_g OCCURS 50

                                        WITH HEADER LINE.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYGL007I01

 

...

  ELSEIF v_contaimp3 EQ 'X'.

    MOVE '3' TO /pws/zyglt009-cont_impostos.

  ENDIF.

ENDMODULE.

MODULE consiste_retencao INPUT.

  IF /pws/zycbt089-retencao_fatura < 0 OR

     /pws/zycbt089-retencao_fatura > 100.

    MESSAGE e015 WITH 'Entre com um valor entre 0 e 100.'(090).

  ENDIF.

ENDMODULE.

* >> Início da inclusão:

MODULE set_ccme INPUT.

  IF v_cc1 = 'X'.

    /pws/zyglt009-comp_aut_cc = 'X'.

  ELSE.

    CLEAR /pws/zyglt009-comp_aut_cc.

  ENDIF.

ENDMODULE.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYGL007O01

 

...

    CLEAR v_ctrl_ov1.

  ENDIF.

  IF /pws/zycbt089-cpo_ov_obrig = 'X'.

    v_ov_obrig1 = 'X'.

    CLEAR v_ov_obrig2.

  ELSEIF /pws/zycbt089-cpo_ov_obrig = ' '.

    v_ov_obrig2 = 'X'.

    CLEAR v_ov_obrig1.

  ENDIF.

ENDMODULE.

* >> Início da inclusão:

MODULE set_ccme OUTPUT.

  IF /pws/zyglt009-comp_aut_cc = 'X'.

    v_cc1 = 'X'.

    CLEAR v_cc2.

  ELSE.

    v_cc2 = 'X'.

    CLEAR v_cc1.

  ENDIF.

ENDMODULE.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYGL007TOP

 

...

      ref_fat             TYPE c,

      v_dr_sim            TYPE c,

      v_dr_nao            TYPE c,

      v_me                TYPE c,

      v_mi                TYPE c,

      v_dt_cred_vinc     TYPE c,

      v_contaimp1(1)     TYPE c,

      v_contaimp2(1)     TYPE c,

      v_contaimp3(1)     TYPE c,

      v_prov_prem(1)     TYPE c,

* >> Início da exclusão:

      v_prov_prem2(1)    TYPE c.

* << Fim da exclusão

* >> Início da inclusão:

      v_prov_prem2(1)    TYPE c,

      v_cc1(1)           TYPE c,

      v_cc2(1)           TYPE c.

* << Fim da inclusão

 

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

Modificações efetuadas em TABD /PWS/ZYGLT009

 

MODIFICAR TABELA TRANSPARENTE: /PWS/ZYGLT009

DESCRIÇÃO BREVE: GL - Parâm Gerais Câmbio -  continuação da ZYCBT007

 

CAMPOS NOVOS

 

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

COMP_AUT_CC  /PWS/ZYGLL1359  ' '  ' '

COMP_AUT_CC  /PWS/ZYGLL1359  ' '  ' '