Making sy-datum available in the selection screen.

Hi All,
This is a query regarding for eg: tcode wpo1. We want to schedule the program in
background with a variant.
The variants should have all our field but delivery date as sy-datum which is default in the current program.
How do we do. I kind of tried a lot of options on the selection screen variant  saving.  Nothing seems to be solving my issue.
Kindly suggest.
Rgds,
Anu.

Hi ,,
In the tcode WPO1,
while saving as variant,in variant attributes,  For the field "Delievry Date " ,
give the following :
" Selection Variable = D; Dynamic Date calculation"
"NAme of Variable = Current date",
then save it .
Now you can see only the current date i.e sy-datum even with in the variant when you execute WPO1.
this will work fine as i faced the same problem.
revert me back if u find any difficulty
reward points if you find it helpful.
regards
Naveen

Similar Messages

  • Dynamic Selection option in the selection screen

    Hi ,
    I have a requirement like this ....
    The user wants some fields to be default available in the selection screen. But they also want to be able to select the data based on additional fields (all the remaining fields ) which they want to see in the dynamic selection .
    The basic list for selections should be limited to the fields listed in the specifications provided to me and the remaining fields should be made available through the dynamic selection option.
    In the transaction FBL3N , this facility is provided.
    Kindly help me with this..
    thanks,
    Sumit .

    Hi Sumit,
    To include dynamic selection check this sample code.
    TYPE POOLS DECLARATIONS FOR VALUE REQUEST MANAGER AND ICONS
    TYPE-POOLS : vrm,
                 icon.
    *SELECTION SCREEN FIELDS
    TABLES : sscrfields.*GLOBAL DECLARATIONS
    DATA : flag TYPE c,
          tablename(10),
          mmtable LIKE dd02l-tabname,
          sdtable LIKE dd02l-tabname,
          hrtable LIKE dd02l-tabname.*DECLARATIONS FOR SELECTION SCREEN STATUS
    DATA it_ucomm TYPE TABLE OF sy-ucomm.***********SELECTION-SCREENS**********************
    SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME.*FOR DYNAMIC DISPLAY OF MODULES
    PARAMETERS :  pa RADIOBUTTON GROUP rad USER-COMMAND com MODIF ID mod,
                  pb RADIOBUTTON GROUP rad MODIF ID rad,
                  pc RADIOBUTTON GROUP rad MODIF ID cad.SELECTION-SCREEN SKIP.**TO INCLUDE DYNAMIC ICONS
    SELECTION-SCREEN COMMENT 2(6) text_001.*DYNAMIC LIST BOX BASED ON USER SELECTIONS
    PARAMETERS one AS LISTBOX VISIBLE LENGTH 20  MODIF ID mod.
    PARAMETERS two AS LISTBOX VISIBLE LENGTH 20   MODIF ID rad.
    PARAMETERS three AS LISTBOX VISIBLE LENGTH 20 MODIF ID cad.SELECTION-SCREEN END OF BLOCK blk1.*DISPLAY DYNAMIC PUSHBUTTON ON APP TOOLBAR ON USER CLICKS
    SELECTION-SCREEN: FUNCTION KEY 1,
                      FUNCTION KEY 2,
                      FUNCTION KEY 3.**EVENT ON SELECTION SCREEN FOR OUTPUT DISPLAY
    AT SELECTION-SCREEN OUTPUT.*CLICK OF FIRST RADIO BUTTON
      IF pa = 'X'.
        sscrfields-functxt_01 = 'Materials Management'.
        WRITE icon_plant AS ICON TO text_001.
    *CODE TO GET DYNAMICS BASED ON THE SELECTED RADIO
        LOOP AT SCREEN.
          IF screen-group1 = 'MOD'.
            screen-intensified = '1'.
            screen-active = 1.
            screen-display_3d = '1'.
            MODIFY SCREEN.
          ENDIF.
          IF screen-group1 = 'RAD'.
            screen-intensified = '0'.
            screen-active = 0.
            screen-display_3d = '0'.
            MODIFY SCREEN.
          ENDIF.
          IF screen-group1 = 'CAD'.
            screen-intensified = '0'.
            screen-active = 0.
            screen-display_3d = '0'.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ENDIF.*CLICK OF SECOND RADIO
      IF pb = 'X'.
        sscrfields-functxt_02 = 'Sales And Distribution'.
        WRITE icon_ws_ship AS ICON TO text_001.
        LOOP AT SCREEN.
          IF screen-group1 = 'RAD'.
            screen-intensified = '1'.
            screen-active = 1.
            screen-display_3d = '1'.
            MODIFY SCREEN.
          ENDIF.
          IF screen-group1 = 'MOD'.
            screen-intensified = '0'.
            screen-active = 0.
            screen-display_3d = '0'.
            MODIFY SCREEN.
          ENDIF.
          IF screen-group1 = 'CAD'.
            screen-intensified = '0'.
            screen-active = 0.
            screen-display_3d = '0'.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ENDIF.*CLICK OF THIRD RADIO
      IF pc = 'X'.
        sscrfields-functxt_03 = 'Human Resources'.
        WRITE icon_new_employee AS ICON TO text_001.
        LOOP AT SCREEN.
          IF screen-group1 = 'RAD'.
            screen-intensified = '0'.
            screen-active = 0.
            screen-display_3d = '0'.
            MODIFY SCREEN.
          ENDIF.
          IF screen-group1 = 'MOD'.
            screen-intensified = '0'.
            screen-active = 0.
            screen-display_3d = '0'.
            MODIFY SCREEN.
          ENDIF.
          IF screen-group1 = 'CAD'.
            screen-intensified = '1'.
            screen-active = 1.
            screen-display_3d = '1'.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ENDIF.*CUSTOMISING THE TOOLBARS OF THE SELECTION SCREEN
    *WITH F8 BUTTON DISABLED  APPEND :  'PRIN' TO it_ucomm,
                'SPOS' TO it_ucomm,
                'ONLI' TO it_ucomm.  CALL FUNCTION 'RS_SET_SELSCREEN_STATUS'
        EXPORTING
          p_status  = sy-pfkey
        TABLES
          p_exclude = it_ucomm.
    **EVENT ON THE SELECTION
    AT SELECTION-SCREEN.* LIST BOX ONE VALUES
      CASE one.
        WHEN '1'.
          mmtable = 'MARC'.
        WHEN '2'.
          mmtable = 'MARA'.
        WHEN '3'.
          mmtable = 'MARD'.
        WHEN '4'.
          mmtable = 'MARM'.
      ENDCASE.* LIST BOX TWO VALUES
      CASE two.
        WHEN '1'.
          sdtable = 'VBAK'.
        WHEN '2'.
          sdtable = 'VBAP'.
        WHEN '3'.
          sdtable = 'VBUK'.
        WHEN '4'.
          sdtable = 'VBUP'.
      ENDCASE.* LIST BOX THREE VALUES
      CASE three.
        WHEN '1'.
          hrtable = 'PA0001'.
        WHEN '2'.
          hrtable = 'PA0006'.
        WHEN '3'.
          hrtable = 'PA0022'.
        WHEN '4'.
          hrtable = 'PA0008'.
      ENDCASE.*VALUES FOR CLICK OF THE PUSHBUTTON ON APP TOOLBAR
    *AND ENABLING THE BUTTONS TO PERFORM F8
      CASE sscrfields-ucomm.
        WHEN 'FC01'.
          tablename = mmtable.
          sscrfields-ucomm = 'ONLI'.
        WHEN 'FC02'.
          tablename = sdtable.
          sscrfields-ucomm = 'ONLI'.
        WHEN 'FC03'.
          tablename = hrtable.
          sscrfields-ucomm = 'ONLI'.
      ENDCASE.*INITIALIZATION EVENT
    INITIALIZATION.*VALUES ASSIGNED TO DROPDOWNLISTS IN THE SUBROUTINES
      PERFORM f4_value_request_pa.
      PERFORM f4_value_request_pb.
      PERFORM f4_value_request_pc.*START OF SELECTION EVENT
    START-OF-SELECTION.*SUBROUTINE FOR OUTPUT
      PERFORM output.*&----------------------------------------------------------------*
    *&      Form  f4_value_request_PA
    *       text
    *SUBROUTINE TO PROVIDE DROPDOWN VALUES TO LIST1
    FORM f4_value_request_pa.  DATA: l_name TYPE vrm_id,
            li_list TYPE vrm_values,
            l_value LIKE LINE OF li_list.  l_value-key = '1'.
      l_value-text = 'Plant Data for Material'.
      APPEND l_value TO li_list.
      CLEAR l_value.  l_value-key = '2'.
      l_value-text = 'General Material Data'.
      APPEND l_value TO li_list.
      CLEAR l_value.  l_value-key = '3'.
      l_value-text = 'Storage Location Data for Material'.
      APPEND l_value TO li_list.
      CLEAR l_value.  l_value-key = '4'.
      l_value-text = 'Units of Measure for Material'.
      APPEND l_value TO li_list.
      CLEAR l_value.
      l_name = 'ONE'.  CALL FUNCTION 'VRM_SET_VALUES'
        EXPORTING
          id              = l_name
          values          = li_list
        EXCEPTIONS
          id_illegal_name = 1
          OTHERS          = 2.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.ENDFORM. " f4_value_request_tabname*&----------------------------------------------------------------*
    *&      Form  f4_value_request_PB
    *       text
    *SUBROUTINE TO PROVIDE DROPDOWN VALUES TO LIST2FORM f4_value_request_pb.  DATA: l_name TYPE vrm_id,
            li_list TYPE vrm_values,
            l_value LIKE LINE OF li_list.  l_value-key = '1'.
      l_value-text = 'Sales Document: Header Data'.
      APPEND l_value TO li_list.
      CLEAR l_value.  l_value-key = '2'.
      l_value-text = 'Sales Document: Item Data'.
      APPEND l_value TO li_list.
      CLEAR l_value.  l_value-key = '3'.
      l_value-text = 'Sales Document:Header Status'.
      APPEND l_value TO li_list.
      CLEAR l_value.  l_value-key = '4'.
      l_value-text = 'Sales Document: Item Status'.
      APPEND l_value TO li_list.
      CLEAR l_value.
      l_name = 'TWO'.
      CALL FUNCTION 'VRM_SET_VALUES'
        EXPORTING
          id              = l_name
          values          = li_list
        EXCEPTIONS
          id_illegal_name = 1
          OTHERS          = 2.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM. " f4_value_request_PB*&----------------------------------------------------------------*
    *&      Form  f4_value_request_PC
    *       text
    *SUBROUTINE TO PROVIDE DROPDOWN VALUES TO LIST3FORM f4_value_request_pc.  DATA: l_name TYPE vrm_id,
            li_list TYPE vrm_values,
            l_value LIKE LINE OF li_list.  l_value-key = '1'.
      l_value-text = 'HR Master :Infotype 0001 (Org. Assignment)'.
      APPEND l_value TO li_list.
      CLEAR l_value.  l_value-key = '2'.
      l_value-text = 'Address Infotype 0006'.
      APPEND l_value TO li_list.
      CLEAR l_value.  l_value-key = '3'.
      l_value-text = 'Education Infotype 0022'.
      APPEND l_value TO li_list.
      CLEAR l_value.  l_value-key = '4'.
      l_value-text = 'Basic Pay Infotype 0008'.
      APPEND l_value TO li_list.
      CLEAR l_value.
      l_name = 'THREE'.
      CALL FUNCTION 'VRM_SET_VALUES'
        EXPORTING
          id              = l_name
          values          = li_list
        EXCEPTIONS
          id_illegal_name = 1
          OTHERS          = 2.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
    ENDFORM. " f4_value_request_PC
    *&      Form  OUTPUT
    *       text
    *      -->P_TABLENAME  text
    *fINAL OUTPUT
    FORM output.  DATA p_table(10).  p_table = tablename.*popup to display teh selected table and
    *Continue button is clicked
      CALL FUNCTION 'POPUP_TO_DISPLAY_TEXT'
        EXPORTING
          titel        = 'User Selections '
          textline1    = p_table
          textline2    = 'is the Selected table'
          start_column = 25
          start_row    = 6.*assigning the table value in p_table to the
    * Table in SE16 transaction by explicitly calling
      SET PARAMETER ID 'DTB' FIELD p_table.
      CALL TRANSACTION 'SE16'.
    ENDFORM.                    "OUTPUT
    Regards,
    Manoj Kumar P

  • How to Modify the Selection Screen in Report Painter

    Hi All,
    I am working on Report painter and writer,
    can any body helpme how to change the selection screen i.e i want add some more  select options to the exisiting roport .
    how can i  add more select options to the exisiting one
    please let me know the Procedure and provide some relevent documents .
    Thanks and Best regards.
    uma

    Hello...
    In the program ...we can find the following chunk of code..
    selection-screen:begin of block B1 with frame title text-001.
    Parameters : ....
    select-options:.....
    selection-screen:end of block b1.
    if we need to add any more user inputs we can write the code inside the existing
    selection screen....end of block .
    or create a new block ..just the block name should be different...
    if we are using select options...we need to declare the table name using the key word for the field on which we are giving select options ....
    Tables : BSIK.
    Please see the following code:
    Imagine :- we have the current selection screen..
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETERS: P_BUKRS LIKE BSIK-BUKRS DEFAULT SPACE.
    SELECT-OPTIONS: S_LIFNR FOR BSIK-LIFNR.
    SELECTION-SCREEN END OF BLOCK B1.
    we need to add 2 more fields on the selection screen ..this we can do as the following
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETERS: P_BUKRS LIKE BSIK-BUKRS DEFAULT SPACE.
    SELECT-OPTIONS: S_LIFNR FOR BSIK-LIFNR,
                    S_HKONT FOR BSIK-HKONT.
    PARAMETER: P_DATE LIKE BSIK-BUDAT OBLIGATORY DEFAULT
               SY-DATUM.
    SELECTION-SCREEN END OF BLOCK B1.
    OR...create a new block...
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
    SELECT-OPTIONS:   S_HKONT FOR BSIK-HKONT.
    PARAMETER: P_DATE LIKE RFPDO-ALLGSTID OBLIGATORY DEFAULT
               SY-DATUM.
    SELECTION-SCREEN END OF BLOCK B2.
    there are many options available in selection screens..like creating check box,radio button etc..
    for more info press F1 help on the Selection screen in the ABAP editor
    Revert back if not clear and reward if helpful
    Regards
    Byju

  • How to limit the search help in the selection screen?

    Hi All,
    I got a selection option in a selection screen,
    say SELECT-OPTIONS KSCHL FOR VAKE-KSCHL.
    I want to limit the output list of the search help of this field, e.g. 33 entries for a specific application and usage.
    What should I do ?
    Thz.

    Hi,
    U can check with these two
    <b>... NO-EXTENSION</b>
    Effect
    The user can only make an entry on one line. Calling the additional "Multiple Selection" screen is not supported and no pushbutton for this appears on the selection screen.
    Addition 12
    <b>... NO INTERVALS</b>
    Effect
    The selection option is displayed on the selection screen without a 'to' field. The pushbutton for calling the "Multiple Selection" screen appears immediately after the 'from' field.
    This addition thus allows you to generate a simplified display on the selection screen. This is particularly useful if you are not making any range selections for this selection option.
    Notes
    On the "Multiple Selection" screen, you can also enter ranges for selection options with "NO INTERVALS".
    By combining this addition with "NO-EXTENSION", you can restrict the user to entry of a single value for the selection option, but with the possibility of also choosing single value options like 'Greater than' or 'Less than or equal'.
    By using the addition " NO INTERVALS" with SELECTION-SCREEN BEGIN OF BLOCK, you can activate the simplified display for all selection options in a block.
    The function module SELECT_OPTIONS_RESTRICT allows you to restrict the set of selection options available for a SELECT-OPTION (for example, only single values and patterns, i.e. 'EQ' and 'CP' are allowed). You can also forbid the leading sign 'E' (= 'Exclude from selection'). This means that you can considerably restrict the selections which can be entered on the selection screen.
    Just now tried it out to limit the search help u have to use NO-EXTENSION.
    <b>Try this simple code.
    Tables: mara.
    SELECT-OPTIONS: s_matnr FOR MARA-matnr NO-EXTENSION.</b>
    Hope this helps.
    Kindly reward points and close the thraed if ur problem got solved.
    U havent rewarded any points?
    Message was edited by: Judith Jessie Selvi

  • How to create the selection screen dynamically

    Hi,
    I have a requirement to create the selection screen Dynamically. All the fields that should appear on the selection screen will be available in a custom table. So, based on the entries available in the Z tables, the selection screen should be built. Eg. If there are 10 records available in the Z table, the selection screen should consist of 10 fields. If there are 100 entries, the Selection screen should contain 100 fields. and the logic to build this selection screen should be carried out dynamically in the program.
    Could anyone of you please share the valuable inputs on this. If anyone has the sample code to do this, please share.
    Thanks in advance.
    Regards,
    Paddu.

    Hi,
    Kindly go through this sample program below:
    DEMO_LIST_FORMAT_INPUT *and
    check this function module:
    FREE_SELECTIONS_DIALOG *.
    Hope it helps
    Regards
    Mansi

  • How to get the F4 help for a field in the selection screen

    Hi all,
    I am working on a report program. In the selection screen, I have the field 'Brand Node ID'(ZNODEID). The requirement is to have the F4 help for this field. This field is available in a 'Z' table ZNODETAB. There is no Value table maintained for the corresponding data element. So, without disturbing the table data element/domain, I should get the F4 help in the selection screen of the report. In the F4 help, data should be fetched from the table ZNODETAB and the field is ZNODEID. Is there any way to do this.
    By searching the function modules, I could find that, we can use the FM F4IF_INT_TABLE_VALUE_REQUEST. But, I am not Sure. Can someone tell me the parameters to be passed to this function module to get the F4 help and the procedure to follow. S_NODEID is the select option used in the program. Please help me in this regard. Thanks in advance.
    Thanks & Regards,
    Paddu.

    look at this code and try
    select-options : S_NODEID for ZNODETAB-ZNODEID.
    at selection-screen on value-request for s_nodeid-low
    perform f4_nodeid using 'S_NODEID-LOW'.
    at selection-screen on value-request for s_nodeid-low
    perform f4_nodeid using 'S_NODEID-HIGH'.
    end-of-selection.
    FORM f4_nodeid  USING    p_field.
      declare it_node.
    select znodeid from ZNODETAB into table it_node.
      CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
        EXPORTING
          retfield        = 'ZNODEID'
          dynpprog        = sy-repid
          dynpnr          = sy-dynnr
          dynprofield     = p_field
          value           = space
          value_org       = 'S'
          display         = 'F'
        TABLES
          value_tab       = it_node
        EXCEPTIONS
          parameter_error = 1
          no_values_found = 2
          OTHERS          = 3.
    endform

  • How to use MM/YYYY Format in the selection Screen?

    There is this program RMCB0300 where the date format in the selection screen has MM/YYYY Format.
    I am working on a report which requires it "Period" Field in the selection screen to be in the same format.
    However, i am trying to give the select option as " SL_SPMON FOR S031-SPMON MODIF ID PER." and declaring S031 table in the declaration part.
    But still, its not been able to provide me F4 help in the inpur screen.
    Can someone please provide me some guidance in this regard?

    Hi,
    the following works for me..
    *& Report  ZPMONAT                                                     *
    report  zpmonat                                 .
    tables: s031.
    selection-screen begin of block abc.
    select-options:  sl_spmon for s031-spmon.
    selection-screen end of block abc.
    at selection-screen on value-request for sl_spmon-low.
      perform monat_f4.
    at selection-screen on value-request for sl_spmon-high.
      perform monat_f4.
    start-of-selection.
    end-of-selection.
    *&      Form  monat_f4
    *       text
    *  -->  p1        text
    *  <--  p2        text
    form monat_f4 .
      data: begin of mf_dynpfields occurs 1.
              include structure dynpread.
      data: end   of mf_dynpfields.
      data: mf_returncode   like sy-subrc,
            mf_monat        like isellist-month,
            mf_hlp_repid    like sy-repid.
      field-symbols: <mf_feld>.
    * Wert von Dynpro lesen
      get cursor field mf_dynpfields-fieldname.
      append mf_dynpfields.
      mf_hlp_repid = sy-repid.
      do 2 times.
        call function 'DYNP_VALUES_READ'
          exporting
            dyname               = mf_hlp_repid
            dynumb               = sy-dynnr
          tables
            dynpfields           = mf_dynpfields
          exceptions
            invalid_abapworkarea = 01
            invalid_dynprofield  = 02
            invalid_dynproname   = 03
            invalid_dynpronummer = 04
            invalid_request      = 05
            no_fielddescription  = 06
            undefind_error       = 07.
        if sy-subrc = 3.
    *     Aktuelles Dynpro ist Wertemengenbild
          mf_hlp_repid = 'SAPLALDB'.
        else.
          read table mf_dynpfields index 1.
    *     Unterstriche durch Blanks ersetzen
          translate mf_dynpfields-fieldvalue using '_ '.
          exit.
        endif.
      enddo.
      if sy-subrc = 0.
    *   Konvertierung ins interne Format
        call function 'CONVERSION_EXIT_PERI_INPUT'
          exporting
            input         = mf_dynpfields-fieldvalue
          importing
            output        = mf_monat
          exceptions
            error_message = 1.
        if mf_monat is initial.
    *     Monat ist initial => Vorschlagswert aus akt. Datum ableiten
          mf_monat = sy-datlo(6).
        endif.
        call function 'POPUP_TO_SELECT_MONTH'
          exporting
            actual_month               = mf_monat
          importing
            selected_month             = mf_monat
            return_code                = mf_returncode
          exceptions
            factory_calendar_not_found = 01
            holiday_calendar_not_found = 02
            month_not_found            = 03.
        if sy-subrc = 0 and mf_returncode = 0.
    *     ASSIGN (MF_DYNPFIELDS-FIELDNAME) TO <MF_FELD>. " ==>> note 148804
    *     <MF_FELD> = MF_MONAT.
          call function 'CONVERSION_EXIT_PERI_OUTPUT'
            exporting
              input  = mf_monat
            importing
              output = mf_dynpfields-fieldvalue.
          collect mf_dynpfields.
          call function 'DYNP_VALUES_UPDATE'
            exporting
              dyname               = mf_hlp_repid
              dynumb               = sy-dynnr
            tables
              dynpfields           = mf_dynpfields
            exceptions
              invalid_abapworkarea = 01
              invalid_dynprofield  = 02
              invalid_dynproname   = 03
              invalid_dynpronummer = 04
              invalid_request      = 05
              no_fielddescription  = 06
              undefind_error       = 07.           "<<== note 148804
        endif.
      endif.
    endform.                                                    " monat_f4
    Regards,
    Suresh Datti

  • How to display data from internal table in the SELECTION-SCREEN

    Hello Experts,
    My requirement is to display the data's from an internal table in the selection screen. I tried using selection-screen comment. But it is working only for a single record. Can anyone please tell me how to do this?

    Hi Ritika,
    we cant use write statement inside selection-screen.
    see my coding.
    SELECTION-SCREEN BEGIN OF SCREEN 123 AS WINDOW TITLE TEXT-456.
      SELECTION-SCREEN BEGIN OF BLOCK BL1 WITH FRAME TITLE TEXT-BL1
                                          NO INTERVALS.
        SELECT-OPTIONS SEL1 FOR SY-DATUM.
        PARAMETERS     PAR1(10).
    <b>** I WANT ALL RECORDS FROM AN INTERNAL TABLE HERE ONLY</b>
        SELECTION-SCREEN END OF BLOCK BL1.
      SELECTION-SCREEN PUSHBUTTON 2(10)  but1 USER-COMMAND cli1.
      SELECTION-SCREEN PUSHBUTTON 20(10)  but2 USER-COMMAND cli2.
    SELECTION-SCREEN END OF SCREEN 123.

  • Functional area(FKBER field in the selection screen of the report painter))

    Hi,
    I have a requirement to add functional area field in the selection screen for a report painter report. This report using library 1VK and table 'CCSS'. I added functional area field in the general data selection . After the execution of report with functional area field filled with value. report not giving any output. do i need to maintain any setting to achieve?
    Regards,
    Palani

    1. Call GR22 and click "Characteristics".
    2. Check FKBER and assign a position number to it.
    3. Save and close the library.
    4. Call your report in GRR2 and you should now see FKBER as an available characteristic.
    5. Use it in the General Data Selection or as a Lead Column, as per requirement.
    Or,
    1. Call GR21 and create a custom library. Provide a name and description and also provide a library you can copy from (scan for the best-fit library).
    2. Now follow the steps 2 through 5 above to achieve your result.
    Hope this helps.
    Cheers.

  • Help in the selection screen

    hi folks,
    I need help in updating the selection screen, I have declared the 'parameters' object in the selection screen like this.
    parameters:
      Paygroup type ZPGKIS obligatory.
    it has three values '5A', '5B' and '5V'. when I select '5V' from the parameters, I need to display another parameters selection object for 'date' otherwise NO
    I tried something like this.....
      if Paygroup = '5V'.
    parameters: p_date   type d.
      endif.
    It is not working...
    How can I correct this??
    Thanks in advance
    Vinu

    hii
    you can make that using radio button
    <b>
    REPORT z_selectionscreen .
    SELECTION-SCREEN BEGIN OF BLOCK blk.
    PARAMETERS : p_rb1 TYPE PAYGROUP RADIOBUTTON GROUP rad1 DEFAULT 'X' USER-COMMAND FC,
                 p_rb2 TYPE PAYGROUP RADIOBUTTON GROUP rad1.
    SELECTION-SCREEN END OF BLOCK blk.
    SELECTION-SCREEN BEGIN OF BLOCK blk_1 WITH FRAME.
    PARAMETERS : p_werks1 TYPE werks_d MODIF ID bk1.
    SELECTION-SCREEN END OF BLOCK blk_1.
    SELECTION-SCREEN BEGIN OF BLOCK blk_2 WITH FRAME.
    PARAMETERS : p_werks2 TYPE werks_d MODIF ID bk2,
                 p_matnr2 TYPE matnr   MODIF ID bk2.
    SELECTION-SCREEN END OF BLOCK blk_2.
    AT SELECTION-SCREEN OUTPUT.
      IF p_rb1 = '5V'.
        LOOP AT SCREEN.
          IF screen-group1 = 'BK1'.
            screen-active = 0.
            MODIFY SCREEN.
          ELSE.
            screen-active = 1.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ELSE.
        LOOP AT SCREEN.
          IF screen-group1 = 'BK2'.
            screen-active = 0.
            MODIFY SCREEN.
          ELSE.
            screen-active = 1.
            MODIFY SCREEN.
          ENDIF.
        ENDLOOP.
      ENDIF.</b>
    you can as well check this code
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETERS : P_FILE(25) TYPE C,
                 O_FILE(25) TYPE C.
    SELECTION-SCREEN END OF BLOCK B1.
    *Selection Screen 2
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
    PARAMETERS: CAL_TRA RADIOBUTTON GROUP G1 USER-COMMAND FLAG,
                SESSION RADIOBUTTON GROUP G1 DEFAULT 'X'.
    SELECTION-SCREEN END OF BLOCK B2.
    *Selection Screen 3
    SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-003.
    PARAMETERS: MODE DEFAULT 'X' MODIF ID BL1,
                UPDATE DEFAULT 'X' MODIF ID BL1.
    SELECTION-SCREEN END OF BLOCK B3.
    *Selection Screen 4
    SELECTION-SCREEN BEGIN OF BLOCK B4 WITH FRAME TITLE TEXT-003.
    PARAMETERS: SES_NAM TYPE APQI-GROUPID MODIF ID BL2,
                KEP_TRAS TYPE C DEFAULT 'X' MODIF ID BL2,
                LOC_DATE TYPE SY-DATUM MODIF ID BL2,
                USER TYPE SY-UNAME DEFAULT SY-UNAME MODIF ID BL2.
    SELECTION-SCREEN END OF BLOCK B4.
                        At  Selection-Screen Output                      *
    AT SELECTION-SCREEN OUTPUT.
      IF CAL_TRA = 'X'.
        LOOP AT SCREEN.
          IF SCREEN-GROUP1 = 'BL1'.
            SCREEN-ACTIVE = '1'.
          ENDIF.
          IF SCREEN-GROUP1 = 'BL2'.
            SCREEN-ACTIVE = '0'.
          ENDIF.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
      IF SESSION = 'X'.
        LOOP AT SCREEN.
          IF SCREEN-GROUP1 = 'BL1'.
            SCREEN-ACTIVE = '0'.
          ENDIF.
          IF SCREEN-GROUP1 = 'BL2'.
            SCREEN-ACTIVE = '1'.
          ENDIF.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
    Message was edited by: Naresh Kumar
    Message was edited by: Naresh Kumar

  • Splitting the date based on the selection screen input

    Hi all,
    In the Selection screen of my report i had maintained two fields
    SELECT-OPTIONS  : S_DATE    FOR TPCDATE-FROM_DATE.
    PARAMETERS      : P_NUMBER  TYPE ZMMAREA-NUMBER.
    I need to code such that
    S_DATE should be splitted into P_NUMBER times
    for example if P_NUMBER is 4 i need  S_DATE should be splitted into 4 equal parts or near by equal parts
                        IF  P_NUMBER is 2 i need  S_DATE should be splitted into 2 equal parts or  near by equal parts
    Please suggest me the code of if any Function module exists fot this date splitting
    Thanks in advance
    Ajay.D

    though date question are not allowed, this requirement sounds little different.
    you can take a difference between those days by: S_date-high - S_date-low.
    then divide the difference by p_number. now you get the split positions.
    now in a do enddo you can negate the dates by the split amount you got from the divisions.
    like...
    PARAMETERS: num type i.
    select-OPTIONS: s_date for sy-datum.
    data : gv_split type i, gv_temp type sy-datum.
    gv_split = s_date-high - s_date-low.
    gv_split = gv_split / num.
    gv_temp = s_date-high.
    do num times.
      gv_temp = gv_temp - gv_split.
      WRITE / gv_temp.
    enddo.

  • How to make the selection screen field names to apper as in logon language

    hai
    the selection screen field names should appear
    as that of logon language
    and <u>before that once i logon with a language
    it should pop up the (some)message in the logon language</u>.
    For the selection screen filednames to appear as that
    of the logon language whether i have to maintain the textelements for all screen fields in all possible languages or i have to write only in english and tell mentioning it to change

    In <b>SE38</b> --> Goto --> Translate.
    Choose target language, and start making the translation -;)
    Greetings,
    Blag.

  • Disabling certain fields on the selection screen.

    Hi all,
              I want to disable certain fields on selection screen of my program, also i want to display certain fields on selection screen only if a particular field on the selection screen is checked or selected. Please guide me how this can be achieved via coding in a program.
    Thanks & regards,
    Chetan.

    Hi Chetan,
    try this.
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS: pa_file TYPE rlgrap-filename MODIF ID abc,
    pa_lifnr TYPE lfa1-lifnr MODIF ID abc,
    pa_vkorg TYPE vbak-vkorg MODIF ID abc.
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
    PARAMETERS: pa_kunnr TYPE vbak-kunnr MODIF ID def.
    SELECT-OPTIONS: s_lifnr FOR gs_lfa1-lifnr MODIF ID def,
    s_date FOR gs_lfa1-erdat MODIF ID def,
    s_augru FOR gs_vbak-augru MODIF ID def,
    s_vbeln FOR gs_vbak-vbeln MODIF ID def.
    SELECTION-SCREEN END OF BLOCK b2.
    SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS: pa_upd RADIOBUTTON GROUP g1 USER-COMMAND uc01 DEFAULT 'X'."#EC *
    SELECTION-SCREEN COMMENT 3(60) text-004 FOR FIELD pa_upd.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS: pa_rep RADIOBUTTON GROUP g1 ."#EC *
    SELECTION-SCREEN COMMENT 3(60) text-005 FOR FIELD pa_rep.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK b3.
    IF pa_rep EQ gc_x.
    LOOP AT SCREEN.
    IF screen-group1 = gc_abc.
    screen-input = gc_zero_num.
    ELSEIF screen-group1 = gc_def.
    screen-active = gc_one_num.
    ENDIF.
    MODIFY SCREEN.
    ENDLOOP.
    ELSEIF pa_upd EQ gc_x.
    *For Reprocessing
    LOOP AT SCREEN.
    IF screen-group1 = gc_def.
    screen-input = gc_zero_num.
    ELSEIF screen-group1 = gc_abc.
    screen-active = gc_one_num.
    ENDIF.
    MODIFY SCREEN.
    CLEAR pa_upd.
    ENDLOOP.
    ENDIF.
    REPORT zrich_001.
    PARAMETERS: p_rad1 RADIOBUTTON GROUP grp1 DEFAULT 'X'
    user-command chk,
    p_rad2 RADIOBUTTON GROUP grp1.
    SELECT-OPTIONS: s_datum1 FOR sy-datum MODIF ID d1,
    s_datum2 FOR sy-datum MODIF ID d2.
    AT SELECTION-SCREEN OUTPUT.
    LOOP AT SCREEN.
    IF p_rad1 = 'X'
    AND screen-group1 = 'D2'.
    screen-active = '0'.
    ENDIF.
    IF p_rad2 = 'X'
    AND screen-group1 = 'D1'.
    screen-active = '0'.
    ENDIF.
    MODIFY SCREEN.
    ENDLOOP.
    reward if useful.
    regards,
    sravanthi.

  • Hide an item on the selection screen

    Hi Gurus!
    I have a selection screen with material number on it whose refernec is use din my program for it. I would like to just hide the material selection on the selection screen but let it be on the report as its been used in the program . Is theer a ways I can hide it in my select options itself rahther than going into the elemnet list and making it invisible . Because I made it invisible through element list but when I trasported to QAT it dosent seem to work , or maybe not getting transported . So is there a way I can just hide it in my sleect options .
    Thanks

    Hi,
    HIDE : s_matnr.
    This is used in interactive reporting not for hiding selection screen fields!
    For your requirement you have two solutions:
    1) create a variant on selection screen (what you have probably already done) hiding your screen field. To see the changes in QUA system, you have to transport this variant there and use it when running the program.
    2) adjusting your code to hide this select-option field in PBO of the screen by default
    AT SELECTION-SCREEN OUTPUT.
       LOOP AT SCREEN.
          if screen-name CS 'S_MATNR'.
             screen-invisible = 'X'.
             modify screen.
          endif.
       ENDLOOP.
    First solution together with [transaction variants|http://help.sap.com/saphelp_47x200/helpdata/en/7d/f639f8015111d396480000e82de14a/frameset.htm] gives great flexibility to adjust system according to specific user requirement, the latter, however provides very easy (and commonly used) way to adjust selection screen from ABAP program itself.
    Regards
    Marcin

  • Dynamic ALV as per the periods on the selection screen

    Hello Experts
    I am new to dynamic ALV , Please help me to sought out my confusion.
    I want to create a dynamic ALV , based on the period mentioned at selection screen.
    for example I want to display the movement type  ( sum of the quantity ) for materials for the full month.
    I want the ALV output as below.
    Material  .........qty 01.04.2011..... qty 02.04.2011... qty 03.04.2011 ........ qty 30.04.2011
    AB1........................... 30.................... 20............................. 50......................... 200
    AB2.................................................... 50 ............................. 80 ..........................10
    I create an internal table itab with there fields to selact the data
    MATNR
    date
    qty
    select MATNR
           date
           qty
    into itab
    from mseg
    where based on the selection screen.
    then collect the data to other table date wise , now i have summrise data of material quantity
    now the results after collection data into table itab2 is as follows
    Material  ................... date ................................   qty
    AB1  ....................    01.04.2011.......................  30
    AB1  ...................     02.04.2011 ....................... 20
    AB1  ...................   03.04.2011.......................  50
    AB1  ...................   .30.04.2011.......................  200
    AB2 ....................   02.04.2011.......................   50
    AB2 .......................   03.04.2011.......................   80
    AB2 .......................   30.04.2011 .......................   10
    How can I display these fields horizontally instead of vertically ,
    and to the exact column as per the field catalog column header belongs to date.
    it would be so helpful if somebody explain with code by taking the above example.
    Thanks in Advance

    Hello Both Experts ,
    I write the below code and it is working for the requirement.
    Can you please check
    REPORT  z_test_dynamic                          .
    TABLES : mkpf , mseg .
    TYPES : BEGIN OF t_mseg ,
          mblnr TYPE mblnr ,
          bwart TYPE bwart ,
          matnr TYPE matnr ,
          werks TYPE werks_d ,
          menge TYPE menge_d ,
          budat TYPE budat ,
      END OF t_mseg.
    TYPES : BEGIN OF t_mseg_1 ,
          matnr TYPE matnr ,
          menge TYPE menge_d ,
          budat TYPE budat ,
      END OF t_mseg_1.
    DATA : gt_mseg TYPE STANDARD TABLE OF t_mseg ,
           gs_mseg TYPE t_mseg,
           gt_mseg_1 TYPE STANDARD TABLE OF t_mseg_1 ,
           gs_mseg_1 TYPE t_mseg_1,
           gt_mseg_2 TYPE STANDARD TABLE OF t_mseg_1 ,
           gs_mseg_2 TYPE t_mseg_1..
    DATA : gt_date TYPE STANDARD TABLE OF sy-datum ,
          gs_date TYPE sy-datum..
    DATA: ok_code LIKE sy-ucomm,
          g_container TYPE scrfname VALUE 'CONTAINER_01',
          grid1  TYPE REF TO cl_gui_alv_grid,
          g_custom_container TYPE REF TO cl_gui_custom_container.
    DATA: gt_fieldcat TYPE lvc_t_fcat.
    DATA: gp_table TYPE REF TO data.
    FIELD-SYMBOLS: <gt_table> TYPE table.
    SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS : s_matnr FOR mseg-matnr ,
                     s_bwart FOR mseg-bwart NO INTERVALS,
                     s_werks FOR mseg-werks ,
                     s_budat FOR mkpf-budat .
    PARAMETERS   : p_mjahr TYPE mjahr OBLIGATORY.
    SELECTION-SCREEN : END OF BLOCK b1.
    PERFORM field_catalog.
    CALL METHOD cl_alv_table_create=>create_dynamic_table
      EXPORTING
        it_fieldcatalog = gt_fieldcat
      IMPORTING
        ep_table        = gp_table.
    ASSIGN gp_table->* TO <gt_table>.
    PERFORM select_main_data.
    PERFORM move_data.
    *&      Form  select_main_data
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM select_main_data .
      SELECT      mseg~mblnr
          mseg~bwart
          mseg~matnr
          mseg~werks
          mseg~menge
          mkpf~budat
        INTO TABLE gt_mseg
        FROM mseg AS mseg INNER JOIN mkpf AS mkpf
        ON mseg~mblnr = mkpf~mblnr AND
           mseg~mjahr = mkpf~mjahr
        WHERE matnr IN s_matnr AND
             budat IN s_budat AND
             werks IN s_werks AND
             bwart IN s_bwart AND
             mseg~mjahr EQ p_mjahr .
      IF  gt_mseg IS NOT INITIAL.
        LOOP AT gt_mseg INTO gs_mseg.
          gs_mseg_1-matnr = gs_mseg-matnr.
          gs_mseg_1-budat = gs_mseg-budat.
          gs_mseg_1-menge = gs_mseg-menge.
          COLLECT gs_mseg_1 INTO gt_mseg_1.
        ENDLOOP.
      ENDIF.
      gt_mseg_2 = gt_mseg_1.
      DELETE ADJACENT DUPLICATES FROM gt_mseg_2  COMPARING matnr.
    ENDFORM.                    " select_main_data
    *&      Form  field_catalog
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM field_catalog .
      DATA : lt_day_attributes TYPE STANDARD TABLE OF casdayattr ,
             ls_day_attributes TYPE casdayattr .
      DATA: ls_fieldcat TYPE lvc_s_fcat ,
            lv_fieldname TYPE lvc_fname.
      IF s_budat-high IS INITIAL.
        s_budat-high = s_budat-low.
      ENDIF.
      CALL FUNCTION 'DAY_ATTRIBUTES_GET'
       EXPORTING
    *   FACTORY_CALENDAR                 = ' '
    *   HOLIDAY_CALENDAR                 = ' '
         date_from                        = s_budat-low
         date_to                          = s_budat-high
         language                         = sy-langu
    * IMPORTING
    *   YEAR_OF_VALID_FROM               =
    *   YEAR_OF_VALID_TO                 =
    *   RETURNCODE                       =
        TABLES
          day_attributes                   = lt_day_attributes
    * EXCEPTIONS
    *   FACTORY_CALENDAR_NOT_FOUND       = 1
    *   HOLIDAY_CALENDAR_NOT_FOUND       = 2
    *   DATE_HAS_INVALID_FORMAT          = 3
    *   DATE_INCONSISTENCY               = 4
    *   OTHERS                           = 5
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      LOOP AT lt_day_attributes INTO ls_day_attributes.
        gs_date = ls_day_attributes-date.
        APPEND gs_date TO gt_date.
      ENDLOOP.
      ls_fieldcat-fieldname = 'MATNR'.
      ls_fieldcat-inttype    = 'CHAR18'.
      ls_fieldcat-coltext    = 'MATERIAL'.
    *   ls_fieldcat-decimals_o   = '2'.
      ls_fieldcat-outputlen = 18.
      APPEND ls_fieldcat TO gt_fieldcat.
      LOOP AT gt_date INTO gs_date.
        CONCATENATE 'QTY_' gs_date INTO lv_fieldname.
        ls_fieldcat-fieldname = lv_fieldname.
        ls_fieldcat-inttype    = 'QUAN'.
        ls_fieldcat-coltext    = gs_date.
        ls_fieldcat-decimals_o   = '2'.
    *    ls_fieldcat-outputlen = 18.
        APPEND ls_fieldcat TO gt_fieldcat.
      ENDLOOP.
    ENDFORM.                    " field_catalog
    *&      Form  move_data
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM move_data .
      DATA: l_row TYPE sy-index.
      FIELD-SYMBOLS: <ls_table>.
      FIELD-SYMBOLS: <l_field> ,
                     <l_mseg_1> TYPE t_mseg_1.
      DATA: ls_fieldcat TYPE lvc_s_fcat .
      ASSIGN LOCAL COPY OF INITIAL LINE OF <gt_table> TO <ls_table>.
      SORT gt_mseg_1 BY matnr.
      LOOP AT gt_mseg_1 ASSIGNING <l_mseg_1> .
        IF <l_field> IS ASSIGNED.
          UNASSIGN <l_field>.
        ENDIF.
        MOVE-CORRESPONDING <l_mseg_1> TO <ls_table>.
          READ TABLE gt_fieldcat INTO ls_fieldcat WITH KEY coltext = <l_mseg_1>-budat.
          IF sy-subrc EQ 0.
            ASSIGN COMPONENT ls_fieldcat-fieldname OF STRUCTURE <ls_table> TO <l_field>.
            <l_field> = <l_mseg_1>-menge.
          ELSE.
            <l_field> =  0.
          ENDIF.
        AT end of matnr.
          APPEND <ls_table> TO <gt_table>.
    clear <ls_table>.
        ENDAT.
      ENDLOOP.
    ENDFORM.                    " move_data
    your answers help me lot . I am awarding the points.
    Very Very Thanks
    Edited by: Dilraj Singh on Apr 13, 2011 3:58 PM
    Edited by: Dilraj Singh on Apr 13, 2011 4:09 PM
    Edited by: Dilraj Singh on Apr 13, 2011 4:23 PM

Maybe you are looking for