CE PLUS - Nota 009893

Módulo: CÂMBIO FINANCEIRO

Funcionalidade: Rotina de Pagamento

Data/Hora da Publicação: 02/03/2010 00:00:00

Data/Hora Última Alteração: 18/02/2011 14:01:38

Descrição da Nota: COMPLEMENTO DO BOLETO - UTILIZAÇÃO DE MOEDAS INTERNAS SEM CASAS DECIMAIS

Sintoma

Algumas moedas internas que não possuem casas decimais estão com problema no complemento do boleto.

 

 

Solução

Tratamento dos campos para trabalho com moedas internas sem casas decimais.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

COMPLEMENTO DO BOLETO - ARMAZENAMENTO DE MENSAGENS

COMPLEMENTO DO BOLETO - DATA REPATRIAÇÃO DE ANO ANTERIOR CAMPO CHAVE

COTAÇÃO DE MOEDAS - DESENVOLVIMENTO ADICIONAL

REL. COMISSÃO DE AGENTE - BOLETO NA COMISSÃO DE AGENTE

REMESSA FINANCEIRA - COMPLEMENTO DO BOLETO - SAÍDA DE PAGAMENTO - F63

REMESSA - IMPOSTOS NOVOS

COMPLEMENTO DO BOLETO - AJUSTE EXIT BOTÕES ESPECÍFICOS

COMP.BOLETO- AO SAIR E SELECIONAR OUTRO BOLETO OS DADOS ESTÃO INCORRETOS

COMPLEMENTO DO BOLETO - REMESSA - APÓS ENTER EXIBE CAMPOS COM ASTERISCOS

CB - 445631 - CODE INSPECTOR E VERIFICAÇÃO AMPLIADA.

COMPLEMENTO DO BOLETO - INCLUSÃO DE NÚMERO DA COTAÇÃO EM TELA

COMPLEMENTO DO BOLETO - EXIT CBI008

COMPLEMENTO DO BOLETO - CAMPO EMPRESA PAGAMENTO

COMPLEMENTO DO BOLETO - BARRA DE ROLAGEM - DADOS PROCESSO

COTAÇÃO MOEDA - MODIFICAR/EXCLUIR

COMPLEMENTO DO BOLETO - BUSCA AUTOMATICA DA TAXA PELA OB08

FORMA DE PAGAMENTO NO COMPLEMENTO DE BOLETO

Informações Complementares

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

Nota Número 09893 Data: 02/03/2010 Hora: 16:26:19

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

 

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

Nota Número              : 09893

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 8.0

Pacote                   : 00002

Agrupamento              : 00011

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

Referência às notas relacionadas:

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

 

01231  - 00017 - 6.0    - 00023  - REMESSA - IMPOSTOS NOVOS

01709  - 00016 - 6.0    - 00024  - COMPLEMENTO DO BOLETO - BARRA DE ROLAGEM - DADOS PROCESSO

02872  - 00015 - 6.0    - 00026  - REMESSA FINANCEIRA - COMPLEMENTO DO BOLETO - SAÍDA DE PAGAMENTO -

03471  - 00014 - 7.0    - 00001  - COMP.BOLETO- AO SAIR E SELECIONAR OUTRO BOLETO OS DADOS ESTÃO INC

03889  - 00013 - 7.0    - 00001  - COMPLEMENTO DO BOLETO - INCLUSÃO DE NÚMERO DA COTAÇÃO EM TELA

03984  - 00012 - 7.0    - 00001  - COTAÇÃO DE MOEDAS - DESENVOLVIMENTO ADICIONAL

04094  - 00011 - 7.0    - 00002  - COMPLEMENTO DO BOLETO - BUSCA AUTOMATICA DA TAXA PELA OB08

04252  - 00010 - 7.0    - 00002  - COMPLEMENTO DO BOLETO - AJUSTE EXIT BOTÕES ESPECÍFICOS

04594  - 00009 - 7.0    - 00002  - COTAÇÃO MOEDA - MODIFICAR/EXCLUIR

06118  - 00008 - 7.0    - 00004  - CB - 445631 - CODE INSPECTOR E VERIFICAÇÃO AMPLIADA.

06497  - 00007 - 7.0    - 00005  - REL. COMISSÃO DE AGENTE - BOLETO NA COMISSÃO DE AGENTE

06677  - 00006 - 7.0    - 00005  - COMPLEMENTO DO BOLETO - EXIT CBI008

