Hi,
I've noticed that in UI component BP_CONT, view ContactQuickCreateEF, value node BUILHEADER, there are some STRUCT attributes and some non-STRUCT attributes.
In the context node class (CL_BP_CONT_CONTACTNEWDETA_CN00), the BASE_ENTITY_NAME attribute is set to 'BuilHeader' so understood that the STRUCT attributes are coming from data dictionary structure CRMST_HEADER_OBJECT_BUIL. The code in IF_BSP_MODEL~INIT also confirms the same.
However, I can't understand how the non-STRUCT attributes are created in this value node, normally the INIT method will contain a local type definition with the full list of value attributes that are defined.
Does anyone know how the non-STRUCT attributes are created/generated?
Thanks.
METHOD if_bsp_model~init. DATA: lv_struct_ref TYPE REF TO crmst_header_object_buil, lv_value_node TYPE REF TO cl_bsp_wd_value_node, lv_bp_category TYPE bu_type, lv_bo_coll TYPE REF TO if_bol_bo_col. super->if_bsp_model~init( id = id owner = owner ). CREATE DATA lv_struct_ref. CREATE OBJECT lv_value_node EXPORTING iv_data_ref = lv_struct_ref. CREATE OBJECT lv_bo_coll TYPE cl_crm_bol_bo_col. * set BP category for contacts lv_bp_category = '1'. lv_value_node->if_bol_bo_property_access~set_property( iv_attr_name = 'BP_CATEGORY'"#EC NOTEXT iv_value = lv_bp_category ). lv_bo_coll->add( lv_value_node ). lv_bo_coll->find( iv_index = 1 ). set_collection( lv_bo_coll ). ENDMETHOD.