Hi man,
BOR is mandatory, you can know this by looking into implementation of GS_CM.
1. go to view GS_CM/DocList, double click view controller CL_GS_CM_DOCLIST_IMPL
2. go to method GET_DISPLAY_MODE, double click lr_coco->get_display_mode( ).
3. you can see the following code. It means if your BOR name does not follow the naming convention defined in the code, you can always see attachment view in display mode, which means all buttons are disabled.
lr_cmbo ?= me->typed_context->cmbusobj->collection_wrapper->get_current( ).
IF lr_cmbo IS BOUND.
lr_cmbo->get_properties( IMPORTING es_attributes = ls_cmbo_prop ).
ENDIF.
IF lr_cmbo IS NOT BOUND OR
ls_cmbo_prop-instid IS INITIAL OR
( ls_cmbo_prop-typeid <> crmkw_bot-bor_user AND
ls_cmbo_prop-typeid <> crmkw_bot-bor_mail AND
ls_cmbo_prop-typeid <> crmkw_bot-bor_mail_node AND
ls_cmbo_prop-typeid <> crmkw_bot-bor_template AND
ls_cmbo_prop-typeid(3) <> 'BUS' ).
* Incorrect business object key from application calling attachments
* set immediately internal display mode
rv_display = abap_true.
RETURN.
Best regards,
Jerry