Code to edit the View B
TRY.
lr_controller ?= me->comp_controller.
lr_entity ?= lr_controller->typed_context->builheader->collection_wrapper->get_current( ).
IF lr_entity->lock( ) EQ abap_true.
activity = '2'. " edit
me->view_group_context->set_view_editable( me ).
ELSE.
activity = '3'. " display
ENDIF.
CATCH cx_sy_move_cast_error.
activity = '1'. " create
CATCH cx_sy_ref_is_initial.
ENDTRY.