Solution Order Extensibility – Part 2 OData API Extensibility
In this blog, I would show how you can use extensibility options for OData APIs in the context of solution orders.
Extensibility in SAP S/4HANA Cloud provides options for customers and partners to build extensions. Key users can make custom fields available in several apps, including handing over data by using business scenarios.
This blog series aims to show how you can use various aspects of solution order extensibility to fulfill your individual extension requirement.
Other blogs in the same series are:
- Process extensibility
- OData API extensibility (this blog)
- UI extensibility
- Progress extensibility
- Analytics extensibility
- Subscription Extensibility
What is a solution order?
The solution order management by SAP S/4HANA Cloud is designed to provide innovative business offerings by enabling you to combine sales, related services, service contracts, and subscriptions as a solution bundle. This provides flexibility to you by enabling you to adapt to new business models and helps you in creating a competitive edge to boost your business. Solution orders also support the transformation journey from a purely product-based business to higher-margin services and subscription business.
Solution order management provides an end-to-end process of sales and fulfilment of the solution bundle. The fulfilment of solution order is performed by various follow-up business documents and the solution order provides the latest view of these documents’ current state. Solution order reference is used for billing and financial accounting process.
When to use API extensibility
As different applications are integrated into a composite environment, there may be a need to share data among applications by using APIs according to your requirements. SAP S/4HANA Cloud provides the option of API extensibility. This feature enables access to custom fields from different applications using the API.
How to achieve OData API extensibility
To enable custom field across the business process, you can follow the steps below:
- Log on to the SAP Fiori launchpad as an administrator and launch the Custom Fields application.
- Create a custom field by selecting a suitable business context (for example, Service Header or Service Item). The business context “Service Header” is used to create custom field in solution order header and “Service Item” for items in solution order.
To add a custom field in the solution order header:
The screenshot below shows the custom field ledger entry being created for the solution order header.
- Click the Create and Edit button.
- Select the relevant OData APIs for which the fields should be enabled.
- Click Publish.
You can add a custom field to a solution order item as shown in the example below. The steps are similar to adding a custom field for the solution order header.
Note: To add a custom field to a solution order item, the business context must be Service Item as shown below.
Once published, the custom field is available for all item types in solution orders.
Note: These newly added fields can now be used in relevant OData POST, PATCH and GET operation.
The metadata information of custom fields at the solution order header is shown in the screenshot below.
In the following screenshot you can see the metadata information of custom fields in a solution order item.
The header and the item custom fields added to the solution order during a POST operation are shown in the screenshot below.
The custom field added at the solution order header is shown in the screenshot below.
The custom field added to the solution order item is shown in the screenshot below.
- You cannot add a new entity to the OData API.
- Business Solution Order API can be extended only at the header and the item level. Currently no extensibility is possible for their associated entities.
In this blog we have learnt how and when to use key user extensibility options for Business Solution Order API.