Skip to main content

Module 27: Extensibility & Adaptation

Extensibility allows SAPUI5 and Fiori applications to be adapted without modifying standard code.
This is crucial for upgrade safety, clean core strategy, and long-term maintenance.

This module explains:

  • Key user extensibility
  • UI Adaptation Editor
  • Custom fields & logic
  • Adaptation projects
  • Upgrade-safe extension principles

1. What is Extensibility in SAPUI5?


Definition

Extensibility means:

  • Enhancing standard apps
  • Without modifying original code
  • In an upgrade-safe manner
SAP Clean Core Principle

Extend, don’t modify.


Types of Extensibility

TypeTarget User
Key User ExtensibilityBusiness users
Developer ExtensibilityDevelopers
Side-by-Side ExtensibilityCloud / BTP

2. Key User Extensibility


What is Key User Extensibility?

Key users (functional users) can:

  • Add fields
  • Adapt UI layout
  • Add simple logic
  • Without developer support

Typical Capabilities

  • Add custom fields
  • Rename labels
  • Hide/show fields
  • Change UI order
Enterprise Value

Reduces dependency on IT teams.


3. UI Adaptation Editor (UI Adaptation)


What is UI Adaptation Editor?

The UI Adaptation Editor allows:

  • UI changes at runtime
  • Personalization & adaptation
  • No code changes

Accessed via:

Adapt UI

What Can Be Adapted?

Fields

Groups

Sections

Buttons (visibility)

Limitation

Business logic cannot be changed here.


Adaptation Scope

ScopeEffect
UserPersonal
RoleRole-based
SystemGlobal

4. Custom Fields & Logic


Custom Fields

Custom fields are:

  • Created via Custom Fields and Logic app
  • Stored in backend tables
  • Automatically exposed to UI

Custom Field Lifecycle

Create Field

Publish

Available in CDS

Visible in UI
SAP Magic

Once published, fields appear automatically in Fiori Elements apps.


Custom Logic

Custom logic allows:

  • Validation
  • Derivation
  • Enhancement logic

Implemented using:

  • BAdIs
  • Enhancement points
  • RAP behavior extensions
Rule

Custom logic executes in backend, not UI.


5. Adaptation Projects (Developer Extensibility)


What are Adaptation Projects?

Adaptation projects allow developers to:

  • Extend standard Fiori apps
  • Add UI logic
  • Add custom actions
  • Stay upgrade-safe

What You Can Do in Adaptation Projects

  • Controller extensions
  • View extensions
  • Custom sections
Technical Foundation

Adaptation projects use extension points provided by SAP.


6. Upgrade-Safe Extensions (Critical Topic)


What Makes an Extension Upgrade-Safe?

Follow These Rules
  • Never modify standard files
  • Use only provided extension points
  • Use CDS extensions for data
  • Use RAP behavior extensions

What Breaks Upgrade Safety

Avoid These
  • Copy-pasting standard apps
  • Modifying generated code
  • Hardcoding SAP internal IDs
  • Bypassing extension framework

7. Extensibility in Freestyle UI5 vs Fiori Elements

AspectFreestyle UI5Fiori Elements
UI AdaptationLimitedBuilt-in
Custom FieldsManualAutomatic
Upgrade SafetyDeveloper-dependentHigh
Key User Support
SAP Recommendation

Fiori Elements provides best extensibility with least risk.


8. Clean Core & Extensibility Strategy


SAP Clean Core Strategy

Keep standard code untouched

Push custom logic to:

  • Extensions
  • Side-by-side apps
  • BTP services
Strategic Direction

Clean Core is mandatory for S/4HANA cloud.


9. Common Extensibility Mistakes

Avoid These
  • Using UI adaptation to fix logic issues
  • Overusing custom fields
  • Duplicating standard logic
  • Ignoring clean core guidelines

10. Interview-Grade Explanation

Q: How do you extend standard SAP Fiori applications?

Answer:

Standard SAP Fiori applications are extended using key user extensibility, the UI Adaptation Editor, custom fields and logic, and developer adaptation projects. These mechanisms ensure upgrade safety and align with SAP’s clean core strategy.


11. Summary

  • Extensibility avoids core modifications
  • Key users can adapt UI
  • UI Adaptation Editor supports layout changes
  • Custom fields integrate seamlessly
  • Adaptation projects enable developer extensions
  • Upgrade safety is mandatory

12. What’s Next?

➡️ Module 28: Logging, Monitoring & Troubleshooting in UI5

Learning Tip

If your extension breaks upgrades, it’s not an extension — it’s a liability.