2010 Jan 13 5:15 PM
I am pressing a custom button in the ALV output (custom program) and getting a short dump with the title 'Exception condition "PARENT_IS_SPLITTER" raised'. This error is raised in a standard constructor CL_GUI_CONTROL. Code snippet from the dump is attached below. This error we got after upgraded the system from 4.6C to ECC6.0. Any help on this is much appreciated. .
DATA temp type ref to cl_gui_container.
temp ?= parent.
if not temp is initial.
if temp->get_container_type( ) =
cl_gui_container=>CONTAINER_TYPE_SPLITTER
or
temp->get_container_type( ) =
cl_gui_container=>CONTAINER_TYPE_EASY_SPLITTER and
clsid ne 'SAPGUI.SplitterCtrl.1' and
clsid ne 'com.sap.platin.cet.GuiSplitterShell'.
* raise parent_is_splitter.
endif.
endif.
CALL METHOD ME->INIT_CONTROL
EXPORTING
CLSID = CLSID
SHELLSTYLE = temp_SHELLSTYLE
LIFETIME = LIFETIME
PARENT = TEMP
LICENSEKEY = LICENSEKEY
autoalign = autoalign
EXCEPTIONS
CNTL_ERROR = 1
CNTL_SYSTEM_ERROR = 2
CREATE_ERROR = 3
LIFETIME_ERROR = 4
OTHERS = 5.
CASE SY-SUBRC.
Custom Report Code:
CREATE OBJECT f2400_grid_success "cl_gui_alv_grid
EXPORTING
i_parent = f2400_g_split_container.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.Moderator message - Please use code tags around your code
Edited by: Rob Burbank on Jan 13, 2010 12:22 PM
I am pressing a custom button in the ALV output (custom program) and getting a short dump with the title 'Exception condition "PARENT_IS_SPLITTER" raised'. This error is raised in a standard constructor CL_GUI_CONTROL. Code snippet from the dump is attached below. This error we got after upgraded the system from 4.6C to ECC6.0. Any help on this is much appreciated. .
DATA temp type ref to cl_gui_container.
temp ?= parent.
if not temp is initial.
if temp->get_container_type( ) =
cl_gui_container=>CONTAINER_TYPE_SPLITTER
or
temp->get_container_type( ) =
cl_gui_container=>CONTAINER_TYPE_EASY_SPLITTER and
clsid ne 'SAPGUI.SplitterCtrl.1' and
clsid ne 'com.sap.platin.cet.GuiSplitterShell'.
* raise parent_is_splitter.
endif.
endif.
CALL METHOD ME->INIT_CONTROL
EXPORTING
CLSID = CLSID
SHELLSTYLE = temp_SHELLSTYLE
LIFETIME = LIFETIME
PARENT = TEMP
LICENSEKEY = LICENSEKEY
autoalign = autoalign
EXCEPTIONS
CNTL_ERROR = 1
CNTL_SYSTEM_ERROR = 2
CREATE_ERROR = 3
LIFETIME_ERROR = 4
OTHERS = 5.
CASE SY-SUBRC.
Custom Report Code:
CREATE OBJECT f2400_grid_success "cl_gui_alv_grid
EXPORTING
i_parent = f2400_g_split_container.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.Moderator message - Please use code tags around your code
Edited by: Rob Burbank on Jan 13, 2010 12:22 PM
2010 Jan 13 5:26 PM
2010 Jan 13 5:32 PM
Here is a quick example of object orders:
DATA: go_0210_spl TYPE REF TO cl_gui_splitter_container,
go_0210_con TYPE REF TO cl_gui_container,
go_0210_alv TYPE REF TO cl_gui_alv_grid.
IF go_0210_spl IS INITIAL.
" Create splitter to fill screen
CREATE OBJECT go_0210_spl
EXPORTING
parent = cl_gui_container=>default_screen
rows = 1
columns = 1
metric = '0001'.
" Set container as "cell" 1,1 of splitter
go_0210_con = go_0210_spl->get_container( row = 1 column = 1 ).
ENDIF.
" Create ALV in container
IF go_0210_alv IS INITIAL.
CREATE OBJECT go_0210_alv
EXPORTING
i_parent = go_0210_con.
ENDIF.
Regards,
Frisoni
2010 Jan 14 9:51 AM
f2400_g_split_container type is cl_gui_splitter_container
Edited by: Asokan Rajapandian on Jan 14, 2010 11:15 AM
2010 Jan 14 10:13 AM
Please find the custom report code mentioned below
CREATE OBJECT f2400_g_custom "cl_gui_custom_container
EXPORTING
container_name = 'Z24_SCR1300_CONTROL'
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
create_error = 3
lifetime_error = 4
lifetime_dynpro_dynpro_link = 5
others = 6.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
* Assign a splitter container to the custom container.
CREATE OBJECT f2400_g_split_container "cl_gui_splitter_container
EXPORTING
parent = f2400_g_custom "cl_gui_custom_container
rows = 2
columns = 1
EXCEPTIONS
cntl_error = 1
cntl_system_error = 2
others = 3
.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
* Assign grid containers to the splitter container.
*Short dump while executing below code
CREATE OBJECT f2400_grid_success "cl_gui_alv_grid
EXPORTING
i_parent = f2400_g_split_container "cl_gui_splitter_container.Regards,
| User | Count |
|---|---|
| 4 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |