Steps to create tabstrip for subscreen in selection screen

hi,
can let me know the steps taken to create subscreen in selection screen and put in tabstrip?
i need to have 3 screens. 1000 being the tabstrip, 2000 being first subscreen and 3000 being the second subscreen.
i have the abap code but i do not know the steps to create especially 1000 screen.
for 2000 and 3000, once i activated the program, these 2 screens added but i do not know where can i create the 1000 screen.
also, should i use wizard to create tabstrip?
please advise. thanks
SELECTION-SCREEN BEGIN OF SCREEN 2000 AS SUBSCREEN.        SELECTION-SCREEN BEGIN OF BLOCK x WITH FRAME TITLE text-001.
SELECT-OPTIONS: para1 FOR  field1 ,     
                              para2 FOR field2.            
SELECTION-SCREEN END OF BLOCK x.
SELECTION-SCREEN END OF SCREEN 2000.
SELECTION-SCREEN BEGIN OF SCREEN 3000 AS SUBSCREEN.
SELECTION-SCREEN BEGIN OF BLOCK y WITH FRAME TITLE text-002.
SELECT-OPTIONS: para3 FOR  field3 ,     
                              para4 FOR field4.      
SELECTION-SCREEN END OF BLOCK y.
SELECTION-SCREEN:SKIP.
SELECTION-SCREEN END OF SCREEN 3000.

e_l,
  See the total doc.. with example.
Assigning a Subscreen Area to a Tab Title
You must assign a subscreen area to each tab title. There are two ways of doing this:
Paging in the SAPgui
You need to assign a separate subscreen area to each tab title, and define the function codes of the tab titles with type P (local GUI function). In the screen flow logic, you call all the subscreens in the PBO event. This means that all of the tab pages reside locally on the SAPgui.
When the user chooses a tab title, paging takes place within the SAPgui. In this respect, the tabstrip control behaves like a single screen. In particular, the PAI event is not triggered when the user chooses a tab title, and no data is transported. While this improves the performance of your tabstrip control, it also has the negative effect that when the user does trigger the PAI event, all of the input checks for all of the subscreens are performed. This means that when the user is working on one tab page, the input checks may jump to an unfilled mandatory field on another page.
Local paging at the SAPgui is therefore most appropriate for screens that display data rather than for input screens.
Paging on the Application Server
One subscreen area is shared by all tab titles and called in the PBO event. You define the function codes of the individual tab titles without a special function type. When the user chooses a tab page, the PAI event is triggered, and you must include a module in your flow logic that activates the appropriate tab page and assigns the correct subscreen to the subscreen area.
Since the PAI event is triggered each time the user chooses a tab title, this method is less economical for the application server, but the input checks that are performed only affect the current tab page.
Procedure in Either Case
You create the subscreen areas within the tabstrip area. You assign the subscreen areas to one or more tab titles in the Screen Painter by selecting one or more titles. You can also assign a subscreen area to a tab title in the tab title attributes by entering the name of the subscreen area in the Reference field attribute.
The procedure for the alphanumeric Screen Painter is described under Creating Tabstrip Controls.
If you are paging at the SAPgui, create a subscreen area for each tab title. If you are paging at the application server, select all tab titles and create a single subscreen area. The subscreen areas may not cover the top line of the tab area. However, within a tab area, more than one subscreen area can overlap.
Programming the Flow Logic
In the flow logic, all you have to do by hand is include the correct subscreens. The screen flow and data transport to the ABAP program is the same as for normal subscreens. There are two ways of programming the screen flow logic, depending on how you have decided to page through the tabstrip control.
Paging in the SAPgui
When you page in the SAPgui, you must include a subscreen for each subscreen area:
PROCESS BEFORE OUTPUT.
  CALL SUBSCREEN: <area1> INCLUDING [<prog 1>] <dynp 1>,
                  <area2> INCLUDING [<prog 2>] <dynp 2>,
                  <area3> INCLUDING [<prog 3>] <dynp 3>,
PROCESS AFTER INPUT.
  CALL SUBSCREEN: <area1>,
                  <area2>,
                  <area3>,
Paging on the Application Server
When you page on the application server, you only have to include a subscreen for the one subscreen area:
PROCESS BEFORE OUTPUT.
  CALL SUBSCREEN <area> INCLUDING [<prog>] <dynp>.
PROCESS AFTER INPUT.
  CALL SUBSCREEN <area>.
