HI Ravi,
Try to use below logic in Event handler of hyperlink.
data: lv_descriptor_object TYPE REF TO if_bol_bo_property_access,
lr_navigation TYPE REF TO if_crm_ui_navigation_service,
lr_data_collection TYPE REF TO if_bol_bo_col,
lr_navigation = cl_crm_ui_navigation_service=>get_instance( ).
CALL METHOD cl_crm_ui_descriptor_obj_srv=>create_ui_object_based
EXPORTING
iv_ui_object_type = 'IB150_IBASE'
iv_ui_object_action = 'B'
RECEIVING
rr_result = lv_descriptor_object.
IF lv_descriptor_object IS BOUND.
CREATE OBJECT lr_data_collection TYPE cl_crm_bol_bo_col.
lr_query = cl_crm_bol_query_service=>get_instance(
iv_query_name = 'IBIBaseToIBase' ).
REFRESH it_parms.
wa_parms-name = 'IBASE'.
wa_parms-VALUE = lv_ibase.(Your ibase iD)
APPEND wa_parms TO it_parms.
*Add the selection parameters
CALL METHOD lr_query->set_query_parameters
EXPORTING
it_parameters = it_parms.
*Get the result list
lr_result = lr_query->get_query_result( ).
*Get the first object(entity) in the result list
lr_entity ?= lr_result->get_first( ).
CHECK lr_entity IS BOUND.
lr_data_collection->add( lr_entity ).
lr_data_collection->insert( iv_bo = lv_descriptor_object
iv_index = 1 ).
IF lr_navigation->is_dynamic_nav_supported( ir_descriptor_object = lv_descriptor_object ) = abap_true.
lr_navigation->navigate_dynamically( lr_data_collection ).
ENDIF.