Header Ads

Sample code for DO_CONFIG_DETERMINATION method

This example is to set the visibility of a screen field based on another field ...

METHOD do_config_determination.
  DATA: lr_btadminh TYPE REF TO if_bol_bo_property_access,
        lr_entity TYPE REF TO cl_crm_bol_entity,
        lv_process_type TYPE string,
        lv_rejection TYPE string.
  TRY .
      lr_btadminh ?= me->typed_context->btadminh->collection_wrapper->get_current).
      lr_entity ?= lr_btadminh.
      TRY.
          lv_process_type lr_entity->get_property_as_stringiv_attr_name 'Attribute name ).
          lv_rejection lr_entity->get_property_as_stringiv_attr_name 'Attribute name).
        CATCH cx_crm_cic_parameter_error.
      ENDTRY.
    CATCH cx_sy_ref_is_initial cx_sy_move_cast_error
                cx_crm_genil_model_error.
  ENDTRY.



*  IF lv_rejection IS NOT INITIAL AND gv_get_rsnddlb = abap_true.
  IF gv_get_rsnddlb abap_true.
* Get the layout to show Rejection Reason DDLB
    me->configuration_descr->set_role_keyiv_role_key '<DEFAULT>' ).
    CALL METHOD me->set_config_keys
      EXPORTING
        iv_object_type          ' Your obj type'
        iv_object_sub_type      'Your obj subtype'
        iv_propagate_2_children 'X'.
  else.
* Status is not 'Rejected & Mailed back, so
*    Get the normal layout without DDLB
    me->configuration_descr->set_role_keyiv_role_key ' Role key).
    CALL METHOD me->set_config_keys
      EXPORTING
        iv_object_type          '<DEFAULT>'
        iv_object_sub_type      '<DEFAULT>'
        iv_propagate_2_children 'X'.
  ENDIF.

ENDMETHOD.
Powered by Blogger.