CE PLUS - Nota 009700

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Rotina de Pagamento

Data/Hora da Publicação: 18/01/2010 00:00:00

Data/Hora Última Alteração: 18/02/2011 13:57:36

Descrição da Nota: COMPLEMENTO DO BOLETO, CAMPO DMBTR NA TELA DE CONTABILIZAÇÃO

Sintoma

Pagamento de juros contrato PT. Pelo fato da moeda da empresa ser USD e o lançamento também em USD o

BI não mostra o campo de Montante em MI (BSEG-DMBTR), porém o programa está mapeando este campo.

 

 

Solução

Tratamento para verificar se a Moeda da Empresa (T001-WAERS) é igual a Moeda do Lançamento, caso

sejam iguais, o Campo não será Mapeado.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

SAÍDA DE PAGAMENTO X ORDEM DE PAGAMENTO - F-30CAMPO WERKS(CENTRO)

PROCESSAR BOLETO

Informações Complementares

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

Nota Número 09700 Data: 18/01/2010 Hora: 14:18:06

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

 

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

Nota Número              : 09700

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 8.0

Pacote                   : 00002

Agrupamento              : 00005

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

Referência às notas relacionadas:

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

 

04503  - 00001 - 7.0    - 00002  - SAÍDA DE PAGAMENTO X ORDEM DE PAGAMENTO - F-30CAMPO WERKS(CENTRO)

06200  - 00002 - 7.0    - 00005  - PROCESSAR BOLETO

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

COMPLEMENTO DO BOLETO, CAMPO DMBTR NA TELA DE CONTABILIZAÇÃO

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

Palavras Chave:

COMPLEMENTO DO BOLETO, CAMPO DMBTR, CONTABILIZAÇÃO

 

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

Objetos da nota:

FUNC /PWS/ZYGL_TRANSACAO_F_02

REPS /PWS/LZYGLGF2F01

 

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

Modificações efetuadas em FUNC /PWS/ZYGL_TRANSACAO_F_02

 

...

           'BKPF-BKTXT' t_dados-bktxt,

           'RF05A-NEWBS' '40',

           'RF05A-NEWKO' t_dados-d_newko,

           'BDC_OKCODE' '/00'.

    if not t_dados-brnch is initial.

      perform bdc_field  using 'BKPF-BRNCH' t_dados-brnch.

    endif.

    write: t_dados-d_valut to v_data_val_char,

           t_dados-wrbtr to v_wrbtr currency t_dados-waers.

    perform bdc_screen using 'SAPMF05A' '0300'.

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

    if not t_dados-dmbtr is initial and

           t_dados-waers ne /pws/zycbt007-waersb.

* << Fim da exclusão

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

    read table itab_oculto with key campo = 'BSEG-DMBTR' chave = 'D'.

    if not t_dados-dmbtr is initial and sy-subrc ne 0.

* << Fim da inclusão

      write : t_dados-dmbtr to v_dmbtr currency t_dados-waersb.

      perform bdc_field  using:

        'BSEG-DMBTR' v_dmbtr.

    endif.

    perform bdc_field  using:

         'BSEG-WRBTR' v_wrbtr.

    read table itab_oculto with key campo = 'BSEG-ZFBDT' chave = 'D'.

    if sy-subrc <> 0.

      if not v_data_venc_char is initial.

        perform bdc_field using 'BSEG-ZFBDT' v_data_venc_char.

...

 

...

    clear v_emprsa.

    call customer-function '001'

         importing

              v_processa = v_emprsa.                        "#EC *

    if v_emprsa = 'X'.

      perform bdc_screen using 'SAPLKEAK' v_tela.

      perform bdc_field using 'BDC_OKCODE' 'WEIT'.

    endif.

    write: t_dados-c_valut to v_data_val_char.

    perform bdc_screen using 'SAPMF05A' v_tela.

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

    if not t_dados-dmbtr is initial and

           t_dados-waers ne /pws/zycbt007-waersb.

* << Fim da exclusão

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

    read table itab_oculto with key campo = 'BSEG-DMBTR' chave = 'C'.

    if not t_dados-dmbtr is initial and sy-subrc ne 0.

