Questions tagged [sapui5]

This tag 'sapui5' covers both the proprietary (SAPUI5) and the open source (OpenUI5) versions of the framework. When asking about Fiori elements, consider adding [odata] and [sap-fiori] tags accordingly.

SAPUI5 is a frontend JavaScript framework by SAP SE for building enterprise-grade web applications with a rich and modern user interface.

There are two flavors:

  • OpenUI51, the open source version (Apache License 2.0)
  • SAPUI5, the proprietary version built on top of OpenUI5

Both have the same technical core mechanisms and are collectively referred to as UI5.2
UI5 logo

OpenUI5 provides many features to enable creating and extending state-of-the-art user interfaces. It supports and offers:

  • Modern CSS allowing applications to adapt their themes to company's branding
  • Extensibility concepts at framework and application level
  • Internationalization (i18n)
  • Over 300 controls3 (More in SAPUI5) that are responsive, localized, and accessible already
  • Drag and drop
  • Consistent "SAP Fiori" design language and the award-winning "72" font which are both based on extensive UX research and industry standards
  • Well-known software design patterns but not limited to: MV*, publish-subscribe, and OOP
  • Low-code / no-code features for end users to quickly generate or modify existing applications
  • Data layer standards: OData (V2 and V4), FHIR, and GraphQL (experimental)
  • Accessibility standards: ADA, European Commission, BITV, VPAT, WCAG 2.1, and ARIA 1.1
  • Enhanced keyboard navigation and shortcuts for power users out of the box
  • Backward compatibility since release 1.0.0
  • Strict Content Security Policy (CSP) Level 2
  • Unit, integration, and e2e testing - safeguarding robustness of the framework and applications
  • Tooling: dedicated UI5 CLI, growing number of community-driven build tooling tasks and middlewares, and scaffolding projects based on documented best-practices
  • TypeScript definitions based on ECMAScript module system
  • Integration with and other web components in addition to existing UI5 controls

UI5 does not support:


1 OpenUI5, which is a JS framework, is NOT related to "Open UI" which is a standardization initiative. []
2 The number "5" in UI5 does NOT represent the version of the framework. UI5 is semantic versioned.
3 UI components extended from sap.ui.core.Control, excluding deprecated and experimental controls.

Other resources

Related tags

6950 questions
8
votes
1 answer

What is the difference between attachMatched() and attachPatternMatched() and/or attachRouteMatched() and attachRoutePatternMatched() in SAPUI5?

Would be happy about an example of what is the difference between the following SAPUI5 routing…
n01dea
  • 1,532
  • 1
  • 16
  • 33
8
votes
1 answer

Need to load the UI5 Module from Other Host in SAP Fiori

We have 2 applications one is SAP Fiori App which is deployed in SAP ABAP repository and another app which is written OpenUI5 which is not related to SAP so we have deployed in Apache Tomcat. We need to Integrate these 2 applications like on…
chiranjeevigk
  • 1,636
  • 1
  • 23
  • 43
8
votes
1 answer

What is the meaning of 'controlAggregation' in the SAPUI5 routing configuration?

I really don't get what the property controlAggregation below does for routing a SAPUI5 application. There is not element with that id. I cant find any reference to 'pages' anywhere in the demo app found here: SAPUI5 routing demo "routing": { …
Pete_ch
  • 1,301
  • 2
  • 28
  • 39
8
votes
2 answers

getBindingContext() returns undefined

I am working on a SplitApp. On selecting an item from the list, it says Uncaught TypeError: Cannot read property 'getPath' of undefined Master.controller.js onSelect: function(oEvent) { this.showDetail(oEvent.getParameter("listItem") ||…
FEBzX
  • 367
  • 2
  • 5
  • 15
8
votes
3 answers

Call controller function from XML binding expression

Using OpenUI5/SAPUI5, per documentation on XML Binding Expressions, we have the ability to execute a function from the view. new sap.m.CheckBox({ selected: "{= checkSelectedItems(${odata>CustomerId}) }" }) In my controller behind the…
mitch
  • 985
  • 10
  • 12
8
votes
1 answer

What's the usage of setBindingContext() and the difference from element binding?

In the 1.5.2.3 Defining a Binding Path section of OpenUI5 demokit: A context exists either for each entry of the aggregation in case of aggregation binding or can be set explicitly for a control by using the setBindingContext method. In the…
Zhengquan Bai
  • 1,057
  • 3
  • 14
  • 31
8
votes
3 answers

Requesting/storing a specific UI5 version for application

I have an application that uses SAPUI5. I have extensively styled the result using my own CSS, which greatly enhances the appearance and usability of the application. A few weeks ago a new release of the SAPUI5 libs was released to the…
wombling - Chris Paine
  • 1,651
  • 1
  • 18
  • 17
7
votes
2 answers

How to reuse a component from another application in UI5 1.38?

Environement Framework : SAPUI5 V1.38.39 IDE : SAP WEB IDE Problem I want to use a SAPUI5 application in another one, in order to do so I found the following resource:…
SylwekFr
  • 308
  • 3
  • 21
7
votes
4 answers

"onBeforeRendering" or "onAfterRendering" is not called every time the view is opened

In my UI5 app, I have a view with a table (sap.m.Table), populated by data coming from the back-end at onInit hook. The problem is that onInit is executed only once per view instance: It is only called once per View instance, unlike the…
Mike
  • 14,010
  • 29
  • 101
  • 161
7
votes
0 answers

OPA5: How to make sure that every test starts in a fresh environment?

I got to refactor a module of OPA5-tests, because most of the test-cases fail currently. While trying to find the reason for the failing I found out that most of the tests aren't erroneous. When you run them in isolation they work just fine. The…
cluster1
  • 4,968
  • 6
  • 32
  • 49
7
votes
3 answers

Binding in Control with "class" Attribute

I want to handle the colors of the values in Text control (sap.m). If the value is "TRUE", the color is green. Otherwise it will be red if the value is "FALSE".
ThuanNguyen
  • 169
  • 1
  • 2
  • 13
7
votes
3 answers

How to disable V2 OData $batch request by default in UI5?

I made a Master-Detail application in Web IDE with SAPUI5. I connected my application to an OData service (V2). The connection parameters have been stored in manifest.json. I want to prevent my UI5 application from using $batch requests. I know how…
user7383443
7
votes
6 answers

Pass Static Value to Formatter Parameters in XML View

I want to call the function getCountdown with two parameters: The first (AuctionEnd) is dynamic from a model. The second should be hard coded in either "Time" or "Status". This is my code:
alexP
  • 3,672
  • 7
  • 27
  • 36
7
votes
2 answers

Can I use webpack with openUI5?

Can I use webpack and its bundling-features with an openUI5 project? How? I am aware of openui5_preload and gulp-ui5-preload but I want more than just putting all my code in one preloader-file: I like to "walk" all used dedendencies as well and…
Benvorth
  • 7,416
  • 8
  • 49
  • 70
7
votes
2 answers

SAPUI5 How to realize a Threshold-Slider (like in WebDynpro)

I am currently facing the challenge to realize a Slider in SAPUI5 exactly like the Threshold-Slider from Webdynpro, which looks like this. How would you do this? It is highly dynamic, the scale (can be 5 values, can be 3 values etc), the…
dotchuZ
  • 2,621
  • 11
  • 39
  • 65