You are on page 1of 3

*&---------------------------------------------------------------------*

*& NOME DO PROGRAMA : ZZ_SHLP_PAGTOSPB


*& TTULO DO PROGRAMA : EXIT DE AJUDA DE PESQUISA CDIGO DO TIPO DE PAGAMENTO SPB
*& PROGRAMADOR
: Bruno Santos(T0695)
*& DATA
: 16/05/2013
*& LTIMA ATUALIZAO : 16/05/2013
*&
*& DESCRIO
*&---------------------------------------------------------------------*
*& LISTA DE MODIFICAES:
*
*& DATA
AUTOR
REQUEST #
DESCRIO
*
*& 14/05/2013 T0695
SPDK900013
CODIFICAO INICIAL *
*&---------------------------------------------------------------------*
FUNCTION zz_shlp_pagtospb.
*"---------------------------------------------------------------------*"*"Interface local:
*" TABLES
*"
SHLP_TAB TYPE SHLP_DESCT
*"
RECORD_TAB STRUCTURE SEAHLPRES
*" CHANGING
*"
REFERENCE(SHLP) TYPE SHLP_DESCR
*"
REFERENCE(CALLCONTROL) LIKE DDSHF4CTRL STRUCTURE DDSHF4CTRL
*"---------------------------------------------------------------------* Declarao de Estruturas
DATA: BEGIN OF t_tppagamento OCCURS 0.
INCLUDE STRUCTURE zfi_v_pagtospb.
DATA: END OF t_tppagamento.
* Declarao de Tabelas Internas
DATA: ti_tppagamento LIKE t_tppagamento OCCURS 0 WITH HEADER LINE.
* Declarao de Work Area
DATA: wa_selopt TYPE ddshselopt.
* Declarao de Ranges
RANGES: r_cod_tp_pagto FOR zfi_t_pagtospb-cod_tp_pagto.
* EXIT immediately, if you do not want to handle this step
IF callcontrol-step <> 'SELONE' AND
callcontrol-step <> 'SELECT' AND
callcontrol-step <> 'DISP'.
EXIT.
ENDIF.
*"---------------------------------------------------------------------* STEP SELONE (Select one of the elementary searchhelps)
*"---------------------------------------------------------------------* This step is only called for collective searchhelps. It may be used
* to reduce the amount of elementary searchhelps given in SHLP_TAB.
* The compound searchhelp is given in SHLP.
* If you do not change CALLCONTROL-STEP, the next step is the
* dialog, to select one of the elementary searchhelps.
* If you want to skip this dialog, you have to return the selected
* elementary searchhelp in SHLP and to change CALLCONTROL-STEP to
* either to 'PRESEL' or to 'SELECT'.
*

IF callcontrol-step = 'SELONE'.
PERFORM SELONE .........

EXIT.
ENDIF.
*"---------------------------------------------------------------------* STEP PRESEL (Enter selection conditions)
*"---------------------------------------------------------------------* This step allows you, to influence the selection conditions either
* before they are displayed or in order to skip the dialog completely.
* If you want to skip the dialog, you should change CALLCONTROL-STEP
* to 'SELECT'.
* Normaly only SHLP-SELOPT should be changed in this step.
*

IF callcontrol-step = 'PRESEL'.
PERFORM PRESEL ..........
EXIT.
ENDIF.

*"---------------------------------------------------------------------* STEP SELECT


(Select values)
*"---------------------------------------------------------------------* This step may be used to overtake the data selection completely.
* To skip the standard seletion, you should return 'DISP' as following
* step in CALLCONTROL-STEP.
* Normally RECORD_TAB should be filled after this step.
* Standard function module F4UT_RESULTS_MAP may be very helpfull in this
* step.
IF callcontrol-step = 'SELECT'.
FREE: r_cod_tp_pagto.
LOOP AT shlp-selopt INTO wa_selopt.
CASE wa_selopt-shlpfield.
WHEN 'COD_TP_PAGT'.
r_cod_tp_pagto-sign =
r_cod_tp_pagto-option =
r_cod_tp_pagto-low
=
r_cod_tp_pagto-high =
APPEND r_cod_tp_pagto.
CLEAR r_cod_tp_pagto.
ENDCASE.

wa_selopt-sign.
wa_selopt-option.
wa_selopt-low.
wa_selopt-high.

ENDLOOP.
* Seleciona os dados na tabela
SELECT * UP TO callcontrol-maxrecords ROWS
FROM zfi_t_pagtospb
INTO CORRESPONDING FIELDS OF TABLE t_tppagamento
WHERE cod_tp_pagto IN r_cod_tp_pagto.
ENDIF.
*"---------------------------------------------------------------------* STEP DISP
(Display values)
*"---------------------------------------------------------------------* This step is called, before the selected data is displayed.
* You can e.g. modify or reduce the data in RECORD_TAB

*
*
*
*
*
*
*
*
*
*
*
*

according to the users authority.


If you want to get the standard display dialog afterwards, you
should not change CALLCONTROL-STEP.
If you want to overtake the dialog on you own, you must return
the following values in CALLCONTROL-STEP:
- "RETURN" if one line was selected. The selected line must be
the only record left in RECORD_TAB. The corresponding fields of
this line are entered into the screen.
- "EXIT" if the values request should be aborted
- "PRESEL" if you want to return to the selection dialog
Standard function modules F4UT_PARAMETER_VALUE_GET and
F4UT_PARAMETER_RESULTS_PUT may be very helpfull in this step.
IF callcontrol-step = 'DISP'.

* Preenche a tabela de exibio


LOOP AT t_tppagamento.
*
CONCATENATE t_tppagamento-cod_tp_pagto
*
INTO record_tab-string RESPECTING BLANKS.
APPEND record_tab.
CLEAR record_tab.
ENDLOOP.
*
EXIT.
ENDIF.
ENDFUNCTION.

You might also like