CE PLUS - Nota 002252

Módulo: CÂMBIO IMPORTAÇÃO

Funcionalidade: Financiamento

Data/Hora da Publicação: 11/10/2006 00:00:00

Data/Hora Última Alteração: 18/02/2011 09:43:39

Descrição da Nota: FINANCIAMENTO - PAGE DOWN/PAGE UP - MAPEAMENTO BATCH-INPUT

Sintoma

O programa de financiamento não está obedecendo os comandos Page down / Page up no mapeamento de

batch-input e na barra de rolagem das telas de Principal, Juros, Comissão, Item do Pedido e Agrupar

Processos. As habas também não retornam código de função no mapeamento de SHDB.

 

 

Solução

Definir os botões page down e page up no status-gui e codificar o tratamento do mesmo no user-

command de cada tela. Alterar a categoria do código de função de cada haba da tabstrip, tela 0100,

para retornar o sy-ucomm e codificar para respeitar o clique em cada haba, na navegação das telas do

financiamento.

 

Versões Tratadas

6.0

Informações Complementares

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

Nota Número 02252 Data: 11/10/2006 Hora: 14:09:39

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

 

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

Nota Número              : 02252

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00025

Agrupamento              : 00135

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

FINANCIAMENTO - PAGE DOWN/PAGE UP - MAPEAMENTO BATCH-INPUT

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

Palavras Chave:

FINANCIAMENTO PAGE DOWN PAGE UP MAPEAMENTO BATCH-INPUT BARRA DE ROLAGEM

SHDB TELA FINACIAMENTO SY-UCOMM OKCODE TABSTRIP TABLECONTROL

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

Objetos da nota:

CUAD /PWS/SAPMZYCM101

DYNP /PWS/SAPMZYCM101                        0100

REPS /PWS/MZYCM101F01

REPS /PWS/MZYCM101I01

REPS /PWS/MZYCM101O01

REPS /PWS/MZYCM101TOP

 

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

Modificações efetuadas em CUAD /PWS/SAPMZYCM101

 

Definir código de função para as teclas de função abaixo, do status-gui 0100:

 

CÓDIGO DE FUNÇÃO:  P--

TEXTO DE FUNÇÃO:   1ª página

NOME DE ÍCONE:     ICON_FIRST_PAGE

 

CÓDIGO DE FUNÇÃO:  P-

TEXTO DE FUNÇÃO:   Página anterior

NOME DE ÍCONE:     ICON_PREVIOUS_PAGE

 

CÓDIGO DE FUNÇÃO:  P+

TEXTO DE FUNÇÃO:   Página seguinte

NOME DE ÍCONE:     ICON_NEXT_PAGE

 

CÓDIGO DE FUNÇÃO:  P++

TEXTO DE FUNÇÃO:   Última página

NOME DE ÍCONE:     ICON_LAST_PAGE

 

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

Modificações efetuadas em DYNP /PWS/SAPMZYCM101                        0100

 

Alterar a categoria do código de função das habas da tabstrip TS_FINAN: TAB_CABEC, TAB_PGTO,

TAB_PRINC, TAB_JUR, TAB_COM, TAB_ROF, TAB_AGRUPAR, TAB_ADIC, TAB_CLASS.

 

De:   P     Local Gui Func.

Para: ' '   <none>

 

 

Lógica de Processamento:

PROCESS BEFORE OUTPUT.

 

  MODULE: selecionar_zycmt020,

          status_0100,

          set_screen_0100,

* >> Início da inclusão:

          set_tab,

* << Fim da inclusão.

          load_data,

          status_0100_custom. "ch 206397 - AnaB - 25/02/2005

 

...

 

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

Modificações efetuadas em REPS /PWS/MZYCM101F01

 

