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 share the details required to extend C4C Utilities Online UIs.

Please refer the following blogs to know the steps involved for extensibility 

 

 

Scope of this Blog is to give required details for extending following Utilities Scenarios and UIs-:-

 

    1. Extending Service Order

 

    1. Extending Service Notification

 

    1. Extending (BPEM)Exceptions

 

    1. Extending Utilities 360

 

    1. Extending Customer Contacts

 

    1. Extending Alerts

 

    1. Extending Premise Overview & Connection Details

 

    1. Extending Meter Readings Table

 

    1. Extending Payment Data

 

1. Extending Service Order

Service Order is available in below places.

    • Customer / Account (TI) – Utilities Service Orders (Facet)

 

    • Premise (TI) – Service Orders (Facet)

For Extending “Utilities Service Order” following node needs to be extended.

    • Service Order – ServiceOrders

You can refer below code snippet for reference.

import AP.Common.GDT;
import AP.CRM.Global;
[Extension] businessobject AP.CRM.Global:UtilitiesExtensibility {
            node ServiceOrders {
			[Label("Service Order Status")] element Service_Order_Status : Indicator;
   	    }
} 

 

Targeted UI Details –

Service Order – /BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_SERVICE_ORDER_EXTENSIBILITY_EC.EC.uicomponent

C4C Enhancement Implementation Details-

Read – UtilitiesServiceOrderOverview

Action – UtilitiesServiceOrders

ISU Side Web Service Details – 

Read Service – COD_ERP_UTIL_SRV_ORD_GET (ECC) / ISU_C4C_SRV_ORD_GET (S/4 HANA)

Action Service (Both for Create & Edit) – COD_ERP_UTIL_SRV_ORD_CREATE (ECC) / ISU_C4C_SRV_ORD_CREATE (S/4 HANA)

2. Extending Service Notification

Service Notification is available in below places.

    • Customer / Account (TI) – Utilities Service Notifications(Facet)

 

    • Premise (TI) – Service Notifications (Facet)

For Extending “Utilities Service Notification ” following node needs to be extended.

    • Service Notification – ServiceNotification

You can refer below code snippet for reference.

import AP.Common.GDT;
import AP.CRM.Global;
[Extension] businessobject AP.CRM.Global:UtilitiesExtensibility {
            node ServiceNotification{
			[Label("Service Notification Status")] element Service_Notification_Status : Indicator;
   	    }
} 

 

Targeted UI Details –

Service Notification UI – /BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_SERVICE_NOTIFICATION_EXTENSIBILITY.EC.uicomponent

C4C Enhancement Implementation Details-

Read – UtilitiesServiceNotificationOverview

Action – UtilitiesServiceNotificationActions

ISU Side Web Service Details – 

Read Service – COD_ERP_UTIL_SRV_NOTIF_GET(ECC) / ISU_C4C_SRV_NOTIF_GET (S/4 HANA)

Action Service – COD_ERP_UTIL_SRV_NOTIF_MODIF (ECC) / ISU_C4C_SRV_NOTIF_MODIF (S/4 HANA)

3. Extending (BPEM)Exceptions

Service Order is available in below places.

    • Customer / Account (TI) – Utilities Exceptions(Facet)

 

    • Premise (TI) – Exceptions (Facet)

For Extending “Utilities Exceptions” following node needs to be extended.

    • Exception – BPEM

You can refer below code snippet for reference.

import AP.Common.GDT;
import AP.CRM.Global;
[Extension] businessobject AP.CRM.Global:UtilitiesExtensibility {
      node BPEM{
			[Label("BPEM Additional Info")] element Ext_BPEM_Info : Indicator;
   	    }
} 

 

Targeted UI Details –

Exceptions UI – /BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_BPEM_EXTENSIBILITY.EC.uicomponent

C4C Enhancement Implementation Details-

Read – UtilitiesBPEMGet

ISU Side Web Service Details – 

Read Service – COD_UTILITIES_BPEM_GET(ECC) / ISU_C4C_BPEM_GET(S/4 HANA)

4. Extending Utilities 360 

Utilities 360 is available in below places.

    • Customer / Account (TI) – Utilities 360(Facet)

For Extending “Utilities 360” following nodes need to be extended.

    • Utilities 360 (Hierarchy / List Table) – UtilitiesObjectHierarchy

 

    • Collective Contract Account (Info Section) – CollectiveContractAccountDetails

 

    • Contract Account (Info Section) – ContractAccountDetails

 

    • Contract (Info Section) – ContractDetails

 

    • Premise (Info Section) – PremiseDetails

 

    • Installation (Info Section) – InstallationDetails

 

    • Device (Info Section) – DeviceDetails

You can refer below code snippet for reference.