* << Fim da inclusão

      write : t_dados-dmbtr to v_dmbtr currency t_dados-waersb.

      perform bdc_field  using:

        'BSEG-DMBTR' v_dmbtr.

    endif.

    perform bdc_field  using:

           'BSEG-WRBTR' '*'.

    perform bdc_field  using:

           'BSEG-ZTERM' t_dados-zterm.

    if t_dados-agkoa <> 'D' and t_dados-agkoa <> 'K'.

      if not t_dados-c_valut is initial.

...

 

 

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

Modificações efetuadas em REPS /PWS/LZYGLGF2F01

 

...

              others      = 2.

  else.

    clear p_string.

  endif.

endform.

form trata_string_debito tables   p_t_dados structure /pws/zycbe033

                                  p_t_campo structure /pws/zycbt034

                                  p_itab_oculto like itab_oculto[]

                         using    value(p_string).

  data:

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

    v_string(50) type c.

* << Fim da exclusão

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

    v_string(50) type c,

    v_component(2) type c,

    v_bupla type i,

    v_secco type i.

* << Fim da inclusão

  move p_string to v_string.

  if v_string+6(1) = '+'.

    if p_t_dados-zterm = space.

      clear p_t_campo.

      read table p_t_campo with key campo = 'BSEG-ZTERM'.

      if sy-subrc <> 0.

        p_t_campo-mandt     = p_t_dados-mandt.

        p_t_campo-campo     = 'BSEG-ZTERM'.

        p_t_campo-descricao = text-032.

        append p_t_campo.

...

 

...

          move p_t_campo-conteudo to p_t_dados-werks.

          modify p_t_dados transporting werks.

          delete p_t_campo index sy-tabix.

          clear p_t_campo.

        endif.

      endif.

    endif.

  elseif v_string+25(1) = '-'.

    p_itab_oculto-campo = 'COBL-WERKS'.

    p_itab_oculto-chave = 'D'.

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

    append p_itab_oculto.

  endif.

  select single waers bukrs

    from t001

    into (t001-waers, t001-bukrs)

    where bukrs = p_t_dados-bukrs.

  if sy-subrc eq 0.

    if t001-waers eq p_t_dados-waers.

      p_itab_oculto-campo = 'BSEG-DMBTR'.

      p_itab_oculto-chave = 'D'.

      append p_itab_oculto.

      p_itab_oculto-campo = 'BSEG-DMBTR'.

      p_itab_oculto-chave = 'C'.

      append p_itab_oculto.

    endif.

  endif.

  call function 'J_1BSA_COMPONENT_ACTIVE'

       exporting

            bukrs                = t001-bukrs

            component            = '**'

       importing

            active_component     = v_component

       exceptions

            component_not_active = 01.

  if sy-subrc eq 0.

    v_bupla = 0.

    case v_component.

      when 'BR' or 'KR'.

        v_secco = 0.

      when 'TH'.

        if screen-name eq 'BSEG-SECCO'.

          v_secco = 4.

        endif.

      when 'IN'.

        if screen-name eq 'BSEG-SECCO'.

          v_secco = 4.

        endif.

      when others.

        v_bupla = 4.

        v_secco = 4.

    endcase.

  else.

    v_bupla = 4.

    v_secco = 4.

  endif.

  if v_bupla = 4.

    p_itab_oculto-campo = 'BSEG-BUPLA'.

    p_itab_oculto-chave = 'D'.

    append p_itab_oculto.

    p_itab_oculto-campo = 'BSEG-BUPLA'.

    p_itab_oculto-chave = 'C'.

    append p_itab_oculto.

  endif.

  if v_secco = 4.

    p_itab_oculto-campo = 'BSEG-SECCO'.

    p_itab_oculto-chave = 'D'.

    append p_itab_oculto.

    p_itab_oculto-campo = 'BSEG-SECCO'.

    p_itab_oculto-chave = 'C'.

* << Fim da inclusão

    append p_itab_oculto.

  endif.

endform.

form trata_string_debito2 tables   p_t_dados structure /pws/zycbe033

                                  p_t_campo structure /pws/zycbt034

                                  p_itab_oculto like itab_oculto2[]

                         using    value(p_string)

                                  value(p_conta).

  data:

    v_string(50) type c.

...