2007 Apr 05 1:50 PM
is it possible to create a two containers in the same screen with alv display in them?
If so please send me the procedure and code.
If it is not possible please let me know how to display two different itabs in the same screen in two different blocks.
Thanks in advance,
2007 Apr 05 1:54 PM
is it possible to create a two containers in the same screen with alv display in them?
If so please send me the procedure and code.
If it is not possible please let me know how to display two different itabs in the same screen in two different blocks.
Thanks in advance,
2007 Apr 05 1:54 PM
Hi,
Yeah you can have two containers in the same screen with alv display in them.
To do that create 2 containers in the screen paiter.Give some names to them.
Create 2 grid objects and refer to them. Procedure is same as we do for one grid.
Thanks&Regards,
Siri.
2007 Apr 05 1:54 PM
2007 Apr 05 1:56 PM
hi, yeah it's possible
look example code:
DATA: "Containers for screen element
g_container TYPE REF TO cl_gui_docking_container.
* ALV Grids:
grid_req TYPE REF TO cl_gui_alv_grid,
grid_reqitem TYPE REF TO cl_gui_alv_grid,
grid_ord TYPE REF TO cl_gui_alv_grid,
grid_orditem TYPE REF TO cl_gui_alv_grid.
FORM create_screen_controls.
* Spliters
DATA l_vsplitter TYPE REF TO cl_gui_splitter_container.
DATA l_hsplitter_left TYPE REF TO cl_gui_splitter_container.
DATA l_hsplitter_right TYPE REF TO cl_gui_splitter_container.
* Right and left sides
DATA l_panel_left TYPE REF TO cl_gui_container.
DATA l_panel_right TYPE REF TO cl_gui_container.
* Subscreens
DATA l_container_1 TYPE REF TO cl_gui_container.
DATA l_container_2 TYPE REF TO cl_gui_container.
DATA l_container_3 TYPE REF TO cl_gui_container.
DATA l_container_4 TYPE REF TO cl_gui_container.
* Main container
CREATE OBJECT g_container
EXPORTING
repid = sy-repid
dynnr = '0100'
side = cl_gui_docking_container=>dock_at_left
extension = 2048
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5
OTHERS = 6.
PERFORM check_sys_mess.
*** Subcontainers
* Vertical Spliter
CREATE OBJECT l_vsplitter
EXPORTING
parent = g_container
rows = 1
columns = 2.
PERFORM check_sys_mess.
l_vsplitter->set_border( border = cl_gui_cfw=>false ).
* Two parts of vertical spliter
l_panel_left = l_vsplitter->get_container( row = 1 column = 1 ).
l_panel_right = l_vsplitter->get_container( row = 1 column = 2 ).
* Left Horisontal spliter
CREATE OBJECT l_hsplitter_left
EXPORTING
parent = l_panel_left
rows = 2
columns = 1.
PERFORM check_sys_mess.
* Right Horisontal spliter
CREATE OBJECT l_hsplitter_right
EXPORTING
parent = l_panel_right
rows = 2
columns = 1.
PERFORM check_sys_mess.
l_hsplitter_left->set_border( border = cl_gui_cfw=>false ).
l_hsplitter_right->set_border( border = cl_gui_cfw=>false ).
l_container_1 = l_hsplitter_left->get_container( row = 1 column = 1 ).
l_container_3 = l_hsplitter_left->get_container( row = 2 column = 1 ).
l_container_2 = l_hsplitter_right->get_container( row = 1 column = 1 ).
l_container_4 = l_hsplitter_right->get_container( row = 2 column = 1 ).
PERFORM check_sys_mess.
* IF sy-uname EQ 'PARSHENKOV'.
* l_hsplitter_left->set_visible( visible = space ).
* ENDIF.
*** Assign Alv Greeds to containers
* GRID of Source Headers
CREATE OBJECT grid_req
EXPORTING
i_parent = l_container_1.
PERFORM check_sys_mess.
* GRID of Target Headers
CREATE OBJECT grid_ord
EXPORTING
i_parent = l_container_2.
PERFORM check_sys_mess.
* GRID of Source Items
CREATE OBJECT grid_reqitem
EXPORTING
i_parent = l_container_3.
PERFORM check_sys_mess.
* GRID of Target Items
CREATE OBJECT grid_orditem
EXPORTING
i_parent = l_container_4.
PERFORM check_sys_mess.
ENDFORM. "create_screen_controls
2007 Apr 05 2:00 PM
Hi,
it is possible to create two containers in the same screen.
DATA:G_CONTAINER TYPE SCRFNAME VALUE 'TABC',
G_CONTAINER1 TYPE SCRFNAME VALUE 'TABC1',
GRID TYPE REF TO CL_GUI_ALV_GRID,
G_CUSTOM_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
GRID1 TYPE REF TO CL_GUI_ALV_GRID,
G_CUSTOM_CONTAINER1 TYPE REF TO CL_GUI_CUSTOM_CONTAINER.
perform grid_disp.
perform grid_disp1.
FORM GRID_DISP.
IF NOT G_CUSTOM_CONTAINER IS INITIAL.
PERFORM CLEAR_GRID.
ENDIF.
CREATE OBJECT G_CUSTOM_CONTAINER
EXPORTING CONTAINER_NAME = G_CONTAINER.
CREATE OBJECT GRID
EXPORTING I_PARENT = G_CUSTOM_CONTAINER.
PERFORM FIELD_CAT.
PERFORM FILL_DATA.
CALL METHOD GRID->SET_TABLE_FOR_FIRST_DISPLAY
CHANGING
IT_FIELDCATALOG = FCAT[]
IT_OUTTAB = table[].
ENDFORM.
FORM GRID_DISP1.
IF NOT G_CUSTOM_CONTAINER1 IS INITIAL.
PERFORM CLEAR_GRID1.
ENDIF.
CREATE OBJECT G_CUSTOM_CONTAINER1
EXPORTING CONTAINER_NAME = G_CONTAINER1.
CREATE OBJECT GRID1
EXPORTING I_PARENT = G_CUSTOM_CONTAINER1.
PERFORM FIELD_CAT1.
PERFORM FILL_DATA1.
CALL METHOD GRID1->SET_TABLE_FOR_FIRST_DISPLAY
CHANGING
IT_FIELDCATALOG = FCAT1[]
IT_OUTTAB = table1[].
ENDFORM.
regards,
bharat.
| User | Count |
|---|---|
| 3 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |