Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
Showing results for 
Search instead for 
Did you mean: 
SAP Solution Manager 7.2. SP05 introduced a new "Related Documents" section in the Process Management application. This new section displays the type and number of "loosely coupled" documents assigned to the current element. These documents could be Incidents, or Requests for Change, or similar.

SAP delivers several pre-configured document types, some active and some inactive. By default Incidents and Requests for Change are active. You can activate the other document types, such as Issues or Functional Gaps, by activating BAdI (Business Add-In) implementations - there is an activity in SAP Solution Manager Setup for doing this.

We also realize that you might want to add additional documents types to the Related Documents section. We have had several requests to display Change Documents here as well. To do so only takes a few steps, which I will describe below.

The related documents section:

Summary of What You Will Have to Do

You will need to do the following:

  1. Copy the class used in the BAdI implementation

  2. Make a small adjustment to the code in the class constructor.

  3. Activate the code.

  4. Copy the corresponding BAdI implementation.

  5. Adjust the BAdI implementation.

  6. Adjust the BAdI's filter.

  7. Activate the BAdI implementation.

I've described each step in detail in the following sections, using the example of Change Documents. To make things easy, we will copy the BAdI implementation for Requests for Changes and adapt it for Change Documents.

Copy the Class for the BAdI Implementation

  1. Call transaction SE24 (Class Builder).

  2. Enter "CL_AGS_CRM_API_SMUD_LCO_RFC" as the object type.

  3. Select Copy Class/Interface

  4. Enter ZZCL_AGS_CRM_API_SMUD_LCO_CD or another suitable name for the copied class.

  5. Enter package information (or select local if you do not want to transport the new class).

How to copy class CL_AGS_CRM_API_SMUD_LCO_RFC in transaction SE24:

Adjust the Class Constructor

  1. While still in SE24, select Change for the copied class.

  2. Double-click method CONSTRUCTOR in order to edit the code.

  3. Change both instances of 'cl_ags_crm_smud_util=>cs_sbom_type-cr' to 'cl_ags_crm_smud_util=>cs_sbom_type-dos'.

  4. Change 'Requests for Change'(rfc) to 'Change Documents'(cds). (For bonus points, finish creating this as a translatable text and provide translations.)

  5. Change 'AIC_OB_CMCR' to 'AIC_OB_CMCD'

  6. Save

This is whatthe adjusted code should look like:

Here are brief descriptions of the attributes which you changed:

  • SBOM type: the technical ID of the document type which the system stores in database table SMUD_SBOM_H. Take a look at the table in your system for examples. Change Documents use the ID "DOS", as I provided in the example, as well as "CD".

  • Loosely coupled type: generally the same as the SBOM type, however there are some special cases where these types differ. For example, Functional Gaps (which are really a type of Incident) have SBOM ID = "INC" but loosely coupled type "ICCGAP". The system uses the loosely coupled type to separate Functional Gaps from Incidents, although both are saved in table SMUD_SBOM_H with type "INC". You can freely define the loosely coupled type, as long as it does not conflict with a type defined for another active BAdI implementation.

  • SBOM text: this is the text which the system displays in the Related Documents section for the document type.

  • CRM UI object type: if the document is a CRM process type, the system uses this attribute to construct the URL for navigation to the document. You can find the CRM UI object type by navigating to a document in the CRM UI, selecting a field, and pressing the F2 key.

Activate the Code

  1. While still in the constructor method, select the Activate icon.

  2. Select all objects in the following dialog box.

  3. Activate.

Make sure you select ALL objects when you activate:

Copy the BAdI Implementation

  1. Call transaction SE19 (BAdI Builder).

  2. Enter AGS_CRM_API_LCO_RFC in the field "New BAdI Enhancement Implementation".

  3. Select Copy implementation

  4. Enter a new name for the copied BAdI implementation, for example 'ZZ_AGS_CRM_API_LCO_CD'.

  5. Enter package information (or select local if you do not want to transport the new class).

How to copy the BAdI implementation:

Adjust the BAdI Implementation

Note: after you copy the BAdI implementation, the system does not automatically enter the name of the copied BAdI implementation. Do not forget this!

  1. Enter the name of the newly copied BAdI implementation in the Enhancement Implementation field.

  2. Select Change.

  3. Delete the existing BAdI implementations

  4. Select 'Create BAdI Implementation'.

  5. Enter the following information in the dialog box (see screenshot below):


    2. BAdI Implementation: ZZ_AGS_CRM_API_LCO_CD (or your own suitable name).

    3. Implementing class: the name of the class you copied above, for example ZZCL_AGS_CRM_API_SMUD_LCO_CD.

    4. A descriptive short text. (The system will not display this text in your users' UIs.)

  6. Select continue to create the new implementation.

Add a Filter for the BAdI

  1. Navigate to the Filter section of the implementation

  2. Create a new filter combination (see first screenshot below):

    1. Enter 'DOS' as Value 1.

    2. Select Continue.

  3. Add a new OR combination.

    1. Enter '*' as Value 1

    2. Select Continue.

Creating the first filter combination:

This is how the final filter should look like:


Activate the BAdI Implementation

Select the Activate icon. You should be finished now.

The final enhancement implementation should look like this:

The Result

If you have managed to follow my instructions, the system will now add a "Change Documents" label to the Related Documents section:

Update: How to Display CRM Knowledge Articles

Update June 3, 2019: we have received several inquiries about CRM Knowledge Articles. Although this was not a planned use case, you can still use the instructions above to display and assign Knowledge Articles to the Related Documents section.

Since this was not a planned use case of this function, you should be aware of the following before getting started:

  • This is consulting information. SAP can only provide limited support if you require assistance.

  • We don't cover adding a Solution Documentation assignment block to the CRM Knowledge Articles UI. This would be another, perhaps difficult, project.

    • You can still assign Knowledge Articles to the Related Documents section, but you have to do that using the simple application you launch when you select the corresponding "assigned" link next to the document type in the Related Documents assignment block.

To display CRM Knowledge Articles, follow the same instructions for displaying Change Documents with the following exceptions:

  • Add the following code to the CONSTRUCTOR method

    mo_sbom_type 'KNAR'.
    mo_sbom_lco_type 'KNAR'.
    mo_sbom_text 'Knowledge Articles'(knr).
    mo_crm_ui_object_type 'BT106_KA'.

  • Use 'KNAR' instead of 'DOS' in the BAdI filter.


  • Make an entry in Transaction DNO_CUST04:

Field Value = KNAR (or ZNAR, or similar if you use a different transaction type)

  • Make an entry in view BSPDLCVC_OBJ_TYP:

Object Type: BT106_KA

Description: Knowledge Articles
GenIL Component Name: BT
BOL Object Name: BTOrder
BOR Object Type: BUS2000106
Extensible BO: (leave blank)