Query about TABSTRIP Control within Sub screen

Hi Expert,
I have requirement like follows:
In IW32->Enhancement Tab screen is as subscreen and No: 0900.
Now I want to have 2 different sub screen say 0910 and 0920 each of this for different purpose according to
Order Type as per clients requirement.
Actaully I have developed screen 0900 already for some order type and now clients requirement changed i.e.
there are 2 different groups of Order types (say Grp1 and Grp2)
So, I proposed a solution for this as follows:
In Enhancement Tab of IW32 according to group of Order Type (either Grp1 or Grp2) only you will be able to
see fields for that perticular Grp either of 2.
Technical Solution is like...
1) I thought that I will create 2 subscreens say 0910 and 0920.
2) In 0910 i will insert all those fields which are designed already in 0900 which is for Grp1
3) and for Grp2 i will design 0920
4) according to Order Type only 0910 or 0920 client will be able to see.
Now I got stuck in between the screen development for 0920 because there are so many fields and i said to
client that they will be able to see those fields in different Tab strips.
I never worked on Tab Strip concept, I search so many forums and sites for Lesson on Tab Strip but not
understood how to proceed as per my specific requiment.
Please can anyone suggest me how to proceed further.
Thanks in advance.
Regards,
Jay.

There's no reason why you couldn't do it.
A tabstrip control is simply made of a subscreen area and a "tabstrip" above, where each tab corresponds to a button/function code. You have 2 ways to define/program it, "local" or "server", the difference being a better performance with the "local" (interesting in slow WAN).
In ABAPDOCU demos, you have 2 programs DEMO_DYNPRO_TABSTRIP_LOCAL and DEMO_DYNPRO_TABSTRIP_SERVER.
Sandra

