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.
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