CRM 40 to 52: CUSTOMER_H Fields
Introduction
After upgrading our sandbox from CRM 40 to CRM 52 we wanted to display some custom fields created in CRM 40 in the CRM 52 web client. The area which we needed to do this was for some Business Transaction CUSTOMER_H fields that were generated by the EEWB. In order to do this we found the SAP Note 1037548, which explained this procedure. We also read note 1122248 to understand how to deal with the setup of enhancements. We will assume you have looked at the available documentation for CRM web client enhancements.
What’s Not Covered Here
- Configuring your system for component enhancements
- Creating a custom business role
- Create a custom config key
Part 1: Determine what and where to enhance
Identify the screen that needs to the new fields
For this example we are going to use the create appointment details screen.
Determine Technical Location of Screen
To do this we hit F2 in one of the fields on the screen. This gives us the key details of what we need to enhance. The dialog box below shows we need to enhance the component BT126H_APPT, view AppEditDetailsEF.
Part 2: Make fields available
Prepare component for enhancement
We now need to enhance the component to add in our CUSTOMER_H fields. We open the component up in transaction BSP_WD_CMPWB.
Once opened we choose enhance component. We will store our new component in the BSP application ZBT126H_APPT.
Prepare view for enhancement
Now the component is ready for enhancement, we need to prepare the view. We will right click on the view AppEditDetailsEF, and choose Enhance. This now allows us to enhance the context of the view so we can display our new fields.
Create new context code
In the structure of the view we will enhance the context. The context does not contain a node for BTCUSTOMERH, which is where our EEWB CUSTOMER_H fields live. We therefore need to create a new context node for BTCUSTOMERH
Once we hit create the wizard appears. We will now create the context node through this tool. We will need to enter BTCUSTOMERH as the node name. The node is a model node that corresponds to the BOL Entity BTCustomerH. The standard BOL model has a node for CUSTOMER_H that is named BTCustomerH.
We add the model attributes from CUSTOMER_H that we wish to display on the screen. This will also generate methods in the new context node, if we want to override the default display/retrieval properties for that attribute.
We can just hit continue for the steps: ADD Value Attributes and Create Links to Custom Controller for now. We Now need to created the link between CUSTOMER_H and the Business Transaction Administration Header Segment.
The higher level node we choose will be BTADMINH. The relationship will be BTHeaderCustExt. We will want to choose always create instance. If we don’t choose this option, then the CUSTOMER_H will not save/display properly.
Now the wizard is finished we review the configuration and hit complete.
After generation we will see a brand new context node in the application.
Part 3: Add fields to screen
Now that the fields are available to the view we need to add them to our screen.
Copy existing Configuration
The recommended practice is to copy the standard delivered configuration to a Z-configuration. This is achieved by hitting the copy configuration button on the configuration tab.
We use our role config key that will be assigned to our custom business role.
Now the field will be available in the list of available fields and we add it through the normal UI tool configuration process
Add new field to screen
You can see below the field has been added to the configuration. We make sure we save the configuration and now we are ready to see the new field.
End Result
We login under a user that has our custom business role assigned to our role configuration key. The new field appears in the screen below.
Conclusion
The migration of our EEWB CUSTOMER_H to the new webclient UI was very easy. This should provide some relief for those of us migrating from CRM 40.

















I am still on CRM 5.0 IC Web,but after reading your blog I feel like I am already there on CRM 5.2 UI development.
As you said in your previous blog it ispretty much based on CRM 5.0
Thanks,
Thirumala.
thank you for sharing. That made it quite easy to get our Opportunity Enhancements from 4.0 and 5.0 back visible in CRM 7.0.
Best regards
Gregor
Thanks for your blog!
I tried to read the SAP notes you mentioned but SAP note 1037548 doesn't seem to exist in the Support Portal. Can you check the number of the note?
Thank you for your help,
Kathy
What could cause this?
Thanx
If it is a dependent node, then you need to make sure it is always "initialized" to the parent when you added to the relationship block.
Take care,
Stephen
The problem is solved. The trick was that when choosing "available fields", e.g. Birthplace, there were several, but among them, there was only one field that actually displayed the values.
Thanks a lot
Tu
Great Blog. I tried the method in this weblog for CUSTOMER_I with no success.
I enhanced view BT115QIT_SLSQ/Items -> add BTCustomerI into the context node and was hoping the custom fields to be avaialble for the configuration however it's not showing there 🙁
Do you know any idea on how to add customer fields into Item tables?
Thanks,
Chris.
You could extend the context node and create virtual attributes that have "get/set" methods that retrieve the data. Look at the REQDELDATE attribute to see an example.
When I try to enhance a view, I get the message 'Page, controller, or MIME Search.htm already exists in application BT111S_OPPT'. How can I remedy this situation?
Thanks and regards,
Sowmiya
Another guess is did you display the view with the enhancement set entered?
Take care,
Stephen
I did choose the Z enhancement set. Is this what you mean? Also, I displayed the view with the enhancement set chosen. It still doesn't work.
Regards,
Sowmiya
Thanks!
http://wiki.sdn.sap.com/wiki/display/CRM/CRM+Web+Client+UI+Framework
This got buried in my inbox. Happy new year everyone!
Take care,
Stephen
I have one query though. We have done technical upgrade from CRM 4.0 to CRM 7.0 and none of the transactions which we had created in CRM 4.0 can be searched or displayed in WebClient UI after upgrade. Only the transaction which have been created after upgrade can be searched and displayed in the UI.
Any idea what can we do to rectify this issue.
Regards
Avineesh
http://wiki.sdn.sap.com/wiki/display/CRM/Activity+Transaction+Display+in+New+UI
For all other transactions, please verify you have the channel assigned to the transaction type in customizing. Please review this thread for hints:
http://forums.sdn.sap.com/thread.jspa?messageID=7129403#7129403
Take care,
Stephen
Very nice blog!
Helped me.
I had a problem, we do added some fields to CUSTOMER_H tables from "create field" button in configuration mode.
This was done in our DEV system, after we imported to Prod don't know why but our view context didn't have a BTCUSTOMERH this is strange... so only this Blog helped.
Anyone know why this can happen?
Regards Dan
Hi I have been doing the procedure you described and given me wrong, I extend View: IUICMD / SearchAccount, and place fields of Table DFKKBPTAXNUM
TAXTYPE -> BPTAXTYPE (Data Elem.) -> Type tax identification number
TAXNUM -> BPTAXNUM (Data Elem.) -> NIF for business partner
and I really am a bit lost in this component and broaden views, not if I have to play some BOL and GENIL,
Also I have to perform searches of these fields, and is not exactly implementing the methods,
I appreciate any help you can give me,
Best Regards,