Handling in the ABAP Program
Before you can use a tabstrip control in your ABAP program, you must create a control for each control in the declaration part of your program using the following statement:
CONTROLS <ctrl> TYPE TABSTRIP.
where <ctrl> is the name of the tabstrip area on a screen in the ABAP program. The control allows the ABAP program to work with the tabstrip control. The statement declares a structure with the name <ctrl> . The only component of this structure that you need in your program is called ACTIVETAB.
Use in the PBO event
Before the screen is displayed, you use the control to set the tab page that is currently active. To do this, assign the function code of the corresponding tab title to the component ACTIVETAB:
<ctrl>-ACTIVETAB = <fcode>.
When you page at the SAPgui, you only need to do this once before the screen is displayed. This initializes the tabstrip control. The default active tab page is the first page. After this, the page activated when the user chooses a tab title is set within SAPgui.
When you page on the application server, you must assign the active page both before the screen is displayed for the first time, and each time the user pages. At the same time, you must set the required subscreen screen.
You can suppress a tab page dynamically by setting the ACTIVE field of table SCREEN to 0 for the corresponding tab title.
Use in the PAI event
In the PAI event, ACTIVETAB contains the function code of the last active tab title on the screen.
When you page in the SAPgui, this allows you to find out the page that the user can currently see. When you page at the application server, the active tab page is controlled by the ABAP program anyway.
The OK_CODE field behaves differently according to the paging method:
Paging in the SAPgui
When you page in the SAPgui, the PAI event is not triggered when the user chooses a tab title, and the OK_CODE field is not filled. The OK_CODE field is only filled by user actions in the GUI status or when the user chooses a pushbutton either outside the tabstrip control or on one of the subscreens.
Paging on the application server
If you are paging at the application server, the PAI event is triggered when the user chooses a tab title, and the OK_CODE field is filled with the corresponding function code.
To page through the tabstrip control, you must assign the function code to the ACTIVETAB component of the control:
<ctrl>-ACTIVETAB = <ok_code>.
This statement overwrites the function code of the last active tab page with that of the new tab title. At the same time, you must ensure that the correct subscreen is inserted in the subscreen area.
Otherwise, tabstrip controls are handled like normal subscrens in ABAP programs, that is, the ABAP program of a subscreen screen must contain the dialog modules called from the flow logic of the subscreen.
Examples
Tabstrip control, paging at SAPgui
REPORT DEMO_DYNPRO_TABSTRIP_LOCAL.
CONTROLS MYTABSTRIP TYPE TABSTRIP.
DATA: OK_CODE TYPE SY-UCOMM,
      SAVE_OK TYPE SY-UCOMM.
MYTABSTRIP-ACTIVETAB = 'PUSH2'.
CALL SCREEN 100.
MODULE STATUS_0100 OUTPUT.
  SET PF-STATUS 'SCREEN_100'.
ENDMODULE.
MODULE CANCEL INPUT.
  LEAVE PROGRAM.
ENDMODULE.
MODULE USER_COMMAND INPUT.
  SAVE_OK = OK_CODE.
  CLEAR OK_CODE.
  IF SAVE_OK = 'OK'.
    MESSAGE I888(SABAPDOCU) WITH 'MYTABSTRIP-ACTIVETAB ='
                                  MYTABSTRIP-ACTIVETAB.
  ENDIF.
ENDMODULE.
The next screen (statically defined) for screen 100 is itself. It has the following layout:
The screen contains a tabstrip area called MYTABSTRIP with three tab titles PUSH1, PUSH2 and PUSH3. The function codes have the same name, and all have the function type P. One of the subscreen areas SUB1 to SUB3 is assigned to each tab title. The pushbutton has the name BUTTON and the function code ‘OK’.
In the same ABAP program, there are three subscreen screens 110 to 130. Each of these fits the subscreen area exactly. The layout is:
The screen flow logic for screen 100 is as follows:
PROCESS BEFORE OUTPUT.
  MODULE STATUS_0100.
  CALL SUBSCREEN: SUB1 INCLUDING SY-REPID '0110',
                  SUB2 INCLUDING SY-REPID '0120',
                  SUB3 INCLUDING SY-REPID '0130'.
PROCESS AFTER INPUT.
  MODULE CANCEL AT EXIT-COMMAND.
  CALL SUBSCREEN: SUB1,
                  SUB2,
                  SUB3.
  MODULE USER_COMMAND.
The screen flow logic of subscreens 110 to 130 does not contain any module calls.
When you run the program, a screen appears on which the second tab page is active, since the program sets the ACTIVETAB component of the structure MYTABSTRIP to PUSH2 before the screen is displayed. The user can page through the tabstrip control without the PAI event being triggered. One of the three subscreens is included on each tab page.
When the user chooses Continue, the PAI event is triggered, and an information message displays the function code of the tab title of the page that is currently active.
Tabstrip control with paging on the application server.
REPORT DEMO_DYNPRO_TABSTRIP_LOCAL.
CONTROLS MYTABSTRIP TYPE TABSTRIP.
DATA: OK_CODE TYPE SY-UCOMM,
      SAVE_OK TYPE SY-UCOMM.
DATA  NUMBER TYPE SY-DYNNR.
MYTABSTRIP-ACTIVETAB = 'PUSH2'.
NUMBER = '0120'.
CALL SCREEN 100.
MODULE STATUS_0100 OUTPUT.
  SET PF-STATUS 'SCREEN_100'.
ENDMODULE.
MODULE CANCEL INPUT.
  LEAVE PROGRAM.
ENDMODULE.
MODULE USER_COMMAND INPUT.
  SAVE_OK = OK_CODE.
  CLEAR OK_CODE.
  IF SAVE_OK = 'OK'.
    MESSAGE I888(SABAPDOCU) WITH 'MYTABSTRIP-ACTIVETAB ='
                                  MYTABSTRIP-ACTIVETAB.
  ELSE.
    MYTABSTRIP-ACTIVETAB = SAVE_OK.
    CASE SAVE_OK.
      WHEN 'PUSH1'.
        NUMBER = '0110'.
      WHEN 'PUSH2'.
        NUMBER = '0120'.
      WHEN 'PUSH3'.
        NUMBER = '0130'.
    ENDCASE.
  ENDIF.
ENDMODULE.
The statically-defined next screen for screen 100 is itself, and its layout is the same as in the above example. However, the function codes of the three tab titles have the function type <blank> and they all share a single subscreen area SUB.
The same subscreen screens 110 to 130 are defined as in the last example.
The screen flow logic for screen 100 is as follows:
PROCESS BEFORE OUTPUT.
  MODULE STATUS_0100.
  CALL SUBSCREEN SUB INCLUDING SY-REPID NUMBER.
