Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Solución
SAP Cloud – OData
Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
1
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
Contenido
1. OData .................................................................................................................................... 3
1.1. Destino OData............................................................................................................... 3
1.2. Test Servicio OData en BAS .......................................................................................... 5
1.3. Configuración Proyecto con OData .............................................................................. 7
1.5. Filtros .......................................................................................................................... 19
2
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
1. OData
3
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
4
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
5
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
6
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
specVersion: '1.0'
metadata:
name: 'invoices'
type: application
ui5Theme: sap_fiori_3
server:
customMiddleware:
- name: fiori-tools-proxy
afterMiddleware: compression
configuration:
ignoreCertError: false # If set to true, certificate error
s will be ignored. E.g. self-
signed certificates will be accepted
backend:
- path: /V2
url: http://northwind.dest
ui5:
7
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
path:
- /resources
- /test-resources
url: https://ui5.sap.com
version: # The UI5 version, for instance, 1.78.1. Empty
means latest version
- name: fiori-tools-appreload
afterMiddleware: compression
configuration:
port: 35729
path: webapp
8
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
9
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
specVersion: '2.0'
metadata:
name: 'invoices'
type: application
framework:
name: SAPUI5
version: '1.90.0'
libraries:
- name: sap.f
- name: sap.m
- name: sap.suite.ui.generic.template
- name: sap.ui.comp
- name: sap.ui.core
- name: sap.ui.generic.app
- name: sap.ui.table
- name: sap.ushell
- name: themelib_sap_fiori_3
server:
customMiddleware:
- name: fiori-tools-proxy
afterMiddleware: compression
configuration:
ignoreCertError: false # If set to true, certificate error
s will be ignored. E.g. self-
signed certificates will be accepted
backend:
- path: /V2
url: http://northwind.dest
- name: fiori-tools-appreload
afterMiddleware: compression
configuration:
port: 35729
path: webapp
10
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
11
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
{
"_version": "1.32.0",
"sap.app": {
"id": "logaligroup.invoices",
"type": "application",
"i18n": "i18n/i18n.properties",
"applicationVersion": {
"version": "1.0.0"
},
"title": "{{appTitle}}",
"description": "{{appDescription}}",
"resources": "resources.json",
"ach": "ach",
"dataSources": {
"mainService": {
"uri": "/V2/Northwind/Northwind.svc/",
"type": "OData",
12
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
"settings": {
"odataVersion": "2.0",
"localUri": "localService/metadata.xml"
}
}
}
},
"sap.ui": {
"technology": "UI5",
"icons": {
"icon": "sap-icon://task",
"favIcon": "",
"phone": "",
"phone@2": "",
"tablet": "",
"tablet@2": ""
},
"deviceTypes": {
"desktop": true,
"tablet": true,
"phone": true
}
},
"sap.ui5": {
"flexEnabled": false,
"rootView": {
"viewName": "logaligroup.invoices.view.MainView",
"type": "XML",
"async": true,
"id": "MainView"
},
"dependencies": {
"minUI5Version": "1.66.0",
"libs": {
"sap.ui.core": {},
"sap.m": {},
"sap.ui.layout": {}
}
13
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
},
"contentDensities": {
"compact": true,
"cozy": true
},
"models": {
"i18n": {
"type": "sap.ui.model.resource.ResourceModel",
"settings": {
"bundleName": "logaligroup.invoices.i18n.i18n"
}
},
"": {
"dataSource": "mainService",
"preload": true
}
},
"resources": {
"css": [
{
"uri": "css/style.css"
}
]
},
"routing": {
"config": {
"routerClass": "sap.m.routing.Router",
"viewType": "XML",
"async": true,
"viewPath": "logaligroup.invoices.view",
"controlAggregation": "pages",
"controlId": "app",
"clearControlAggregation": false
},
"routes": [
{
"name": "RouteMainView",
"pattern": "RouteMainView",
14
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
"target": [
"TargetMainView"
]
}
],
"targets": {
"TargetMainView": {
"viewType": "XML",
"transition": "slide",
"clearControlAggregation": false,
"viewId": "MainView",
"viewName": "MainView"
}
}
}
}
}
15
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
1.4. Lista
Ingresamos al archivo de la vista principal de la aplicación
“MainView.view.xml” para agregar un panel y el listado para visualizar la
información que llega de la petición del servicio que se está utilizando.
<Panel>
<List id="invoicesList"
headerText="{i18n>invoicesHead
erList}"
class="sapUiResponsiveMargin"
width="auto"
items="{/Invoices}">
<items>
<ObjectListItem title="{
ShipName} - {Country}"
number="
{ parts : [ {path: 'ExtendedPrice'},
{path: 'selectionScreen>/Currency'}],
type: 'sap.ui.model.type.Currency',
formatOptions: {
16
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
showMeasure : false
}}"
numberUnit="{selectionScreen>/Currency}"
17
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
18
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
1.5. Filtros
19
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
sap.ui.define([
"sap/ui/core/mvc/Controller",
"sap/ui/model/Filter",
"sap/ui/model/FilterOperator"
],
/**
* @param {typeof sap.ui.core.mvc.Controller} Controller
* @param {typeof sap.ui.model.Filter} Filter
* @param {typeof sap.ui.model.FilterOperator} FilterOperato
r
*/
function (Controller, Filter, FilterOperator) {
"use strict";
return Controller.extend("logaligroup.invoices.controlle
r.MainView", {
onInit: function () {
20
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
onClearFilter: function () {
const oModelSelScreen = this.getView().getModel(
"selectionScreen");
oModelSelScreen.setProperty("/ShipName", "");
oModelSelScreen.setProperty("/CountryKey", "");
21
SAP Cloud – Desarrollo de aplicaciones Fiori con SAPUI5 en SAP BAS
SAP Cloud – OData
oBinding.filter([]);
}
});
});
22