...

          MOVE-CORRESPONDING itab_zycmt022 TO itab_zycmt022_aux.

          APPEND itab_zycmt022_aux.

        ENDLOOP.

        DELETE itab_zycmt022 WHERE mark EQ 'X'.

      ENDIF.

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

    WHEN 'P--'.

      tc_adicionais-top_line = tc_adicionais-top_line -

                               tc_adicionais-lines.

    WHEN 'P-'.

      tc_adicionais-top_line = tc_adicionais-top_line - 9.

    WHEN 'P+'.

      tc_adicionais-top_line = tc_adicionais-top_line + 9.

    WHEN 'P++'.

      tc_adicionais-top_line = tc_adicionais-top_line +

                               tc_adicionais-lines.

* << Fim da inclusão

  ENDCASE.

ENDFORM.

FORM salvar_dados_adicionais.

  PERFORM consiste_percentual.

  MODIFY /pws/zycmt022 FROM TABLE itab_zycmt022.

...

 

...

          MOVE 'X' TO /pws/zycbe112-bco_forn.

        ELSEIF NOT itab_zycmt023[] IS INITIAL.

          CLEAR /pws/zycbe112-bco_forn.

        ENDIF.

      ENDIF.

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

    WHEN 'P--'.

      tc_agrupar-top_line = tc_agrupar-top_line - tc_agrupar-lines.

    WHEN 'P-'.

      tc_agrupar-top_line = tc_agrupar-top_line - 9.

    WHEN 'P+'.

      tc_agrupar-top_line = tc_agrupar-top_line + 9.

    WHEN 'P++'.

      tc_agrupar-top_line = tc_agrupar-top_line + tc_agrupar-lines.

* << Fim da inclusão

  ENDCASE.

ENDFORM.

FORM seleciona_ia.

  DATA wa_zycbt117 LIKE /pws/zycbt117.

  SELECT SINGLE *

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCM101I01

 

...

        EXIT.

      ENDIF.

    ENDIF.

  ENDIF.

  CASE okcode.

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

    WHEN 'FC_FINANC'.

      pressed_tab = okcode.

      dynpronr    = '0101'.

    WHEN 'FC_PRINC'.

      pressed_tab = okcode.

      dynpronr    = '0102'.

    WHEN 'FC_JUR'.

      pressed_tab = okcode.

      dynpronr    = '0103'.

    WHEN 'FC_COM'.

      pressed_tab = okcode.

      dynpronr    = '0104'.

    WHEN 'FC_ROF'.

      pressed_tab = okcode.

      dynpronr    = '0105'.

    WHEN 'FC_ADIC'.

      pressed_tab = okcode.

      dynpronr    = '0106'.

    WHEN 'FC_CLASS'.

      pressed_tab = okcode.

      dynpronr    = '0108'.

    WHEN 'FC_AGR'.

      pressed_tab = okcode.

      dynpronr    = '0110'.

    WHEN 'FC_PGTO'.

      pressed_tab = okcode.

      dynpronr    = '0111'.

    WHEN 'FC_HTML'.

      pressed_tab = okcode.

      dynpronr    = v_tela_help.

* << Fim da inclusão

    WHEN 'PB_HELP'.

      v_tela_help = '0051'.

      EXIT.

    WHEN 'CLOSE'.

      v_tela_help = '0052'.

...

 

...

          CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.

        ELSE.

          MESSAGE e261(sf) WITH 'FB03'.

        ENDIF.

      ENDIF.

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

    WHEN 'P--'.

      tc_princ-top_line = tc_princ-top_line - tc_princ-lines.

    WHEN 'P-'.

      tc_princ-top_line = tc_princ-top_line - 9.

    WHEN 'P+'.

      tc_princ-top_line = tc_princ-top_line + 9.

    WHEN 'P++'.

      tc_princ-top_line = tc_princ-top_line + tc_princ-lines.

* << Fim da inclusão

  ENDCASE.

ENDMODULE.

MODULE user_command_0103 INPUT.

  CLEAR v_dtfinal.

  LOOP AT itab_zycbt113j.

...

 