06903  - 00005 - 7.0    - 00006  - FORMA DE PAGAMENTO NO COMPLEMENTO DE BOLETO

08896  - 00004 - 7.0    - 00010  - COMPLEMENTO DO BOLETO - ARMAZENAMENTO DE MENSAGENS

09331  - 00003 - 8.0    - 00001  - COMPLEMENTO DO BOLETO - REMESSA - APÓS ENTER EXIBE CAMPOS COM AST

09344  - 00002 - 8.0    - 00001  - COMPLEMENTO DO BOLETO - CAMPO EMPRESA PAGAMENTO

09781  - 00001 - 8.0    - 00002  - COMPLEMENTO DO BOLETO - DATA REPATRIAÇÃO DE ANO ANTERIOR CAMPO CH

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

COMPLEMENTO DO BOLETO - UTILIZAÇÃO DE MOEDAS INTERNAS SEM CASAS DECIMAIS

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

Palavras Chave:

COMPLEMENTO DO BOLETO - UTILIZAÇÃO DE MOEDAS INTERNAS SEM CASAS DECIMAIS

 

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

Objetos da nota:

REPS /PWS/MZYCB110F01

REPS /PWS/MZYCB110I01

REPS /PWS/MZYCB110O01

 

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

Modificações efetuadas em REPS /PWS/MZYCB110F01

 

...

      itab_zycbt031_tc-belnr_p = itab_zycet033-docfat.

      perform carrega_dados_globais.

      append itab_zycbt031_tc.

    endif.

  endloop.

endform.

form calcula_vlmi.

  data: v_vlmeaux_ir   like /pws/zycbt031-vlme,

        v_vlmeaux_cide like /pws/zycbt031-vlme.

  data: v_tabix type sy-tabix.

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

  if v_taxa_alter_i ne 'X'.

    select single * from tcurx into wa_tcurx

                    where currkey = wa_zycbt007-waersb.

    if sy-subrc <> 0.

      wa_tcurx-currdec = 2.

    endif.

    if wa_tcurx-currdec = 0.

      /pws/zycbe031-vlmi = /pws/zycbe031-vlmi /

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

      /pws/zycbe031-vlmiir = /pws/zycbe031-vlmiir /

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

      /pws/zycbe031-vlmicide = /pws/zycbe031-vlmicide /

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

    endif.

  endif.

* << Fim da inclusão

  describe table itab_zycbt031_tc lines v_linha.

  loop at itab_zycbt031_tc.

    v_tabix = sy-tabix.

    if v_tabix = 1.

      clear: v_vlmi_tot,

             v_vlmiir_tot.

    endif.

    select single * from /pws/zycbt007

      where bukrs = /pws/zycbe031-bukrs.

    if not /pws/zycbt007-waersb is initial.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB110I01

 

...

                  where land1 = t001-land1

                    and zlsch = /pws/zycbe145-zlschc.

  if sy-subrc ne 0 and not /pws/zycbe145-zlschc is initial.

    message e061 with text-211 /pws/zycbe145-zlschc text-212.

  endif.

endmodule.

module calcula_vlmi input.

  perform calcula_vlmi.

endmodule.

module carrega_dados_tc input.

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

  select single * from tcurx into wa_tcurx

                  where currkey = wa_zycbt007-waersb.

  if sy-subrc <> 0.

    wa_tcurx-currdec = 2.

  endif.

  if wa_tcurx-currdec = 0.

    itab_dados_tc_tela-vlmi = itab_dados_tc_tela-vlmi /

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

  endif.

* << Fim da inclusão

  move-corresponding itab_dados_tc_tela to itab_dados_tc.

  modify itab_dados_tc index tc_dados-current_line.

endmodule.

module consiste_valores_dados_tc input.

  if v_dfact = 0.

    v_dfact = 1.

  endif.

  if v_pfact = 0.

    v_pfact = 1.

  endif.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB110O01

 

MODULE status_0200 OUTPUT.

  PERFORM exibe_altera.

ENDMODULE.

MODULE set_screen OUTPUT.

  PERFORM desabilitar.

ENDMODULE.

MODULE status_0001 OUTPUT.

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

  GET PARAMETER ID c_origem FIELD v_prog_origem."#EC *

* << Fim da exclusão

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

  get parameter id c_origem field v_prog_origem.            "#EC *

* << Fim da inclusão

  SET PF-STATUS '001'.

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

    SET TITLEBAR '001E'.

  ELSE.

    SET TITLEBAR '001'.

  ENDIF.

  PERFORM limpa_estrutura.

  IF v_init IS INITIAL.

    v_import = 'X'.

    v_cambio = 'X'.