Similar Messages

  • DIFFERENCE between Tabstrip control and tabstrin(with wizard)

    difference between table control and table control wizard.
    and what is all about custom control
    give simple examples

    Hi
    Table Control
    http://help.sap.com/saphelp_erp2005vp/helpdata/en/d1/802338454211d189710000e8322d00/frameset.htm
    Table Control Wizard
    http://help.sap.com/saphelp_erp2005vp/helpdata/en/d1/802338454211d189710000e8322d00/frameset.htm
    Tab Strip
    http://help.sap.com/saphelp_erp2005vp/helpdata/en/04/10f2469e0811d1b4700000e8a52bed/frameset.htm
    Tab Strip wizard
    http://help.sap.com/saphelp_erp2005vp/helpdata/en/04/10f2469e0811d1b4700000e8a52bed/frameset.htm
    http://www.sapmaterial.com/tablecontrol_sap.html
    Custom Controls
    A custom control is an area on a screen. You create them in the Screen Painter, and, like all other screen objects, they have a unique name. You use custom controls to embed controls. A control is a software component on the presentation server, which can be either an ActiveX control or a JavaBean, depending on the SAPgui you are using. They allow you to perform tasks, such as editing texts, locally on the presentation server. The control is driven by the application logic, which still runs on the application server.
    The SAP Control Framework
    The controls on the presentation server and the ABAP application programs on the application server communicate using the Structure link SAP Control Framework. This is programmed in ABAP Objects, and contains a set of global classes that you can find in the Class Browser under Basis ® Frontend services. These classes encapsulate the communication between the application server and presentation server, which is implemented using Remote Function Call.
    All application controls are encapsulated in a global class. You can find the SAP Basis controls in the Class Browser under Basis ® Frontend Services or Basis ® Component Integration. Programs that use controls on a screen work with the methods and events of the global classes that encapsulates them.
    Container Controls
    Before you can work with a custom control on a screen, you must assign a Structure link SAP Container Control to it. Container controls are instances of special global classes from the SAP Control Framework. The global class for custom controls is called CL_GUI_CUSTOM_CONTAINER. To link a custom control to a container control, pass the custom control name to the CONTAINER_NAME parameter of the container control constructor when you instantiate it.
    As well as using custom containers, you can link controls to a screen using a SAP Docking Container. This is encapsulated in the global class CL_GUI_DOCKING_CONTAINER. The SAP Docking Container does not place the control within a screen. Instead, it attaches it to one of the four edges. You can nest containers. For example, you can use the SAP Splitter Container (classes CL_GUI_EASY_SPLITTER_CONTAINER or CL_GUI_SPLITTER_CONTAINER) within other containers. This allows you to split a custom control or docking control into more than one area, allowing you to embed more than one control.
    One example,
    program z.
    Constants *
    constants: c_me like trdir-cnam value 'VNDOVV',
    c_myurl type scarr-url value
    'http://www.brainbench.com/transcript.jsp?pid=147699',
    c_width type i value 260,
    c_height type i value 130.
    Types *
    types: begin of t_pgm,
    year(4) type c,
    name like trdir-name,
    end of t_pgm,
    begin of t_pgmkey,
    id type i,
    name like trdir-name,
    end of t_pgmkey.
    Data *
    data: it_pgmkey type table of t_pgmkey.
    Classes *
    Definitions *
    class screen_init definition create private.
    public section.
    class-methods init_screen returning value(this)
    type ref to screen_init.
    methods constructor.
    private section.
    class-data a_id type i.
    data: splitter_h type ref to cl_gui_splitter_container,
    splitter_v type ref to cl_gui_splitter_container,
    picture type ref to cl_gui_picture,
    tree type ref to cl_gui_simple_tree.
    methods: fill_tree,
    fill_picture.
    endclass.
    class screen_handler definition.
    public section.
    methods: constructor importing container
    type ref to cl_gui_container,
    handle_node_double_click
    for event node_double_click
    of cl_gui_simple_tree
    importing node_key,
    handle_picture_double_click
    for event picture_dblclick
    of cl_gui_picture.
    private section.
    data: html_viewer type ref to cl_gui_html_viewer,
    editor type ref to cl_gui_textedit.
    methods: fill_html,
    fill_src importing programid type trdir-name.
    endclass.
    Implementations *
    class screen_init implementation.
    method init_screen.
    data screen type ref to screen_init.
    create object screen.
    this = screen.
    endmethod.
    method constructor.
    data: events type cntl_simple_events,
    event like line of events,
    event_handler type ref to screen_handler,
    container_left type ref to cl_gui_container,
    container_right type ref to cl_gui_container,
    container_top type ref to cl_gui_container,
    container_bottom type ref to cl_gui_container.
    create object splitter_h
    exporting
    parent = cl_gui_container=>screen0
    rows = 1
    columns = 2.
    call method splitter_h->set_border
    exporting border = cl_gui_cfw=>false.
    call method splitter_h->set_column_mode
    exporting mode = splitter_h->mode_absolute.
    call method splitter_h->set_column_width
    exporting id = 1
    width = c_width.
    container_left = splitter_h->get_container( row = 1 column = 1 ).
    container_right = splitter_h->get_container( row = 1 column = 2 ).
    create object splitter_v
    exporting
    parent = container_left
    rows = 2
    columns = 1.
    call method splitter_v->set_border
    exporting border = cl_gui_cfw=>false.
    call method splitter_v->set_row_mode
    exporting mode = splitter_v->mode_absolute.
    call method splitter_v->set_row_height
    exporting id = 1
    height = c_height.
    container_top = splitter_v->get_container( row = 1 column = 1 ).
    container_bottom = splitter_v->get_container( row = 2 column = 1 ).
    create object picture
    exporting parent = container_top.
    create object tree
    exporting parent = container_bottom
    node_selection_mode =
    cl_gui_simple_tree=>node_sel_mode_single.
    create object event_handler
    exporting container = container_right.
    event-eventid = cl_gui_simple_tree=>eventid_node_double_click.
    event-appl_event = ' '. "system event, does not trigger PAI
    append event to events.
    call method tree->set_registered_events
    exporting events = events.
    clear: event, events[].
    event-eventid = cl_gui_picture=>eventid_picture_dblclick.
    event-appl_event = ' '. "system event, does not trigger PAI
    append event to events.
    call method picture->set_registered_events
    exporting events = events.
    set handler: event_handler->handle_node_double_click for tree,
    event_handler->handle_picture_double_click for picture.
    call method: me->fill_picture,
    me->fill_tree.
    endmethod.
    method fill_picture.
    call method:
    picture->load_picture_from_sap_icons exporting icon = '@J4@',
    picture->set_display_mode
    exporting display_mode = picture->display_mode_fit_center.
    endmethod.
    method fill_tree.
    data: node_table type table of abdemonode,
    node type abdemonode,
    w_pgm type t_pgm,
    w_cdat type rdir_cdate,
    it_pgm type table of t_pgm,
    w_pgmkey type t_pgmkey.
    clear: a_id, it_pgmkey[].
    select distinct name cdat from trdir into (w_pgm-name, w_cdat)
    where cnam = c_me.
    w_pgm-year = w_cdat(4).
    append w_pgm to it_pgm.
    clear w_pgm.
    endselect.
    sort it_pgm.
    node-hidden = ' '. " All nodes are visible,
    node-disabled = ' '. " selectable,
    node-isfolder = 'X'. " a folder,
    node-expander = ' '. " have no '+' sign for expansion.
    loop at it_pgm into w_pgm.
    at new year.
    node-node_key = w_pgm-year.
    clear node-relatkey.
    clear node-relatship.
    node-text = w_pgm-year.
    node-n_image = ' '.
    node-exp_image = ' '.
    append node to node_table.
    endat.
    at new name.
    add 1 to a_id.
    node-node_key = w_pgmkey-id = a_id.
    w_pgmkey-name = w_pgm-name.
    node-relatkey = w_pgm-year.
    node-relatship = cl_gui_simple_tree=>relat_last_child.
    node-text = w_pgm-name.
    node-n_image = '@0P@'.
    node-exp_image = '@0P@'.
    append w_pgmkey to it_pgmkey.
    endat.
    append node to node_table.
    endloop.
    call method tree->add_nodes
    exporting table_structure_name = 'ABDEMONODE'
    node_table = node_table.
    endmethod.
    endclass.
    class screen_handler implementation.
    method constructor.
    create object: html_viewer exporting parent = container,
    editor exporting parent = container
    wordwrap_mode =
    cl_gui_textedit=>wordwrap_at_fixed_position
    wordwrap_position = 72.
    call method: fill_html,
    editor->set_readonly_mode exporting readonly_mode = 1.
    endmethod.
    method handle_node_double_click.
    data: w_name type programm,
    w_id type i,
    w_year(4) type c,
    w_pgmkey type t_pgmkey.
    w_name = node_key+4.
    w_id = w_name.
    clear w_name.
    read table it_pgmkey into w_pgmkey with key id = w_id
    binary search.
    if sy-subrc = 0.
    w_name = w_pgmkey-name.
    endif.
    w_year = node_key(4).
    if w_name is initial.
    call method: fill_html,
    html_viewer->set_visible exporting visible = 'X',
    editor->set_visible exporting visible = ' '.
    else.
    call method: fill_src exporting programid = w_name,
    editor->set_visible exporting visible = 'X',
    html_viewer->set_visible exporting visible = ' '.
    endif.
    call method cl_gui_cfw=>flush.
    endmethod.
    method handle_picture_double_click.
    call method: fill_html,
    html_viewer->set_visible exporting visible = 'X',
    editor->set_visible exporting visible = ' '.
    call method cl_gui_cfw=>flush.
    endmethod.
    method fill_html.
    call method html_viewer->show_url exporting url = c_myurl.
    endmethod.
    method fill_src.
    types t_line(72) type c.
    data src type table of t_line.
    read report programid into src.
    call method: editor->delete_text,
    editor->set_text_as_r3table exporting table = src[].
    endmethod.
    endclass.
    Data *
    data this_screen type ref to screen_init.
    Program execution *
    load-of-program.
    call screen 100.
    Dialog Modules PBO *
    module status_0100 output.
    set pf-status 'SCREEN_100'.
    set titlebar 'TIT_100'.
    this_screen = screen_init=>init_screen( ).
    endmodule.
    Dialog Modules PAI *
    module cancel input.
    leave program.
    endmodule.
    Reward if usefull

  • How to hide tabstrip Control at runtime?

    hi to all.
    i used a tabstrip control in my screen.
    i want to make my tabstrip visible or invisible based on t-code
    for my screen.
    it will be total based on t-code.
    if i will enter t-code zins11 it will show me tabstrip for screen 100.
    if i will enter t-code zins12 it will hide me tabstrip for screen 100.
    Reply me.
    thanks.

    If you don't mind seeing the blank grey Tab Strip control box and simply hiding the tabs, this code will help.
      LOOP AT SCREEN.
        IF screen-name CP 'TS_TEST1_TAB*'.
          screen-active = 0.
          modify screen.
        ENDIF.
      ENDLOOP.
    where my Tab Strip name was 'TS_TEST1

  • Table control in Selection Screen

    Hi,
      Is it possible to keep table control and tabstrip control in selection screen without using dialog programming? I mean , using coding from program itself, have to get table in the selection screen,like how we are keeping checkbox and radio button from program itself . 
    by
    Mohan Ram
    Moderator Message: Search before posting.
    Edited by: kishan P on Sep 16, 2010 11:04 AM

    Hi, Mohan
    Please Always do a little Search Before Posting => [Search Results|http://forums.sdn.sap.com/search.jspa?threadID=&q=TablecontrolinSelectionScreen&objID=&dateRange=all&numResults=30&rankBy=10001]
    Hope you will get the answer from the First Few Threads From Search Result.
    Thanks and Regards,
    Faisal

  • Wat is tabstrip control?

    wat is tabstrip control?

    hi,
    A tabstrip control is a screen object consisting of two or more pages. Each tab page consists of a tab title and a page area. If the area occupied by the tabstrip control is too narrow to display all of the tab titles, a scrollbar appears, allowing you to reach the titles that are not displayed. There is also a pushbutton that allows you to display a list of all tab titles.
    Tabstrip controls allow you to place a series of screens belonging to an application on a single screen, and to navigate between them easily. .
    When you create a tabstrip control, you must:
    Define the tab area on a screen and the tab titles.
    Assign a subscreen area to each tab title.
    Program the screen flow logic.
    Program the ABAP processing logic.
    You must then decide whether you want to page through the tabstrip control at the SAPgui or on the application server. In the first case, each tab page has its own subscreen. In the second, there is a single subscreen area that is shared by all tab pages.
    check this link :
    http://help.sap.com/saphelp_nw04/helpdata/en/17/5bf1b52ba211d2954f0000e8353423/content.htm.
    pls reward if helpful.
    Rajyalakshmi.

  • Query about screen as a structure used in table control.

    hi all,
    plz explain the fields in screen(structure).
    when and how it is used.
    specialy i/o, o/p,active,
    plz give example.

    hi,
    The screen elements text field, input/output field, status icon, group box, radio button, checkbox, and
    pushbutton all have general attributes, Dictionary attributes, program attributes, and display attributes.
    The elements subscreen, tabstrip control, and table control have general attributes, and special
    attributes relating to the respective type.
    We can divide the attributes of an element into:
    Statically definable attributes that cannot be changed dynamically
    Statically definable attributes that can be changed dynamically
    Attributes that can only be changed dynamically
    At the beginning of the PBO, the runtime system reads the statically-created and dynamically-modifiable
    attributes of each screen element on the current screen into a system table with the line type SCREEN.
    Dynamic changes to the attributes of screen elements are temporary.
    Using this technique to modify the attributes of a screen element (for example, to change whether an
    input/output field is ready for input), you can replace long sequences of separate screens, which are
    more costly in terms of both programming time and runtime.
    The system table with line type SCREEN will be called SCREEN system table in the following unit.
    When a screen is processed, the SCREEN system table contains an entry for each element created in
    the Screen Painter for that screen.
    The system table SCREEN is initialized at the start of the PBO event for the current screen. To do this, a
    system program copies the statically defined attributes of the individual screen elements into the table.
    You can then change the dynamically-modifiable attributes of the elements on the screen in a module at
    PBO using the following statements: LOOP AT SCREEN.
    MODIFY SCREEN.
    ENDLOOP.
    To do this, you use the structure SCREEN, which is created automatically by the system, and filled with
    the values of each successive line of the system table in the loop. Set attributes have the value '1',
    attributes that are not set have the value '0'. To change the system table, use MODIFY SCREEN. within
    the loop.
    To find the element whose attributes you want to modify, you can use a LOOP on the SCREEN table,
    and query one of the following fields: SCREEN-NAME, SCREEN-GROUP1 to SCREEN-GROUP4.
    You can change the attributes of several screen elements simultaneously at runtime, by including them
    in a modification group in the Screen Painter. Assign all elements that will be changed within a single
    processing step to a group in the Screen Painter.
    To do this, enter a group name for each of the relevant elements in one of the fields GROUP1 …
    GROUP4.
    You can include each element in up to four modification groups. You can choose any three-character
    sequence for the group name. You can assign elements to a modification group either in the element list
    or the layout editor in Screen Painter.
    You must program your screen modifications in a module that is processed during the PROCESS
    BEFORE OUTPUT processing block.
    You use a loop through the table SCREEN to change the attributes of an element or a group of
    elements. (LOOP AT SCREEN WHERE . . . and READ TABLE SCREEN are not supported).
    To activate and deactivate attributes, assign the value 1 (active) or 0 (inactive), and save your changes
    using the MODIFY SCREEN statement.
    Note that elements you have defined statically in the Screen Painter as invisible cannot be reactivated
    with SCREEN-ACTIVE = 1. Instead, use the statement SCREEN-INVISIBLE = 0. However, elements
    that you have statically defined as visible in the Screen Painter can dynamically be made invisible. This
    has the same effect as the three statements SCREEN-INVISIBLE = 1, SCREEN-INPUT = 0, SCREENOUTPUT
    = 0.
    There are three steps involved in displaying buffered data from the internal table in the table control:
    The system loops through the lines of the table control on the screen. The lines of the screen table are
    processed one by one. For each line, the system carries out the following steps:
    The current line of the internal table is placed in the work area of the internal table. (Note that it is
    possible to scroll in the table on the screen).
    The data from the work area of the internal table is copied into the relevant line of the table control.
    When you use table controls on a screen, the automatic field transport sequence changes.
    In the PBO processing block, data is transferred from the ABAP program to the screen after each loop
    pass in the flow logic. The rest of the screen fields are filled, as normal, at the end of the PBO.
    In the flow logic, the loop statement
    LOOP AT <itab> INTO <wa_itab> WITH CONTROL <tc_name>
    starts a loop through the screen table, and reads the line of the internal table corresponding to the
    current line of the screen table, placing it in <wa_itab>.
    <itab> is the name of the internal table containing the data, <wa_itab> is the name of the work area for
    the internal table, and <tc_name> is the name of the table control on the screen.
    If the fields in your table control have the same structure and name as those in the work area <wa_itab>,
    the system can transport data between the ABAP program and the screen automatically (step 3).
    If you are not using the same structure for the table control fields and the work area of the internal table,
    you must call a module between LOOP and ENDLOOP that moves the data from the work area
    <wa_itab> into the screen fields (MOVE-CORRESPONDING <wa_itab> TO …) .
    The system calculates the value of <ctrl>-TOP_LINE when you scroll, but not when you scroll a page at
    a time outside the table control.
    In order to transfer changed values from the table control back to the internal table the following three
    steps must be carried out:
    The system loops through the lines of the table control. The lines of the screen table are processed
    one by one. For each line, the system carries out the following steps:
    The data from the current line of the table control is copied into the header line of the internal table.
    The data in the work area must then be placed in the line of the internal table corresponding to the
    line of the table control that is being processed. (Note that it is possible to scroll in the table on the
    screen).
    In the PAI processing block, all screen fields that do not belong to a table control and that are not listed
    in a FIELD statement are transported back to the work fields in the ABAP program first.
    The contents of the table control are transported line-by-line to the corresponding work area in the ABAP
    program in the appropriate loop.
    As usual, the fields that occur in FIELD statements are transported directly before that statement.
    The structure of the screen tables contain.
    NAME
    GROUP 1
    GROUP 2
    GROUP 3
    GROUP 4
    OUTPUT
    REQUIRED
    LENGTH
    INTENSIFIED
    INVISIBLE
    ACTIVE
    Hope this helps, Do reward.
    Edited by: Runal Singh on Mar 13, 2008 10:41 AM

  • Query for tabstrip & Table control

    Hi,
    I have never used tabstrip & Table controls.I have worked extensively on ALV  & Smartforms.I am finding it difficult to understand the steps now,after a long gap of returning to tabstrips & table control.I have all the standard programs for the same,Please send me any z development you have worked on to help me understand it better.
    Thanks

    Hi sneha,
                This is kiran kumar.G.(working on SAP).I will develop some of dialog progs on tab strips and table controls.
    i will send the se38 program logic and se51 flow logic.check it once.
    Note : some of the steps before u start on creating TABSTRIPS.
    1. FIRSR CREATE SE38 PROGRAM + SAVE +ACTIVATE.
    2.GOTO SE51 T.CODE and enter the SE38 PROGRAM NAME AND SCREEN NUMBER.(EX: 0100).
    3.THE FIRST SCREEN OF THE SE51 IS POPULATED AND SELECT NORMAL RADIO BUTTON AND GOAHEAD.
    4.GOTO LAYOUT AND SELECT THE TABSTRIP BUTTON FROM THE TOOLBAR AND PLACE THEM ON THE SCREEN
    5.IN THE BELOW EXAMPLE I WILL CREATE TWO TABSTRIPS..
    6.SELECT THE SUBSCREEN BUTTON FROM THE TOOLBAR AND PLACE THEM IN THE TAB1 SCREEN.AND SAME PROCEDURE IS REPEATED FOR TAB2 ALSO
    6.CLICK ON THE TAB1 BUTTON AND GIVE NAME AS "HEAD" AND SOME TEXT AND REFFILED AS "SUBS"
    7.FOLLOW THE SAME PROCEDURE FOR SECOND TABSTRIP AND GIVE NAME AS "ITEM" AND REFFILED AS "SUBS".
    AND SAVE AND ACTIVE..
    8.GOTO SE51 TRANSACTION AND GIVE REPORT NAME AND SCREEN NUMBER AS 0110. AND SELECT SUBSCREN RADIO BUTTON AND SELECT LAYOUT AND PLACE SOME FIELDS THERE AND AND SAME PROCUDRE IS REPEAT FOR 0120 SUB SCREEN ALSO
    Code:
    *& Module pool       YMODULEPOOL_TABSTRIPS                             *
    *& DEVELOPER    : KIRAN KUMAR.G                                        *
    *& PURPOSE      : DEMO ON TABSTRIP CONTROLS                            *
    *& CREATION DT  : 18/12/2007                                           *
    *& T.CODE       : YMODTABSTRIP                                         *
    *& REQUEST      : ERPK900035                                           *
    PROGRAM  ymodulepool_tabstrips.
    Tables
    TABLES: vbak,
            vbap.
    Controls
    CONTROLS: my_tabstrip TYPE TABSTRIP..
    Global Variables
    DATA: gv_number LIKE sy-dynnr.
    *&      Module  active_tab  OUTPUT
          text
    MODULE active_tab OUTPUT.
    *Default Selection of the TABSTRIP
      IF my_tabstrip-activetab IS INITIAL.
        my_tabstrip-activetab = 'HEAD'.
        gv_number = '110'.
      ENDIF.
    ENDMODULE.                 " active_tab  OUTPUT
    *&      Module  USER_COMMAND_0100  INPUT
          text
    MODULE user_command_0100 INPUT.
      CASE sy-ucomm.
    *Header Information
        WHEN 'HEAD'.
          SELECT SINGLE erdat
                        vkorg
                        vtweg
                   FROM vbak
                   INTO (vbak-erdat,vbak-vkorg,
                         vbak-vtweg)
                  WHERE  vbeln = vbak-vbeln.
          my_tabstrip-activetab = 'HEAD'.
          gv_number = '110'.
    *Item Information
        WHEN 'ITEM'.
          SELECT SINGLE matnr
                        matkl
                        ntgew
                  FROM vbap
                  INTO (vbap-matnr,vbap-matkl,vbap-ntgew)
                 WHERE vbeln = vbak-vbeln.
          my_tabstrip-activetab = 'ITEM'.
          gv_number              = '120'.
    *EXIT from the Program
        WHEN 'EXIT' OR 'CANCEL'.
          CALL TRANSACTION 'SESSION_MANAGER'.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    *&      Module  STATUS_0100  OUTPUT
          text
    module STATUS_0100 output.
      SET PF-STATUS 'YTABSTRIP'.
    SET TITLEBAR 'xxx'.
    end module.
    SE51 (SCREEN 100 :CODE)
    PROCESS BEFORE OUTPUT.
    MODULE STATUS_0100.
    module active_tab.
    call subscreen subs including sy-cprog gv_number.
    *call subscreen sub1 including sy-cprog gv_number.
    PROCESS AFTER INPUT.
    call subscreen subs.
    *call subscreen subs.
    MODULE USER_COMMAND_0100
    SCREEN 110:
    PROCESS BEFORE OUTPUT.
    MODULE STATUS_0110.
    PROCESS AFTER INPUT.
    MODULE USER_COMMAND_0110.
    SCREEN 120:
    PROCESS BEFORE OUTPUT.
    MODULE STATUS_0120.
    PROCESS AFTER INPUT.
    MODULE USER_COMMAND_0120.
    Award points if helpful.
    kiran kumar.G
                HAVE A NICE DAY....

  • How to insert tabstrip control in module pool screen painter

    Hi all!
    plz tell e how to use tabstrip control in module pool screen painter.Also plz give me an example program using tabstrip control.

    To insert tabstrip just open layout of screen and press on the tabstrip button there .
    Use this souce code further to activate it .
    CONTROLS tabstrip TYPE TABSTRIP.
    DATA: okcode TYPE sy-ucomm,
    dynnr TYPE sy-dynnr,
    flag type flag,
    active like tabstrip-activetab .
    call SCREEN 100.
    *& Module USER_COMMAND_0100 INPUT
    text
    MODULE USER_COMMAND_0100 INPUT.
    data: lv_okcode type syucomm.
    lv_okcode = okcode.
    clear okcode.
    case lv_okcode.
    WHEN 'TAB1'.
    dynnr = '0110'.
    WHEN 'TAB2'.
    dynnr = '0120'.
    WHEN 'TAB3'.
    dynnr = '0130'.
    WHEN 'TAB4'.
    dynnr = '0140'.
    WHEN 'TAB5'.
    "check authorization, if authorization fails
    flag = 'X'. "set the global flag
    active = 'TAB1'. "store active tab in global variable
    dynnr = '0110'. "set the screen number
    WHEN 'BACK' or 'EXIT'.
    leave program.
    ENDCASE.
    IF lv_okcode(3) = 'TAB'.
    tabstrip-activetab = lv_okcode.
    ENDIF.
    ENDMODULE. " USER_COMMAND_0100 INPUT
    *& Module STATUS_0100 OUTPUT
    text
    MODULE STATUS_0100 OUTPUT.
    SET PF-STATUS 'MAIN'.
    SET TITLEBAR 'xxx'.
    IF tabstrip-activetab IS INITIAL OR
    dynnr IS INITIAL.
    tabstrip-activetab = 'TAB1'.
    dynnr = '0110'.
    ENDIF.
    "set the activetab explicilty here
    if flag eq 'X'. "from authorization failure
    tabstrip-activetab = active. "'TAB1'
    clear flag.
    endif.
    ENDMODULE. " STATUS_0100 OUTPUT

  • How to handle 'ENTER' Key on ALV Editable Grid on sub screen (Tabstrips)

    Hello Experts ,
    I have 2 questions with ALV Editable grid;
    please help me if you have answers.
    I created ALV grid on one of sub screens on a Tab Strip,
    As soon as user types one of the columns of the ALV grid and press u2018ENTERu2019 key, it has to return corresponding details for that line.
    I tried to implement this logic in ALV grid event u2018handle_data_changedu2019, but ALV internal table is not getting populated with new entry entered in the grid. but u2018double_clicku2019 event working my purpose, but user might need enter key.
    and I thought I would do implement that logic in PAI event of the sub screen, u2018ENTERu2019 key not getting trigger on PAI event of the screen until cursor is on grid.
    Another question 2:  How do I control and not to be deleted a line on the grid (based on validation), where do I validate and by pass the delete function for a particular line, or suggest me to gray out only one line on the grid .
    I would like to have delete function to work as it is ,except for some validations..
    Can I implement using PAI event of the sub screen or any by ALV event.
    Please suggest me..
    Edited by: Ravindranath Arusam on May 13, 2010 2:42 PM

    In DATA_CHANGED event, you will get the modified row into the attribute MP_MOD_ROWS of the impoerting object ER_DATA_CHANGED. Since this MP_MOD_ROWS is the Object reference to Data, you need to have the field symbol to get the value.
      FIELD-SYMBOLS:  <lft_mod_output>  TYPE t_t_output.
      ASSIGN  er_data_changed->mp_mod_rows->* TO <lft_mod_output>.
    You can get the Value of the Cell by using the method GET_CELL_VALUE of the same ER_DATA_CHANGED object and use the method MODIFY_CELL To update the value back to ALV.
    To Restrict the row deletion:
    When the row is deleted it is being added to Attribute mt_deleted_rows of the object ER_DATA_CHANGED. You can put the data back to the table in the DATA_CHANGE_FINISHED event. Visit this post http://help-abap.blogspot.com/2008/10/alv-disable-delete-key-on-keyboard-in.html for more information.
    Regards,
    Naimesh Patel

  • I am using my ipad 2 ( bought in USA)  for about 3 years. 2 weeks back the touch gesture was completely out of control and the screen  was jumping automatically to so many applications. I attempted to get original settings through settings menu, but unfor

    I am using my ipad 2 ( bought in USA)  for about 3  years. 2 weeks back the touch gesture was completely out of control and  the screen  was jumping automatically to so many applications. I  attempted to get original settings through settings  menu, but unfortunately while resuming when I typed a pass code the  touch gesture , without control it  typed unknown passcode and while  confirming the passcode as well same thing happened.
    Now my Iapd2 is disabled and itunes also not recognizing my ipad.
    I kindly request you to help me to fix the issue. 

    Many thanks.
    With those symptoms, I'd try the following document:
    Apple software on Windows: May see performance issues and blank iTunes Store
    (If there's a SpeedBit LSP showing up in Autoruns, it's usually best to just uninstall your SpeedBit Video Accelerator.)

  • Screen error in tabstrip control

    hi all,
    I'm practicing a program for Tabstrip control.
    it will be like this
    tab1           tab2
    number1    result
    number2
    number1 number2 result are of integer data types.
    now the problem is
    the program is giving result when I declare the above variables as char...that to with some limit.
    but if the varilable are of type int program is givng an error called screen error.
    why this is happening ?
    whats the solution for it?
    points assured,
    Usha.

    HI,
    try like this...
    1.goto that perticular Screen Element List, there you will find a tab General Attributes.
    2.In that change the Format Column for that perticular field from CHAR to INT1 ( by default it will take as CHAR ).
    now you will not get any error.
    Regards,
    Sathish Reddy.

  • Tabstrip control issue, screen freezes

    I have a Screen with a tabstrip control with 4 tabs.  It will let me select tab 1, tab 2, tab 3, and tab 4, but when tab 4 is selected, and i click another tab, the screen freezes, and will not allow me to get out, what is the problem?

    Can you send the code ,may after the tab 4 is selected ,you are not activating the tab or no screen is attached.

  • Problem in Tabstrip Control

    Hi All,
    i had created an Custom Infotype.
    In that infotype i had created Tabstrip control with 2tabs.
    Each Tab contain 4 fields.
    When creating( F5) a record in transaction PA30, it allowing me create a record and the record is available in Data base table.
    1. My doubt is, when Display the Record through F7 and Change mode (F6), Still the fields are in editable mode. But not in Display Mode ( Editable Mode ).
    How to Disable the Fields for this Tab Strip Control. I have not used any Group Field for this. Can we need to Main tain anything.
    But SAVE option is automatically disabled.Iam not able to SAVE when i press F7 but in Editable is the My Problem.
    2. And one more query is, when press F5 or F6 or F7 it is show the following message at End screen,i.e.
    Protected tab titles are not supported (tab MENU_TABSTRIP title PUSH1) . But MENU_TABSTRIP is My Tab Strip control text Name and PUSH1 is my Tab1 , Function code.
    How to remove this message.
    Points will be rewarded.
    Thanks,
    N.L.

    Hi,
    Try this ....In the Table Control, double click on a field. In the attributes make that field as output only...
    Hope it helps,
    Swathi

  • How to make input field as mandatory field in sub screen

    Hi All,
           I need to display the input selection parameters in tab strip sub screen. The input screen is not giving an error while processing with blank values, but I made the input field as required in sub screen input filed settings. Can some one please help me how to make the input field as mandatory field in sub screen.
    Thanks in advance.
    Regards,
    Kannan

    Hi Kannan,
        Try this out.
    1. Goto screen painter
    2. Enter the program name and screen number ( screen # 1000 -  in case if its  a custom report prg)
    3. Double click on the field which u`ve got to make mandatory.You`ll get Screen painter attributes window.
    4. U`ll find three tabs here - Dict, Program, Display
    5. Go to Program tab, and change the first attribute - Input field`s input value as "Required".
    6. Save and activate it.
    7. Now execute ur program and this should make ur field as mandatory on the screen.
    This works with input fields, but I`m not sure about the input field in tab strip control.
    Hope this helps
    Regards,
    Farhana

  • Module Pool (tabstrip control Error :  )

    I am trying to activate tabstrip control in module pool but error is coming like no sub screen is assigned to tabstrip pushbutton
    tab12.
    my main screen is : 0221
    flow logic for 0221 is below :
    PROCESS BEFORE OUTPUT.
    CALL SUBSCREEN SUB1 INCLUDING SY-REPID '0321'.
    CALL SUBSCREEN SUB2 INCLUDING SY-REPID '0322'.
    PROCESS AFTER INPUT.
    CALL SUBSCREEN SUB1.
    CALL SUBSCREEN SUB2.
    MODULE USER_COMMAND_0221.
    and 0321 and 0322 is subscreen and i also gave ref field sub1 and sub2 .
    can you plz help me to solve the problem ?

    Hi,
    yes i created sub screen. i am going to explain what i have done .
    step : i created screen 200 (i choose subscreen)and inside 200 i put  tabstripcontrol then in tab1 i gave ref field sub1 and tab2 i gave ref field sub2 and fatch code ic1 and ic2.
    and then i created screen 221 and 222.
    inside 200 flow logic i wrote below code but still its giving me same error.
    PROCESS BEFORE OUTPUT.
    CALL SUBSCREEN SUB1 INCLUDING SY-REPID '0221'.
    CALL SUBSCREEN SUB2 INCLUDING SY-REPID '0222'.
    PROCESS AFTER INPUT.
    CALL SUBSCREEN SUB1.
    CALL SUBSCREEN SUB2.
    MODULE USER_COMMAND_0221.
    i dont know is it required to make any normal screen .
    please try to give me ans as soon as possible.

Maybe you are looking for