天天看點

SAP CRM服務請求subject value determination

SAP CRM Service Request subject value determination

When a new Service Request is created, the multi-level drop down list for Service Request subject is available.

Where do the value for those drop down list come from?

Here below is what I found via debugging:

get allowed category type from table CRMC_PROC_CATTYP based on transaction type:

Two entries found:

These two entries are inserted here:

Then check for the given combination of Transaction type plus Catalog category, whether there is existing schema defined.

The check is done by API CL_CRM_ML_CATEGORY_UTIL=>GET_ASPECT.

I wrote a small report to check whether a schema is available for corresponding category:

REPORT zdetermine_schema.

PARAMETERS: guid TYPE crmt_object_guid OBLIGATORY DEFAULT '6C0B84B75FAB1ED7BC85AA545271F98C',
            cat  TYPE crmt_catalogtype OBLIGATORY DEFAULT 'C'.

DATA: lv_guid TYPE crmt_object_guid.

lv_guid = guid.

DATA: lr_aspect TYPE REF TO if_crm_erms_catego_aspect,
      ls_detail TYPE crmt_erms_cat_as_buf.

CALL METHOD cl_crm_ml_category_util=>get_aspect
  EXPORTING
    iv_ref_guid     = lv_guid
    iv_ref_kind     = 'A'
    iv_profile_type = 'A'
    iv_catalog_type = cat
  IMPORTING
    er_aspect       = lr_aspect.
IF lr_aspect IS BOUND.
  lr_aspect->get_details( IMPORTING ev_asp = ls_detail ).
  WRITE:/ 'ASP id:', ls_detail-asp-asp_id.
ELSE.
  WRITE:/ 'No detail data found'.
ENDIF.           

In my example, no schema exists for category C:

But a schema exists for type D:

the ASP ID YBP_SERVICE comes from here:

本文來自雲栖社群合作夥伴“汪子熙”,了解相關資訊可以關注微信公衆号"汪子熙"。

繼續閱讀