Releasing an SAP Fiori Application to Be Extensible in Adaptation Projects on SAP S/4HANA Cloud and SAP BTP, ABAP Environment
Ensure the UI adaptations that your customers make do not cause breaking changes when upgrading your project.
-
Follow the best practices for developing SAPUI5 applications. For more information, see Best Practices for Developers.
-
Enable your application for UI adaptation. For more information, see SAPUI5 Flexibility: Enable Your App for UI Adaptation.
-
Before releasing a new version of your application, increment the version number in the
manifest.json
file, undersap.app/applicationVersion/version
. For more information, see Descriptor for Applications, Components, and Libraries (manifest.json).A new version number is required for the consumer to be notified by an ATC check when the base app is updated. For more information, see Check Whether Your Adaptation Project Is Up-To-Date with Base App Upgrades.
-
Release the OData service of your application with a C1 contract.
Set the state of the C1 contract to Released.
The C1 contract forbids incompatible changes of the structure of the service but has no restrictions for changing annotations.
For more information, see Setting the API Release State.
-
Release the BSP (WAPA object) of your application with a C0 contract.
In the
manifest.json
file, set the attributesap.fiori/cloudDevAdaptationStatus
toreleased
.Other allowed values are no value (which means not released),
deprecated
, andobsolete
.As a prerequisite for providing the manifest setting,
sap.fiori/cloudDevAdaptationStatus
, the C1 contract for the OData service of the SAP Fiori application must be set to the state Released. The application can only be deployed if this prerequisite is met.In the
manifest.json
file, ensure that the attribute:sap.app/id
has at least two segments. -
Release the authorization objects and the restriction types that are used by the OData service.
Set the state of the C1 contract to Released.
Select the Use in Cloud Development checkbox.
This step is not a prerequisite for releasing the OData service and the Fiori application. You can still create app variants even if the authorization objects and the restriction types of the OData service are not released. However, the authorizations of the application variant are then identical to the authorizations of the original application. Also, the original application and the original application's business catalogs must be assigned to the user's role.
-
Create an API snapshot including the released APIs, directly before shipment, using the Manage API Snapshots application. For more information, see Manage API Snapshots.
Once you have set these contracts, they are enforced by ATC checks. For more information, see Check Consistency of Release State.
Related Information
Descriptor for Applications, Components, and Libraries (manifest.json)