Validate select option fields

Hi all,
I have two fields on my selection screen(Select Options). Now I want to validate if the user the entered the values in the select options or not.
I have used the following code which are not working.
data: range_table_chn type ref to data,
range_table_chn = WD_THIS->M_HANDLER->GET_VALUE_OF_PARAMETER_FIELD( i_id = 'KUNNR' ).
if not range_table_chn is initial.
Message.
endif.
and
data: range_table_chn type ref to data,
range_table_chn = WD_THIS->M_HANDLER->GET_RANGE_TABLE_OF_SEL_FIELD( i_id = 'KUNNR' ).
if not range_table_chn is initial.
Message.
endif.
Both of these are not working . Can any one suggest me the correct way of validating the select options if the user entered or not?
Thanks,

Hi,
Try this code for validation.
METHOD onactionsearch_data .
Processing For OnAction ´SEARCH` on Screen
  DATA:lo_po_list             TYPE REF TO if_wd_context_node     ,
       lo_el_po_list          TYPE REF TO if_wd_context_element  ,
       lo_werks               TYPE REF TO data                   ,
       lo_ebeln               TYPE REF TO data                   ,
       lo_ebdat               TYPE REF TO data                   .
DATA lt_werks TYPE if_wd_select_options=>tt_selection_screen_item.
DATA:lt_po_list     TYPE /bay0/msdts_cl_whp_goods_rcp=>tt_po_list ,
lv_valid       TYPE abap_bool                             .
DATA lv_text_key    TYPE wdr_text_key .
FIELD-SYMBOLS: <lt_ebeln>  TYPE ANY TABLE,
<lt_ebdat>  TYPE ANY TABLE.
**----Get the Data from the select Option&Parameter-----***
  Returns the data from a parameter field-P_WERKS*
wd_this->m_handler->get_parameter_fields( IMPORTING et_fields = lt_werks ).
  Retrieve the data from the select option*
lo_ebeln = wd_this->m_handler->get_range_table_of_sel_field( i_id = 'SO_EBELN' ).
  Assign it to a field symbol*
ASSIGN lo_ebeln-> TO .*
  Retrieve the data from the select option
lo_ebdat = wd_this->m_handler->get_range_table_of_sel_field( i_id = 'SO_EBDAT' ).
  Assign it to a field symbol
ASSIGN lo_ebdat-> TO .*
**----Data access using the methods of Assistance Class-----***
  Validate the entered data on Selection Screen
wd_assist->validate_sel_screen_data( EXPORTING it_so_ebeln = lo_ebeln
it_p_werks  = lt_werks
IMPORTING ev_valid    = lv_valid
ev_text_key = lv_text_key ).
  Display Message if LV_VALID = X means when input is Invalid
  IF lv_valid EQ 'X'.
  Msg-Please enter correct Purchase Order Num.
    EXIT.
  ENDIF.
ENDMETHOD.
METHOD validate_sel_screen_data.
  DATA ls_ekko TYPE ekko.
  DATA lv_werks TYPE werks_d.
  DATA ls_werks TYPE if_wd_select_options=>t_selection_screen_item.
  FIELD-SYMBOLS:   TYPE ANY .
  READ TABLE it_p_werks INTO ls_werks INDEX 1.
  IF sy-subrc EQ 0.
  Assign it to a field symbol
    ASSIGN ls_werks-m_value->* TO  IS not ASSIGNED.
     MOVE '106' TO ev_text_key.
      ev_valid = 'Y'.
      exit.
    ENDIF.
  Validate Plant eneterd on selection screen
    SELECT SINGLE werks
      FROM t001w
      INTO lv_werks
     WHERE werks EQ .
    IF sy-subrc EQ 0.
     Do the Authority Check
      AUTHORITY-CHECK OBJECT 'M_BEST_WRK'
      ID 'ACTVT' FIELD '03'
      ID 'WERKS' FIELD lv_werks.
      IF sy-subrc NE 0.
        MOVE '105' TO ev_text_key.
        ev_valid = abap_true.
        exit.
      ENDIF.
    ELSE.
      MOVE '104' TO ev_text_key.
      ev_valid = abap_true.
      exit.
    ENDIF.
  ENDIF.
Assign it to a field symbol
  ASSIGN it_so_ebeln->* TO  IS NOT INITIAL.
Get Purch. Order from EKKO table
  SELECT ebeln
    FROM ekko
    INTO ls_ekko
    UP TO 1 ROWS
   WHERE ebeln IN .
  ENDSELECT.
  IF sy-subrc EQ 0.
    ev_valid = abap_false.
  ELSE.
    MOVE '102' TO ev_text_key.
    ev_valid = abap_true.
  ENDIF. "if sy-subrc eq 0.
ENDMETHOD.
Regard
Manoj Kumar
Edited by: Manoj Kumar on Mar 10, 2009 10:30 AM

Similar Messages

  • How to validate a select-option field on the selection- screen

    Hi,
       I need to validate a selection-option field in the selection-screen.
    Requirement is : i need to read each of customer number one by one and validateCan you please me in achieving this.
    Best Regards
    Mamatha.B

    hi,
    chk this sample code.
    SELECT-OPTIONS : s_kunnr for kna1-kunnr.
    AT SELECTION-SCREEN.
         if 'S_KUNNR-HIGH' = "condition
        "put your required validation here
         endif.
    rgds
    Anver
    Message was edited by:
            Anversha s

  • Select-option field leveln validation

    Hi folks.
    can you please tell me how to do a select-option field leveln validation, i know how to do incase the filed is defined as parameter. here my field is defined as select-option.
    SELECT-OPTIONS: C_CTLPC FOR KNKK-CTLPC. 
    here i need to check for both low, high intervals?
    please help me, thanks in advance.
    regards
    priya

    Hi again,
    1. so i need to validate that filed should contatin '01' not '1'
    U can validate like this.
    2. Data : myval like knkk-ctlpc.
       myval = '01'.
       if myval in c_ctlpc.
        else.
       *----- code for error message
      endif.
    regards,
    amit m.

  • Authorization check for select-options field - Company code.

    Hi experts,
    i have company code field on the report selection screen and i have to validate the authorization check for BUKRS.
    How to do authorization check for a select-options field?
    Any function modules used to write the authorization check for a SELECT-OPTIONS FIELD?
    Thanks.

    >
    RNB wrote:
    > Any function modules used to write the authorization check for a SELECT-OPTIONS FIELD?
    Does it hurt to type a few lines of code? Why do you need an FM for this my friend?
    Anyways can you please tell which SAP application area (viz. FI, SD etc.) do you want to run the report?
    Suhas

  • How to hide the select-options fields on radiobutton select in webdynpro

    hi
    Could you please help how to hide the select-option fields in webdynpro
    there are four radio buttons
    for every radiobutton there is corresponding the select_option filed is associated to it
    user as only provision select  one radio button and reset of the select-option fileds should be hidden
    which ever the radio button is selected corresponding the select-options fileld should be displayed
    please find the attachement below

    Hi Nine,
    To hide select options you should use interface method REMOVE_SELECTION_SCREEN_ITEM of IF_WD_SELECT_OPTIONS.
    Sample code :
    Write the below code in the Event handler of Radio Button.
    DATA lv_r_helper_class TYPE REF TO if_wd_select_options.
    lv_r_helper_class = lo_interfacecontroller->init_selection_screen(
    lv_r_helper_Class->REMOVE_SELECTION_SCREEN_ITEM(exporting i_id = 'Select_option1_id1').
    This will hide first select option of your screen.Similarly pass select_option_id2 to hide it and so on.
    Regards,
    Ravikiran.k

  • Default Current year in select option field on selection Screen

    Dear Experts,
    I want to set current year as default value in fiscal year select-options field on selection screen.
    for this, i hv written following code
    DATA:VAR_DATE TYPE SY-DATUM.
    DATA VAR(4) TYPE C.
    VAR_DATE = SY-DATUM.
    VAR = VAR_DATE+0(4).
    this retrieves current year .
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.
    SELECT-OPTIONS I11 FOR ANLC-GJAHR DEFAULT VAR TO VAR..                            "Fiscal Year
    SELECTION-SCREEN END OF BLOCK B1.
    Now when i am executing program pop-up is raised describing "Specify the range Limits". Please help.
    Regards,
    Apoorv Sharma

    >
    Ganga Bhavani R wrote:
    > Use below lines.
    >
    > SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.
    > SELECT-OPTIONS I11 FOR ANLC-GJAHR DEFAULT SY-DATUM+0(4). "Fiscal Year
    > SELECTION-SCREEN END OF BLOCK B1.
    Hi, Ganga,
    I think it will not working properly that way, Please test the bellow Sample Code.
    TABLES: anlc.
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-000.
    SELECT-OPTIONS i11 FOR anlc-gjahr .
    SELECTION-SCREEN END OF BLOCK b1.
    INITIALIZATION.
      IF i11[] IS INITIAL.
        i11-low = sy-datum+0(4).
        APPEND i11.
      ENDIF.
    Thanks and Regards,
    Faisal

  • Disable the Select-options field in the viewcontainer

    Hi,
    I  have two select option fields(Date,Number) in a viewcontainer .
    Now i need to disable one of the select-option field(Date) in the view container based on the condition.If I give Enability for the view container then both the select options will get diasbled.Is there any way to disable only Date select-option field in the view container.
    Thanks in Advance.
    Regards,
    bala.

    Hi,
    I just tested this solution and it is working for me....Following on Thomas's suggestion...I did the following....
    I just had one select-option on my scr...but it can be done with two too...
    step1: 
    created three attributes at component level under the attribute tab ( as suggested by Thomas )
    ENABLE_PRI_SELECTOPTION type  WDY_BOOLEAN 
    M_HANDLER type ref to     IF_WD_SELECT_OPTIONS
    M_WD_SELECT_OPTIONS  type ref to     IWCI_WDR_SELECT_OPTIONS
    Note: all are with public check box checked....so that all your views can see these attributes
    I created a method at componenet controller leverl:  create_select_option....in this method i have following code:
    DATA:
      lt_range_table TYPE REF TO data,
    *  rt_range_table TYPE REF TO data,
      read_only TYPE abap_bool,
      typename TYPE string.
      DATA:
      lr_componentcontroller TYPE REF TO ig_componentcontroller,
      l_ref_cmp_usage TYPE REF TO if_wd_component_usage.
    * 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.
    * get a pointer to the interface controller of the select options
    *component
      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( ).
    * create a range table that consists of this new data element
      lt_range_table = wd_this->m_handler->create_range_table(
      i_typename = 'PERSNO' ).
    * add a new field to the selection
      wd_this->m_handler->add_selection_field(
      i_id = 'PERSNO'
    I_VALUE_HELP_TYPE = if_wd_value_help_handler=>CO_PREFIX_SEARCHHELP
    I_VALUE_HELP_ID = 'ZHELP_WDA_PERNR'
    I_NO_INTERVALS = abap_true
      it_result = lt_range_table
      i_read_only = wd_this->ENABLE_PRI_SELECTOPTION ).   <-----pls see here how i am controlling the read only property
    I assume you know this much...already....but i am just putting everything down....
    step2:
    in my view where i want to display the select-options....i added this code under my wddoinit method
    DATA lo_componentcontroller TYPE REF TO ig_componentcontroller .
    lo_componentcontroller =   wd_this->get_componentcontroller_ctr( ).
    lo_componentcontroller->ENABLE_PRI_SELECTOPTION = abap_false.    <--pls see initially we want this field to be open
      lo_componentcontroller->create_select_option(
    step3: 
    i did not have much logic to control the select option field so i added a button which if user presses the field become disable...
    under that button action method i added the following code:
    DATA lo_componentcontroller TYPE REF TO ig_componentcontroller .
    lo_componentcontroller =   wd_this->get_componentcontroller_ctr( ).
    lo_componentcontroller->ENABLE_PRI_SELECTOPTION = abap_true.
       "<---pls see here how i am changing the global *attribute which Thomas has suggested for controlling the "read only" attibute for the select-option field....you can put this under *your "if" statement....
    "this step is very important if you do not remove the field you will get the dump...since it will try to add the same field again
    "which produces dump from system....
    lo_componentcontroller->m_handler->REMOVE_SELECTION_SCREEN_ITEM(
    i_id = 'PERSNO' ).
    "now call the same method which we created at component level to create the select_options...
    lo_componentcontroller->create_select_option(
    that is all....it works great for me.....let us know if still have any questions....
    Thanks...
    AS...

  • F4 help FOR A SELECT OPTION FIELD

    Hi,
    Can anyone tell how to provide F4help for a select-option field?
    Regards,
    Hema

    Hello,
    If you created a search help in the DDIC...Then check the check box EXPORt parameter for one of the fields
    If you used the function module Make sure you pass the correct values..Also the field name in CAPITAL letters..
    Check this code..
    TABLES: T005T.
    DATA: BEGIN OF t_t005 OCCURS 0,
            land1 TYPE t005-land1,
          END OF t_t005.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(6) v_text FOR FIELD P_LAND1.
    PARAMETERS: p_land1  TYPE t005-land1.
    SELECTION-SCREEN COMMENT 13(35) v_text1.
    SELECTION-SCREEN END OF LINE.
    INITIALIZATION.
      v_text = 'Country'.
      v_text1 = ' '.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_land1.
      REFRESH: t_t005.
      SELECT land1
             INTO TABLE t_t005
             FROM t005.
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
           EXPORTING
    *            DDIC_STRUCTURE   = 'T005'
                PVALKEY          = ' '
                retfield         = 'LAND1'
                dynpprog         = sy-repid
                DYNPNR           = sy-dynnr
                dynprofield      = 'P_LAND1'
                callback_program = sy-repid
                value_org        = 'S'
           TABLES
                value_tab        = t_t005
           EXCEPTIONS
                parameter_error  = 1
                no_values_found  = 2
                OTHERS           = 3.
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    Thanks
    Deepu.K

  • How can i used pai in screen 1000 to change the select-options field?

    hi,all.
    I want used pai to change the select-options field,but it can't works.
    the mainly code is:
    REPORT  ZTEST99.
    TABLES :MARA,MAKT,MARC.
    SELECTION-SCREEN BEGIN OF BLOCK B0 WITH FRAME TITLE TITLE0 .
    select-options:s_matnr for mara-matnr,
                   s_werks for marc-werks MODIF ID ID1.
    SELECTION-SCREEN END OF BLOCK B0.
    parameters:p_flag as checkbox.
    at selection-screen OUTPUT.
       LOOP AT SCREEN.
       IF P_FLAG = 'X' .
       IF screen-group1 = 'ID1'.
             screen-input = '0'.
        ELSE.
          screen-input = '1'.
        ENDIF.
        MODIFY SCREEN.
    ENDIF.
        ENDLOOP.
    START-OF-SELECTION.
    CALL SCREEN 1000.
    when i click p_flag,then i want to change s_werks from OBLIGATORY to no OBLIGATORY.
    how can i realized?
    Thanks for all.
    Sun

    Hi ,
    change your code like this.
    Change in your code:
    SELECTION-SCREEN BEGIN OF SCREEN 100.
    SELECT-OPTIONS : s_matnr for mara-matnr,
    s_werks for marc-werks MODIF ID ID1.
    SELECTION-SCREEN END OF SCREEN 100 .
    At selection-screen.
    if sy-dynnr = '100'.
    IF P_FLAG = 'X' .
    LOOP AT SCREEN.
    IF screen-group1 = 'ID1'.
    screen-required = '0'.
    ENDIF.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    else.
    LOOP AT SCREEN.
    IF screen-group1 = 'ID1'.
    screen-required = 1.
    ENDIF.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    my code :
    REPORT  Z50871_SELECTOPS_DYNAMIC.
    PARAMETERS : CH_EBELN AS CHECKBOX,
                 CH_VBELN AS CHECKBOX.
    DATA: V_EBELN TYPE EKKO-EBELN,
          V_VBELN TYPE VBAK-VBELN.
    SELECTION-SCREEN BEGIN OF SCREEN 100.
    SELECT-OPTIONS : EBELN FOR V_EBELN MODIF ID G1,
                     VBELN FOR V_VBELN MODIF ID G2.
    SELECTION-SCREEN END OF SCREEN 100 .
    AT SELECTION-SCREEN OUTPUT.
      IF SY-DYNNR = 100.
        IF CH_EBELN = 'X' AND
           CH_VBELN = ''.
          LOOP AT SCREEN.
            IF SCREEN-GROUP1 EQ 'G1'.
              SCREEN-ACTIVE = '1'.
            ELSE.
              SCREEN-ACTIVE = '0'.
            ENDIF.
            MODIFY SCREEN.
          ENDLOOP.
        ELSEIF CH_VBELN = 'X' AND
           CH_EBELN = '' .
          LOOP AT SCREEN.
            IF SCREEN-GROUP1 EQ 'G2'.
              SCREEN-ACTIVE = '1'.
            ELSE.
              SCREEN-ACTIVE = '0'.
            ENDIF.
            MODIFY SCREEN.
          ENDLOOP.
        ELSEIF CH_EBELN = 'X' AND CH_VBELN = 'X'.
          LOOP AT SCREEN.
            IF SCREEN-GROUP1 EQ 'G1'
               OR SCREEN-GROUP1 EQ 'G2' .
              SCREEN-ACTIVE = '1'.
            ENDIF.
            MODIFY SCREEN.
          ENDLOOP.
        ENDIF.
      ENDIF.
    AT SELECTION-SCREEN.
    IF SY-DYNNR = 1000.
      IF CH_EBELN = 'X' OR CH_VBELN = 'X'.
        CALL SELECTION-SCREEN 100.
      ELSE.
        MESSAGE I000(Z50871MSG) WITH 'Please select atleast one checkbox'.
      ENDIF.
    ENDIF.
    regards
    Sandeep Reddy

  • Select options fields at FuBa

    How can I define select options fields as import paramter at Function Modules ?
    Because I intend to pass select options fields to a FM in order to implement the below shown
    code .
    FUNCTION xyz
    importing
    ID
    DESCRIPTION
    CHANGING
       REFERENCE(ZSC_INFO) TYPE  SC_INFO
    select * from  SC_INFO into corresponding fields of table ZSC_INFO
    where
    ID                       in    so_id      and
    DESCRIPTION    in    so_des      and
    ENDFUNCTION

    Hi,
    The question is not completely clear to me but if you want to use the value of the select option and use it as an import parameter in a function module then some tips can be:
    1. The value of the select option can be singles values or a range. Need to pick up the right values.
    2. The import parameter and the variable you want to use must be of the same type.
    DATA: tp_id TYPE <data type from the import parameter of the FM TEST>.
    tp_id = so_vkorg-low "select option vkorg, you can use so_vkorg-high also for single values
    CALL FM 'TEST'
      IMPORT
        ID = tp_id
      EXPORT
        DESCRIPTION = tp_description.
    I hope that this is what you are looking for.
    Best regards,
    Guido Koopmann

  • Select Options field width?

    Hello,
    In my WD view i have many Select Options fields which are grouped into various blocks. Now when i see the output all the Select Option fields within its block look good with equal widths between the text and field, but between various block levels the width isn't the same. Is there anyway i can control the width for Select Option field elements? Thanks.
    Regards,
    Vasu

    Hi Vasu.
    AFAIK you do not have any chance to configure the layout of the select options.
    You can only use blocks as you already did.
    So why you do not use blocks for all your select options to avaoid this issue?
    Cheers,
    Sascha

  • Select options field is giving type conflict when calling a class.

    hai guys,
           i have a field SALESORD in subscreen as a SELECT-OPTIONS field for vbeln.
    Now i created a class,with SALESDETAILS  of type TABLE as a parameter of a method.
    when i call the method(after creating an object) the SALESDETAILS parameter is supposed to take the SALESORD field.
      but it gives me a type conflict error.
    i wonder why..coz both fileds have same type..
    how to resolve the issue..
    helpful answers will be rewarded.
    thank you.

    Hi Shravan,
    Pass the select-options vbeln values into a temporary table and pass this table into the method.
    <b>Reward for helpful answers</b>
    Satish

  • How to write in selection screen after the select option field?

    Hi
    Please help me with this...
    i need to write format of date after the select option field in the selection screen.
    its like..
    date ___________  to ___________     <b>yyyymmdd</b>
    points will be awarded..
    thanx

    Use  selection-screen comment 1(31) text-005 -> this will give you format option.
    See the below sysntax ,you have to use like this
    Selection-screen begin of block b2 with frame title text-002.
    selection-screen begin of line.
    selection-screen comment 1(31) text-004.
    parameter:        r_1   radiobutton group rad1.
    selection-screen end of line.
    selection-screen begin of line.
    Aging  Report
    selection-screen comment 1(31) text-005.
    parameter:        r_2   radiobutton group rad1.
    selection-screen comment 40(30) text-003.
    parameter: p_expir as checkbox.
    selection-screen end of line.
    selection-screen begin of line.
    Materials with no Expiry Date
    selection-screen comment 1(31) text-006.
    parameter:        r_3   radiobutton group rad1.
    selection-screen comment 40(30) text-007.
    parameter : p_bin as checkbox ."default 'X'.
    selection-screen end of line.
    selection-screen end of block b2.
    selection-screen end of block b0.

  • Dialog programming - How to place a select-option field in a dialog screen

    Hi all,
    In Dialog Programming, How to place a select-option field in a dialog screen.
    Kindly give me some example code...
    Thanks,
    Jaffer Ali.S

    hi Ali,
    U can add select-options in ur module pool by using  SELECTION-SCREEN BEGIN OF SCREEN <scrn> AS SUBSCREEN  command.
    check this link for reference.....
    http://help.sap.com/saphelp_47x200/helpdata/en/e7/deb237b9a9a968e10000009b38f8cf/frameset.htm
    Example Code :
    DATA : ok_code TYPE sy-ucomm.
    SELECTION-SCREEN BEGIN OF SCREEN 1010 AS SUBSCREEN.
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS: p_rad1 RADIOBUTTON GROUP grp1 DEFAULT 'X',
                p_rad2 RADIOBUTTON GROUP grp1,
                p_rad3 RADIOBUTTON GROUP grp1.
    SELECT-OPTIONS: s_matnr FOR  mara-matnr,
                    s_matkl FOR  mara-matkl,
                    s_mtart FOR  mara-mtart.
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN END OF SCREEN 1010.
    START-OF-SELECTION.
      CALL SCREEN 100.
    *&      Module  STATUS_0100  OUTPUT
    MODULE status_0100 OUTPUT.
    SET PF-STATUS 'xxxxxxxx'.
    SET TITLEBAR 'xxx'.
    CALL SCREEN 1010 .
    ENDMODULE.                    "status_0100 OUTPUT
    *&      Module  USER_COMMAND_0100  INPUT
          text
    MODULE user_command_0100 INPUT.
      CASE ok_code.
        WHEN 'EXIT'.
          LEAVE PROGRAM.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    SCREEN 100 ****************
    PROCESS BEFORE OUTPUT.
      MODULE status_0100.
      CALL SUBSCREEN sub_1010 INCLUDING sy-repid '1010'.
    <b>***** where sub_1010 is name of sub-screen area</b>
    PROCESS AFTER INPUT.
      CALL SUBSCREEN sub_1010.
      MODULE user_command_0100.
    <<< REMOVED BY MODERATOR >>>
    Harimanjesh AN
    Edited by: Marcelo Ramos on Dec 17, 2008 7:54 PM

  • How to set focus and mark red on certain select option field

    hi experts
    I embedded a select_option view in my application and  tried to use IF_WD_SELECT_OPTIONS->request_focus to set focus on a certain select option field if the logical check failed, and also hope the low field of the select option can be marked red....but things does not happen that way....
    could anyone kindly tell me how to implement that requirement?
    tkx and regards
    sun

    What is the problem you are facing in this ?
    Requesting focus is easy.
    just call the method request focus and pass the id of the parameter whose lower value field you want to focus.
    as shown below.
    code you might have written in wddoinit
    DATA: LT_RANGE_TABLE TYPE REF TO DATA,
            RT_RANGE_TABLE TYPE REF TO DATA,
            READ_ONLY TYPE ABAP_BOOL,
            TYPENAME TYPE STRING.
        DATA: LR_COMPONENTCONTROLLER TYPE REF TO IG_COMPONENTCONTROLLER,
            L_REF_CMP_USAGE TYPE REF TO IF_WD_COMPONENT_USAGE.
    *   * 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( ).
        WD_THIS->M_HANDLER = WD_THIS->M_WD_SELECT_OPTIONS->INIT_SELECTION_SCREEN( ).
    LT_RANGE_TABLE = WD_THIS->M_HANDLER->CREATE_RANGE_TABLE( I_TYPENAME = 'ZDEALERID' ).
    * * add a new field to the selection
      WD_THIS->M_HANDLER->ADD_SELECTION_FIELD( I_ID = 'ID'
      IT_RESULT = LT_RANGE_TABLE I_READ_ONLY = READ_ONLY ).
    code for focusing a field.
    wd_this->m_handler->request_focus( i_id = 'ID' ).
    you must have declared attributes m_handler and m_wd_select_options type reffering to IF_WD_SELECT_OPTIONS and
    IWCI_WDR_SELECT_OPTIONS respectively.
    and regarding that red color i am not sure it is possible without using message manager.
    thanks
    sarbjeet

Maybe you are looking for

  • LoadJava Privilege Error

    While loading a .jar using loadjava in Oracle 8.1.5 I had this error on all the classes within the jar. Does anyone know what the problem is ? Error while creating class javax/mail/internet/NewsAddress ORA-01031: insufficient privileges Error while c

  • Migration problem, Jdev 11.1.1.4.0 to Jdev 11.1.2.3.0

    Hi, I need Help, I've tried to migrate my aplication developed in Jdev 11.1.1.4.0 to Jdev 11.1.2.3.0, when deploy the application to Integrated weblogic Server 10.3.5 getting te next error: ------------------------------------------------------------

  • PS7 compatible with CS3? Can't open file in PS7

    Have a problem I'm hoping to get some help with. Have a client running PS7 with no option to upgrade. I've saved my PSD in CS3 with the preference to maximize compatibility set to "Always", removed all layer styles, layer sets, effects...everything.

  • Budget carry forward- giong up in the fund center hierarchy

    Hi, We are about to close year 2008 in the FM. We work with the former budget, and we don't have budget structure. When carry forward the commitment u2013 the receiver is the same as the sender. But, when I carry forward budget for commitment, the re

  • ITS & Transaction Input Field (OKCODE)

    Hello, We just configured the internal ITS on a Netweaver 2004s SP13 Solution Manager SR3, but we can't see the transaction input field on webgui when accesing the system using the web client. We have been looking around, and it seems that it should