on 07-15-2009 6:20 AM
Hi,
How to use method ADD_PARAMETER_FIELD for dropdown and i need to set one value from the dropdown as default
Please use the following code
data: lt_value type wdy_key_value table,
wa_value type wdy_key_value,
LR_VALUE TYPE REF TO DATA.
FIELD-SYMBOLS: <FS_HDL> TYPE STRING.
CREATE DATA LR_VALUE TYPE STRING.
ASSIGN LR_VALUE->* TO <FS_HDL>.
WD_THIS->M_HANDLER->ADD_PARAMETER_FIELD(
I_ID = 'HDL'
I_DESCRIPTION = 'Highest Degree Level'
I_AS_DROPDOWN = 'X'
IT_VALUE_SET = LT_VALUE ).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
The following code will help you to create a dropdown field with default value in it,
The code to be written in the DOINIT of the view where you are using dropdown field.
DATA: LR_VALUE TYPE REF TO DATA.
DATA: LT_RANGE_TABLE TYPE REF TO DATA,
RT_RANGE_TABLE TYPE REF TO DATA,
READ_ONLY TYPE ABAP_BOOL,
TYPENAME TYPE STRING.
DATA:
L_REF_CMP_USAGE TYPE REF TO IF_WD_COMPONENT_USAGE.
DATA: LR_VALUE TYPE REF TO DATA.
FIELD-SYMBOLS: <FS_BEGDA> TYPE BEGDA,
<FS_ENDDA> TYPE ENDDA.
create the used component
L_REF_CMP_USAGE = WD_THIS->WD_CPUSE_SELECT_OPTIONS( ).
IF L_REF_CMP_USAGE->HAS_ACTIVE_COMPONENT( ) IS INITIAL.
L_REF_CMP_USAGE->CREATE_COMPONENT( ).
ENDIF.
WD_THIS->M_WD_SELECT_OPTIONS = WD_THIS->WD_CPIFC_SELECT_OPTIONS( ).
init the select screen
WD_THIS->M_HANDLER = WD_THIS->M_WD_SELECT_OPTIONS->INIT_SELECTION_SCREEN( ).
*Set the Global options
WD_THIS->M_HANDLER->SET_GLOBAL_OPTIONS(
I_DISPLAY_BTN_CANCEL = ABAP_FALSE
I_DISPLAY_BTN_CHECK = ABAP_FALSE
I_DISPLAY_BTN_RESET = ABAP_FALSE
I_DISPLAY_BTN_EXECUTE = ABAP_FALSE ).
*Input field Operating Division
create a range table that consists of this new data element
LT_RANGE_TABLE = WD_THIS->M_HANDLER->CREATE_RANGE_TABLE(
I_TYPENAME = 'PLVAR' ).
add a new field to the selection
WD_THIS->M_HANDLER->ADD_SELECTION_FIELD(
I_ID = 'PLVAR'
I_VALUE_HELP_STRUCTURE = 'HRP5125'
I_VALUE_HELP_STRUCTURE_FIELD = 'PLVAR'
IT_RESULT = LT_RANGE_TABLE I_READ_ONLY = READ_ONLY ).
*Input field Application Source type
create a range table that consists of this new data element
LT_RANGE_TABLE = WD_THIS->M_HANDLER->CREATE_RANGE_TABLE(
I_TYPENAME = 'RCF_APPL_SOURCE_TYPE' ).
add a new field to the selection
WD_THIS->M_HANDLER->ADD_SELECTION_FIELD(
I_ID = 'RCF_APPL_SOURCE_TYPE'
I_VALUE_HELP_TYPE =
IF_WD_VALUE_HELP_HANDLER=>CO_PREFIX_OVS
IT_RESULT = LT_RANGE_TABLE I_READ_ONLY = READ_ONLY ).
*Input field Application Source
create a range table that consists of this new data element
LT_RANGE_TABLE = WD_THIS->M_HANDLER->CREATE_RANGE_TABLE(
I_TYPENAME = 'RCF_APPL_SOURCE' ).
add a new field to the selection
WD_THIS->M_HANDLER->ADD_SELECTION_FIELD(
I_ID = 'RCF_APPL_SOURCE'
I_VALUE_HELP_TYPE =
IF_WD_VALUE_HELP_HANDLER=>CO_PREFIX_OVS
IT_RESULT = LT_RANGE_TABLE I_READ_ONLY = READ_ONLY ).
*Input field Requisition Created from
CREATE DATA LR_VALUE TYPE BEGDATUM.
ASSIGN LR_VALUE->* TO <FS_BEGDA>.
WD_THIS->M_HANDLER->ADD_PARAMETER_FIELD(
I_ID = 'BEGDATUM'
I_DESCRIPTION = 'Requisition Start date'
I_VALUE_HELP_STRUCTURE = 'HRP5125'
I_VALUE_HELP_STRUCTURE_FIELD = 'AEDTM'
I_OBLIGATORY = ABAP_TRUE
I_VALUE = LR_VALUE ).
*Input field Requisition Created to
CREATE DATA LR_VALUE TYPE ENDDATUM.
ASSIGN LR_VALUE->* TO <FS_ENDDA>.
WD_THIS->M_HANDLER->ADD_PARAMETER_FIELD(
I_ID = 'ENDDATUM'
I_DESCRIPTION = 'Requisition End date'
I_VALUE_HELP_STRUCTURE = 'HRP5125'
I_VALUE_HELP_STRUCTURE_FIELD = 'AEDTM'
I_OBLIGATORY = ABAP_TRUE
I_VALUE = LR_VALUE ).
DATA: LT_VALUE TYPE WDY_KEY_VALUE_TABLE,
WA_VALUE TYPE WDY_KEY_VALUE.
FIELD-SYMBOLS: <FS_HDL> TYPE ANY.
CREATE DATA LR_VALUE TYPE STRING.
ASSIGN LR_VALUE->* TO <FS_HDL>.
<FS_HDL> = '1'.
CLEAR WA_VALUE.
WA_VALUE-KEY = '1'.
WA_VALUE-VALUE = 'Yes'.
APPEND WA_VALUE TO LT_VALUE.
CLEAR WA_VALUE.
WA_VALUE-KEY = '2'.
WA_VALUE-VALUE = 'No'.
APPEND WA_VALUE TO LT_VALUE.
ASSIGN LR_VALUE->* TO <FS_HDL>.
WD_THIS->M_HANDLER->ADD_PARAMETER_FIELD(
I_ID = 'HDL'
I_DESCRIPTION = 'Highest Degree Level'
I_AS_DROPDOWN = 'X'
IT_VALUE_SET = LT_VALUE
I_VALUE = LR_VALUE ).
Hi,
Solved my self.
Edited by: Dande on Jul 15, 2009 11:12 AM
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
92 | |
11 | |
10 | |
9 | |
9 | |
7 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.