<!DOCTYPE HTML>
<html style="height: 100%;">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Demo</title>
<script id="sap-ui-bootstrap"
src="https://openui5nightly.hana.ondemand.com/resources/sap-ui-core.js"
data-sap-ui-theme="sap_fiori_3"
data-sap-ui-async="true"
data-sap-ui-modules="sap/ui/thirdparty/datajs"
data-sap-ui-oninit="module:sap/ui/core/ComponentSupport"
data-sap-ui-compatversion="edge"
data-sap-ui-resourceroots='{"demo": "./"}'
data-sap-ui-xx-componentpreload="off"
></script>
</head>
<body id="content" class="sapUiBody">
<div style="height: 100%;"
data-sap-ui-component
data-id="rootComponentContainer"
data-name="demo"
data-height="100%"
data-settings='{"id": "rootComponent"}'
></div>
</body>
</html>
sap.ui.define([
"sap/ui/core/UIComponent",
], function(UIComponent) {
"use strict";
return UIComponent.extend("demo.Component", {
metadata: {
manifest: "json",
},
init: function() {
UIComponent.prototype.init.apply(this, arguments);
this.getRouter().initialize();
},
});
});
{
"_version": "1.12.0",
"start_url": "index.html",
"sap.app": {
"id": "demo",
"type": "application",
"title": "foo",
"subtitle": "(Sub title)",
"description": "bar",
"applicationVersion": {
"version": "1.0.0"
},
"dataSources": {
"odata": {
"uri": "https://cors-anywhere.herokuapp.com/https://services.odata.org/V2/Northwind/Northwind.svc/",
"type": "OData",
"settings": {
"odataVersion": "2.0"
}
}
}
},
"sap.ui": {
"technology": "UI5",
"deviceTypes": {
"desktop": true,
"tablet": true,
"phone": true
}
},
"sap.ui5": {
"dependencies": {
"minUI5Version": "1.60.1",
"libs": {
"sap.ui.core": {},
"sap.ui.table": {},
"sap.m": {},
"sap.ui.unified": {}
}
},
"contentDensities": {
"compact": true,
"cozy": false
},
"models": {
"": {
"dataSource": "odata",
"settings": {
"tokenHandling": false,
"preliminaryContext": true
},
"preload": true
}
},
"rootView": {
"id": "rootView",
"viewName": "demo.view.App",
"type": "XML",
"async": true
},
"routing": {
"routes": [{
"pattern": "",
"name": "home",
"target": "home"
}],
"targets": {
"home": {
"viewName": "Table",
"viewLevel": 1
},
"notFound": {
"viewName": "Table",
"transition": "show"
}
},
"config": {
"routerClass": "sap.m.routing.Router",
"viewType": "XML",
"async": true,
"viewPath": "demo.view",
"transition": "slide",
"controlId": "myAppp",
"controlAggregation": "pages",
"bypassed": {
"target": "notFound"
}
}
}
}
}
<mvc:View
xmlns="sap.m"
xmlns:mvc="sap.ui.core.mvc"
height="100%"
displayBlock="true"
>
<App id="myAppp">
<pages>
<!-- will be added by Router -->
</pages>
</App>
</mvc:View>
<mvc:View
xmlns="sap.ui.table"
xmlns:mvc="sap.ui.core.mvc"
xmlns:m="sap.m"
xmlns:core="sap.ui.core"
>
<m:Page
title="Customers"
backgroundDesign="List"
class="sapUiNoContentPadding"
>
<Table id="myGridTable"
class="sapUiSizeCondensed"
editable="false"
threshold="50"
enableBusyIndicator="false"
columnHeaderVisible="false"
selectionMode="None"
rows="{
path: '/Customers',
parameters: {
select: 'CustomerID, ContactName'
}
}"
>
<columns>
<Column>
<template>
<m:Text text="{CustomerID}" wrapping="false"/>
</template>
</Column>
<Column>
<template>
<m:Text text="{ContactName}" wrapping="false"/>
</template>
</Column>
</columns>
<noData>
<m:VBox height="100%" justifyContent="Center">
<m:BusyIndicator size="1.25rem"/>
</m:VBox>
</noData>
</Table>
</m:Page>
</mvc:View>