Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Selection screen 1000 as subscreen?

Former Member
0 Likes
3,556

Hi guys,

I have created a report with screen 1000 as start screen and selection screen (this is automatic). I would like to have the selection screen and the result list on one transaction. To achieve this I have created a subscreen and a container for the result. I dont know how to change screen 1000 to a subscreen. When i create another screen as subscreen and add to my selection fields the name of the new screen as a subscreen everything get confused. How do I get only my main screen and the contain of screen 1000 as a subscreen. Can I deactivate screen 1000?

Thanks

Hi guys,

I have created a report with screen 1000 as start screen and selection screen (this is automatic). I would like to have the selection screen and the result list on one transaction. To achieve this I have created a subscreen and a container for the result. I dont know how to change screen 1000 to a subscreen. When i create another screen as subscreen and add to my selection fields the name of the new screen as a subscreen everything get confused. How do I get only my main screen and the contain of screen 1000 as a subscreen. Can I deactivate screen 1000?

Thanks

9 REPLIES 9
Read only

oliver_wurm
Active Participant
0 Likes
2,078

Hi Maria,

that works. You Need to do the following:

1. Do not define a "normal" selection Screen in your ABAP as this just eliminates the Standard selection Screen.

2. Define your Selection Screen with:

SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN.

Just as example:  SELECT-OPTIONS: s_aufnr FOR caufv-aufnr.

SELECTION-SCREEN END   OF SCREEN 100.

3. Create a normal Screen with 2 subscreen Areas (SUB1 and SUB2)

4. Create a normal Subscreen (e.g. 9001)

5. Add the following logic to the PBO area of the normal Screen created in 3.

  CALL SUBSCREEN SUB1 INCLUDING sy-cprog '0100'.

  CALL SUBSCREEN SUB2 INCLUDING sy-cprog '9001'.

It Needs to be explored how the PBO and PAI Events get triggered. But the Screen should as a starting Point look like you have described it.

Regards

Oliver

Read only

0 Likes
2,078

Hi,

I have managed to have a subscreen and and container for the result on one screen. On the first screen I see them both but when I fill some fill and execute, I dont see what I need. I wanted to still see my selection subscreen and the result in the container. The result are not in a container. To display I use following lo_alv_table->display( ). I am using ALV OM.

Thanks

Read only

0 Likes
2,078

Hi Maria, I don't know whether you succeeded or not. explained very well what you asked for. I guess you have a simple bug in your program, please share your code if you still need assistance.

Read only

Chintu6august
Contributor
0 Likes
2,078

Hi,

you can define your own selection screen in SE38 using following steps..

step 1

SELECTION-SCREEN BEGIN OF SCREEN  9001 AS SUBSCREEN.

put your selection screen parameters here.....

SELECTION-SCREEN END   OF SCREEN 9001.

step 2..

Create a normal screen 9003  with two subscreen areas and call that screen

IN PBO OF 9003

CALL SUBSCREEN <SUBAREA1> INCLUDING <SY-REPID> <SCREEN 9001>.

CALL SUBSCREEN <SUBAREA1> INCLUDING <SY-REPID> <SCREEN 9002>


IN PAI OF 9003

CALL SUBSCREEN <SUBAREA1>.

CALL SUBSCREEN <SUBAREA1>.



AND USING OOALV..


USE MODULE POOL PROGRAMMING TECHNIQUE..


CREATE ONE SCREEN.. AND ADD SELECTION SCREEN PARAMETER FIELDS ON IT..


THEN CREATE CUSTOM CONTAINER USING ELEMENT OF THE SCREEN..

WRITE LOGIC IN PAI WHICH EXECUTE IN PAI

AND AFTER PAI (GETTING DATA FOR RESULT) , PBO WILL TRIGGER THEN CREATE CUSTOMER CONTAINER OBJECT  AND GRID OBJECT  IN PBO AND USE SET_TABLE_FOR_FIRST_DISPLAY METHOD TO DISPLAY ALV .

OR

you can make use of docking container to achieve you requirement...

follow the code..

IN PBO

* Create a Docking container and dock the control at right side of screen
 
CHECK r_dock_container IS  INITIAL.
 
CREATE OBJECT r_dock_container
   
EXPORTING
   side                        = cl_gui_docking_container=>dock_at_right
      extension                   =
780
      caption                     =
'Materials'
   
EXCEPTIONS
      cntl_error                  =
1
      cntl_system_error           =
2
      create_error                =
3
      lifetime_error              =
4
      lifetime_dynpro_dynpro_link =
5
     
OTHERS                      = 6.


****To Create the Grid Instance
 
CREATE OBJECT r_grid
   
EXPORTING
      i_parent          = r_dock_container
   
EXCEPTIONS
      error_cntl_create =
1
      error_cntl_init   =
2
      error_cntl_link   =
3
      error_dp_create   =
4
     
OTHERS            = 5.

* Formatted Output Table is Sent to Control
 
CALL METHOD r_grid->set_table_for_first_display
   
CHANGING
      it_outtab                      =  t_mara
      it_fieldcatalog                =  t_fieldcat
*      it_sort                       =
*      it_filter                     =
   
EXCEPTIONS
      invalid_parameter_combination =
1
      program_error                 =
2
      too_many_lines                =
3
     
OTHERS                        = 4

thanks!!

Read only

0 Likes
2,078

Hi

I am using the following logic in my main screen:

PROCESS BEFORE OUTPUT.

MODULE XXXXXX.

MODULE XXXXX.

CALL SUBSCREEN ZZZZ INCLUDING sy-cprog 'xxxxx'.

MODULE YYYYYY.

*

PROCESS AFTER INPUT.

CALL SUBSCREEN ZZZZ.

MODULE DDDDDDD.

something is not working because I dont have my main screen as the last screen and I dont see my subscreen after the input anymore.

The result appears on a screen create by the system.

Where should I look?

Thanks

Read only

0 Likes
2,078

hi,

give the current screen number as the next screen number in screen attributes..

you have to create two subscreen areas.. one for input subscreen and one for output subscreen..

easiest way is use docking container..

ALV - Docking Container Releated | SCN

thanks!!

Read only

former_member197132
Participant
0 Likes
2,078

Hey Maria,

Do you want the output of your report inside a subscreen and also selection-screen inside a subscreen?

Read only

0 Likes
2,078

Hi guys,

I have managed to display the selection screen (as subscreen) and the output (in a docking container) in one screen. My issue now is that I have to refresh all my selections fields and may be the result table before doing another execution. What I want to achieve is to only edit fields and then execute.

Read only

0 Likes
2,078

Use Free Memory in Initilization Event.