Skip to Content

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.

To report this post you need to login first.

Be the first to leave a comment

You must be Logged on to comment or reply to a post.

Leave a Reply