Selection Screen
Selection Screen
*&---------------------------------------------------------------------*
*& Form PF_SET_LISTBOX
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM pf_set_listbox .
DATA: lt_list_val TYPE vrm_values,
ls_list_val-key = '1'.
ls_list_val-text = text-l01.
APPEND ls_list_val TO lt_list_val.
ls_list_val-key = '2'.
ls_list_val-text = text-l02.
APPEND ls_list_val TO lt_list_val.
ls_list_val-key = '3'.
ls_list_val-text = text-l03.
APPEND ls_list_val TO lt_list_val.
ls_list_val-key = '4'.
ls_list_val-text = text-l04.
APPEND ls_list_val TO lt_list_val.
ENDIF.
ENDIF.
ENDFORM.
Logic Program:
CONSTANTS:
c_ucomm_maintain TYPE sy-ucomm VALUE '&MAINTAIN'.
INITIALIZATION.
SET PF-STATUS 'Z_SELSCR_STATBAR'.
AT SELECTION-SCREEN.
IF sy-ucomm EQ c_ucomm_maintain.
CALL TRANSACTION 'ZHR_IT19_NOTIF'.
ENDIF.
LOOP AT SCREEN.
CASE abap_true.
WHEN rb_sk.
IF screen-group1 EQ 'SK'.
screen-active = fiehc_con_on.
ELSEIF screen-group1 IS NOT INITIAL.
screen-active = fiehc_con_off.
ENDIF.
WHEN rb_oth.
IF screen-group1 EQ 'OTH'.
screen-active = fiehc_con_on.
ELSEIF screen-group1 IS NOT INITIAL.
screen-active = fiehc_con_off.
ENDIF.
WHEN OTHERS.
"Do Nothing
ENDCASE.
MODIFY SCREEN
ENDLOOP.
endform.
DATA:
lt_return TYPE STANDARD TABLE OF ddshretval,
lr_equnr TYPE RANGE OF equi-equnr,
lw_equnr LIKE LINE OF lr_equnr.
LOOP AT s_equnr.
lw_equnr = 'IEQ'.
lw_equnr-low = s_equnr-low.
APPEND lw_equnr TO lr_equnr.
ENDLOOP.
cl_ci_query_attributes=>generic(
EXPORTING
" unique screen ID
p_name = CONV #( sy-repid )
" Screen title
p_title = 'Generic screen for input'
" Screen fields
p_attributes = VALUE #(
" select-option
( kind = 'S'
text = 'Equipment'
ref = REF #( lr_equnr ) )
)
p_display = abap_false " General Flag
).
BREAK developer04.
SELECT imptt~psort,
imptt~pttxt
INTO TABLE @DATA(lt_imptt)
FROM imptt
INNER JOIN equi
ON equi~objnr EQ imptt~mpobj
WHERE equnr IN @lr_equnr.
IF sy-subrc EQ 0.
##FM_SUBRC_OK
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'PSORT' " Name of field in VALUE_TAB
value_org = 'S' " Value return: C: cell by cell, S: stru
ctured
TABLES
value_tab = lt_imptt " Table of values: entries cell by cell
return_tab = lt_return " Return the selected value
EXCEPTIONS
parameter_error = 1 " Incorrect parameter
no_values_found = 2 " No values found
OTHERS = 3.
ENDIF.