import AP.Common.GDT;
import AP.CRM.Global;
[Extension] businessobject AP.CRM.Global:UtilitiesExtensibility {
      node UtilitiesObjectHierarchy {
		[Label("Heir/List Info")] element Ext_Hier:LANGUAGEINDEPENDENT_EXTENDED_Text;
      		node CollectiveContractAccountDetails {
			[Label("CCA Additional Info")] element Ext_CCA_Info:LANGUAGEINDEPENDENT_EXTENDED_Text;
      	    } 
      		node ContractAccountDetails {
			[Label("CA Additional Info")] element Ext_CA_Info:LANGUAGEINDEPENDENT_EXTENDED_Text;
      	    } 
      		node ContractDetails {
			[Label("Contract Additional Info")] element Ext_Contract_Info:LANGUAGEINDEPENDENT_EXTENDED_Text;
      	    } 
      		node PremiseDetails {
			[Label("Premise Additional Info")] element Ext_Premise_Info:LANGUAGEINDEPENDENT_EXTENDED_Text;
      	    } 
      		node InstallationDetails {
			[Label("Installation Additional Info")] element Ext_Inst_Info:LANGUAGEINDEPENDENT_EXTENDED_Text;
      	    } 
      		node DeviceDetails {
			[Label("Device Additional Info")] element Ext_Device_Info:LANGUAGEINDEPENDENT_EXTENDED_Text;
      	    } 
        } 
} 

 

Targeted UI Details –

Utilities 360 – /BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_360_EXTENSIBILITY_EC.EC.uicomponent

C4C Enhancement Implementation Details-

Read – Utilities360facetObjectHierarchyOverview

ISU Side Web Service Details – 

Read Service – COD_UTILITIES_OBJECT_HIER_V2(ECC) / ISU_C4C_OBJECT_HIER_V2(S/4 HANA)

5. Extending Customer Contacts

Customer Contacts is available in below places.

    • Customer / Account (TI) – Utilities 360(Facet) – Recent History(Tab)

For Extending “Customer Contacts”  following node needs to be extended.

    • Business Contact Details – BusinessContact

You can refer below code snippet for reference.

import AP.Common.GDT;
import AP.CRM.Global;
[Extension] businessobject AP.CRM.Global:UtilitiesExtensibility {
     node BusinessContact {
	[Label("Contact Additional Info")] element Ext_Contact_Info:LANGUAGEINDEPENDENT_EXTENDED_Text;
     } 
} 

 

Targeted UI Details –

Business Contact UI – /BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_BUSINESS_CONTACT_EC.EC.uicomponent

C4C Enhancement Implementation Details-

Read – UtilitiesBusinessContactGet

ISU Side Web Service Details – 

Read Service – COD_UTIL_BCONTACT_GET_LIST (ECC) / ISU_C4C_UTIL_BCONTACT_GET_LIST (S/4 HANA)

6. Extending Alerts

Alerts is available in below places.

    • Customer / Account (TI) – Alerts (Side panel)

 

    • Premise (TI) – Alerts (Side panel)

 

    • Contract Account (TI) – Alerts (Side panel)

 

    • Move In (GAF) / Move Out (GAF) / Transfer (GAF) – Alerts (Table)

 

Targeted UI Details –

Alerts – /BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_ALERTS_EC.EC.uicomponent

C4C Enhancement Implementation Details-

Read – UtilitiesAlertsGet

ISU Side Web Service Details – 

Read Service – COD_UTIL_ALERTS_GET (ECC) / ISU_C4C_UTIL_ALERTS_GET (S/4 HANA)

7. Extending Premise Overview & Connection Details

Premise Overview & Connection Details is available in below places.

    • Premise (TI) – Overview (Facet) – Highlights (Table)

 

    • Premise (TI) – Overview (Facet) – Customer Overview(Table)

 

    • Premise (TI) – Connection Details (Facet)

For Extending “Overview & Connection Details”  following nodes need to be extended.

    • Highlights  – PremiseHighlights

 

    • Customer Overview – PremiseCustomerHistory

 

    • Connection Details – PremiseObjHier

You can refer below code snippet for reference.

import AP.Common.GDT;
import AP.CRM.Global;
[Extension] businessobject AP.CRM.Global:UtilitiesExtensibility {
            node PremiseHighlights {
               [Label("Critical")] element Ext_Critical : Indicator;
   	    } 
     	    node PremiseCustomerHistory {
	       [Label("Customer Additional Info")] element Ext_Customer_Info : Indicator;
   	    } 
 	    node PremiseObjHier {
	       [Label("Additional Info")] element Ext_Additional_Info : LANGUAGEINDEPENDENT_EXTENDED_Text;
   	    }  
} 

 

Targeted UI Details –

 

    • Premise-Overview – /BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_PREMISE_VIEW_EC.EC.uicomponent

 

    • Premise-Connection Details – /BYD_COD/IndustrySolution/Utilities/Premise/UI/COD_UTILITIES_PREMISE_CONNECTION_DETAILS_EC.EC.uicomponent

 

C4C Enhancement Implementation Details-

Read – UtilitiesPremise

Overview Actions –

    • Move In – UtilitiesPremiseMoveIn

 

    • Move Out – UtilitiesPremiseMoveOut

 

    • Cancel Move In & Move Out – UtilitiesPremiseCancelMoveInMoveOut

 

    • Change Move In & Move Out- UtilitiesPremiseEditMoveInMoveOut

