To include subscreens in a screen.

Hi ,
I have created a screen 100 , that includes a custom control , in the same screen I have created subscreen area in order to include some I/O fields...but when i try to excute this program ..i get some errors - call subscreen : yprg2 0100 no dynpro name.
yprg2 is the abap program .
Thanx.
Sunitha

Hello.
In PBO and PAI of your screen 100, you must call the subscreens, like:
*PBO
CALL SUBSCREEN sub1 INCLUDING sy-cprog dynnr.
*PAI
CALL SUBSCREEN sub1.
Where SUB1 is the subscreen defined in screen painter of screen 100, sy-cprog and dynnr have the program and subscreen number (101?).
Regards.
Valter Oliveira.

Similar Messages

  • 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

  • Adding new fields from CI Include to Standard SAP Screen

    Hi All,
    I am enhancing Infotype 0487. I have added new fields to the CI include and created the screen fields in subscreen 0200 with reference to the data dictionary fields. When I test the subscreen alone, the new fields are displaying correctly and F4 help is active. But when I view the whole screen(2000) in PA30, the new field is inactive and I am not able to enter data. Also F4 help option is present for the field but when it is selected, a message 'No Values Found'  is displayed. Please suggest some solution.
    Thanks in advance
    Regards,
    Sivasankari
    Edited by: Julynila on Oct 7, 2010 10:41 AM

    Hi,
    This might be the standard transaction, so there is a possibility of adding the fields using the Screen variants using SPRO, get in touch with your functional consultant. there you can copy an existing screen and add the required fields and rename the screen to different number, and in the config this new screen can be added.
    Thanks,
    Srini.

  • How to show subscreen in split screen

    Hi all,
    Basically i want to show one tree control in left pane and all relevent subscreens in right pane.
    But, I am not able to create subscreen area in right pane.
    How i can create sub screen area and/or subscreens in split screen control.
    Thanks,
    Jogdand M B

    Hi Machindra,
    I also faced the same kind of problem previously. Actually there is no container which can contain normal dynpro screens / subscreens / ui elements.
    However you can still implement the same kind of scenario.
    As you said you want to have splitted area - left area should have tree control and right area should have subscreen.
    What you can do is make use of docking container (class CL_GUI_DOCKING_CONTAINER) like -
    1. Create your normal dynpro screen with a subscreen area as you wanted.
    2. In a PBO module write code for creating tree control in docking container, like -
    DATA: <docking container object> TYPE REF TO CL_GUI_DOCKING_CONTAINER,
          <ALV grid object>          TYPE REF TO CL_GUI_ALV_GRID.
    CREATE OBJECT <docking container object>
                  EXPORTING repid     = repid
                            dynnr     = dynnr
                            side      = docking->dock_at_left
                            extension = 180.
    CREATE OBJECT <ALV grid object>
           EXPORTING I_PARENT = <docking container object>.
    CALL METHOD <ALV grid object>->SET_TABLE_FOR_FIRST_DISPLAY
         EXPORTING I_STRUCTURE_NAME = 'SFLIGHT'
         CHANGING  IT_OUTTAB        = <output table>.
    Regards,
    Manish Joshi
    I hope you know how to award points

  • Calling the subscreen into main screen

    Hi Guru's,
          I am having a main screen, which holds 2 radio buttons.
          If I select one radio button it has to call one table control, if I select 2nd radio button it has to call different table control.
          For this I have created two subscreens, each one holds a table control.
    based on the selection of radio button I have to call these subscreens in to the main screen.
       Please help me how to call the subscreen into main screen.

    There is no help text for this dump                                         
    Either the text was inadvertently deleted or the release of                 
    the kernel differs from the release of the database                         
    Refer to the Note system for further information on            this dump.                                                                               
    000160           %_archive TYPE arc_params,                                     
    000170         END   OF COMMON PART.                                            
    000180   *                                                                      
    000190   FIELD-SYMBOLS: <%_1>   %_PREDEFINED.                                   
    000200                                                                          
    000210   DATA: %_repid     TYPE syst-repid   %_PREDEFINED,                      
    000220         %_viaselscr TYPE x VALUE '04' %_PREDEFINED.                      
    000230                                                                          
    000240   SYSTEM-EXIT.                                                           
    000250   PERFORM (sy-xform) IN PROGRAM (sy-xprog).                              
    000260                                                                          
    000270   * Nach Laden des Dynpros                                               
    000280   MODULE %_ctl_init OUTPUT.                                              
    000290     %_repid = sy-repid.                                                  
    000300     PERFORM %_ctl_init IN PROGRAM sapmssyd USING %_repid IF FOUND.       
         >   ENDMODULE.                                                             
    000320                                                                          
    000330   * Um DCO                                                               
    000340   MODULE %_ctl_output OUTPUT.                                            
    000350     %_repid = sy-repid.                                                  
    000360     PERFORM %_ctl_output IN PROGRAM sapmssyd USING %_repid IF FOUND.     
    000370   ENDMODULE.                                                             
    000380                                                                          
    000390   * Um DCI                                                               
    000400   MODULE %_ctl_input INPUT.                                              
    000410     %_repid = sy-repid.                                                  
    000420     PERFORM %_ctl_input IN PROGRAM sapmssyd USING %_repid IF FOUND.      
    000430   ENDMODULE.                                                             
    000440                                                                          
    000450   * Erstes Modul in PAI                                                  
    000460   MODULE %_ctl_pai INPUT.                                                
    000470     %_repid = sy-repid.                                                  
    000480     PERFORM %_ctl_pai IN PROGRAM sapmssyd USING %_repid IF FOUND.        
    000490   ENDMODULE.

  • To call subscreen in another screen

    hi
    How to call a subscreen if i check certain checkbox.please help

    Hi,
    In screen painter(SE51) choose the subscreen tool button and draw a subscreen area on the screen,this subscreen area will be used to hold the subscreen at run time.To make a subscreen select the attribute screen type as subscreen and specify the size of the subscreen according to the size of the subscreen area in which it will be placed.
    We use ABAP statement to embed and start the flow logic of the subscreen area in the PBO of a screen. A subscreen can contain another subscreen.
    CALL SUBSCREEN subscreen_area INCLUDING program screen_number.
    A similar call should also exist in PAI of screen.It will also call the PAI modules of the subscreen and will transfer data from subscreen to ABAP program.
    CALL SUBSCREEN subscreen_area.
    open T.code : ABAPDOCU
    path:BC ABAP Prg ->ABAP User dialog ->Screen ->Complex screen element - >Subscreen.
    You will get sample prg, Run it.You can get lot of sample prg in T.Code ABAPDOCU.
    Regards,
    Raj.

  • Increase of subscreen size in screen exit

    Hi,
       Iam calling a sub screen in co11n transaction based on order types. It is working fine but i am not able to see the complete subscreen in the transaction.Can any one suggest how to increase the sub screen size..
    Regards,
    Vinodh

    hi,
    Changing the fonts in Print using ABAP is not possible. as basic report output is a text editor.
    By changing "Customizing of Local Layout" will only change in display screen and not in print.
    One possible way to create a new printer formatr thry SPAD and use that format in while printing.
    to know more details about SPAD
    Using SPAD - SAP Spool Administration to print different paper size
    The SAP spool system manages its own output devices. This includes mostly printers, but also fax and archiving devices. In order for you to use output devices defined in your operating system from the SAP System, you must define these devices in the SAP spool system.
    this is a piece of code from SAP-IMG ...its about printing fonts...see if this helps u....
    REPORT ZFONT NO STANDARD PAGE HEADING LINE-SIZE 80 LINE-COUNT 65.
    Start of print-control
    NEW-PAGE PRINT ON.
    PRINT-CONTROL FUNCTION 'SF000'.
    WRITE: / 'This is CPI 20'.
    SKIP.
    PRINT-CONTROL FUNCTION 'SF020'.
    WRITE: / 'This is CPI 6'.
    SKIP.
    PRINT-CONTROL FUNCTION 'SF008'.
    WRITE: / 'This is CPI 12'.
    Depending on your SAP printer device, this may also work
    PRINT-CONTROL FONT 1 LPI 6.
    you can try to change font and LPI numbers
    WRITE: / 'font 1 lpi 6'.
    PRINT-CONTROL FONT 2 LPI 6.
    WRITE: / 'font 2 lpi 6'.
    PRINT-CONTROL FONT 3 LPI 6.
    WRITE: / 'font 3 lpi 6'.
    End of print-control
    NEW-PAGE PRINT OFF.
    *--- End of Program
    also check out these links:
    For More Info Go thru this Link,
    font size in basic list output
    http://www.sapdesignguild.org/resources/MiniSG-old/BCMSG03E_DEL.htm
    http://sap4.com/modules.php?name=conteni2&pa=showpagina&pid=100
    do reward points if it helps
    rgds

  • Call subscreen from main screen

    Dear all,
    I have a subscreen and from that subscreen i am calling another normal screen using 'call screen' statement. After doing some manipulation in the normal screen i want to go back to the subscreen on clicking 'BACK' button. i tried 'leave to screen' and 'call screen' in PAI of normal screen but it is not working. how to come back to the subscreen again?
    Thanks in advance,
    Aswin.

    Dear Friend,
    You include a subscreen screen using the CALL SUBSCREEN statement in the flow logic of the main screen.
    To include a subscreen screen in the subscreen area of the main screen and call its PBO flow logic, use the following statement in the PBO event of the main screen:
    This statement assigns the subscreen screen with number <dynp> to the subscreen area called <area>. With <prog> you must specify the ABAP program in which the subscreen screen is defined. If it does not find a corresponding subscreen screen, a runtime error occurs. The PBO flow logic of the subscreen screen is also included at the same point. This can call PBO modules of the ABAP program in which the subscreen screen is defined. At the end of the subscreen PBO, the global fields from the program are passed to any identically-named screen fields in the subscreen screen. The PBO flow logic of the subscreen screen can itself include further subscreens.
    The name <area> of the subscreen area must be entered directly without inverted commas. You can specify the names <prog> and <dynp> either as literals or variables. If you use variables, you must declare and fill identically-named variables in the ABAP program. The screen number <dynp> must be 4 characters long. If you do not assign a subscreen screen to an area, it remains empty.
    PROCESS BEFORE OUTPUT.
      CALL SUBSCREEN <area> INCLUDING <prog> <dynp>.
    find the Below Example Code.
    DATA: ok_code TYPE sy-ucomm,
          save_ok TYPE sy-ucomm.
    DATA: number1(4) TYPE n VALUE '0110',
          number2(4) TYPE n VALUE '0130',
          field(10) TYPE c, field1(10) TYPE c, field2(10) TYPE c.
    CALL SCREEN 100.
    MODULE status_100 OUTPUT.
      SET PF-STATUS 'SCREEN_100'.
    ENDMODULE.
    MODULE fill_0110 OUTPUT.
      field = 'Eingabe 1'(001).
    ENDMODULE.
    MODULE fill_0120 OUTPUT.
      field = field1.
    ENDMODULE.
    MODULE fill_0130 OUTPUT.
      field = 'Eingabe 2'(002).
    ENDMODULE.
    MODULE fill_0140 OUTPUT.
      field = field2.
    ENDMODULE.
    MODULE cancel INPUT.
      LEAVE PROGRAM.
    ENDMODULE.
    MODULE save_ok INPUT.
      save_ok = ok_code.
      CLEAR ok_code.
    ENDMODULE.
    MODULE user_command_0110 INPUT.
      IF save_ok = 'OK1'.
        number1 = '0120'.
        field1 = field.
        CLEAR field.
      ENDIF.
    ENDMODULE.
    MODULE user_command_0130 INPUT.
      IF save_ok = 'OK2'.
        number2 = '0140'.
        field2 = field.
        CLEAR field.
      ENDIF.
    ENDMODULE.
    MODULE user_command_100 INPUT.
      CASE save_ok.
        WHEN 'SUB1'.
          number1 = '0110'.
        WHEN 'SUB2'.
          number1 = '0120'.
          CLEAR field1.
        WHEN 'SUB3'.
          number2 = '0130'.
        WHEN 'SUB4'.
          number2 = '0140'.
          CLEAR field2.
      ENDCASE.
    ENDMODULE.
    The screen flow logic for screen 100 is as follows:
    PROCESS BEFORE OUTPUT.
      MODULE status_100.
      CALL SUBSCREEN: area1 INCLUDING sy-repid number1,
                      area2 INCLUDING sy-repid number2.
    PROCESS AFTER INPUT.
      MODULE cancel AT EXIT-COMMAND.
      MODULE save_ok.
      CALL SUBSCREEN: area1,
                      area2.
      MODULE user_command_100.
    The screen flow logic of subscreen screens 110 and 130 is:
    PROCESS BEFORE OUTPUT.
      MODULE fill_0110|0130.
    PROCESS AFTER INPUT.
      MODULE user_command_0110|0130.
    The screen flow logic of subscreen screens 120 and 140 is:
    PROCESS BEFORE OUTPUT.
      MODULE fill_0120|0150.
    PROCESS AFTER INPUT.
    When you run the program, a screen appears on which subscreens 110 and 130 are displayed. The pushbuttons on the main screen allow you to choose between two subscreen screens for each screen area. The pushbuttons on the subscreens allow you to transfer the data from subscreens 110 and 130 to subscreens 120 and 140.
    Since the same field name FIELD is used on all subscreens, the identically-named ABAP field is transferred more than once in each PBO and PAI event of the main screen. For this reason, the values have to be stored in the auxiliary fields FIELD1 and FIELD2 in the ABAP program.
    The pushbuttons on the subscreen screens have different function codes, and they are handled normally in an ABAP field. If the function codes had had the same names, it would again have been necessary to use auxiliary fields.

  • 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

  • Saving Data from subscreen to main screen on a click of a button

    Hi,
    I have a main screen which has multiple subscreens attached to it.
    My problem is when ever i enter the data on the screen and execute a button, the data on the screen is not being saved. what i observed is when ever there is a button press, the data is cleared. i have checked the same in debugging mode as well still then i am not able to see the data which i am trying to store.
    I have attached the code, please help me in this regards,
    Thanks,
    Shanky.
    Main screen:-
    PROCESS BEFORE OUTPUT.
    MODULE STATUS_9020.
      MODULE MZO_DISABLETABSTRIP.
      MODULE CHECK_MANDATORY_DISABLE.
      CALL SUBSCREEN SUB1 INCLUDING SY-REPID '9030'.
      CALL SUBSCREEN SUB2 INCLUDING SY-REPID '9050'.
      CALL SUBSCREEN SUB3 INCLUDING SY-REPID '9060'.
      CALL SUBSCREEN SUB4 INCLUDING SY-REPID '9080'.
      CALL SUBSCREEN SUB5 INCLUDING SY-REPID '9090'.
      CALL SUBSCREEN SUB6 INCLUDING SY-REPID '9070'.
    PROCESS AFTER INPUT.
    MODULE MZI_USER_COMMAND_9020.
    CALL SUBSCREEN SUB1.
    CALL SUBSCREEN SUB2.
    CALL SUBSCREEN SUB3.
    CALL SUBSCREEN SUB4.
    CALL SUBSCREEN SUB5.
    CALL SUBSCREEN SUB6.
    Subscreen - 1
    PROCESS BEFORE OUTPUT.
    MODULE MZO_STATUS_9030.
      MODULE MZO_INITIALIZATION_9030.
    module mzo_routes_display.
    PROCESS AFTER INPUT.
      MODULE MZI_USER_COMMAND_9030.
    PROCESS ON VALUE-REQUEST.
      FIELD ZTTT001-ZFACTNAME MODULE MZV_ZFACTNAME.
      FIELD ZTTT001-ZTTBASICOBJI1 MODULE MZV_ZTTBASICOBJI1.
      FIELD ZTTT001-ZTTBASICOBJI2 MODULE MZV_ZTTBASICOBJI2.
      FIELD ZTTT001-ZTTBASICOBJI3 MODULE MZV_ZTTBASICOBJI3.
      FIELD ZTTT001-ZTTBASICOBJI4 MODULE MZV_ZTTBASICOBJI4.
      FIELD ZTTT001-ZTTBASICOBJI5 MODULE MZV_ZTTBASICOBJI5.
      FIELD ZTTT001-ZTTBASICOBJI6 MODULE MZV_ZTTBASICOBJI6.
      FIELD ZTTT001-ZTTBASICOBJI7 MODULE MZV_ZTTBASICOBJI7.
      FIELD ZTTT001-ZTTBASICOBJI8 MODULE MZV_ZTTBASICOBJI8.
      FIELD ZTTT001-ZSEASONALPROD MODULE MZV_ZSEASONALPROD.
      FIELD ZTTT001-ZROUTEID MODULE MZV_ZROUTE.
      FIELD ZTTT001-ZFPLANTS MODULE MZV_ZPLANTS.
      FIELD ZTTT001-ZTOPLANTS MODULE MZV_ZTOPLANTS.
      FIELD ZTTT001-ZSTACKCONFIG MODULE MZV_ZSTACKCONFIG.
    G_OKCODE2 = SY-UCOMM.
      CASE G_OKCODE2.
        WHEN 'SAVE'.
          " Write code for save as draft version and saving the existing data.
          PERFORM SAVE_AS_DRAFT_VERSION.
        WHEN 'COMP'.
          ZTTT001-ZDOFCOMMENCT = SY-DATUM.
          PERFORM SAVE_DATA_ORIGINATOR.
          PERFORM F_UPDATENWORKFLOW. " Update the database table and initiate workflow.
          LEAVE PROGRAM.
       WHEN 'ENTER'.
         PERFORM save_temporary_data.
         LEAVE TO SCREEN 9020.
        WHEN 'OTHERS'.
    BREAK-POINT.
      PERFORM TT_GENERATE_NUMBER.
      Wa_ZTTT001-MATNR = ZTTT001-MATNR.
      Wa_ZTTT001-ZTTNO = ZTTT001-ZTTNO.
      Wa_ZTTT001-ZORGNAME = ZTTT001-ZORGNAME.
      Wa_ZTTT001-ZORGCONT = WA_ITZTTT001-ZORGCONT.
      Wa_ZTTT001-ZDECNTNAME = ZTTT001-ZDECNTNAME.
      Wa_ZTTT001-ZFACTNAME = ZTTT001-ZFACTNAME.
      Wa_ZTTT001-ZTTCREDATS = ZTTT001-ZTTCREDATS.
      Wa_ZTTT001-ZTTBASICOBJ1 = ZTTT001-ZTTBASICOBJ1.
      Wa_ZTTT001-ZTTBASICOBJ2 = ZTTT001-ZTTBASICOBJ2.
      Wa_ZTTT001-ZTTBASICOBJ3 = ZTTT001-ZTTBASICOBJ3.
      Wa_ZTTT001-ZTTBASICOBJ4 = ZTTT001-ZTTBASICOBJ4.
      Wa_ZTTT001-ZTTBASICOBJ5 = ZTTT001-ZTTBASICOBJ5.
      Wa_ZTTT001-ZTTBASICOBJ6 = ZTTT001-ZTTBASICOBJ6.
      Wa_ZTTT001-ZTTBASICOBJ7 = ZTTT001-ZTTBASICOBJ7.
      Wa_ZTTT001-ZTTBASICOBJ8 = ZTTT001-ZTTBASICOBJ8.
      Wa_ZTTT001-ZDOFCOMMENCT = ZTTT001-ZDOFCOMMENCT .
      Wa_ZTTT001-ZSEAARSHIPTEXT = ZTTT001-ZSEAARSHIPTEXT.
      Wa_ZTTT001-ZPRODHIERARCHY = ZTTT001-ZPRODHIERARCHY.
      Wa_ZTTT001-ZNEWPRODDEV = ZTTT001-ZNEWPRODDEV.
      Wa_ZTTT001-ZPRODNAME = ZTTT001-ZPRODNAME.
      Wa_ZTTT001-ZNOFPALLETS = ZTTT001-ZNOFPALLETS.
      Wa_ZTTT001-ZSTACKCONFIG = ZTTT001-ZSTACKCONFIG.
      Wa_ZTTT001-ZRATFTT1 = ZTTT001-ZRATFTT1.
      Wa_ZTTT001-ZRATFTT2 = ZTTT001-ZRATFTT2.
      Wa_ZTTT001-ZCOMMENTS = ZTTT001-ZCOMMENTS.
      Wa_ZTTT001-ZROUTEID = ZTTT001-ZROUTEID.
      Wa_ZTTT001-ZTOPLANTS = ZTTT001-ZTOPLANTS.
      Wa_ZTTT001-ZFPLANTS = ZTTT001-ZFPLANTS.
      Wa_ZTTT001-ZSHIPMENTNO = ZTTT001-ZSHIPMENTNO.
      Wa_ZTTT001-ZDELIVERY = ZTTT001-ZDELIVERY.
      Wa_ZTTT001-ZTRAILER = ZTTT001-ZTRAILER .
      Wa_ZTTT001-ZPALLET = ZTTT001-ZPALLET.
      Wa_ZTTT001-ZSTONUM = ZTTT001-ZSTONUM.
      Wa_ZTTT001-ZSTATORG = 'Complete Version'.
      MOVE Wa_ZTTT001 TO ZTTT001.
      MODIFY ZTTT001 FROM Wa_ZTTT001.
      COMMIT WORK.
    endform.

    Let's see... if you call the subscreen9030  after 9020 PBO, then in the 9020 PAI you call it again, and the PBO for 9030 initializes the data, didn't you just wipe out what you have entered?

  • IChat in Leopard no longer include remote sharing or screen sharing?

    They've posted new Leopard features on the site and the iChat AV movie no longer mentions screen sharing or remote sharing (ie. remote desktop) and I don't believe it was mentioned in the keynote. Anyone have any insights on whether this feature is still included?
    I'll be bummed if it's no longer a feature for 10.5
    CHL

    They took it out of iChat and moved the share desktops into the Finder:
    http://www.apple.com/macosx/leopard/features/finder.html
    Closer connections.
    With shared computers automatically displayed in the sidebar, it’s far easier to find or access files on any computer in your house, whether Mac or PC. All it takes is a click.But here’s where things get really interesting. By clicking on a connected Mac, you can see and control that computer (if authorized, of course) as if you were sitting in front of it. You can even search all the computers in the house to find what you're looking for.

  • Regarding ldb pch (include DBPCHSEL for selection screen)

    hi experts,
    i am developing report for training and event mgmt details for this i m using ldb pch and include DBPCHSEL for standard selection screen what i want that in this include extra parameters & select-options/selection fields for input  are already declared but i dnt want all of these plz help me how to  remove extra selection fields which i dnt want on my customized report i want only one to two selection fields.
    plz help me how to remove these extra fields

    dear amit,
    ven ever u use ldb "pch"  it is not asking for report category means it wnt allow u create a report category.then plz gve another solutions.

  • Adding fiels in XD01 subscreen-program  SAPLV02Z screen no. 0200

    Hi All,
    I need to create custom fields in XD01 (Sales area-Extras-Additional Data) subscreen.
    Program - SAPLV02Z screen no. 0200
    I added fields in structure KNVV using append structure.
    Now how to add these fields in the screen? I did not find any exist to add fields in this screen.
    I think using BADI CUSTOMER_ADD_DATA_CS  I canu2019t add fields in  SAPLV02Z screen no. 0200
    Do I have any option with out using modification?
    What are the options I have to add the fields in that subscreen?
    Any ideas please? I appreciate your help on this.
    Thanks.

    Hi,
    Can u give some more details.like how many fields you are trying to add.
    SAP has given 5 fields cutomer grp1 to customer grp5. which we can use anyway.
    KNVV-KVGR1 TO KNVV-KVGR5
    you can use these 5 fields and descriptions anyway can be changed using CMOD project implementation
    Tcode : CMOD
    GOTO---Text Enhancements--Data elements----New DE cust desc
    Create a modification and change the description.
    this will work if you need upto 5 fields.
    Regards
    Anil
    Edited by: Anil Kumar Palle on Mar 5, 2010 7:50 AM

  • How to save three table control in subscreen from main screen

    hi All,
    I have three table control in subscreen and i want to save the content of all the table control from the save button of Main screen how can i do it.
    Thanks
    Narendra Vikram Vishwakarma

    hi
    in main screen PAI
    when 'SAVE'
    write the code here to save it.
    thanks

  • Changes of subscreen in an screen enhancements

    I am using screen enhancements of a standard program.
    I have created a subscreen which will be called by the standard program. When ever i am making chages to the data in the sub screen sy-datar is not setting. Only when i make changes in the other standard screens sy-datar is setting to 'X'.
    Can you please let me know how to know whether chages have been done to the data on my subscreen. Is there any function module or any other solution?
    Only when chages have been made to the data on the subscreen i am supposed to save the data.
    So it is important to know whether any changes have been made to my screen data.

    Hi!
    I think it is not possible. Not possible, because the colors are handled centrally per user.
    You can set the color scheme with the following setting:
    Click on the local layout settings button (first from right, under the menu) then choose color settings from the popup menu.
    Here you can define the colors for that user.
    Regards
    Tamá

Maybe you are looking for

  • Setting list view in calendar

    I was very disappointed when I lost "list view" for Calendar on IOS 7.0.  But when I upgraded to IOS 7.1, I noticed the old "list view" was back for Calendar.  A welcome change.  But now that has changed again, I get what is called "combo view", a ha

  • Business Workplace Inbox : Mail Content Not Displayed

    Friends, We have a problem in displaying contents of the mail(SAP Inbox) in one of the PC's. When we reply w/refernce to that message the content is displayed properly. And also the same mail content is displayed properly in another PC's for the same

  • New messages being marked as unread (before I've read them!)

    Starting this morning some of my new, unread messages are being marked as unread by Mail.app. Any ideas?

  • IWeb RSS Issues. Help!!!

    Using iWeb 09 I have fed a blog through to a page using the RSS Widget. It shows correctly on the page but on clicking on the entry the address it takes me to isn't correct. Unfortunately it's a passworded site so I can't provide links. The Blog is a

  • How to update iPad to iOS 5

    I have the original iPad and can't figure out how to update IOS 5 or any others.