...

 

...

  IF /pws/zycbe145-nrseq IS INITIAL.

    /pws/zycbe145-nrseq = /pws/zycbe031-nrseq.

  ENDIF.

  IF /pws/zycbe145 IS INITIAL.

    SELECT SINGLE * FROM /pws/zycbt145 INTO /pws/zycbe145

                    WHERE nrseq = /pws/zycbe031-nrseq.

  ENDIF.

  IF itab_zycbt064[] IS INITIAL.

    SELECT * FROM /pws/zycbt064

             INTO TABLE itab_zycbt064

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

             WHERE nrboleto = /pws/zycbe031-nrseq."#EC CI_NOFIRST

* << Fim da exclusão

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

             where nrboleto = /pws/zycbe031-nrseq.      "#EC CI_NOFIRST

* << Fim da inclusão

    PERFORM seleciona_dados_gerais.

  ENDIF.

  IF itab_zycbt031_tc[] IS INITIAL.

    PERFORM carrega_dados.

    itab_zycbt031_tc1[] = itab_zycbt031_tc[].

  ELSEIF NOT itab_zycbt031_tc[] IS INITIAL AND

         itab_zycbt031_tc1[] IS INITIAL.

    itab_zycbt031_tc1[] = itab_zycbt031_tc[].

  ENDIF.

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

  select single * from tcurx into wa_tcurx

                  where currkey = wa_zycbt007-waersb.

  if sy-subrc <> 0.

    wa_tcurx-currdec = 2.

  endif.

  if wa_tcurx-currdec = 0.

    /pws/zycbe031-vlmi = /pws/zycbe031-vlmi *

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

    /pws/zycbe031-vlmiir = /pws/zycbe031-vlmiir *

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

    /pws/zycbe031-vlmicide = /pws/zycbe031-vlmicide *

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

  endif.

* << Fim da inclusão

ENDMODULE.

MODULE status_0102 OUTPUT.

  SET TITLEBAR '0102'.

  SET SCREEN '0102'.

  SET PF-STATUS '0102'.

ENDMODULE.

MODULE status_0003 OUTPUT.

  SET PF-STATUS '0003'.

  SET TITLEBAR '0003'.

ENDMODULE.

...

 

...

        MODIFY tc_dados-cols FROM wa_cols.

      ENDIF.

    ENDLOOP.

  ELSE.

    LOOP AT tc_dados-cols INTO wa_cols.

      wa_cols-screen-input = '0'.

      MODIFY tc_dados-cols FROM wa_cols.

    ENDLOOP.

  ENDIF.

  SELECT SINGLE * FROM /pws/zycbt236 INTO /pws/zycbe236

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

    WHERE nrboleto = /pws/zycbe031-nrseq."#EC CI_NOFIRST

* << Fim da exclusão

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

    where nrboleto = /pws/zycbe031-nrseq.               "#EC CI_NOFIRST

* << Fim da inclusão

  IF sy-subrc EQ 0.

    IF v_prog_origem NE c_prog_cotacao.

      LOOP AT tc_dados-cols INTO wa_cols.

        wa_cols-screen-input     = '0'.

        MODIFY tc_dados-cols FROM wa_cols.

      ENDLOOP.

    ENDIF.

  ENDIF.

ENDMODULE.

MODULE insere_dados_tc OUTPUT.

  MOVE-CORRESPONDING itab_dados_tc TO itab_dados_tc_tela.

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

  select single * from tcurx into wa_tcurx

                  where currkey = wa_zycbt007-waersb.

  if sy-subrc <> 0.

    wa_tcurx-currdec = 2.

  endif.

  if wa_tcurx-currdec = 0.

    itab_dados_tc_tela-vlmi = itab_dados_tc_tela-vlmi *

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

  endif.

* << Fim da inclusão

  tc_dados-lines = tc_dados-lines + 7.

  IF v_status_s = 1.

    LOOP AT SCREEN.

      IF itab_dados_tc_tela-tpimp = 'PRINCIPAL' AND

             screen-name = 'ITAB_DADOS_TC_TELA-VLDED'.

        screen-input = '0'.

      ELSEIF itab_dados_tc_tela-tpimp(4) NE 'IRRF' AND

             itab_dados_tc_tela-tpimp(4) NE 'CIDE' AND

             screen-name = 'ITAB_DADOS_TC_TELA-PAGTOIRRF'.

        screen-input = '0'.

...