PROCESS AFTER INPUT.
  MODULE CANCEL AT EXIT-COMMAND.
  CALL SUBSCREEN SUB.
  MODULE USER_COMMAND.
In this example, the program includes a subscreen screen in the subscreen area SUB dynamically during the PBO event.
The screen flow logic of subscreens 110 to 130 does not contain any module calls.
This example has the same function as the previous example, but the paging within the tabstrip control is implemented on the application server. Each time the user chooses a tab title, the function code from the OK_CODE field is assigned to the ACTIVETAB component of structure MYTABSTRIP. At the same time, the variable NUMBER is filled with the screen number of the subscreen that has to be displayed in the subscreen area SUB of the tabstrip control
Pls. reward if useful

Similar Messages

  • How to create Option Boxes IN A SELECTION SCREEN

    How to create Option Boxes IN A SELECTION SCREEN.
    Thanks!

    Hi Rajesh,
    The following explanation gives clear picture of what is mean of check box and radio button with coding.....................
    <b>CHECK BOX :</b>
    AS CHECKBOX [USER-COMMAND fcode]
    Effect:
    This addition specifies that the input field in the first position of the selection screen is displayed as a checkbox, with the corresponding description next to it on the right. The checkbox is selected if the value of para is "X" or r "x". Otherwise, it is not selected.
    The parameter must be created with the type c and length 1. An explicit length len is not permitted. If the addition TYPE is used, this can only be followed by the generic type c or a non-generic data type of type c and length 1.
    The addition USER-COMMAND can be used to assign a function code fcode to the parameter. The function code fcode must be directly specified and may have a maximum length of 20 characters. To evaluate the function code, an interface work area of the structure SSCRFIELDS from the ABAP Dictionary must be declared using the statement TABLES. When the user selects the checkbox on the selection screen, the runtime environment triggers the event AT SELECTION-SCREEN and transfers the function code fcode to the component ucomm of the interface work area sscrfields.
    Notes
    If the TYPE addition is used to make a reference to a data type in the ABAP Dictionary of type CHAR and length 1, and for which t the valid values in the domain are defined as "X" and " ", the parameter is automatically displayed as a checkbox on the selection screen.
    If the addition USER-COMMAND is specified without the addition AS CHECKBOX, and the parameter is of type c with length 1, it is also displayed as a checkbox.
    The addition USER-COMMAND can, for example, be used for screen modifications with the addition MODIF ID (see example).
    <b>Coding :</b>
    PARAMETERS show_all AS CHECKBOX USER-COMMAND flag.
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
    PARAMETERS: p1(10) TYPE c,
                p2(10) TYPE c,
                p3(10) TYPE c.
    SELECTION-SCREEN END OF BLOCK b1.
    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME.
    PARAMETERS: p4(10) TYPE c MODIF ID bl2,
                p5(10) TYPE c MODIF ID bl2,
                p6(10) TYPE c MODIF ID bl2.
    SELECTION-SCREEN END OF BLOCK b2.
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF show_all <> 'X' AND
           screen-group1 = 'BL2'.
           screen-active = '0'.
        ENDIF.
        MODIFY SCREEN.
      ENDLOOP.
    <b>RADIO BUTTON COMMAND :</b>
    RADIOBUTTON GROUP group [USER-COMMAND fcode]
    Effect:
    This addition specifies that the input field is displayed as a radio button in the first position on the selection screen, and the output field is displayed next to it on the right. The radio button is selected if the value of para is "X" or "x". Otherwise, it is not selected.
    group is used to define the radio button group for the parameter. The name group is entered directly as a character string with a maximum of 4 characters. Within a selection screen, there must be a minimum of two parameters in the same radio button group. There cannot be more than one radio button group with the same name in one program, even if they are defined in different selection screens.
    The parameter must be specified with the type c and length 1. Explicit length specification using len is not permitted. If the addition TYPE is used, it can only be followed by the generic type c or a non-generic data type of type c and length 1.
    In a radio button group, only one parameter can be defined with the addition DEFAULT, and the specified value must be "X". By default, the first parameter in a radio button group is set to the value "X", and the rest are set to " ".
    The addition USER-COMMAND can be used to assign a function code fcode to the first parameter in a radio button group. The function code fcode must be specified directly, and have a maximum length of 20 characters. To evaluate the function code, an interface work area of the structure SSCRFIELDS from the ABAP Dictionary must be declared using the statement TABLES. When the user selects any radio button of the radio button group on the selection screen, the runtime environment triggers the event AT SELECTION-SCREEN and transfers the function code fcode to the component ucomm of the interface work area sscrfields.
    Note:
    It is recommended to define the radio buttons of a radio button group directly underneath each other. If the selection screen also contains other elements, it is recommended to define each radio button group within a block surrounded by a frame.
    <b>CODING :</b>
    tables : mkpf,mseg,ekko.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETER : P_WERKS LIKE MARC-WERKS MODIF ID S1,
                c as checkbox.
    SELECT-OPTIONS : S_EBELN FOR EKKO-EBELN NO INTERVALS MODIF ID S2.
    SELECTION-SCREEN END OF BLOCK B1.
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-004.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS : R1 RADIOBUTTON GROUP G1 DEFAULT 'X' USER-COMMAND UC1.
    SELECTION-SCREEN COMMENT 5(20) TEXT-002 FOR FIELD R1.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS : R2 RADIOBUTTON GROUP G1.
    SELECTION-SCREEN COMMENT 5(20) TEXT-003 FOR FIELD R2.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END OF BLOCK B2.
    write :/ p_werks,
           / s_ebeln.
    AT SELECTION-SCREEN OUTPUT .
    LOOP AT SCREEN .
    IF R1 EQ 'X' AND SCREEN-GROUP1 EQ 'S2'.
    SCREEN-INPUT = 0.
    SCREEN-REQUIRED = 1.
    clear s_ebeln[].
    clear p_werks.
    MODIFY SCREEN.
    ENDIF.
    IF R2 EQ 'X' AND SCREEN-GROUP1 EQ 'S1'.
    SCREEN-INPUT = 0.
    SCREEN-REQUIRED = 1.
    clear s_ebeln[].
    clear p_werks.
    MODIFY SCREEN.
    ENDIF.
    ENDLOOP.
    Let me knwo if any doubts.
    <b>Reward with points if it helpful</b>
    Regards,
    Vijay

  • How can i set dynamice for week on Selection screen..pls help me..Urgent

    Hi..All
    please Help me .. i am very  confused..
    i need to set a varient for week which is dynamic on selection screen.
    b) Week from current week to current week + 2. (<b>Dynamic selection)</b>how can i set dynamice for week on Selection screen,,
    how can i do this..i am alrady set dynamice variant for Date.. there is option for D.. but in case of week there is a no option.
    pls help me..urgent
    thamks in advance.
    mayukh

    Hi,
    I think the way out is use the dynamic select option while setting up the varinat and use sy-datum to sy-datum+9 which should essentially serve the purpose.
    While saving the variant, for that particular date field check the Selection variable checkbox, then Choose D
    option and then choose current days + or - option from there.
    Rgds,
    HR

  • F4 help for file on selection screen thro objects

    Hi Every one,
    this report is working , but as i am working ECC6.0 it is showing the obsolete statements
    how to rectify it .
    pls anybody let me know,
    tables rlgrap.
    TYPES : BEGIN OF TAB,
    MATNR TYPE MATNR ,
    MTART TYPE MTART,
    END OF TAB.
    DATA : ITAB TYPE  STANDARD TABLE OF TAB ,
           WTAB TYPE TAB.
    data: it_tab type filetable,
          gd_subrc type i.
    data : file0 type string.
    selection-screen begin of block m with frame.
        select-options: so_fpath for rlgrap-filename.
    selection-screen end of block m.
    data wfile like line of so_fpath.
    at selection-screen on value-request for so_fpath-low.
    REFRESH: it_tab.
    CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
        EXPORTING
            WINDOW_TITLE = 'Select File'
            DEFAULT_FILENAME = '*.txt'
            MULTISELECTION = 'X'
        CHANGING
            FILE_TABLE = it_tab
            RC = gd_subrc.
    loop at it_tab into so_fpath-low.
       so_fpath-sign = 'I'.
       so_fpath-option = 'EQ'.
           append  so_fpath.
    endloop.
    move so_fpath+3 to file0.
    CALL FUNCTION 'GUI_UPLOAD'
      EXPORTING
        FILENAME                      = FILE0
       FILETYPE                      = 'ASC'
       HAS_FIELD_SEPARATOR           = 'X'
      TABLES
        DATA_TAB                      = Itab
    EXCEPTIONS
       FILE_OPEN_ERROR               = 1
       FILE_READ_ERROR               = 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.
    end-of-selection.
    write :/ file0.
    loop at itab into  wtab.
    write :/ wtab-matnr.
    endloop.
    its urgent please...

    See the below ex:change file parameter type .
      DATA: VFILE TYPE STRING.
      DATA: FL(1).
    DATA: L_FILETAB     TYPE FILETABLE,
          L_FILETAB_H   TYPE FILETABLE WITH HEADER LINE,
          INITIAL_DIR_PATH TYPE STRING,
          L_RC          TYPE I.
    SELECTION-SCREEN: BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    *PARAMETERS: FNAME LIKE RLGRAP-FILENAME OBLIGATORY.
    PARAMETERS: FNAME TYPE LOCALFILE OBLIGATORY.
    SELECTION-SCREEN: END OF BLOCK B1.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR FNAME.
    REFRESH L_FILETAB.
      INITIAL_DIR_PATH = 'C:\'.
      CALL METHOD CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
        EXPORTING
        WINDOW_TITLE            = 'Select the Asset Master Data file'
       DEFAULT_EXTENSION       =
       DEFAULT_FILENAME        =
        FILE_FILTER             = 'Text Files (.TXT)|.TXT|'
        INITIAL_DIRECTORY       = INITIAL_DIR_PATH
          MULTISELECTION          = SPACE
       WITH_ENCODING           =
        CHANGING
          FILE_TABLE              = L_FILETAB
          RC                      = L_RC
       USER_ACTION             =
       FILE_ENCODING           =
        EXCEPTIONS
          FILE_OPEN_DIALOG_FAILED = 1
          CNTL_ERROR              = 2
          ERROR_NO_GUI            = 3
          NOT_SUPPORTED_BY_GUI    = 4
          OTHERS                  = 5
      IF SY-SUBRC <> 0.
        WRITE:/ 'Error while selecting the input file'.
      ELSE.
        LOOP AT L_FILETAB INTO L_FILETAB_H.
          FNAME = L_FILETAB_H-FILENAME.
          EXIT.
        ENDLOOP.
      ENDIF.
      FILE = FNAME.
    CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
         FILENAME                      = VFILE
         FILETYPE                      = 'ASC'
         HAS_FIELD_SEPARATOR           = 'X'
      HEADER_LENGTH                 = 0
      READ_BY_LINE                  = 'X'
        DAT_MODE                      = ' '
      CODEPAGE                      = ' '
      IGNORE_CERR                   = ABAP_TRUE
      REPLACEMENT                   = '#'
      CHECK_BOM                     = ' '
      VIRUS_SCAN_PROFILE            =
    IMPORTING
      FILELENGTH                    =
      HEADER                        =
        TABLES
          DATA_TAB                      = I_TAB
       EXCEPTIONS
         FILE_OPEN_ERROR               = 1
         FILE_READ_ERROR               = 2
         NO_BATCH                      = 3
         GUI_REFUSE_FILETRANSFER       = 4
         INVALID_TYPE                  = 5
         NO_AUTHORITY                  = 6
         UNKNOWN_ERROR                 = 7
         BAD_DATA_FORMAT               = 8
         HEADER_NOT_ALLOWED            = 9
         SEPARATOR_NOT_ALLOWED         = 10
         HEADER_TOO_LONG               = 11
         UNKNOWN_DP_ERROR              = 12
         ACCESS_DENIED                 = 13
         DP_OUT_OF_MEMORY              = 14
         DISK_FULL                     = 15
         DP_TIMEOUT                    = 16
         OTHERS                        = 17
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.

  • Creating Editable UDFs in Batch Selection Screen

    Hi,
    I want to create  editable UDFs in Serial/Batches  screen.
    I already created a field but it appears in Non-Editable format
    any suggestion Plz
    Regards 
    Sree

    Hello everyone.
    I have the same issue. I'd like to create a new field in selection-screen in HRForms, to pass it to the smart-form I'm using, but I'm not sure if that's possible in a standard way.
    Can anybody help us?
    Swetha, have you solved your problem?
    Thanks in advance.
    Estela Piçarra

  • How Can i SEt Dynamic Variant For WEEK on SELECTION Screen.pls help me..

    <b>Hi ALL..
    Pls Help Me for this Problem..i am very confused how can i do that...plese tell me proper process..
    i  want set Dynamice Varient for WEEK on Selection screen..
    I have ALrady SET Dynamice Varient for DATE on Selection Screen.ther isd option is D...but in case of WEEK there is a no option...
    Plese help me..
    thaks in advance..
    pls help me..</b>

    Hello,
    Define your select-option in TVARV (assume Z_THISWEEK). And use a program like:
    DATA:
      zlv_week TYPE KWEEK.
    call function 'DATE_GET_WEEK'       
       exporting date = syst-datum
       importing week = zlv_week.
    SELECT SINGLE *
          FROM tvarvc
         WHERE name = 'Z_THISWEEK'
           AND type = 'S'
           AND numb = '0000'.
    tvarvc-low = zlv_week.
    IF syst-subrc <> 0.
        tvarvc-name     = 'Z_THISWEEK'.
        tvarvc-type     = 'S'.
        tvarvc-opti     = 'EQ'.
        tvarvc-sign     = 'I'.
        tvarvc-numb     = '0000'.
        insert tvarvc.
    ELSE.
      update tvarc.
    ENDIF.
    Regards,
    John.

  • How to create a F4 help for a report selection screen field

    hi,
    can any one guide me to create F4 help for a field in a selection screen in a report program,plz give me a sample code

    hi,
    Here are the following ways
    1.with the help of match code objects we can create the F4 Functionality for Field.
    Syntax is :
    PARAMETERS: p_org LIKE t527x-orgeh MATCHCODE OBJECT zorg.
    2. One more thing is we can do it with Search Help's also.
    3. Even we can do it HELP Views also.
    Help Views:
    You have to create a help view if a view with outer join is needed as selection method of a search help
    The selection method of a search help is either a table or a view. If you have to select data from several tables for the search help, you should generally use a database view as selection method. However, a database view always implements an inner join. If you need a view with outer join for the data selection, you have to use a help view as selection method.
    All the tables included in a help view must be linked with foreign keys. Only foreign keys that have certain attributes can be used here. The first table to be inserted in the help view is called the primary table of the help view. The tables added to this primary table with foreign keys are called secondary tables.
    The functionality of a help view has changed significantly between Release 3.0 and Release 4.0. In Release 3.0, a help view was automatically displayed for the input help (F4 help) for all the fields that were checked against the primary table of the help view. This is no longer the case in Release 4.0.
    As of Release 4.0, you must explicitly create a search help that must be linked with the fields for which it is offered (see Linking Search Helps with Screen Fields ).
    Existing help views are automatically migrated to search helps when you upgrade to a release higher than 4.0.
    A help view implements an outer join, i.e. all the contents of the primary table of the help view are always displayed. You therefore should not formulate a selection condition for fields in one of the secondary tables of the help view. If records of these secondary tables cannot be read as a result of this selection condition, the contents of the corresponding fields of the secondary table are displayed with initial value.
    <REMOVED BY MODERATOR>
    Edited by: Alvaro Tejada Galindo on Feb 15, 2008 3:15 PM

  • Steps to create stage11i for linux

    Hi guru's
    Please Help me to create stage11i file on linux
    please send me the steps to create stage file

    hi the stage for 11i look like follow
    Stage11i/StartCD--->start here
    Stage11i/oraiAS--->tools cds
    Stage11i/oraDB-->RDBMS cds
    Stage11i/oraApps-->appl_top cds
    Stage11i/oraAppDB--->database cds
    fadi hasweh
    http://oracle-magic.blogspot.com/
    Oracle is not Magic, it just takes years of experience

  • ABAP: create Popup for Input in selection Table for longer strings

    Hello,
    I am new in ABAP programming.
    I have created an application with SE38, in this application I call a table from an selection-screen. I pass a variable which I got from the selection-screen and call data from an InfoProvider that I have created.
    Now in this table the user has to enter some data into certain fields.
    There is a character field with a length of 60. This is not enough.
    I know that it is possible to have an InfoObject with attributes and split a string into the attributes to transport string with a longer length than 60.
    But my inputfield in the table doesn't give me the possiblity to enter data that is longer.
    So I am asking here if it is possible to access that field and call an inputfield somehow?
    I need an inputfield where I can enter data that is longer than 60 characters (maybe about 600) and after submitting it has to be splittet into several hidden fields. After saving of the table I will call a process-chain which will transfer the data from the table back into the InfoProvider.
    If you need any more informations about my application please let me know, I don't know if my question is clear enough..
    Regards
    Martin

    You posted at wrong forum. please repost your issue at below forum.
    ABAP Development

  • Alv for parameters on selection screen

    hi friends,
    what i need is some sample of an selection screen with an alv where i can add lines ( e.g. for fields ) to and the information is then stored to internal table so that it can be used for further steps...how could i do that the best way ? any ideas ?
    Clemens

    Hi,
    Check the program "BCALV_EDIT_01"
    there is an option of CREATE entries which can be used to create a record which is captured in the internal table for further processing.
    Cheers
    VJ

  • F4 help for timestamp on selection screen

    Hi experts!
    I have this code in custom ALV report:
    selection-screen: begin of block b1 with frame title text-t01.
    DATA: w_aux_sc_created_at like ztable-sc_created_at.
    SELECT-OPTIONS s_sc_c02 for w_aux_sc_created_at.
    Ztable-sc_created_at is COMT_CREATED_AT_USR (data element)
    COMT_CREATED_AT_USR is standard data type (DEC, lenght 15) domain COM_TSTMP --> UTC Time Stamp Short Form (YYYYMMDDhhmmss) (Output sy-zonlo)
    Ok, I would like to show a calendar for select date in my SELECT-OPTIONS custom ALV report like MATCHCODE OBJECT.
    A lot of thanks in advance.
    Best regards.
    djlu
    Moderator message: please use more descriptive subject lines from now on, changed for you this time
    Edited by: Thomas Zloch on Nov 8, 2010 9:44 AM

    thanks you for your answer but I fixed it.
    I created a select-options in date form (with F4 help) and I convert it to timestamp for my select sentence.
    Regards

  • Create a flat list from SELECTION-SCREEN

    Hi,
    I have a selection for date on in an report,
    SELECTION-SCREEN  BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS : dat_rang FOR sy-datum.
    SELECTION-SCREEN END OF  BLOCK blk1.
    I want to create a flat list of dates from this selection. This list should exclude the date(s), which are excluded in the selection.
    Please give some starters on how to do this.
    Thank you,
    CD

    Here is another example, adding the dates to an internal table.
    REPORT  zrich_0001.
    TYPES: BEGIN OF t_datum,
            datum TYPE sy-datum,
           END OF t_datum.
    DATA: lt_datum TYPE TABLE OF t_datum.
    DATA: ls_datum LIKE LINE OF lt_datum.
    DATA: lv_date TYPE sy-datum.
    SELECTION-SCREEN  BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS : dat_rang FOR sy-datum.
    SELECTION-SCREEN END OF  BLOCK blk1.
    INITIALIZATION.
      lv_date = '19000101'.
    START-OF-SELECTION.
      DO.
        IF lv_date IN dat_rang.
          ls_datum-datum = lv_date.
          APPEND ls_datum TO lt_datum.
        ENDIF.
        lv_date = lv_date + 1.
        IF lv_date = '20500101'.
          EXIT.
        ENDIF.
      ENDDO.
      LOOP AT lt_datum INTO ls_datum.
        WRITE:/ ls_datum-datum.
      ENDLOOP.
    Regards,
    Rich Heilman

  • Variants with subscreens in selection screen

    I have a screen that contains a subscreens....this subscreen is a selection-screen....i need to save and load variants for this selection-screen.
    My code:
    REPORT  zprueba_02.
    ----u2013
      TABLES                                                        *
    ----u2013
    TABLES: spfli.
    ----u2013
      TYPE-POOLS                                                    *
    ----u2013
    TYPE-POOLS: slis.
    ----u2013
      INTERNAL TABLES                                               *
    ----u2013
    DATA: t_rkey TYPE STANDARD TABLE OF rsvarkey WITH HEADER LINE,
          t_selctab TYPE STANDARD TABLE OF rsscr WITH HEADER LINE,
          t_vari TYPE STANDARD TABLE OF rvari WITH HEADER LINE,
          it_extab TYPE slis_t_extab,
          wa_extab LIKE LINE OF it_extab.
    ----u2013
      VARIABLES                                                     *
    ----u2013
    DATA: ok_code TYPE sy-ucomm,
          w_variant TYPE rsvar-variant,
          w_user_vari TYPE rsvar-variant,
          w_vari_report TYPE rsvar-report,
          sel_variant TYPE rsvar-variant,
          sel_variant_text TYPE rsvar-vtext,
          w_report TYPE rsvar-report,
          variant_exists TYPE c.
    ----u2013
      SELECTION-SCREEN                                              *
    ----u2013
    SELECTION-SCREEN BEGIN OF SCREEN 101 AS SUBSCREEN.
    SELECT-OPTIONS: s_carrid FOR spfli-carrid,
                    s_connid FOR spfli-connid.
    SELECTION-SCREEN END OF SCREEN 101.
    ----u2013
      INITIALIZATION                                                *
    ----u2013
    INITIALIZATION.
      w_report = sy-repid.
      PERFORM variant_exists.
    ----u2013
      START-OF-SELECTION                                            *
    ----u2013
    START-OF-SELECTION.
      CALL SCREEN 0100.
    *&      Module  STATUS_0100  OUTPUT                               *
    MODULE status_0100 OUTPUT.
      SET PF-STATUS '100' EXCLUDING it_extab.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    *&      Module  USER_COMMAND_0100  INPUT                          *
    MODULE user_command_0100 INPUT.
      ok_code = sy-ucomm.
      CASE ok_code.
        WHEN 'SAVE'.
          PERFORM save_variant.
          PERFORM variant_exists.
        WHEN 'BACK'.
          LEAVE TO SCREEN 0.
        WHEN 'GET_VAR'.
          PERFORM load_variant.
        WHEN 'DEL_VAR'.
          PERFORM delete_variant.
          PERFORM variant_exists.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    *&      Form  SAVE_VARIANT                                        *
    FORM save_variant.
      t_rkey-report = sy-repid.
      APPEND t_rkey.
      CALL FUNCTION 'RS_VARIANT_SAVE_FROM_SELSCREEN'
        EXPORTING
          curr_report          = w_report
         USER_VARI            = SY-SLSET
          vari_report          = w_report
        IMPORTING
          variant              = w_variant
        TABLES
          p_sscr               = t_selctab
          p_vari               = t_vari
        EXCEPTIONS
          illegal_variant_name = 1
          not_authorized       = 2
          no_report            = 3
          report_not_existent  = 4
          report_not_supplied  = 5
          OTHERS               = 6.
      t_rkey-variant = w_variant.
      MODIFY t_rkey INDEX 1.
      CALL FUNCTION 'RS_RWSET_SAVE_VARIANT'
        EXPORTING
          rkey    = t_rkey
        TABLES
          selctab = t_selctab.
    ENDFORM.                    " SAVE_VARIANT
    *&      Form  LOAD_VARIANT                                        *
    FORM load_variant.
      PERFORM choose_variant CHANGING sel_variant.
      IF sel_variant NE space.
        CALL FUNCTION 'RS_SUPPORT_SELECTIONS'
          EXPORTING
            report               = w_report
            variant              = sel_variant
          EXCEPTIONS
            variant_not_existent = 1
            variant_obsolete     = 2
            OTHERS               = 3.
      ENDIF.
    ENDFORM.                    " LOAD_VARIANT
    *&      Form  DELETE_VARIANT                                      *
    FORM delete_variant.
      PERFORM choose_variant CHANGING sel_variant.
      IF sel_variant NE space.
        CALL FUNCTION 'RS_VARIANT_DELETE'
          EXPORTING
            report               = w_report
            variant              = sel_variant
            flag_confirmscreen   = 'X'
            flag_delallclient    = 'X'
          EXCEPTIONS
            not_authorized       = 1
            not_executed         = 2
            no_report            = 3
            report_not_existent  = 4
            report_not_supplied  = 5
            variant_locked       = 6
            variant_not_existent = 7
            no_corr_insert       = 8
            variant_protected    = 9
            OTHERS               = 10.
      ENDIF.
    ENDFORM.                    " DELETE_VARIANT
    ----u2013
          FORM CHOOSE_VARIANT                                       *
    ----u2013
    FORM choose_variant CHANGING l_sel_variant.
      CALL FUNCTION 'RS_VARIANT_CATALOG'
        EXPORTING
          report               = w_report
          masked               = 'X'
        IMPORTING
          sel_variant          = sel_variant
          sel_variant_text     = sel_variant_text
        EXCEPTIONS
          no_report            = 1
          report_not_existent  = 2
          report_not_supplied  = 3
          no_variants          = 4
          no_variant_selected  = 5
          variant_not_existent = 6
          OTHERS               = 7.
    ENDFORM.                    "CHOOSE_VARIANT
    *&      Form  VARIANT_EXISTS                                      *
    FORM variant_exists.
      CALL FUNCTION 'RS_VARIANT_FOR_ONE_SCREEN'
        EXPORTING
          program        = w_report
          dynnr          = '0101'
        IMPORTING
          variant_exists = variant_exists.
      IF variant_exists EQ 'X'.
        CLEAR: wa_extab, it_extab.
        REFRESH it_extab.
      ELSE.
        CLEAR: wa_extab, it_extab.
        REFRESH it_extab.
        wa_extab-fcode = 'GET_VAR'.
        APPEND wa_extab TO it_extab.
      ENDIF.
    ENDFORM.                    " VARIANT_EXISTS
    At include modul i have:
    PROCESS BEFORE OUTPUT.
      MODULE status_0100.
      CALL SUBSCREEN sb_0001 INCLUDING w_report '0101'.
    PROCESS AFTER INPUT.
      MODULE user_command_0100.
      CALL SUBSCREEN sb_0001.
    and i have declared in the screen a subscreen area called sb_001.
    When i try to save the variant, the next error:
    Selection screen 0100 contains no object.

    I think error is coming from function module RS_VARIANT_SAVE_FROM_SELSCREEN
    try to use function RS_REFRESH_FROM_SELECTOPTIONS toget contents of fields, then save a variant with this contents
    -> check if variant already exists with RS_VARIANT_EXISTS
    -> if exists : RS_VARIANT_CHANGE
    -> if not exists : RS_CREATE_VARIANT

  • Authorization object for plant on selection-screen

    Hi All,
    I need to cehck the authorization object for plant on sleection screen..the palnt is select-options.
    I have written the code
    Declaration of local constants.
      CONSTANTS : lc_i(1)  TYPE c VALUE 'I',
                  lc_eq(2) TYPE c VALUE 'EQ'.
      REFRESH : r_werks.
      LOOP AT s_werks.
        IF s_werks-low IS NOT INITIAL.
          AUTHORITY-CHECK OBJECT 'M_MATE_WRK'                "Check if the user has autorization for the plant.
                               ID 'ACTVT' FIELD '03'
                               ID 'WERKS' FIELD s_werks-low.
          IF sy-subrc NE 0.
            r_werks-sign   = lc_i.
            r_werks-option = lc_eq.
            r_werks-low    = s_werks-low.
            APPEND r_werks.
          ENDIF.
        ENDIF.
      ENDLOOP.
      LOOP AT s_werks.
        IF s_werks-high IS NOT INITIAL.
          AUTHORITY-CHECK OBJECT 'M_MATE_WRK'                "Check if the user has autorization for the plant.
                               ID 'ACTVT' FIELD '03'
                               ID 'WERKS' FIELD s_werks-high.
          IF sy-subrc NE 0.
            r_werks-sign   = lc_i.
            r_werks-option = lc_eq.
            r_werks-low    = s_werks-high.
            APPEND r_werks.
          ENDIF.
        ENDIF.
      ENDLOOP.
    My doubt is will the authorization will check the plants in between 1001 and 2001..suppose i have pplants 1001,1002,1003,1004,2001..Now will the above code will check for all the plants or only 1001 and 2001 if i specify in the select-options.
    Regards,
    raj

    Hi Raj
    First no need to LOOP AT s_werks and check s_werks-high as it will always be present only once in the table s_werks.
    Do this
    SELECT werks FROM t001w INTO li_werks
    WHERE werks IN s_werks.
    LOOP AT li_werks.
    *check your authority thing here and fill the range
    ENDLOOP.
    Pushpraj

  • How to create check boxes dynamically in selection screen

    Hi Experts,
    I have a requirement of creating dynamic check boxes based on the number of records that are retrieved from a database table.
    Can you please suggest me how to achieve it.
    Regards
    RP.

    Hey RP,
    Try this way.
    REPORT ztest_program .
    DATA: it_data TYPE TABLE OF t001.
    DATA:check    TYPE char3.
    DATA:sy_index TYPE char2.
    DEFINE checkbox.
      parameters:&1 as checkbox.
    END-OF-DEFINITION.
    CHECKbox:c01,c02,c03,c04,c05,c06,c07,c08,c09,c10,
             c11,c12,c13,c14,c15,c16,c17,c18,c19,c20,
             c21,c22,c23,c24,c25,c26,c27,c28,c29,c30,
             c31,c32,c33,c34,c35,c36,c37,c38,c39,c40.
    AT SELECTION-SCREEN OUTPUT.
      DESCRIBE TABLE it_data LINES sy-tfill.
      sy-tfill = 39. "This will be changed based on the itab records. I just hardcoded the value
      sy_index = 1.
      LOOP AT SCREEN.
        CONCATENATE 'C' sy_index INTO check.
        IF screen-name = check.
          IF sy_index GT sy-tfill.
            screen-active = '0'.
            MODIFY SCREEN.
            sy_index = sy_index + 1.
            CONTINUE.
          ENDIF.
          sy_index = sy_index + 1.
        ENDIF.
      ENDLOOP.
    Thanks
    Venkat.O