...

          CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.

        ELSE.

          MESSAGE e261(sf) WITH 'FB03'.

        ENDIF.

      ENDIF.

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

    WHEN 'P--'.

      tc_jur-top_line = tc_jur-top_line - tc_jur-lines.

    WHEN 'P-'.

      tc_jur-top_line = tc_jur-top_line - 10.

    WHEN 'P+'.

      tc_jur-top_line = tc_jur-top_line + 10.

    WHEN 'P++'.

      tc_jur-top_line = tc_jur-top_line + tc_jur-lines.

* << Fim da inclusão

  ENDCASE.

ENDMODULE.

MODULE user_command_0104 INPUT.

  DATA: n            TYPE i.

  CLEAR v_dtfinal.

...

 

...

            IF v_dele IS INITIAL AND v_boleto_p IS INITIAL.

              DELETE itab_zycbt113c WHERE mark EQ 'X'.

            ENDIF.

          ENDIF.

      ENDCASE.

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

    WHEN 'P--'.

      tc_com-top_line = tc_com-top_line - tc_com-lines.

    WHEN 'P-'.

      tc_com-top_line = tc_com-top_line - 8.

    WHEN 'P+'.

      tc_com-top_line = tc_com-top_line + 8.

    WHEN 'P++'.

      tc_com-top_line = tc_com-top_line + tc_com-lines.

* << Fim da inclusão

  ENDCASE.

ENDMODULE.

MODULE user_command_0200 INPUT.

  CLEAR: itab_zyglt209, itab_zyglt209_aux, itab_zyglt209_aux,

         /pws/zygle209.

...

 

...

        DELETE itab_zycbt115 WHERE mark EQ 'X'.

        CLEAR itab_zycbt115.

        /pws/zycbe115 = itab_zycbt115.

        v_exclui = 'X'.

      ENDLOOP.

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

    WHEN 'P--'.

      tc_rof-top_line = tc_rof-top_line - tc_rof-lines.

    WHEN 'P-'.

      tc_rof-top_line = tc_rof-top_line - 9.

    WHEN 'P+'.

      tc_rof-top_line = tc_rof-top_line + 9.

    WHEN 'P++'.

      tc_rof-top_line = tc_rof-top_line + tc_rof-lines.

* << Fim da inclusão

  ENDCASE.

ENDMODULE.

MODULE user_command_0101 INPUT.

  v_periodo = /pws/zycbe112-dtvencto - /pws/zycbe112-dtdesem.

  PERFORM texto_informativo.

...

 

...

                  no_authority         = 2

                  invalid_call         = 3

                  preview_not_possible = 4

                  OTHERS               = 5.

      ENDIF.

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

    WHEN 'P--'.

      tc_pgto-top_line = tc_pgto-top_line - tc_pgto-lines.

    WHEN 'P-'.

      tc_pgto-top_line = tc_pgto-top_line - 11.

    WHEN 'P+'.

      tc_pgto-top_line = tc_pgto-top_line + 11.

    WHEN 'P++'.

      tc_pgto-top_line = tc_pgto-top_line + tc_pgto-lines.

* << Fim da inclusão

  ENDCASE.

ENDMODULE.

MODULE calcula_percentual INPUT.

  CLEAR: v_ped, v_tot_pedido, v_lines, v_saldo.

  LOOP AT itab_zycmt020.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCM101O01

 

...

    IF sy-subrc EQ 0.

      itab_zycmt020_cp[] = itab_zycmt020[].

    ENDIF.

  ENDIF.

ENDMODULE.

* >> Início da inclusão:

MODULE set_tab OUTPUT.

  ts_finan-activetab = pressed_tab.

ENDMODULE.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCM101TOP

 

...

  v_campo1(22)     TYPE c,

  v_valor1         LIKE ekko-ebeln,

  v_ped            LIKE ekpo-ebeln,

  v_lines          TYPE i,

  v_saldo          LIKE /pws/zycmt020-vlpago,

* >> Início da exclusão:

  v_tot_pedido     LIKE /pws/zycmt020-netwr.

* << Fim da exclusão

* >> Início da inclusão:

  v_tot_pedido     LIKE /pws/zycmt020-netwr,

  pressed_tab        LIKE sy-ucomm,

  dynpronr(4)        TYPE c.

* << Fim da inclusão