How to specify partners functions display in ChaRM and ITSM 7.1 SP5 onwards
A very good new functionality in my opinion released with SPS05 of SolMan 7.1 is the possibility to configure in IMG the Partner functions to be displayed in the Details assignment block of the web client UI, per transaction type. My example is related to ChaRM, but the functionality is valid for ITSM as well.
In one of my ChaRM projects last year I used Solution Manager 7.1 with SPS 04 and then upgraded this year to SPS 07, some months after golive. In SP4 I had to create different transaction types based o the standard and for each of them I had to create a different version of the web client UI. I also had to define new partner functions besides the existing ones. The hard work began when I started to define these new web client screens and its new partner functions. When you create a new partner function in IMG activity Partner Functions (view COMV_PARTNER_FCT) , you select the function category and the relationship category, as in the figure below.
But then, to make the partner function available in the web client UI before SP05, I had to find out which field of the object BPARTNERSET could be used that corresponded to the partner function category selected. Each BPARTNERSET field has a corresponding generic interaction layer, and for some partner functions the value for the Request for Change is different for the value defined for Change Documents. It can be seen looking into the classes that implement RfC and Change Documents.
From SP5 on, instead of trying to find out which BOL Object Relation Name was assigned to each field in the web client screen looking deeply into the ChaRM Web Client classes, this new IMG activity allows you to see how the assignment is done and change it the way you want. It’s also possible to select which type of Search Help you need for that field, if you want to select partners of type Person or Org Unit and if they must be searched in Business Partner function Employee, Sold-to-Party or Contact Person. This IMG activity saves data in table AIC_PARTNER_FCT, Business Partner User Interface Control.
For each transaction type, up to 10 partner functions can be configured.
So, to specify the partner functions display in your transactions, execute the IMG activity “IT Service Management->Partner Determination Procedure->Specify Partner Function Display in Transactions”.
Step 1: Specify Partner Function Display
You will see the screen below:
The only thing I did not really like is the fact that possible values of field Role Type (PARTNER_FCT_TYPE) are fixed in domain AIC_CRM_PARTNER_FCT_TYPE_D, Semantical Definition of CRM Business Partner Function. I don’t like fixed values, makes me think that I cannot adapt to the customers needs, and that happens very, very often, even if SAP recommends not to do many things out of standard since the standard was configured based on “most of the customers requests and on ITIL Best practices”. Each customer has its own needs. Who implemented ChaRM in many different customers in the last 8 years knows that. I didn’t go deep into this subject to understand why this field needs to have a fixed list of values, and cannot be customized, but there must be a reason for that.
If you created the Z transaction types in SP05 or later versions, when you copied the standard transaction types this table was also copied, so you just need to adjust your Z entries and include new partner functions. But in case your transaction types are not included in this table yet, create new entries and use the standard entries as a template. In my case they didn’t exist because the Z transaction types were created in SP4 before the upgrade, so I had to create all the entries for all my Z transaction types in order to start using this good functionality and keep the customer updated.
For each transaction type you will define the partner functions you want to display in Details assignment block of the web client UI, an order, the role type, the Object Relation name, which is related to the role type, and the Search help you want for that partner function field. You can decide if you will search for employee business partners, sold-to-party business partner or Org Unit business partners. This Search Help option was also a very interesting functionality added with this IMG activitiy. Now we can select which kind of search we want.
Step 2: Select the right fields for your WEB UI view
The order you define for each partner function will correspond to the name of the field that you will select in the WEB client UI. Together with this IMG activity was also released a group of new Partner Function fields, as you can see in the UI component for Change Documents below (transaction BSP_WD_CMPWB or IMG Activity “CRM->UI Framework->Access UI Component Workbench”):
You probably have a custom WEB UI view for your Z transaction type, copied from the standard. In the example below I have one UI configuration for each Z, because they must be all different from each other. I also have one for Request for Change ZMCR.
Select the configuration you want to change and look for the partner fields according to the configuration you have done in the IMG activity of Step 1.
Click “Show Available fields” to open the list of fields you can use. Look for the fields below BTPARTNERSET. Click “Show Technical Details” to make your life easier. Instead of having to look for available fields such as EMP_RESP_NAME, SERVICE_UNIT_NAME etc as before, you will look for /AICRM/HEADER_FCT_nn.
Add the partner fields to your UI according to your configuration. If necessary, change the labels to have the correct description of your partner functions.
Behind the scenes:
During runtime, some methods check the new tables in order to correctly fill the UI partner function fields. One of the main classes is CL_AI_CRM_BP_HELPER.
We can see new attributes created in this class for the new partner function fields:
When you open a document, method READ_UI_FIELDS reads the table AIC_PARTNER_FCT to get the partner functions that must be displayed and their corresponding order for the transaction type. With that information, the business partners are moved to the correct UI fields depending on their partner function.