Connection Details Actions –

    • Reconnect & Ping – UtilitiesPremiseActions

 

ISU Side Web Service Details – 

Read Service – COD_UTILITIES_PREMISE_TI(ECC) /ISU_C4C_PREMISE_TI(S/4 HANA)

Action Service –

    • Move In, Move Out & Transfer – COD_UTIL_MOVE_IN_OUT_TRANS_SRV(ECC) / ISU_C4C_MOVE_IN_OUT_TRANS_SRV (S/4 HANA).

 

    • MDT Based Move In – COD_UTILITIES_MDT_MVI_CREATE (ECC) / ISU_C4C_UTILITIES_MDT_MVI_CRT(S/4 HANA).

 

    • Cancel Move In & Move Out – COD_UTILITIES_CANCEL_MVIMVO (ECC) / ISU_C4C_CANCEL_MVIMVO (S/4 HANA)

 

    • Change Move In – COD_UTILITIES_MOVE_IN (ECC) / ISU_C4C_MOVE_IN (S/4 HANA).

 

    • Change Move Out – COD_UTILITIES_MOVE_OUT (ECC) / ISU_C4C_MOVE_OUT (S/4 HANA).

 

    • Reconnect – COD_UTILITIES_AMI_SERVICES (ECC) / ISU_C4C_AMI_SERVICES (S/4 HANA)

 

    • Ping – COD_UTILITIES_AMI_PING (ECC) / ISU_C4C_AMI_PING (S/4 HANA).

 

8. Extending Meter Readings Table

Meter Reading is available in below places.

    • Premise (TI) – Connection Details (Facet) – Meter Readings (Table)

 

    • Customer / Account (TI) – Utilities Financial (Facet) – Contracts With Meter Readings (Table)

For Extending “Meter Readings”  following node needs to be extended.

    • Meter reading – InstallationRegister

You can refer below code snippet for reference.

import AP.Common.GDT;
import AP.CRM.Global;
[Extension] businessobject AP.CRM.Global:UtilitiesExtensibility {
            node InstallationRegister{
			[Label("MR Additional Info")] element Ext_MR_Info : Indicator;
   	    }
} 

 

Targeted UI Details –

Meter reading Table UI – /BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_INSTALLATION_EC.EC.uicomponent

C4C Enhancement Implementation Details-

Read – UtilitiesInstallation

Actions –

    • Estimate – UtilitiesInstallationEstimateMeterReading

 

    • Override – UtilitiesInstallationOverrideMeterReading

 

    • New / Edit (Save) – UtilitiesInstallationUpdateMeterReading

 

ISU Side Web Service Details – 

Read Service – COD_UTILITIES_MR_GET(ECC) / ISU_C4C_MR_GET(S/4 HANA)

Action Service –

    • Estimate – COD_UTILITIES_MR_ESTIMATE(ECC) / ISU_C4C_MR_ESTIMATE (S/4 HANA).

 

    • Override – COD_UTILITIES_METER_READ_CRT(ECC) / ISU_C4C_METER_READ_CRT (S/4 HANA).

 

    • New / Edit (Save) – COD_UTILITIES_METER_READ_CRT(ECC) / ISU_C4C_METER_READ_CRT (S/4 HANA).

 

9. Extending Payment Data

Payment Data is available in below places.

    • Customer / Account (TI) – Utilities Payment Data (Facet)

For Extending “Payment Data”  following nodes need to be extended.

    • Bank Data – UtiltiesBankData

 

    • Contract Account Payment Method – ContractAccountPaymentMethod

You can refer below code snippet for reference.

import AP.Common.GDT;
import AP.CRM.Global;
[Extension] businessobject AP.CRM.Global:UtilitiesExtensibility {
       node UtiltiesBankData{
            [Label("Account Status")] element Ext_Account_Status : Indicator;
       }
       node ContractAccountPaymentMethod {
            [Label("Payment Is Valid")] element Ext_Payment_Valid : Indicator;
       }
} 

 

Targeted UI Details –

Payment Data – /BYD_COD/IndustrySolution/Utilities/UI/Extensibility/COD_UTILITIES_PAYMENT_DATA_EXTENSIBILITY_EC.EC.uicomponent

C4C Enhancement Implementation Details-

Read – UtilitiesPaymentDataOverview

Action – UtilitiesPaymentDataActions

ISU Side Web Service Details – 

Payment Data Read Service – COD_UTIL_BANK_DETAILS_GET (ECC) / ISU_C4C_BANK_DETAILS_GET (S/4 HANA)

Contract Account Read Service – COD_UTILITIES_FINDCA (ECC) / ISU_C4C_FINDCA (S/4 HANA)

Action Service – COD_UTIL_BANK_PAYMENT_METHOD (ECC) / ISU_C4C_BANK_PAYMENT_METHOD (S/4 HANA)

Sara Sampaio

Sara Sampaio

Author Since: March 10, 2022

0 0 votes
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x