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
33
votes
5 answers

Are security concerns sending a password using a GET request over https valid?

We have webpage which uses the sapui5-framework to build a spa. The communication between the browser and the server uses https. The interaction to log into the page is the following: The user opens the website by entering https://myserver.com in…
surfmuggle
  • 5,527
  • 7
  • 48
  • 77
28
votes
1 answer

SAP UI5 versus other Javascript frameworks?

Just wanted to understand where does SAPUI5 stand as a framework. (1)Is it like jQuery (library with host of utility functions, effects, animations etc) or (2)Is it like a MVC library like Backbone,Angular,Ember etc? If 1, then how could it…
subh
  • 327
  • 1
  • 3
  • 6
24
votes
3 answers

How to Access Elements from XML Fragment by ID

I am working on a SAPUI5 application. I have an XML view which contains an XML Fragment and a Button to save. The fragment contains a few controls like drop-down, text field and a table. When I press on the save button, I need to get all the rows in…
Nilesh Puranik
  • 297
  • 1
  • 3
  • 14
19
votes
2 answers

Binding, Context, ContextBinding and BindingContext in ui5

I have been pondering the internals of and relationship between context, contextbinding, and bindingcontext for a few days now and i am not sure whether there is a major misconception on my side. Maybe some of you can help me sort it out. I am…
michel luther
  • 279
  • 1
  • 2
  • 11
17
votes
4 answers

Error "validate_display:255 error 3008 (EGL_BAD_DISPLAY)" by Toutorial

I'm new to javascript and android and I want to program a multi page app with SAPUI5. For this I found a tutorial: https://sapui5.hana.ondemand.com/sdk/#docs/guide/df86bfbeab0645e5b764ffa488ed57dc.html which works fine, up to Walk through - Step 8.…
Yvonne Marggraf
  • 398
  • 2
  • 5
  • 19
16
votes
2 answers

Promise.resolve with no argument passed in

In the OpenUI5 code-base I came across this snippet: // Wait until everything is rendered (parent height!) before reading/updating sizes. // Use a promise to make sure // to be executed before timeouts may be…
Jonathan.Brink
  • 23,757
  • 20
  • 73
  • 115
15
votes
4 answers

How to pass parameters to a event handlerr in XML Views SAP UI5

I am having trouble sending data from the XML view to controller. It is easily achievable in JS views. for example:- In JS view:- var btn = new sap.m.Button({ text:"click", tap:function(){ callFunction(oEvent, "mycustomString"); …
Deepak
  • 505
  • 1
  • 9
  • 32
15
votes
4 answers

How to Bind OData $count from expanded collection in an XML view

May be this is a basic question, but I have trouble binding the OData count in XML view. In the following example, I want to bind the count of products from the OData model.
c_y
  • 540
  • 3
  • 9
  • 16
14
votes
3 answers

How execute code every time that I view a page

I'm searching the mode to execute a code (in my case the retrieve of data to visualize from server) every time I view a page (every time the page is called by splitApp.toDetail or splitApp.backDetail). How can i do it? P.S. The onBeforeRendering and…
padibro
  • 1,324
  • 10
  • 56
  • 95
14
votes
1 answer

Dynamic binding of table column and rows

I'm having troubles getting dynamic binding of both my table columns and rows to work. Suppose I have two models, one holding the table column info: var aColumnData = [ { columnId : "col1" }, { …
Qualiture
  • 4,900
  • 7
  • 27
  • 38
13
votes
2 answers

How to find the Object type of a SAPUI5 element at runtime

I am wondering how to get the object type of a SAPUI5 Javascript object at runtime. I can check if the object is of a particular type like so: myObj instanceof sap.m.List I'm looking for the equivalent of .getClass() in the Java world. I've tried a…
gregor
  • 189
  • 1
  • 3
  • 9
12
votes
2 answers

OData V4 Changes Are Not Reflected in Other Bindings

I created a UI5 master-detail page: Master onItemPress: function(oEvent) { var oUserContext =…
Flo
  • 1,179
  • 3
  • 15
  • 43
12
votes
3 answers

What does `bind(this)` mean?

In some part of onInit function of a controller in a SAPUI5 application there is an auto generated code like this: this.getView().addEventDelegate({ onBeforeFirstShow: function() { // Some codes …
MJBZA
  • 4,796
  • 8
  • 48
  • 97
12
votes
4 answers

How to use an if-else condition in a SAPUI5 XML-View?

How can I implement an if-else condition in a XML-View in SAPUI5 that uses a flag (condition) from a JSONModel? So far I have a Controller: sap.ui.define([ "sap/ui/core/mvc/Controller", "sap/ui/model/json/JSONModel" ], function (Controller,…
Benvorth
  • 7,416
  • 8
  • 49
  • 70
11
votes
2 answers

Navigate to same Detail View with Animation in SplitApp

I'm using a Split App which has Master list 3 Detail Pages MAster List shows a list of items ( here for example, bikes and cars list) These are 3 detail pages: Message page: for not found/welcome page when nothing is clicked on master…
Rahul Bhardwaj
  • 2,303
  • 1
  • 17
  • 28
1
2 3
99 100