Skip to end of metadata
Go to start of metadata

Below you can find some Coding parts which are relevant when using the functionality of "Aggregated Datas".
Information concerning this functionality can you also find in: Enable Aggregation of Datas (Aggregated Data)

 

Check, if the switch 0006/0030 is activated:

CL_DPR_UI_LOG_PROJECTS_VIEW
GET_BUTTON_TABLE
     CALL FUNCTION 'RPM_GET_SETTINGS_VALUE'
     EXPORTING
        iv_area          = cl_rpm_co=>sc_ui_settings_area
        iv_name          = '0030' "Activate Aggregation of Data
     TABLES
       et_settingsvalue = lt_cc3_switch.

 

CL_DPR_UI_LOG_DETAIL
CONSTRUCTOR
   CALL FUNCTION 'RPM_GET_SETTINGS_VALUE'
    EXPORTING
      iv_area          = cl_rpm_co=>sc_ui_settings_area  "0011 Master Switches
      iv_name          = '0030' "Activate Aggregation of Data
    TABLES
      et_settingsvalue = lt_settings.

         

Getting evaluation layout

CL_DPR_API_EVALUATION_SERVICES
GET_EVE_LAYOUT

 

Getting attributes for evaluation layout

CL_DPR_API_EVALUATION_SERVICES
GET_EVE_LAYOUT_ATTR

 

Open object and navigate to tab "Dates and Work" to display "Aggregated Datas":

CL_DPR_API_ENTITY
RETRIEVE_BY_ASSOCIATION
   WHEN 'AggregationOfData'. "cl_dpr_api_co=>sc_association_aggr_data
            CALL METHOD get_aggr_data

              

CL_DPR_API_ENTITY
GET_AGGR_DATA

 

CL_DPR_API_EVALUATION_SERVICES
SET_EVALUATION
* Check authorization for evaluation

 

Retrieve the values of Aggregation

CL_DPR_API_EVALUATION_SERVICES
GET_EVALUATION
* Get all data
  LOOP AT lt_objects ASSIGNING <ls_object>.
    CALL METHOD <ls_object>-object->move_corresponding       
      CHANGING
        ca_data = <ls_data>.
    INSERT <ls_data> INTO TABLE <ls_data_table>.
  ENDLOOP.

 

CL_EVE_OBJECT_VIEW
UPDATE_VIEW_DATA
* Fill from normal data element
          CALL METHOD mr_object_data->get_attribute_value          

 

Pushing button "Aggregate Datas" on Projectheader

CL_DPR_API_ENTITY
DO_ACTION
*/  aggregate data
            call method do_action_aggregate_data            

 

BAdI: DPR_EVE_ATTRIBUTES

with method GET_ATTRIBUTES and COMPUTE_ATTRIBUTE are called at:

CL_DPR_EVE_OBJECT
IF_EVE_ITERATOR_OBJECT~GET_ATTRIBUTES
 Read additional attributes / change attributes by BADI
      IF sr_badi_attributes IS BOUND.
        CALL BADI sr_badi_attributes->get_attributes
        

 

CL_IM_DPR_EVE_ATTR_COMPUTE
IF_EVE_ATTR_COMPUTE~COMPUTE_ATTRIBUTE
IF lr_badi_attr IS BOUND.
*/  Execute customer computation
    CALL BADI lr_badi_attr->compute_attributes
       


Back

 

  • No labels