method DO_PREPARE_OUTPUT.
data: lt_children TYPE tbsp_wd_rep_viewarea_assigns,
lo_child_rep_view TYPE REF TO cl_bsp_wd_rep_view,
lv_old_viewname TYPE string,
lv_new_view_name TYPE string,
lv_old_view_name TYPE string,
lv_window_ctrl TYPE REF TO CL_BSP_WD_WINDOW,
lo_component TYPE REF TO CL_ZVIEWSET_BSPWDCOMPONEN_IMPL,
ls_child TYPE bsp_wd_rep_viewarea_assignment.
CONSTANTS: c_detail2 TYPE string VALUE 'detail2'.
CALL METHOD SUPER->DO_PREPARE_OUTPUT
EXPORTING
IV_FIRST_TIME = iv_first_time.
lo_component ?= me->comp_controller.
IF lo_component->gv_view_name = 'VIEW2A'.
lv_new_view_name = 'ZVIEWSET/detailwindow2'.
ELSE.
lv_new_view_name = 'ZVIEWSET/detailwindow2plus'.
ENDIF.
lt_children = me->rep_view->get_default_children( ).
READ TABLE lt_children INTO ls_child WITH KEY viewarea = c_detail2. "#EC SYNTCHAR
CHECK sy-subrc = 0.
lo_child_rep_view = ls_child-repview.
lv_old_view_name = get_viewarea_content( c_detail2 ).
CHECK lv_old_view_name <> lv_new_view_name.
lo_child_rep_view = lo_child_rep_view->get_replacement( lv_new_view_name ).
bind_view( rep_view = lo_child_rep_view
viewarea = c_detail2 ).
"lv_window_ctrl ?= get_subcontroller_by_viewname( lv_new_view_name ).
endmethod.