CRM and CX Blogs by SAP
Stay up-to-date on the latest developments and product news about intelligent customer experience and CRM technologies through blog posts from SAP experts.
cancel
Showing results for 
Search instead for 
Did you mean: 
1,862
Any coding or configuration examples provided in this document are only examples and are NOT intended for use in a productive system. The example is only done to better explain and visualize the topic.

The objective of this blog is to explain how can we extend Utilities Service Order facet in Premise TI. The blog will explain how to add more details to Service Order list as well as ISU transaction Link (You can configure FOP - Front Office Process Link as well like this) which can open the current Service Order in the Edit mode in ISU.

Below is the detailed scope of this Blog: –



  • Mapping Standard fields of Service Order List

  • Service Order List

    • Add extension field

    • Populating the extension field

    • Add ISU transaction Link




Below will be our targeted Service Order UI with the Link for Edit Service Order and additional fields added & populated.


Implementation Details: –



  1. Create a solution in PDI.

  2. Create Extension BO for adding extension fields.

  3. Extending Service Order UIs

  4. Implement Service Order Enhancement Implementation.


1. Create a solution in PDI




Provide required information for the creation of Solution.


2. Create Extension BO for adding extension fields


Add a new item “Business Object Extension”

 Select the Utility specific business object for extension.

Namespace :- http://sap.com/xi/AP/CRM/Global

Business Object :- UtilitiesExtensibility



For Extending Service Order, below will be the node which you need to extend.

  • Service Orders - ServiceOrders


import AP.Common.GDT;
import AP.CRM.Global;

[Extension] businessobject AP.CRM.Global:UtilitiesExtensibility {

node ServiceOrders {
[Label("Escalated")] element Is_Escalated : Indicator;
[Label ("Edit Service Order")] element Custom_Link:WebURI;
}
}

In the above example we have included Service order Edit ISU Link and flag to indicate whether Service Order is escalated or not.

3. Extending Service Order UIs


To extend the UI’s for the above enhancement, select “Enhance Screen”option by right clicking on the business object extension.


Select the targeted UIs-




  • Service Order - COD_UTILITIES_SERVICE_ORDER_EXTENSIBILITY_EC




Service Order UI Path


/BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_SERVICE_ORDER_EXTENSIBILITY_EC.EC.uicomponent


Adding extension field to the Service Order List:- Select anchor called Service Order to add the extension fields.



Once field is selected and applied – “Save and Activate”.


4. Implement Service Order Enhancement Implementation


With above changes, the required UI is enhanced with your extension fields.

To populate data to those fields you need to implement Enhancement Implementation provided for Service Order.

Note :- From C4C 1708, mapping of standard fields in Enhancement implementation became easier as Standard fields will be pre fetched and will be part of input parameter.

Add Service Order Enhancement Implementation


Implement custom Logic for populating Link as well as escalation status.
import AP.CRM.Global;

var result : UtilitiesServiceOrderBadiInput;

result.UtilitiesServiceOrderElements = InputData.UtilitiesServiceOrderInput.UtilitiesServiceOrderElements;

foreach(var current in result.UtilitiesServiceOrderElements)
{
current.Custom_Link_DZE12JXDAPNKB9MTEJZDHSX3Y = "https://[isu Webgui URL]:[port]/sap/bc/gui/sap/its/webgui?~transaction=*IW72%20AUFNR-LOW="+ current.ServiceOrderID.content.ToUpperCase() +";DYNP_OKCODE=OK&sap-client=[tenant]&sap-language=EN";
current.Is_Escalated_DZE12JXDAPNKB9MTEJZDHSX3Y = true;
}

return result;

With above enhancement:- Service Order facet will look as shown below.




Edit Service Order Link will navigate to the below ISU screen.