Skip to Content

Application Enhancement Tool: Creating and Reusing Custom Fields with CRM 7.0 (Part 2 of 2)

In Application Enhancement Tool: Creating and Reusing Custom Fields with CRM 7.0 (Part 1 of 2) of this blog, we saw how easy it is to create, enable, and reuse custom fields in SAP CRM 7.0 using the Application Enhancement Tool. However, we did not reveal the true power of the field reusability concept. We talked about reusing fields across applications that share common enhancement places. You can also reuse fields across applications that support the so-called scenario mappings. In this case, a custom field is physically copied from the source application into the enhancement place of the target application. For the time being, SAP CRM 7.0 supports only two such scenarios: CRM Billing and CRM Rebates. To get a better overview of these scenarios you need to start transaction AXTREG.


If you explode the CRM Billing Application Group (Group Type is Scenario), you will see that it has multiple elements. Each element designates an enhanced business object part (hence an enhancement place). CRM Billing comprises of various business object parts. You can see that CRM Billing deals with Sales Orders, Service Orders, Service Contracts, Billing Documents, and Billing Due Lists to name a few.


An application group defines elements (enhanced object parts) and the mapping between them. As seen in the screenshot, all the IDs that are greater than 100 correspond to different enhanced object parts from Sales Order and are the source in this scenario. The target is an enhanced object from the Billing Due List – ID is equal to 10.


Based on the above mapping, it is possible to reuse a custom field from Sales Order in Billing Due List. If you look at the other mappings, you will see that it is also possible to reuse custom fields among other applications. For example, you can reuse a custom field between Billing Due List and Billing Documents.

Our Example

Let us assume that you want to collect information about the effectiveness of your communication channels. It would be great if you could easily add a field to Sales Orders that indicates how your customers got referred to you and consequently capture this information during the billing process. Such a field, let us call it Referral Type, must also exist in the Billing Due List and Billing Documents. Moreover, when a Referral Type value is entered in a Sales Order, it must also make it into the corresponding Billing Due List and Billing Documents.

As you are already familiar with the Application Enhancement Tool, you might correctly assume that you do not need to create three new custom fields, translate them, and in addition do some custom development.

Thanks to the scenario mapping functionality in the Application Enhancement Tool, you can create only one field in Sales Order and reuse it in Billing Due List and Billing Document. A dedicated mapping algorithm will ensure that the values of the custom fields from Sales Order are synchronized with the billing related documents when needed.

Creating and Configuring New Fields

I will not go into details on how to create and configure a custom field, as I did so in the first part of the blog. However, I would like to focus on some particular steps.

As shown already, you can open an existing Sales Order, switch to configuration mode, and select the area where you want to add your field. In our example, we will enhance the General Data area.

When adding a new field, the first step is to choose the enhancement object and part. The latter defines where the new field will be physically created. The object parts that are associated with the selected UI area (the configurable area that you chose when you started the UI Configuration Tool) have a context node value.

The context node information is quite useful when you search for your newly created field in the available field list of the UI Configuration Tool (we will discuss this step later).

Please note that the Context Node column is only available when you start the Application Enhancement Tool directly from the application (by clicking on a configurable area).

Define your field as shown in the screenshot below:

Feel free to experiment a bit and see how easy it is to define a custom dropdown list boxes. Translating into the different system languages is also quite intuitive.

After generating your new field, do not forget to enable it in the UI Configuration Tool (for more information, see the first part of the blog).

Field Reusability in Action

Now, let us open a Billing Due List document and start the Application Enhancement Tool for the Item List configurable area. This is the only area that we can enhance. Follow the steps for adding a reusable field as described in the first part of the blog. In the dialog box with the available reusable fields, you will find the Referral Type field that we created in Sales Order.

After successfully completing the generation steps, go back to the UI Configuration Tool and add the field to the displayed fields for the Item List area.

As the application is automatically restarted, you need to close the window and initiate a new session. Let us open a Sales Order that has a Billing Due List associated with it (for simplicity integrated with the CRM Billing engine). Select a Referral Type and save the Sales Order.

After the corresponding Billing Due List gets synchronized you can open and check the Referral Type value. It must be the same as the one you entered in the Sales Order.

You might also want to add the same reusable field in Billing Document. Once you do so, the Referral Type value that you specified in your Sales Order your will also appear in the Billing Documents. All this is possible without a single line of code.

What Is Next?

The Application Enhancement Tool offers other powerful but yet simple to use features. Try to assign an existing check table or search help from the DDIC and see how it will be automatically rendered on the UI. Feel free to make your fields available in the Search Criteria and Search Result blocks. You can also enhance the BI extractors and data sources by simply selecting a checkbox. Enabling your new field in the OLTP Reports is not complicated either. Go ahead and experiment with the tool and please do not forget to tell us what you think.

Stay tuned for my video that will focus on how easy it is to use the new ehnacement tool.

You must be Logged on to comment or reply to a post.
  • Is there are way to create a link between drop-down lists?  Example:

    Drop-Down List #1:

    What is the process for creating a subsequent drop-down list (in a different field) that has specific responses based on that user choosing “RED”? 

    Similarly, if the user chooses “YELLOW”, can we have a specific drop-down list for that value?

    • This scenario requires coding and cannot be supported via the tool.

      My take is – create 2 fields with custom DDLB. Then enhance the corresponding UI Component and UI View. Code your logic in the custom field’s getters/setters.