Maybe you are looking for

  • Spool output not appearing on one page

    Hello Experts, When program runs in foreground, I am getting correct output i.e. ALV blocks are displayed on one page only. But when running same program in background, I got output in spool and when looked at spool output that time I realized that t

  • Skype Video calling - red light but no video

    I did a search but couldn't find anything on the boards. If I initiate or receive a video call, the red light comes on and a black box where the picture should be, but nothing shows up. The audio works fine, but not the video. Is there a setting i ne

  • 5 Sender communication channels and 1 receiver channel

    My scenario demands to handle 5 different select queries from single data base. I need to have 5 sender communication channels for editing an employee and only 1 receiver channel at receiver side and i'm using one common Functional module to handle.

  • IPhone4: Inhalte am PC-Bildschirm ansehen ?

    Frage: Kann mir Jemand Sagen , Wie man den iPhone4 -Screen- Inhalt Auf einen PC- Bildschirmgröße Bildschirm Bringt ( anzeigen / Darstellen )? 2. Frage: Kann man den iPhone - Bildschirm live (Großer ) am PC view ? Danke im Voraus für ein Feedback .

  • LOGGING RATE IN LABVIEW 7.0

    is there an easy way to set a a different logging rate than the scan rate when moving data from DAQ assistant VI to Write Labview Measr. File VI.