SlideShare une entreprise Scribd logo
1  sur  200
Télécharger pour lire hors ligne
April 2014
Develop Applications on Integrated SUSE and SAP Platforms
Build SAP HANA Apps in the Framework of the SAP and SUSE Campaign
Please dial-in NOW to connect to the audio: use
the dial-in telephone number in the invite that
you have received by email.
The participant code is visible in the chat window.
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 2
Disclaimer
This presentation outlines our general product direction and should not be relied on in making a
purchase decision. This presentation is not subject to your license agreement or any other agreement
with SAP. SAP has no obligation to pursue any course of business outlined in this presentation or to
develop or release any functionality mentioned in this presentation. This presentation and SAP's
strategy and possible future developments are subject to change and may be changed by SAP at any
time for any reason without notice. This document is provided without a warranty of any kind, either
express or implied, including but not limited to, the implied warranties of merchantability, fitness for a
particular purpose, or non-infringement. SAP assumes no responsibility for errors or omissions in this
document, except if such damages were caused by SAP intentionally or grossly negligent.
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 3
Today’s Speakers
Thomas Jung
Director, SAP HANA
Product Management
Markus Guertler
Architect & ISV Technical
Manager, SUSE LINUX,
Novell GmbH
Clemens Suter-
Crazzolara
Platform Ecosystems,
SAP AG
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 4
Agenda
SAP HANA Development: Overview
 Platform
 SAP HANA Extended Application Services (XS)
SAP HANA XS Technical Architecture
SAP HANA Studio Development Perspective
Browser Based Development Tools
SAP HANA Native Development Model
Introducing River (time permitting)
SUSE Technology Overview
Advantages for partners (as part of SAP PartnerEdge program for Application Development )
Questions & answers
What is SAP HANA?
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 6
What is SAP HANA?
HW technology innovations
64 bit address space
100 GB/s data throughput
Dramatic decline in
price/performance
Multicore architecture
Massive parallel scaling with many blades
Row and column store
Compression
Partitioning
No aggregate tables
Insert only on delta
SAP SW technology innovations
Convergence of improved hardware economics and technology innovations enables SAP to deliver on its
vision of the real-time enterprise with in-memory business applications
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 7
Columnar Storage
Do More With Less (Space)
• Compression (by factors)
• Read relevant data only
• Main memory structures
• Super-efficient algorithms
• Insert only works fine
• Adding fields is easy
Column StoreRow Store
Row
4
Row
3
Row
2
Row
1
Row
4
Row
3
Row
2
Row
1
Doc
Num
Doc
Date
Sold-
To
Value
Status
Sales
Org
Doc
Num
Doc
Date
Sold-
To
Value
Status
Sales
Org
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 8
DB Layer
Code
Traditional: “Data to Code” New Model: “Code to Data”
Massive data
copies creates
bottleneck
Transfer
Minimum
Result Set
Overview
Traditional Programming Model vs. New Programming Model
Application LayerApplication Layer
DB Layer
Code
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 9
SAP HANA Extended Application Services (XS)
Introduction
What: Small footprint application server / web server / basis
for an application development platform inside SAP HANA
Rationale: Enable application development and deployment
while minimizing architectural “layers”
 Create apps that have an http-based UI (browser, mobile apps)
 Apps run directly on SAP HANA, w/o additional external servers or
components
-> simplified system architecture = low TCO
 Tight integration w/ SAP HANA DB -> best possible performance
Scope: wide range of apps
 Lightweight small web-based applications
 Complex enterprise business applications
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 10
SAP HANA
Client
Development model for SAP HANA based native applications
SAP HANA extended application services offer
 Easy access to SAP HANA database via HTTP-based consumption
 Attractive, dynamic HTML5 UI applications via OData services or by
writing native application-specific code that runs in SAP HANA context
 Powerful search services
 Built-in web server to access static content stored in
SAP HANA repository
Application development following a layered approach
 UI rendering completely in the client (browser, mobile apps)
 Server-side procedural logic in JavaScript
 All artifacts stored in the SAP HANA repository
Presentation logic
Control flow logic
Calculation logicData
XS
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 11
An application‘s foundation
Presentation logic
Control flow logic
Calculation logic
Data
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 12
Performance gains with HANA
Presentation logic
Control flow logic
Calculation logic
Data
HANA
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 13
Modern clients handle presentation logic
Presentation logic
Control flow logic
Calculation logic
Data
HANA
Client
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 14
Push the control flow down!
Presentation logic
Control flow logic
Calculation logic
Data
Client
HANA
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 15
Push the control flow down!
Presentation logic
Control flow logic
Calculation logic
Data
Client
HANA
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 16
The essence of HANA Application Services (XS)!
Presentation logic
Control flow logic
Calculation logic
Data
Client
HANA
XS
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 17
SAP HANA Extended Application Services – Overview
Front-end Technologies
 http/s
 HTML5 / SAPUI5
 Client-side JavaScript
Control Flow Technologies
 OData
 Server-Side JavaScript
 XMLA
Data Processing Technologies
 SQL / SqlScript
 Calculation Engine Functions
 Application Function Library (AFL)
Presentation logic
Control flow logic
Data
Client: Browser or Mobile
SAP HANA
XS
Calculation logic
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 20
vs. native SAP HANA applications
DBMS
Data
application server
app code
3-tier
client
UI rendering
Control
DB I/F
Display
rendered UI
Queries HANA
Data
XS services
Native SAP HANA
client
Control
& Queries
UI rendering
app code
Traditional 3-tier applications (Java, ABAP)
SAP HANA Application
Services Architecture
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 22
Lightweight architecture
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 23
Architecture in more detail: SAP HANA XS Engine Process
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 24
End to end architecture
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 25
Distributed XS
Distributed Configuration
• N active servers in one cluster
• M standby server(s) in one cluster
Approach
• Operational XS Engine service can run on all nodes of the
SAP HANA system
• SAP Web Dispatcher deployed “in front of” SAP HANA
• Round-robin load balancing approach
Benefits
• Maximized concurrency for requests going through XS
Node 1
Node 2
Node 3
Node 4
Standby Node
SharedStorage
XS
XS
XS
XS
XS
SAPWebDispatcher
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 26
Distributed XS: Failover
Distributed Configuration
• N active servers in one cluster
• M standby server(s) in one cluster
Approach
• Operational XS Engine service can run on all nodes of the
SAP HANA system
• SAP Web Dispatcher deployed “in front of” SAP HANA
• Round-robin load balancing approach
• Standby node becomes active and XS on it becomes
operational
Benefits
• Redundancy provides for uninterrupted service (HA)
Node 1
Node 2
Node 3
Node 4
Standby Node
SharedStorage
XS
XS
XS
XS
XS
SAPWebDispatcher
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 27
Authentication for XS
XS Authentication Options:
- Basic Authentication
- Form-based authentication
- SSO (Single-Sign On) via SAP Logon Tickets
- SSO via X.509 (standard for Public Key Infrastructure)
- SSO via SAML 2.0 (Security Assertion Markup Language)
- SSO via SAML2 also for XHR (ajax) - NEW for SPS 07
- SSO via Kerberos - NEW for SPS 07
- Outbound SSO via SAP Assertion Tickets - NEW for SPS 07
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 28
Job Scheduling
• HANA now contains a Job
Scheduler which can run
XSJS and SQLScript
• New Development artifact:
XSJOB
• Extension to the Admin tool
to maintain job definitions
and view job logs
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 29
Job Scheduling – XSCRON syntax
• CRON-like syntax for
controlling job timings and
repetitions
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 30
Content lifecycle management in SAP HANA
Managing “content” in SAP HANA
SAP HANA content defined:
 Not part of the core SAP HANA DB installation itself
 Is delivered by SAP as part of SAP HANA optimized solutions
 Is created in SAP HANA-based development projects (partner, customer)
 Sometimes called “objects” or “artifacts”
Content comprises all kinds of objects, for example:
 Schemas and table definitions
 Attribute views, analytic views and calculation views
 Procedures and privileges
 SQLScript, JavaScript and HTML
 Roles and permissions
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 31
Content lifecycle management in SAP HANA
The repository
The repository and lifecycle management of objects
 Native feature of SAP HANA providing “backend” functionality
for content lifecycle management
 Used to manage various types of design time objects (Content)
 During deployment/activation the design time objects become
runtime objects (Catalog)
Key functions provided by the repository:
 Object versioning
 Namespace concept
 Support for server-based development
SAP HANA Studio
Modeling Perspective
run time
design time
SAP HANA
content
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 32
Delivery Unit
Packages
Views, Procedures,
Privileges, etc.
Content lifecycle management in SAP HANA
Transport of changes in a typical basic transport landscape
SAP HANA
Development
System
SAP HANA
QA/Test
System
SAP HANA
Productive
System
Delivery Unit
Packages
Views, Procedures,
Privileges, etc.
Delivery Unit
Packages
Views, Procedures,
Privileges, etc.
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 33
SAP HANA Application Lifecycle Management (HALM)
Use cases
 New SAP customers
without ABAP-footprint
 SAP customers with the
need for a lightweight
transport management
Simple and easy
 Native SAP HANA transport tool,
which can be used without
additional systems
 Lightweight and easy-to-use tool
 Easy setup and minimal
configuration effort
Constraints
 No central management of
extended system landscapes
 No transport synchronization
to non-HANA content
 No integration in SAP
process tools (ChaRM, QGM)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 34
Change Tracking
• Optional mode for managing content in
a promote-to-production system
landscape (activate in HALM)
• Automatic recording of changes to a
change list
• Allows a developer (or team) to work
on a development artifact and release
the “change” only when the artifact is
ready to promote to the test system
• Provides more precise control over
which objects get transported from the
development system
SAP HANA Studio Development
Perspective
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 36
SAP HANA Studio Development Perspective
Goal: Provide an extensible and
integrated development environment
supporting all development artifacts
necessary for building a HANA
application, covering development,
testing, debugging, supportability and
lifecycle management. As new and
existing technologies are being integrated
into HANA, a seamless integration of
the corresponding external tools in the
HANA Development Workbench should
be possible.
Target customer: HANA Application
Developer (Internal and external
developers). Including content
development scenarios.
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 37
SAP HANA Studio Development Perspective
• Utilizes standard Eclipse projects – HANA
Specific, General SAP Projects, and even
3rd party ones
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 38
SAP HANA Studio Development Perspective
• Standard Eclipse Team Provider interface
for storing all objects into the SAP HANA
Repository
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 39
SAP HANA Studio Development Perspective
• HANA Specific Editors and
Debugger Enhancements (for
example: XSJS – Server Side
JavaScript)
SAP HANA Studio Development
Perspective Workflow
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 41
Create a new Eclipse Project from within SAP HANA Studio
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 42
This is a “true” Eclipse Project persisted on the developers local
machine
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 43
The project is then linked to the SAP HANA Repository
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 44
After linked to a Repository, specific HANA packages are added as
folders
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 45
The SAP HANA Repository is then treated like Git or Perforce and
Eclipse checks out the content for editing
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 46
There is also an SAP HANA Repository Browser – entire projects
can be checked out from there as well
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 47
The Repository content is copied to the developer’s machine and
edited locally and offline
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 48
Standard Eclipse editors as well as special SAP provided editors
are then utilized
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 49
Upon saving in any Eclipse editor, a commit back to the SAP HANA
Repository is done automatically
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 50
Full source merge, rebase, conflict resolution, and version
management is built in
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 51
Changes are inactive when first committed; inactive testing is
supported as of SP7
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 52
We also have direct interaction with other Eclipse based tools (such
as ABAP Development Tools and SAPUI5)
SAP HANA Browser Based
Development Tools
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 54
SAP HANA Web-based Development Workbench
• SP6 introduced two
separate browser based
IDEs
• SP7 merges both of
these back together into
a single application with
three sub-tools:
• Editor
• Catalog
• Security
SAP HANA Web-based
Development Workbench
Editor
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 56
SAP HANA Web-based Development Workbench
Editor
• completely browser
based IDE for
lightweight creation and
editing of development
objects and debugging
without the need for
SAP HANA Studio
• Direct URL:
/sap/hana/xs/editor/
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 57
SAP HANA Web-based Development Workbench
Editor
• Access to the full SAP HANA
Repository in a browser
• Create, delete, and rename
packages and files
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 58
SAP HANA Web-based Development Workbench
Editor
• Code Editors with
• Syntax Coloring
• Code Folding
• Client side and server side
checks
• No need to check out content
– direct editing and activation
upon save
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 59
SAP HANA Web-based Development Workbench
Editor – Application Templates
• Application creation wizards
which create the package as
well as the starting artifacts
• Both mobile and desktop
SAPUI5 templates with the
correct bootstrapping for SAP
HANA
• Automatic generation of
.xsapp and .xsaccess files
• Special UI5 templates for
injection into existing HTML
pages as well
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 60
SAP HANA Web-based Development Workbench
Editor – Direct Test
• Test html pages, xsjs, and xsodata
services directly from the editor in
the browser
• Including special mobile device
emulation modes for testing
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 61
SAP HANA Web-based Development Workbench
Editor – XSJS Debugging Support
• Set Breakpoints
from the editor
• Interactive server
side debugger
running in-place in
the browser
• View and change
variable values
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 62
SAP HANA Web-based Development Workbench
Editor – Versions
• Access to version management
of objects
• Two way comparison editor
• Select any two server versions
for comparison
SAP HANA Web-based
Development Workbench
Catalog
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 64
SAP HANA Web-based Development Workbench
Catalog
• Also access the SAP HANA
Catalog
• View Tables, Views,
Procedures, Functions, etc
and their Content
• Direct URL:
/sap/hana/xs/catalog/
SAP HANA Web-based
Development Workbench
Security
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 66
SAP HANA Web-based Development Workbench
Security
• Also access User and Role
Details
• Assign roles to users and
perform basic user
administration tasks
• Direct URL:
/sap/hana/xs/security/
SAP HANA Web-based
Development Workbench
Trace
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 68
SAP HANA Web-based Development Workbench
Trace
• Access to the developer
centric server trace files
• Direct URL:
/sap/hana/xs/trace/
SAP HANA Native Development
Model
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 70
Development model – general rules
SAPUI5
UIS
XSJS XSODATA
SINA
XSXMLA
CDS/HDBDD
SQLScript
SQL
Views
AFL
HDBTable HDBRole
• UI Rendering completely in the
Client
• Server-side procedural logic in
JavaScript
• All artifacts stored in the SAP
HANA Repository
•
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 71
Development model
Data Intensive Logic
• SQLScript / SQL
• HANA Views
• Attribute
• Analytical
• Calculation
• Application Function Library (AFL)
• Business Function Library (BFL)
• Predictive Analytics Library (PAL)
SAPUI5
UIS
XSJS XSODATA
SINA
XSXMLA
CDS/HDBDD
SQLScript
SQL
Views
AFL
HDBTable HDBRole
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 72
Overview
What?
SQLScript is
 An interface for applications to access SAP HANA
 Extension of ANSI Standard SQL
 Language for creating stored procedures in HANA
 Declarative Logic
 SELECT queries
 Calculation Engine(CE) functions
 Orchestration Logic
 Data Definition Language(DDL)
 Data Manipulation Language(DML)
 Assignment & imperative logic
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 73
Overview
Why?
Main goal is to allow the execution of data intensive calculations inside SAP HANA
Two reasons why this is required to achieve the best performance:
 Eliminate data transfer between database & application tiers
 Calculations need to be executed in the database layer to get the maximum benefit from SAP HANA
features such as fast column operations, query optimization and parallel execution.
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 74
Overview
Advantages
Compared to plain SQL queries, SQLScript has the following advantages:
 Returns multiple results, while a SQL query returns only one result set
 Complex logic can be broken down into smaller chunks of code. Enables modular programming,
reuse and a better understandability by functional abstraction. For structuring complex queries,
standard SQL only allows the definition of SQL views. However, SQL views have no parameters
 SQLScript supports local variables for intermediate results with implicitly defined types. With
standard SQL, it would be required to define globally visible views even for intermediate steps
 SQL Script has control logic such as if/else that is not available in SQL
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 75
Front-end Technologies
 http/s
 HTML5 / SAPUI5
 Client-side JavaScript
Control Flow Technologies
 OData
 Server-Side JavaScript
 XMLA
Data Processing Technologies
 SQL / SqlScript
 Calculation Engine Functions
 Application Function Library (AFL)
Presentation logic
Control flow logic
Data
Client: Browser or Mobile
SAP HANA
XS
Calculation logic
Overview
Application Development Technologies
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 76
DB Layer
Code
Traditional: “Data to Code” New Model: “Code to Data”
Massive data
copies creates
bottleneck
Transfer
Minimum
Result Set
Overview
Traditional Programming Model vs. New Programming Model
Application LayerApplication Layer
DB Layer
Code
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 77
Overview
SQLScript Code Example
BEGIN
...
-- Query 1
product_ids = select "ProductId", "Category", "DescId"
from "SAP_HANA_EPM_DEMO"."sap.hana.democontent.epm.data::products"
where "Category" = 'Notebooks'
or "Category" = 'PC';
-- Query 2
product_texts = select "ProductId", "Category", "DescId", "Text"
from :product_ids as prod_ids
inner join "SAP_HANA_EPM_DEMO"."sap.hana.democontent.epm.data::texts"
as texts on prod_ids."DescId" = texts."TextId";
-- Query 3
out_notebook_count = select count(*) as cnt from
:product_texts where "Category" = 'Notebooks';
-- Query 4
out_pc_count = select count(*) as cnt from
:product_texts where "Category" = 'PC';
...
END;
Notebooks PCs
Products
Q3 Q4
Q2
Q1
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 78
Overview
Parallel Processing
SELECT statements are executed in parallel unless:
 Any local scalar parameters and variables are used in the procedure
 Any read/write procedures or DML/DDL operations are executed
 Any imperative logic is used within the procedure, such as IF statements of FOR loops
 Any SQL statements are used that are not assigned to a intermediate variable or parameter
Wizard, Editor & Viewer
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 80
 “Stored Procedure” under “Database
Development”
 Two file formats
 .hdbprocedure is the new artifact type
which will be the recommended file
format moving forward.
 .procedure is still supported, but has
been deprecated and eventually will be
removed.
Wizard, Editor & Viewer
Stored Procedure Wizard
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 81
Wizard, Editor & Viewer
Procedure Templates
 Create procedure templates(.proceduretemplate file)
 Template parameters can be used as placeholders
 Consumable from Stored Procedure wizard dialog,
currently only supported by .procedure file format
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 82
 Procedures based on templates inherit the template parameters
 Changes to templates are reflected in the consuming procedures
Wizard, Editor & Viewer
Procedure Templates
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 83
Wizard, Editor & Viewer
Editor Integration with SAP HANA Development Perspective
 Source code based editor
 Client side syntax checking
 Code hints
 Syntax highlighting
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 84
Wizard, Editor & Viewer
Procedure Code Breakdown
 Schema definition – developer can define which schema in which the run-time object of the
procedure will be created
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 85
Wizard, Editor & Viewer
Procedure Code Breakdown
 Package hierarchy and procedure name – contains the complete package hierarchy as well as the
name of the procedure, separated by double colon(::)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 86
Wizard, Editor & Viewer
Procedure Code Breakdown
 Input/output parameter definition – developer can define both input parameters with default values as
well as output parameters. Parameters can reference simple types, or global types defined via CDS
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 87
Wizard, Editor & Viewer
Procedure Code Breakdown
 Metadata declarations: developer can set language(SQLScript/R), security(invoker/definer),
default schema and read/write access
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 88
Wizard, Editor & Viewer
Procedure Code Breakdown
 Script body – developer writes the body of the script between the BEGIN and END statements
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 89
 Procedures in the catalog can now be viewed in the SQLScript editor in read-only mode.
 Allows for setting/removing of breakpoints within the runtime object.
Wizard, Editor & Viewer
SQLScript Procedure Viewer
Debugger
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 91
Debugger
Debug Perspective
 Resume/Terminate
 Variable evaluation
 Breakpoint management
 Break on break-points
 Basic step debugging
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 92
 Define procedure to be
debugged
 Debug both repository
and catalog procedures
Debugger
Debug Configuration
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 93
 Debug with input parameters
Debugger
Debug Configuration
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 94
Debugger
External Debugging
 Attach to running session
 By connection ID
 By application user ID
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 95
Debugger
Debug Compilation Options
 Full debug compilation mode
 Debug any procedure within the
call stack
SQLScript Language Features
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 97
SQLScript Language Features
Declarative Logic
 Allows the developer to declare the data selection via SELECT or CE(Calculation Engine) functions
 Developer defines the what
 Engine defines the how and executes accordingly
 Massive parallelized
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 98
SQLScript Language Features
Imperative Logic
 Allows developer to control
the flow of the logic within
SQLScript.
 Scalar variable
manipulation
 DDL/DML logic
 WHILE loops
 Branching logic based on
some conditions, for
example IF/ELSE
 Executed exactly as
scripted, procedurally
 No parallel processing
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 99
SQLScript Language Features
Arrays
 Allows the developer to define and
construct arrays within SQLScript
 Set elements
 Return elements
 Remove elements
 Concatenate two arrays
 Turn array into a table
 Turn a column of a table into an
array
 Return cardinality of an array
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 100
SQLScript Language Features
Dynamic Filtering
 Allows developers to apply a dynamic
WHERE clause to SELECT statements
 Both database tables and intermediate
table variables are supported
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 101
SQLScript Language Features
Exception Handling
 Allows developer to handle SQL errors gracefully
 For example, handle duplicate insertion and pass message to caller
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 102
SQLScript Language Features
Cursors
 Allows developers to iterate over a result set and perform row-based processing and calculations.
User Defined Functions(UDF)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 104
User Defined Functions
Overview
Language used within the body is SQLScript, no other languages are supported
Functions are read-only, side effect free
Two types:
 Table User Defined Function
 Scalar User Defined Function
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 105
 New repository artifact(.hdbtablefunction) and wizard
 Currently a simple text editor, more robust editor features are planned for a future support package
User Defined Functions
Table UDF
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 106
User Defined Functions
Table UDF
 Can have any number of input
parameters
 Returns exactly one table
 Table operations are allowed within
the body
 Consumed in the FROM clause of a
SELECT statement
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 107
 New repository artifact(.hdbscalarfunction) and wizard
 Currently a simple text editor, more robust editor features are planned for a future support package
User Defined Functions
Scalar UDF
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 108
User Defined Functions
Scalar UDF
 Can have any number of input
parameters
 Can return multiple values
 Expressions are allowed within the
body
 No table operations such as
CURSOR, CE functions or Array
operations
 Input parameters can not be table type
 Consumed from the field list or the
WHERE clause of the SELECT
statement
Triggers
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 110
Triggers
Overview
 Special type of stored procedure that
automatically executes when an event
occurs in the database server, for
example upon INSERT of a table
 Management of objects can only be done
via SQL Console. Support for storing the
artifacts in the repository is coming in a
future support package
R Language Integration
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 112
An open source software language and environment for
statistical computing and graphics with over 3000 add-on
packages. http://www.r-project.org/
The packages cover wide range topics -
 Cluster Analysis & Finite Mixture Models
 Probability Distributions
 Computational Econometrics
 Empirical Finance
 Statistical Genetics
 Graphic Displays, Dynamic Graphics, Graphic Devices
& Visualisation
 Machine Learning & Statistical Learning
 Medical Image Analysis
 Multivariate Statistics
 Natural Language Processing
 Statistics for the Social Sciences
 Time Series Analysis
R Language
What is Open Source R
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 113
Join
OP
ROP
OLAP
OP
Calc. Engine
R External
Packages
(Forecasting,
Parallelism,
statistics, etc.)
RClient
SAP RHANA
Package
Send data
and R script
NewDB Space OpenSource R Space
1
3
NewDB R Integration Open Source R
2 Run the R scripts
Get back the
result from R to
SAP HANA
R Language
Integration with HANA Database
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 114
Development model
Repository Representation
of Catalog Objects
• Schemas: HDBSchema
• Tables: HDBTable
• Views: HDBView
• Structures: HDBStructure
• Sequences: HDBSequence
• Roles: HDBRole
SAPUI5
UIS
XSJS XSODATA
SINA
XSXMLA
CDS/HDBDD
SQLScript
SQL
Views
AFL
HDBTable HDBRole
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 115
Development model
CDS – Core Data Services
• Data Definition Language
• Query Language
• Expression Language
SAPUI5
UIS
XSJS XSODATA
SINA
XSXMLA
CDS/HDBDD
SQLScript
SQL
Views
AFL
HDBTable HDBRole
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 116
CDS/HDBDD Syntax Changes - Associations
• Associations define
relationships between
Entities (tables)
• Not yet integrated into the
database/SQL but can be
referenced when defining
views within the same CDS
object
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 117
CDS/HDBDD Syntax Changes - Views
• CDS syntax expands to
include the definition of
views
• Views can utilize the defined
associations between
entities
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 118
CDS/HDBDD Graphical Editor
• Added graphical
representation of the
HDBDD Entities and their
associations
• Graphical mode is ready
only. All changes made to
the source code editor
• Navigation into the source
editor from the graphical
display
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 119
Development model
XSODATA
• Low coding OData REST
service generation framework
• based upon existing tables and
views
• Create/Update/Deletion
operations support added in
SPS 06
SAPUI5
UIS
XSJS XSODATA
SINA
XSXMLA
CDS/HDBDD
SQLScript
SQL
Views
AFL
HDBTable HDBRole
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 120
OData JavaScript Exits – New in SPS 07
• Processing exits can reference xsjslib
files and specific JavaScript functions
• The database connection and
temporary tables with the before and
after values are passed to this
function
• Particularly useful for server-side
validations (but open for other use
cases too)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 121
Development model
Server Side JavaScript
(XSJS)
• Light weight procedural logic
• Openness
• Reuse
• One Language – Client and
Server Side
• Widespread Knowledge
SAPUI5
UIS
XSJS XSODATA
SINA
XSXMLA
CDS/HDBDD
SQLScript
SQL
Views
AFL
HDBTable HDBRole
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 122
SAPUI5
• Enterprise-Ready HTML5 Rendering
Library
• Completely client-side UI
• Open and flexible
• Web development skills (HTML, CSS3,
JavaScript)
• Extensibility and Theming
• 3rd Party JavaScript Integration
• Targets Multiple Devices
• Smartphone, Table, Desktop
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 123
Introduction
Demand and requirement
Growing demand for
 business insight everywhere on any device
 business UIs following known End User Paradigms
 applications with native look & feel
 high client side interactivity and performance
 seemless integration of modern web standards and functionality (Social media, web 2.0, …)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 124
Introduction
HTML5 definition versus common understanding
The official definition of HTML5
 is a markup language for structuring and presenting content for the World
Wide Web, …. It is the fifth revision of the HTML standard (created in 1990
and standardized as HTML4 as of 1997)
The commonly used definition
 Integrated Multimedia support
 Graphics and Charts (Canvas / SVG)
• New JavaScript APIs (e.g. Web SQL, Web Storage, Web Workers, …)
 ARIA (accessibility)
• OpenAJAX (interoperability)
• JIT JavaScript compilation
• CSS3
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 125
Key capabilities
Features and benefits
Eclipse-Based Designtime
Enterprise Readiness
Well known and easy to learnTimeless SAP Data Consumption
Great Productivity
Unmatched Extensibility
Powerful Theming & Branding
Any Screen on Any Device
Cutting-Edge Controls
Based on STANDARDSFoster INNOVATIONDelight USERS
Openess & FlexibilityFast Release CyclesEfficiency & Performance
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 126
Key capabilities
Features and benefits
Runs on Various SAP and Non-SAP Platforms
SAP HANA XS
SAP NetWeaver AS ABAP
Open Source Platforms
SAP NetWeaver Cloud
SAP NetWeaver AS JavaSybase Unwired Platform
Built with Leading Web Technologies
jQuery CSS3 OData LESS D3.js ARIAOpenAJAXHTML5
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 127
Key capabilities
Development environment
Homogeneous Set of Eclipse Tools and Editors
 Small learning curve for web developer
 UI Screen & Application development
 HTML5 templates support
 Shipped via SAP release train for Eclipse (SRTE)
 NWDS support
 Outlook:
− WYSIWYG Design of HTML5 Applications
− Web based IDE
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 128
Architecture overview
SAPUI5 components
Controls
jQuery.UI
SAPUI5
Libraries
SAPUI5
Core
jQuery
(Static) Web Server
SAP jQuery Plug-ins
Event Resources Device LoggerUtils
UI
Data
Binding
Control
Base
Render
Manager
Themes Mobile Desktop
Mobile Desktop
Resource Handler (optional)
 Optional server component
 Core JS Framework including jQuery
 Extension libraries
– Controls
– Themes
 “Helper” assets like e.g.
– Less
– Code minimizer jQuery Mobile
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 129
The SAP HANA repository
• Object management, versioning and transport
• Software component delivery and patching
• Built-in support for translatable texts
• Support for server based development
Introducing SAP River
TechEd CD103, 2013
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 131
Creating an application
T1 T2 T3
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 132
Creating an application
T1 T2 T3
V1
V2
cv
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 133
Creating an application
T1 T2 T3
V1
V2
data
model
(DB)
cv
sp
trigger
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 134
business
logic (MVC)
Creating an application
T1 T2 T3
V1
V2
data
model
(DB)
cv
sp
control
trigger
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 135
business
logic (MVC)
Creating an application
T1 T2 T3
V1
V2
data
model
(DB)
cv
sp
control
trigger
access control (RBAC)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 136
business
logic (MVC)
Creating an application
data model
T1 T2 T3
V1
V2
data
model
(DB)
cv
sp
control
trigger
SQL over xDBC
access control (RBAC)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 137
business
logic (MVC)
Creating an application
data model
T1 T2 T3
V1
V2
data
model
(DB)
cv
sp
control
view
trigger
OData over HTTP
SQL over xDBC
access control (RBAC)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 138
business
logic (MVC)
Creating an application
data model
T1 T2 T3
V1
V2
data
model
(DB)
app
mob
app
cv
sp
control
view
trigger
client
OData over HTTP
SQL over xDBC
access control (RBAC)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 139
Creating an application, using SAP River
T1 T2 T3
V1
V2
data model
River
cv
sp
business
logic
trigger
app
mob
app
client
OData over HTTP
access control
Fiori, UI5
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 140
SAP River
• A development environment for rapidly building complete SAP HANA native applications
– Professional Developers (initial focus)
– Casual Developers
 Integrated program specification of the data model, business code and access control
enables accelerated development
 River interoperates and cross-compiles into native HANA objects
(tables, views, procedures …)
 The data model only exists in the data-base,
no ODBC-like connection, data copying or ORM
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 141
HANA XS development model
1. Develop & Share
2. Activate & Test
3. Deploy
HANA DB
activate
Activation
DB objects
SScript
OData
Auth
XSJS
roles
River
compiler
stored
procedures
tables
views
package & deploy
studioRiver Editor
(on-premise)
browserRiver web
Editor
(Cloud)
browser
Studio
Repository
.rdl
business app
developers
.rdl
workspace,
save
HANA based development
Object management & versioning
Delivery and patching
The SAP River Language
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 143
Demo scenario: "River Airlines"
River Airlines Reservation System
 List all flights
 Book a seat
 …
Implementation
Flight
flight id, from/to,
list of seats
Passenger
passenger details,
flight & seat reservation
Seat
status
City
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 144
Entities and associations: the data model
entity Flight {
key element flightId: String(8);
element flightNum: String (3);
element cityFrom: association to City;
element cityTo: association to City;
element depDate: LocalDate;
element depTime: LocalTime;
element flightSeats: association[0..*] to Seat via backlink flight;
}
entity Seat {
key element flight: association to Flight;
element id: SeatNum;
element isExitRow: Boolean default false;
element Status: enum {free; reserved;};
}
Primitive types,
enumerations,
structured types
keys
Associations
Default and
calculated values
 Use "E/R modeling" to define your data model
– Entities correspond to database tables
– Associations describe relations between tables
Image: iStockPhoto, licensed
Demo: Entities
146© 2013 SAP AG or an SAP affiliate company. All rights reserved.
https://3im.asia.sap-river.com/river/
@OData application MyFirstRiverApp {
// ----------------------------------------------- Data model
// Flights travel between cities and have seats
// Passengers book seats on flights
entity Flight {
key flightId: String(8);
flightNum: String(3);
opened: Boolean default false;
depCity: association to City;
arrCity: association to City;
depDate: UTCTimestamp;
depTime: LocalTime;
planeCode: String(10);
seatList: association[0..*] to Seat via backlink flight;
}
entity Seat {
flight: association to Flight;
rowNum: Integer;
seatType: SeatType;
seatLetter: String(1);
isExitRow: Boolean default false;
seatStatus: SeatStatus;
}
entity Passenger {
flight: association to Flight;
passengerName: String(35);
passengermail: String(35);
assignedSeat: association to Seat;
}
entity City {
cityCode: String(3);
cityName: String(35);
}
type SeatType: String(6) enum {
window = 'Window';
middle = 'Middle';
aisle = 'Aisle';
}
type SeatStatus: String (15) enum { free; reserved; };
} // riverflights
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 147
Actions: the business logic
entity Seat {
flight: Association to Flight;
seatNum: SeatNum;
isExitRow: Boolean default false;
seatStatus: SeatStatus;
}
entity Flight {
…
flightSeats: Association[0..*] to Seat via backlink flight;
action GetEmptySeats() : Seat [] {
return select * from this.flightSeats
where Seat.seatStatus = SeatStatus.free;
}
}
this
 Actions describe the application's business logic
– Local variables (scalar, streams)
– Control statements (if, foreach, apply…)
– Integrated SQL queries
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 148
Extended queries
entity Seat {
flight: Association to Flight;
seatNum: SeatNum;
isExitRow: Boolean default false;
seatStatus: SeatStatus;
}
entity Flight {
…
flightSeats: Association[0..*] to Seat via backlink flight;
action GetEmptySeats() : Seat [] {
return select * from this.flightSeats
where Seat.Status = SeatStatus.free;
}
}
– Use entity associations naturally in queries:
extending SQL!
=
__temp16 = select T1. … from Flights as T0
inner join "flights.Seat" as T1
on (T0."flightId" = "T0:flightSeats"."flight.flightId")
where "FlightId" = 12345;
__retval__ = select T2. … from :__temp16 as T2 where T2."seatStatus" = 'free';
__FlightId Status
FlightId SeatNum
id
Flight
temp16
Seat
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 149
Access control
role Dispatcher;
entity Flight {
key flightId: String(8);
flightNum: String (3);
cityFrom: Association to City;
cityTo: Association to City;
depDate: LocalDate;
depTime: LocalTime;
flightSeats : Association[0..*] to Seat via
backlink flight;
}
action OpenNewFlight() accessible by Dispatcher {
…
}
entity Seat {
……
action save() accessible by Flight;
…
 Define roles
 CRUD and call access privileges
 Assign run-time users to roles
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 150
Interoperability
entity employee {
action is_legal_SAP_email(hdr: String): Boolean as HANAJS {%
var re = /^S+@sap.(com|corp)$/;
return re.test(v_hdr);
%}
}
entity Company as alias to sap.hana.catalog.ExtTable.T001;
view Company as SELECT FROM sap.hana.catalog.ExtTable.T001 {
BUKRS as companyCode, BUTXT as companyName
}
let StockQuotes: StockQuote[] = sap.hana.repository.XSStock.fetcher.getQuotes('http://www.nasdaq.com/quotes');
breakouts: inline
JavaScript or
SQlScript
alias
abstraction view
Call XS JS directly
In Summary
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 152
The SAP HANA Programming Model
1. SAP UI5-based design language and tools for clients
2. OData: universal, standard web-based data interface
3. SAP River: new XS native application development
environment: use a single integrated language for data
modeling, business logic and access control
o Eliminates data model duplication – no ORM
o Interoperates with and compiles into other SAP HANA
native development objects for ultimate flexibility / reuse
mobile
Entity
Data
Model
HANA
SAP River
browsers
client apps
OData
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 153
More About River
SAP River is part of SAP HANA SPS7
To learn more, or to participate in the
SAP River Early Adoption Program:
 Please contact SAPRiver@sap.com
 Check out SAP River at http://SAP-River.com
Thank you!
Wrap Up
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 155
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 156
Further Information
SAP Education and Certification Opportunities
HANA Academy
openSAP Course
Watch SAP TechEd Online
www.sapteched.com/online
SAP Public Web
SAP HANA
SAP HANA Developer Center
SAP HANA Developer Online Help
Appendix: SAP HANA UI Integration
Services
Overview and roadmap
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 158
Agenda
SAP HANA UI Integration Services
Using SAP HANA UI Integration Services
Roadmap
Summary
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 159
Trends and expectations in the market
User Experience
 Demand for attractive user experience
 Responsive design and high interaction
 High user productivity
 Real-time access to critical information
 Analytical applications
 Web and native applications on any device
Global trends
 Cloud
 Mobile
 Social
 Information (big data)
Development
 Emergence of SAP HANA platform for in-
memory, high-performance applications
 Agility, fast innovation cycles
 Developer efficiency and reduced TCD
 Consistency across applications
 Open standards and open source
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 160
Business perspective
Addressing the needs of various business roles
 Launch sites and overview dashboards with analytics or business applications
to quickly analyze business data in a central, personalized work environment
 Drill down into details if needed
 Structure business content and make applications, reports and information
available to end users based on their business role
 Enrich standalone business applications with contextual information & services
 Efficiently develop high-performance, interactive applications based on SAP
HANA leveraging core services
End user
Designer
Developer
Use &
personalize
Configure &
enhance
Develop
SAP HANA UI Integration Services
Overview
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 162
SAP HANA UI Integration Services
Value Proposition
With SAP HANA UI Integration Services, developers and designers can easily create and design application sites
based on HANA applications through efficient development using standardized services and consistent UI
patterns to support end-to-end business scenarios with harmonized user experience across applications.
 Provides end users a state-of-the-art user experience and
access to seamlessly integrated HANA native applications
 Enables designers to easily organize applications and
widgets into sites via intuitive design environment
 Gives developers a simple way to use standardized services
for creating application sites and integrating widgets within
their familiar SAP HANA studio environment
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 163
Benefits
 Consistent user interface and state-of-the-art user experience
 Unified access point to assigned sites and applications
 Options to personalize preferences
 Quickly compose and configure application sites via site designer
 Aligned user experience by using same paradigms for widget configuration
 Allow easy extensibility of custom-build or partner applications
 Simple way to use standardized services as part of HANA native (XS) development
environment for creating well-performing, two-tier applications
 Easily build and reuse HTML5-based applications using widgets
 Design the application UI with the design environment embedded in SAP HANA studio
 Create and manage all artifacts directly from SAP HANA studio and repository
 Allow the business developer to focus on the business apps
End user
Developer
Designer
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 164
SAP HANA UI Integration Services - overview
 Sites and page building: state-of-the-art design environment of
for managing sites, page navigation, layout and content
 Property persistence: widget can define properties that are
persisted via customization
 Personalization: persistency of widget properties on user level
 Publish-Subscribe: eventing mechanism allowing data
interchange between widgets (mashups)
 Context: properties can be reflected in the URL allowing
bookmarking and sharing
 OpenSocial: integration of OpenSocial-compliant widgets
SAP HANA Platform
UI Integration Services
Sites &
navigation
Properties
Personali-
zation
Eventing Context
Widget
catalog
Detailed information about the UI services and APIs are described in the “SAP HANA Developer Guide” (http://help.sap.com/hana_platform)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 165
End user perspective
Quick access to interactive application sites
Native HANA
application
wrapped as
widget
Application site
with interactive
widgets
Full flexible
page layout
Flexible
navigation
based on the
user’s roles
SAP HANA UI Integration Services
End-to-end scenario for using UI Services
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 167
Creating a native SAP HANA (XS) application and application site
Development process overview
Developer Designer End User
Develop and enrich
native applications
leveraging UI services
Create application site
in HANA studio with full
support of the lifecycle
Adjust application site
provided by a developer
Change site layout, add
widgets and configure
properties
Optimize the site to
match end user needs
Assign end users who
are allowed to access
the site
Use application site
Personalize the site
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 168
SAP HANA native applications development flow
Detailed information for developers is available in the “SAP HANA Developer Guide” via http://help.sap.com/hana_platform
• DB tables
• Analytical
objects
• Data restriction
1. Define data
artifacts
• Control flow
logic
• Data services
• Calculation logic
2. Implement
business logic • Shell
• Navigation
• Theming
• …
3. Implement
user interface
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 169
Development environment
SAP HANA UI Integration Services provide tools
and client-side APIs for development of widgets
and integration into application sites:
 UI integration services as dedicated delivery unit
 SAP Hana repository plug-ins
 Wizards for SAP HANA studio
How can developers integrate an existing HANA
application as widget into an application site?
1) Wrap the application as an OpenSocial component
2) Use wizard to turn it into a widget
3) Create an application site object
4) Open the application site in the design environment
and add a widget
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 170
Developer perspective
Integrated development environment in SAP HANA studio
Creation wizard for
application sites
and widgets
Application site
Widget
Editor for using UI
services API in
your code
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 171
Designer perspective
Intuitive design environment for managing application sites
Web-based editor for creating and organizing application sites and content
Widget catalog
Standalone
native
application
wrapped as
widget
Application site
Full flexible page
layout
Manage site
layout
Manage
navigation
structure
Manage site
properties
Adding widgets
to the site
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 172
Step-by-step
 Begin the UI implementation with a UX wireframe describing the entire application and site structure
 Should include all required screens and the entire interaction flow
Define UX mockup Put it all together
and launch!
Design complete
application site
Import or develop
widgets
Identify UI
components
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 173
Step-by-step
 Break down the mockup to identify distinct UI components (building blocks)
 Can either be simple controls or more complex elements
 Different components should be loosely coupled
Define UX mockup Put it all together
and launch!
Design complete
application site
Import or develop
widgets
Identify UI
components
Search box widget
Table Widget
Details Widget
Pie Chart
Widget
Navigation Bar (Shell) Navigation Bar (Shell)
Exact Parameter Selector Widget
Bar Chart Widget
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 174
Step-by-step
 Build UI components as widgets directly from the HANA native IDE (HANA studio)
 Use third party widgets for selected components
 Define widget customizable properties to allow optimal flexibility and reusability
 Define widget personalizable properties to allow end users to persist preferences
 Define events widgets can publish or subscribe to allowing widget communication
 Define application context attributes reflected in the URL
Define UX mockup Put it all together
and launch!
Design complete
application site
Import or develop
widgets
Identify UI
components
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 175
Step-by-step
Define UX mockup Put it all together
and launch!
Design complete
application site
Import or develop
widgets
Identify UI
components
Table Widget
Details Widget
Search box widget
Pie Chart
Widget
Exact Parameter Selector Widget
Bar Chart Widget
Personalizable
attributes
Context
attributes in URL
Widget
interaction
3rd party widget
Widget
interaction
Customizable
widget
properties
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 176
Step-by-step
 Create the application site directly from SAP HANA studio as the application shell
 Edit the application site using the design environment
 Add, rename, reorder and manipulate sites to define the application site hierarchy
 Add widgets to pages and customize them
 Reposition and resize widgets and refine the layout to reach a pixel perfect experience
Define UX mockup Put it all together
and launch!
Design complete
application site
Import or develop
widgets
Identify UI
components
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 177
Step-by-step
Define UX mockup Put it all together
and launch!
Design complete
application site
Import or develop
widgets
Identify UI
components
Adjust site
hierarchy and
manage pages
Add widgets from
gallery
Pixel perfect layout
definition
Customize widgets
(width, properties)
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 178
Step-by-step
 Refine and iterate as needed
 Activate the application site from SAP HANA studio
 Provide the link to your end users to access the site
Define UX mockup Put it all together
and launch!
Design complete
application site
Import or develop
widgets
Identify UI
components
SAP HANA UI Integration Services
Roadmap
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 180
Planned InnovationsToday Future Direction
SAP HANA UI Integration Services
Roadmap
End user
 Easy access to and navigation
between (native) applications
Designer
 Embedded WYSIWYG design
environment to organize application
sites and widgets
 Manage site layout, hierarchy and
properties
Developer
 Integrated development
environment in SAP HANA studio
 Wizards for creating artifacts such
as application sites and widgets
 Public APIs for consistent UIs
Core Services
 Additional services supporting
developer scenarios, e.g.
navigation, branding, layout
personalization in the shell
Shell
 Support of additional shell(s)
 Support of catalogs from different
sources
Widgets
 Re-useable templates for widgets
to support common requirements
e.g. responsive tables
Future enhancements
 Extension of the developer story to
an integration point for end users
on SAP HANA stack
 Integration of SAP HANA and non-
HANA applications
 Service integration with other SAP
solutions, e.g. SAP JAM
 Usage of smart, contextual services
to provide the right content in the
right context to end users
This is the current state of planning and may be changed by SAP at any time.
This presentation and SAP‘s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document is provided without
a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement
SAP HANA SP6
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 181
SAP HANA UI Integration Services
What’s new in SAP HANA SPS7
 Enhanced Catalog Services allowing to retrieve
non-widget content
 Widget Directory leveraging the new catalog
service enhancements
 New permissions mechanism on Application Sites
 Introduction of a new navigation service
 Supporting the Golden Reflection Theme and the
new Blue Crystal Theme
 Demo content available as part of the SHINE
demo package
Summary
Roadmap
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 183
Summary
With SAP HANA UI Integration Services, developers and designers can easily create and design application
sites based on HANA applications through efficient development using standardized services and consistent
UI patterns to support end-to-end business scenarios with harmonized user experience across applications.
SAP HANA XS
UI Integration Services
Page
building
Properties
Personali-
zation
Eventing Context
Widget
catalog
 Provides end users a state-of-the-art user experience and
access to seamlessly integrated HANA native applications
 Enables designers to easily organize applications and
widgets into sites via intuitive design environment
 Gives developers a simple way to use standardized services
for creating application sites and integrating widgets within
their familiar SAP HANA studio environment
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 184
5 easy steps to quickly get started
1) Watch the tutorial videos on SAP HANA Academy
2) Download SAP HANA developer edition
3) Join OpenSAP course to learn more and run the exercises
4) Learn more by reading the comprehensive developer guide and latest enhancements
5) Share your feedback with the SAP HANA developer community
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 185
Further Information
Overview
Experience SAP HANA http://www.saphana.com/welcome
SAP HANA In Memory http://scn.sap.com/community/hana-in-memory
HANA Startup Focus Program http://www.experiencesaphana.com/docs/DOC-1781
Twitter @SapDevs, #sapdevcenter
Developer Information
SAP HANA Developer Center http://scn.sap.com/community/developer-center/hana and
http://developers.sap.com/hana
SAP HANA Help Center http://http://help.sap.com/hana_platform (Release Notes, Developer Guide)
SAP HANA Academy http://academy.saphana.com / http://www.saphana.com/docs/DOC-3123
SAP HANA Developer Edition http://scn.sap.com/docs/DOC-31722
OpenSAP courses https://open.sap.com
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 186
SAP and SUSE
15 successful years of co-innovation
asdf
The recommended
and supported OS
for SAP HANA
Reliability Scalability Performance Security
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 187
Agenda
SAP HANA Development: Overview
 Platform
 SAP HANA Extended Application Services (XS)
SAP HANA XS Technical Architecture
SAP HANA Studio Development Perspective
Browser Based Development Tools
SAP HANA Native Development Model
Introducing River (time permitting)
SUSE Technology Overview
Advantages for partners (as part of SAP PartnerEdge program for Application Development )
Questions & answers
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 188
SUSE Portfolio
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 189
SUSE Linux Enterprise Server
What Do You Need to Deliver IT as a Service?
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 190
Key Features and Benefits
SUSE Linux Enterprise Server
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 191
Large Ecosystem, More Choices
SUSE Linux Enterprise Server
Available on Five Different Architectures
Intel64/AMD64, IA-32, IBM POWER, IBM System z and Itanium
More Applications, More Hardware
11,400+ ISV applications
13,500+ hardware devices certified and supported
Most Up-to-date Drivers and Comprehensive Tools
The SUSE SolidDriver Program: deploy necessary third-party kernel drivers with confidence
SDK: IDE and popular programming languages
Resource:
 www.suse.com/susepsc/home
 www.suse.com/yessearch/search.jsp
 http://drivers.suse.com
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 192
SUSE Linux Enterprise Server
Includes ~ 3000 applications and libraries
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 193
Optimized Linux for SAP
SUSE Linux Enterprise Server for SAP Applications
Page Cache
Limit
Clam
SAP 18 Months SP Overlap
SAP Installation
Wizard
High Availability
Extension
SUSE Linux Enterprise Server
SAP specific update channel
Priority Support for SAP
Priority Support for SAP
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 194
Join PartnerNet Program (free)
Gain free access to
sales and technical training
access to software for testing, demonstrations, evaluations, etc.
inclusion in the Partner Locator
Complete the online application
www.partnernetprogram.com
Click “Join PartnerNet”
 Please note: if you do not have a login account you will need to create one and then complete the application
 Enter “SAP” in promotion field on the application
PartnerNet Help Desk available to assist with questions
https://www.partnernetprogram.com/helpdesk.html
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 195
SUSE Developer Resources
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 196
Agenda
SAP HANA Development: Overview
 Platform
 SAP HANA Extended Application Services (XS)
SAP HANA XS Technical Architecture
SAP HANA Studio Development Perspective
Browser Based Development Tools
SAP HANA Native Development Model
Introducing River (time permitting)
SUSE Technology Overview
Advantages for partners (as part of SAP PartnerEdge program for Application Development )
Questions & answers
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 197
Investment
First pack*: €2500 p.a.
Single, global eContract
Set app price to bundle with runtime licenses**
Benefits
25 developer licenses, including enablement
Market your platform applications: SAP Store
Six Innovation Packs: SAP HANA, SAP HANA Cloud,
Mobile, Business Intelligence, SAP Business One, SAP
Business Suite
Partners
New and existing
All companies (SI, VAR, OEM, ISV, …) interested in
creating and selling business applications utilizing SAP’s
market leading platforms
A New Way to Partner With SAP
The SAP PartnerEdge Program for Application Development
All information:
www.sapadpc.com
*Each additional pack: €500. SAP HANA Cloud : 3500€/1500€ ** for select Innovation Packs
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 198
Announcement 2014 SAP PartnerEdge Program for Application
Development Challenges
How can you participate? Publish an application on the SAP Store between April 1st and August 31st and register through
either of these three links: SAP HANA, SAP HANA Cloud or Mobile*
Three Challenge Categories
SAP HANA
Mobile
SAP HANA Cloud
What can you win? Join an Award Session to receive your Finalist Trophy. Have your app publicized through SAP‘s
social media channels, SAP Store, newsletters, videos & press releases and/or reference slides. Winners and finalists will
be considered for the coveted SAP Pinnacle Award and will benefit from demand-generation activities.
2013 Trophies 2012 Award Session at SapphireNow
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 199
More SAP and SUSE Technical Trainings
Register or access the recordings HERE
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 200
Call to Action
Familiarize yourself with the SAP PartnerEdge
program for Application Development and sign up
Learn about SUSE solutions for SAP
(www.suse.com/sap) and PartnerNet program for
SUSE partners
Join the Campaign Jam Group HERE
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 201
Questions & Answers
&
© 2013 SAP AG or an SAP affiliate company. All rights reserved. 202
Call to Action
Familiarize yourself with the SAP PartnerEdge
program for Application Development and sign up
Learn about SUSE solutions for SAP
(www.suse.com/sap) and PartnerNet program for
SUSE partners
Join the Campaign Jam Group HERE

Contenu connexe

Tendances

SAP HANA Cloud Platform: The void between your Datacenter and the Cloud
SAP HANA Cloud Platform: The void between your Datacenter and the CloudSAP HANA Cloud Platform: The void between your Datacenter and the Cloud
SAP HANA Cloud Platform: The void between your Datacenter and the CloudSAP HANA Cloud Platform
 
SAP HANA Cloud Platform Community BOF @ Devoxx 2013
SAP HANA Cloud Platform Community BOF @ Devoxx 2013SAP HANA Cloud Platform Community BOF @ Devoxx 2013
SAP HANA Cloud Platform Community BOF @ Devoxx 2013SAP HANA Cloud Platform
 
SAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming ModelSAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming ModelSAP Technology
 
SAP TechEd 2015 | DEV109 | Extending Cloud Solutions from SAP using SAP HANA ...
SAP TechEd 2015 | DEV109 | Extending Cloud Solutions from SAP using SAP HANA ...SAP TechEd 2015 | DEV109 | Extending Cloud Solutions from SAP using SAP HANA ...
SAP TechEd 2015 | DEV109 | Extending Cloud Solutions from SAP using SAP HANA ...SAP HANA Cloud Platform
 
Dmm302 - Sap Hana Data Warehousing: Models for Sap Bw and SQL DW on SAP HANA
Dmm302 - Sap Hana Data Warehousing: Models for Sap Bw and SQL DW on SAP HANA Dmm302 - Sap Hana Data Warehousing: Models for Sap Bw and SQL DW on SAP HANA
Dmm302 - Sap Hana Data Warehousing: Models for Sap Bw and SQL DW on SAP HANA Luc Vanrobays
 
Building an SAP HANA Cloud app, a travel report (#sitFRA)
Building an SAP HANA Cloud app, a travel report (#sitFRA)Building an SAP HANA Cloud app, a travel report (#sitFRA)
Building an SAP HANA Cloud app, a travel report (#sitFRA)Twan van den Broek
 
HANA SPS07 Smart Data Access
HANA SPS07 Smart Data AccessHANA SPS07 Smart Data Access
HANA SPS07 Smart Data AccessSAP Technology
 
Developing and Deploying Applications on the SAP HANA Platform
Developing and Deploying Applications on the SAP HANA PlatformDeveloping and Deploying Applications on the SAP HANA Platform
Developing and Deploying Applications on the SAP HANA PlatformVitaliy Rudnytskiy
 
Spark Usage in Enterprise Business Operations
Spark Usage in Enterprise Business OperationsSpark Usage in Enterprise Business Operations
Spark Usage in Enterprise Business OperationsSAP Technology
 
How to use abap cds for data provisioning in bw
How to use abap cds for data provisioning in bwHow to use abap cds for data provisioning in bw
How to use abap cds for data provisioning in bwLuc Vanrobays
 
Desenvolvimento JAVA orientado à SAP HANA Cloud Platform
Desenvolvimento JAVA orientado à SAP HANA Cloud PlatformDesenvolvimento JAVA orientado à SAP HANA Cloud Platform
Desenvolvimento JAVA orientado à SAP HANA Cloud PlatformRui Nogueira
 
SAP HANA Cloud Portal
SAP HANA Cloud PortalSAP HANA Cloud Portal
SAP HANA Cloud PortalAmir Blich
 
DMM161 HANA_MODELING_2015
DMM161 HANA_MODELING_2015DMM161 HANA_MODELING_2015
DMM161 HANA_MODELING_2015Luc Vanrobays
 
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...Luc Vanrobays
 
SAP HANA SPS09 - SAP HANA Answers
SAP HANA SPS09 - SAP HANA AnswersSAP HANA SPS09 - SAP HANA Answers
SAP HANA SPS09 - SAP HANA AnswersSAP Technology
 
SAP HANA SPS09 - Development Tools
SAP HANA SPS09 - Development ToolsSAP HANA SPS09 - Development Tools
SAP HANA SPS09 - Development ToolsSAP Technology
 
SAP HANA SPS10- Extended Application Services (XS) Programming Model
SAP HANA SPS10- Extended Application Services (XS) Programming ModelSAP HANA SPS10- Extended Application Services (XS) Programming Model
SAP HANA SPS10- Extended Application Services (XS) Programming ModelSAP Technology
 
Dmm203 – new approaches for data modelingwith sap hana
Dmm203 – new approaches for data modelingwith sap hanaDmm203 – new approaches for data modelingwith sap hana
Dmm203 – new approaches for data modelingwith sap hanaLuc Vanrobays
 
SAP TechEd 2013: CD105: Extending SuccessFactors EmployeeCentral with apps on...
SAP TechEd 2013: CD105: Extending SuccessFactors EmployeeCentral with apps on...SAP TechEd 2013: CD105: Extending SuccessFactors EmployeeCentral with apps on...
SAP TechEd 2013: CD105: Extending SuccessFactors EmployeeCentral with apps on...SAP HANA Cloud Platform
 

Tendances (20)

SAP HANA Cloud Platform: The void between your Datacenter and the Cloud
SAP HANA Cloud Platform: The void between your Datacenter and the CloudSAP HANA Cloud Platform: The void between your Datacenter and the Cloud
SAP HANA Cloud Platform: The void between your Datacenter and the Cloud
 
SAP HANA SPS10- SHINE
SAP HANA SPS10- SHINESAP HANA SPS10- SHINE
SAP HANA SPS10- SHINE
 
SAP HANA Cloud Platform Community BOF @ Devoxx 2013
SAP HANA Cloud Platform Community BOF @ Devoxx 2013SAP HANA Cloud Platform Community BOF @ Devoxx 2013
SAP HANA Cloud Platform Community BOF @ Devoxx 2013
 
SAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming ModelSAP HANA SPS09 - XS Programming Model
SAP HANA SPS09 - XS Programming Model
 
SAP TechEd 2015 | DEV109 | Extending Cloud Solutions from SAP using SAP HANA ...
SAP TechEd 2015 | DEV109 | Extending Cloud Solutions from SAP using SAP HANA ...SAP TechEd 2015 | DEV109 | Extending Cloud Solutions from SAP using SAP HANA ...
SAP TechEd 2015 | DEV109 | Extending Cloud Solutions from SAP using SAP HANA ...
 
Dmm302 - Sap Hana Data Warehousing: Models for Sap Bw and SQL DW on SAP HANA
Dmm302 - Sap Hana Data Warehousing: Models for Sap Bw and SQL DW on SAP HANA Dmm302 - Sap Hana Data Warehousing: Models for Sap Bw and SQL DW on SAP HANA
Dmm302 - Sap Hana Data Warehousing: Models for Sap Bw and SQL DW on SAP HANA
 
Building an SAP HANA Cloud app, a travel report (#sitFRA)
Building an SAP HANA Cloud app, a travel report (#sitFRA)Building an SAP HANA Cloud app, a travel report (#sitFRA)
Building an SAP HANA Cloud app, a travel report (#sitFRA)
 
HANA SPS07 Smart Data Access
HANA SPS07 Smart Data AccessHANA SPS07 Smart Data Access
HANA SPS07 Smart Data Access
 
Developing and Deploying Applications on the SAP HANA Platform
Developing and Deploying Applications on the SAP HANA PlatformDeveloping and Deploying Applications on the SAP HANA Platform
Developing and Deploying Applications on the SAP HANA Platform
 
Spark Usage in Enterprise Business Operations
Spark Usage in Enterprise Business OperationsSpark Usage in Enterprise Business Operations
Spark Usage in Enterprise Business Operations
 
How to use abap cds for data provisioning in bw
How to use abap cds for data provisioning in bwHow to use abap cds for data provisioning in bw
How to use abap cds for data provisioning in bw
 
Desenvolvimento JAVA orientado à SAP HANA Cloud Platform
Desenvolvimento JAVA orientado à SAP HANA Cloud PlatformDesenvolvimento JAVA orientado à SAP HANA Cloud Platform
Desenvolvimento JAVA orientado à SAP HANA Cloud Platform
 
SAP HANA Cloud Portal
SAP HANA Cloud PortalSAP HANA Cloud Portal
SAP HANA Cloud Portal
 
DMM161 HANA_MODELING_2015
DMM161 HANA_MODELING_2015DMM161 HANA_MODELING_2015
DMM161 HANA_MODELING_2015
 
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
Dmm300 – mixed scenarios for sap hana data warehousing and BW: overview and e...
 
SAP HANA SPS09 - SAP HANA Answers
SAP HANA SPS09 - SAP HANA AnswersSAP HANA SPS09 - SAP HANA Answers
SAP HANA SPS09 - SAP HANA Answers
 
SAP HANA SPS09 - Development Tools
SAP HANA SPS09 - Development ToolsSAP HANA SPS09 - Development Tools
SAP HANA SPS09 - Development Tools
 
SAP HANA SPS10- Extended Application Services (XS) Programming Model
SAP HANA SPS10- Extended Application Services (XS) Programming ModelSAP HANA SPS10- Extended Application Services (XS) Programming Model
SAP HANA SPS10- Extended Application Services (XS) Programming Model
 
Dmm203 – new approaches for data modelingwith sap hana
Dmm203 – new approaches for data modelingwith sap hanaDmm203 – new approaches for data modelingwith sap hana
Dmm203 – new approaches for data modelingwith sap hana
 
SAP TechEd 2013: CD105: Extending SuccessFactors EmployeeCentral with apps on...
SAP TechEd 2013: CD105: Extending SuccessFactors EmployeeCentral with apps on...SAP TechEd 2013: CD105: Extending SuccessFactors EmployeeCentral with apps on...
SAP TechEd 2013: CD105: Extending SuccessFactors EmployeeCentral with apps on...
 

Similaire à SUSE Technical Webinar: Build HANA Apps in the Framework of the SAP and SUSE Campaign

SAP HANA SPS10- Multitenant Database Containers
SAP HANA SPS10- Multitenant Database ContainersSAP HANA SPS10- Multitenant Database Containers
SAP HANA SPS10- Multitenant Database ContainersSAP Technology
 
SAP HANA Cloud: From Your Datacenter to the Cloud and Back
SAP HANA Cloud: From Your Datacenter to the Cloud and Back  SAP HANA Cloud: From Your Datacenter to the Cloud and Back
SAP HANA Cloud: From Your Datacenter to the Cloud and Back SAP HANA Cloud Platform
 
Sap hana by jeff_word
Sap hana by jeff_wordSap hana by jeff_word
Sap hana by jeff_wordSunil Joshi
 
Custom Development - SAP HANA
Custom Development - SAP HANACustom Development - SAP HANA
Custom Development - SAP HANAMichal Korzen
 
SAP HANA Cloud Portal - Overview Presentation
SAP HANA Cloud Portal - Overview PresentationSAP HANA Cloud Portal - Overview Presentation
SAP HANA Cloud Portal - Overview PresentationSAP Portal
 
Sap netweaver as abap 7.4 overview and product highlights
Sap netweaver as abap 7.4 overview and product highlightsSap netweaver as abap 7.4 overview and product highlights
Sap netweaver as abap 7.4 overview and product highlightsNizar Fanany
 
Hana ui services nov2013 #sapmm
Hana ui services nov2013 #sapmmHana ui services nov2013 #sapmm
Hana ui services nov2013 #sapmmSAP Portal
 
SAP HANA Accelerator for SAP ASE
SAP HANA Accelerator for SAP ASESAP HANA Accelerator for SAP ASE
SAP HANA Accelerator for SAP ASESAP Technology
 
ASUG84544 - Workflow Solutions from SAP When to Use What.pdf
ASUG84544 - Workflow Solutions from SAP When to Use What.pdfASUG84544 - Workflow Solutions from SAP When to Use What.pdf
ASUG84544 - Workflow Solutions from SAP When to Use What.pdfssuser8bab641
 
SAP HANA SQL Data Warehousing (Sefan Linders)
SAP HANA SQL Data Warehousing (Sefan Linders)SAP HANA SQL Data Warehousing (Sefan Linders)
SAP HANA SQL Data Warehousing (Sefan Linders)Twan van den Broek
 
Building Custom Advanced Analytics Applications with SAP HANA
Building Custom Advanced Analytics Applications with SAP HANABuilding Custom Advanced Analytics Applications with SAP HANA
Building Custom Advanced Analytics Applications with SAP HANASAP Technology
 
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)Twan van den Broek
 
SAP HANA Cloud Portal - Deep Dive
SAP HANA Cloud Portal - Deep DiveSAP HANA Cloud Portal - Deep Dive
SAP HANA Cloud Portal - Deep DiveSAP Portal
 
Build and run an sql data warehouse on sap hana
Build and run an sql data warehouse on sap hanaBuild and run an sql data warehouse on sap hana
Build and run an sql data warehouse on sap hanaLuc Vanrobays
 
SAP HANA - Big Data and Fast Data
SAP HANA - Big Data and Fast DataSAP HANA - Big Data and Fast Data
SAP HANA - Big Data and Fast DataVitaliy Rudnytskiy
 
Development to Deployment with SAP HANA
Development to Deployment with SAP HANADevelopment to Deployment with SAP HANA
Development to Deployment with SAP HANACraig Cmehil
 
Itm110 how does sap solution manager support sap hana
Itm110 how does sap solution manager support sap hanaItm110 how does sap solution manager support sap hana
Itm110 how does sap solution manager support sap hanaOlivier Bilger
 

Similaire à SUSE Technical Webinar: Build HANA Apps in the Framework of the SAP and SUSE Campaign (20)

Dev207 berlin
Dev207 berlinDev207 berlin
Dev207 berlin
 
SAP HANA SPS10- Multitenant Database Containers
SAP HANA SPS10- Multitenant Database ContainersSAP HANA SPS10- Multitenant Database Containers
SAP HANA SPS10- Multitenant Database Containers
 
SAP HANA Cloud: From Your Datacenter to the Cloud and Back
SAP HANA Cloud: From Your Datacenter to the Cloud and Back  SAP HANA Cloud: From Your Datacenter to the Cloud and Back
SAP HANA Cloud: From Your Datacenter to the Cloud and Back
 
Sap hana by jeff_word
Sap hana by jeff_wordSap hana by jeff_word
Sap hana by jeff_word
 
Custom Development - SAP HANA
Custom Development - SAP HANACustom Development - SAP HANA
Custom Development - SAP HANA
 
SAP HANA Cloud Portal - Overview Presentation
SAP HANA Cloud Portal - Overview PresentationSAP HANA Cloud Portal - Overview Presentation
SAP HANA Cloud Portal - Overview Presentation
 
Sap netweaver as abap 7.4 overview and product highlights
Sap netweaver as abap 7.4 overview and product highlightsSap netweaver as abap 7.4 overview and product highlights
Sap netweaver as abap 7.4 overview and product highlights
 
Hana ui services nov2013 #sapmm
Hana ui services nov2013 #sapmmHana ui services nov2013 #sapmm
Hana ui services nov2013 #sapmm
 
SAP HANA Accelerator for SAP ASE
SAP HANA Accelerator for SAP ASESAP HANA Accelerator for SAP ASE
SAP HANA Accelerator for SAP ASE
 
SAP HANA Cloud - Virtual Bootcamp 7 - HANA Cloud Platform package for Success...
SAP HANA Cloud - Virtual Bootcamp 7 - HANA Cloud Platform package for Success...SAP HANA Cloud - Virtual Bootcamp 7 - HANA Cloud Platform package for Success...
SAP HANA Cloud - Virtual Bootcamp 7 - HANA Cloud Platform package for Success...
 
ASUG84544 - Workflow Solutions from SAP When to Use What.pdf
ASUG84544 - Workflow Solutions from SAP When to Use What.pdfASUG84544 - Workflow Solutions from SAP When to Use What.pdf
ASUG84544 - Workflow Solutions from SAP When to Use What.pdf
 
SAP HANA SQL Data Warehousing (Sefan Linders)
SAP HANA SQL Data Warehousing (Sefan Linders)SAP HANA SQL Data Warehousing (Sefan Linders)
SAP HANA SQL Data Warehousing (Sefan Linders)
 
Building Custom Advanced Analytics Applications with SAP HANA
Building Custom Advanced Analytics Applications with SAP HANABuilding Custom Advanced Analytics Applications with SAP HANA
Building Custom Advanced Analytics Applications with SAP HANA
 
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
SAP analytics as enabler for the intelligent enterprise (Iver van de Zand)
 
SAP HANA Cloud Portal - Deep Dive
SAP HANA Cloud Portal - Deep DiveSAP HANA Cloud Portal - Deep Dive
SAP HANA Cloud Portal - Deep Dive
 
Build and run an sql data warehouse on sap hana
Build and run an sql data warehouse on sap hanaBuild and run an sql data warehouse on sap hana
Build and run an sql data warehouse on sap hana
 
SAP HANA - Big Data and Fast Data
SAP HANA - Big Data and Fast DataSAP HANA - Big Data and Fast Data
SAP HANA - Big Data and Fast Data
 
Development to Deployment with SAP HANA
Development to Deployment with SAP HANADevelopment to Deployment with SAP HANA
Development to Deployment with SAP HANA
 
Itm110 how does sap solution manager support sap hana
Itm110 how does sap solution manager support sap hanaItm110 how does sap solution manager support sap hana
Itm110 how does sap solution manager support sap hana
 
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
 

Plus de SAP PartnerEdge program for Application Development

Plus de SAP PartnerEdge program for Application Development (20)

SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
 
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
SUSE Technical Webinar: Developing Fiori & GWPAM Apps on HANA (SAP and SUSE C...
 
SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...
SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...
SUSE Technical Webinar: Build B1 apps in the Framework of the SAP and SUSE Ca...
 
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
Google Technical Webinar - Building Mashups with Google Apps and SAP, using S...
 
SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...
SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...
SUSE Technical Webinar: Introduction to Business Intelligence - the SAP and S...
 
SUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud Platform
SUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud PlatformSUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud Platform
SUSE Technical Webinar: Build Cloud Apps with SAP HANA Cloud Platform
 
Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...
Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...
Partner with SAP to Develop Mobile apps and capture the Mobile Market Opportu...
 
Microsoft Technical Webinar: SAP Mobile Platform for Windows 8 and Windows Ph...
Microsoft Technical Webinar: SAP Mobile Platform for Windows 8 and Windows Ph...Microsoft Technical Webinar: SAP Mobile Platform for Windows 8 and Windows Ph...
Microsoft Technical Webinar: SAP Mobile Platform for Windows 8 and Windows Ph...
 
Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...
Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...
Microsoft Technical Webinar - New devices for Windows 8 and Windows Phone 8, ...
 
Autodesk Technical Webinar: SAP Business One
Autodesk Technical Webinar: SAP Business OneAutodesk Technical Webinar: SAP Business One
Autodesk Technical Webinar: SAP Business One
 
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
Microsoft Technical Webinar: Doing more with MS Office, SharePoint and Visual...
 
Mobile Apps 4 Charity
Mobile Apps 4 CharityMobile Apps 4 Charity
Mobile Apps 4 Charity
 
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - S...
 
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...
Microsoft Technical Webinar: UX/UI Design for Windows 8 & Windows Phone 8 - P...
 
Autodesk Technical Webinar: SAP HANA in-memory database
Autodesk Technical Webinar: SAP HANA in-memory databaseAutodesk Technical Webinar: SAP HANA in-memory database
Autodesk Technical Webinar: SAP HANA in-memory database
 
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 3
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 3Autodesk Technical Webinar: SAP NetWeaver Gateway Part 3
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 3
 
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 2
 
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
Autodesk Technical Webinar: SAP NetWeaver Gateway Part 1
 
Autodesk Technical Webinar: SAP Mobile Platform
Autodesk Technical Webinar: SAP Mobile PlatformAutodesk Technical Webinar: SAP Mobile Platform
Autodesk Technical Webinar: SAP Mobile Platform
 
Mobile Rerence Applications: The end to end Integration
Mobile Rerence Applications: The end to end IntegrationMobile Rerence Applications: The end to end Integration
Mobile Rerence Applications: The end to end Integration
 

Dernier

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Dernier (20)

Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

SUSE Technical Webinar: Build HANA Apps in the Framework of the SAP and SUSE Campaign

  • 1. April 2014 Develop Applications on Integrated SUSE and SAP Platforms Build SAP HANA Apps in the Framework of the SAP and SUSE Campaign Please dial-in NOW to connect to the audio: use the dial-in telephone number in the invite that you have received by email. The participant code is visible in the chat window.
  • 2. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 2 Disclaimer This presentation outlines our general product direction and should not be relied on in making a purchase decision. This presentation is not subject to your license agreement or any other agreement with SAP. SAP has no obligation to pursue any course of business outlined in this presentation or to develop or release any functionality mentioned in this presentation. This presentation and SAP's strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document is provided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. SAP assumes no responsibility for errors or omissions in this document, except if such damages were caused by SAP intentionally or grossly negligent.
  • 3. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 3 Today’s Speakers Thomas Jung Director, SAP HANA Product Management Markus Guertler Architect & ISV Technical Manager, SUSE LINUX, Novell GmbH Clemens Suter- Crazzolara Platform Ecosystems, SAP AG
  • 4. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 4 Agenda SAP HANA Development: Overview  Platform  SAP HANA Extended Application Services (XS) SAP HANA XS Technical Architecture SAP HANA Studio Development Perspective Browser Based Development Tools SAP HANA Native Development Model Introducing River (time permitting) SUSE Technology Overview Advantages for partners (as part of SAP PartnerEdge program for Application Development ) Questions & answers
  • 5. What is SAP HANA?
  • 6. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 6 What is SAP HANA? HW technology innovations 64 bit address space 100 GB/s data throughput Dramatic decline in price/performance Multicore architecture Massive parallel scaling with many blades Row and column store Compression Partitioning No aggregate tables Insert only on delta SAP SW technology innovations Convergence of improved hardware economics and technology innovations enables SAP to deliver on its vision of the real-time enterprise with in-memory business applications
  • 7. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 7 Columnar Storage Do More With Less (Space) • Compression (by factors) • Read relevant data only • Main memory structures • Super-efficient algorithms • Insert only works fine • Adding fields is easy Column StoreRow Store Row 4 Row 3 Row 2 Row 1 Row 4 Row 3 Row 2 Row 1 Doc Num Doc Date Sold- To Value Status Sales Org Doc Num Doc Date Sold- To Value Status Sales Org
  • 8. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 8 DB Layer Code Traditional: “Data to Code” New Model: “Code to Data” Massive data copies creates bottleneck Transfer Minimum Result Set Overview Traditional Programming Model vs. New Programming Model Application LayerApplication Layer DB Layer Code
  • 9. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 9 SAP HANA Extended Application Services (XS) Introduction What: Small footprint application server / web server / basis for an application development platform inside SAP HANA Rationale: Enable application development and deployment while minimizing architectural “layers”  Create apps that have an http-based UI (browser, mobile apps)  Apps run directly on SAP HANA, w/o additional external servers or components -> simplified system architecture = low TCO  Tight integration w/ SAP HANA DB -> best possible performance Scope: wide range of apps  Lightweight small web-based applications  Complex enterprise business applications
  • 10. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 10 SAP HANA Client Development model for SAP HANA based native applications SAP HANA extended application services offer  Easy access to SAP HANA database via HTTP-based consumption  Attractive, dynamic HTML5 UI applications via OData services or by writing native application-specific code that runs in SAP HANA context  Powerful search services  Built-in web server to access static content stored in SAP HANA repository Application development following a layered approach  UI rendering completely in the client (browser, mobile apps)  Server-side procedural logic in JavaScript  All artifacts stored in the SAP HANA repository Presentation logic Control flow logic Calculation logicData XS
  • 11. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 11 An application‘s foundation Presentation logic Control flow logic Calculation logic Data
  • 12. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 12 Performance gains with HANA Presentation logic Control flow logic Calculation logic Data HANA
  • 13. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 13 Modern clients handle presentation logic Presentation logic Control flow logic Calculation logic Data HANA Client
  • 14. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 14 Push the control flow down! Presentation logic Control flow logic Calculation logic Data Client HANA
  • 15. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 15 Push the control flow down! Presentation logic Control flow logic Calculation logic Data Client HANA
  • 16. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 16 The essence of HANA Application Services (XS)! Presentation logic Control flow logic Calculation logic Data Client HANA XS
  • 17. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 17 SAP HANA Extended Application Services – Overview Front-end Technologies  http/s  HTML5 / SAPUI5  Client-side JavaScript Control Flow Technologies  OData  Server-Side JavaScript  XMLA Data Processing Technologies  SQL / SqlScript  Calculation Engine Functions  Application Function Library (AFL) Presentation logic Control flow logic Data Client: Browser or Mobile SAP HANA XS Calculation logic
  • 18. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 20 vs. native SAP HANA applications DBMS Data application server app code 3-tier client UI rendering Control DB I/F Display rendered UI Queries HANA Data XS services Native SAP HANA client Control & Queries UI rendering app code Traditional 3-tier applications (Java, ABAP)
  • 20. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 22 Lightweight architecture
  • 21. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 23 Architecture in more detail: SAP HANA XS Engine Process
  • 22. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 24 End to end architecture
  • 23. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 25 Distributed XS Distributed Configuration • N active servers in one cluster • M standby server(s) in one cluster Approach • Operational XS Engine service can run on all nodes of the SAP HANA system • SAP Web Dispatcher deployed “in front of” SAP HANA • Round-robin load balancing approach Benefits • Maximized concurrency for requests going through XS Node 1 Node 2 Node 3 Node 4 Standby Node SharedStorage XS XS XS XS XS SAPWebDispatcher
  • 24. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 26 Distributed XS: Failover Distributed Configuration • N active servers in one cluster • M standby server(s) in one cluster Approach • Operational XS Engine service can run on all nodes of the SAP HANA system • SAP Web Dispatcher deployed “in front of” SAP HANA • Round-robin load balancing approach • Standby node becomes active and XS on it becomes operational Benefits • Redundancy provides for uninterrupted service (HA) Node 1 Node 2 Node 3 Node 4 Standby Node SharedStorage XS XS XS XS XS SAPWebDispatcher
  • 25. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 27 Authentication for XS XS Authentication Options: - Basic Authentication - Form-based authentication - SSO (Single-Sign On) via SAP Logon Tickets - SSO via X.509 (standard for Public Key Infrastructure) - SSO via SAML 2.0 (Security Assertion Markup Language) - SSO via SAML2 also for XHR (ajax) - NEW for SPS 07 - SSO via Kerberos - NEW for SPS 07 - Outbound SSO via SAP Assertion Tickets - NEW for SPS 07
  • 26. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 28 Job Scheduling • HANA now contains a Job Scheduler which can run XSJS and SQLScript • New Development artifact: XSJOB • Extension to the Admin tool to maintain job definitions and view job logs
  • 27. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 29 Job Scheduling – XSCRON syntax • CRON-like syntax for controlling job timings and repetitions
  • 28. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 30 Content lifecycle management in SAP HANA Managing “content” in SAP HANA SAP HANA content defined:  Not part of the core SAP HANA DB installation itself  Is delivered by SAP as part of SAP HANA optimized solutions  Is created in SAP HANA-based development projects (partner, customer)  Sometimes called “objects” or “artifacts” Content comprises all kinds of objects, for example:  Schemas and table definitions  Attribute views, analytic views and calculation views  Procedures and privileges  SQLScript, JavaScript and HTML  Roles and permissions
  • 29. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 31 Content lifecycle management in SAP HANA The repository The repository and lifecycle management of objects  Native feature of SAP HANA providing “backend” functionality for content lifecycle management  Used to manage various types of design time objects (Content)  During deployment/activation the design time objects become runtime objects (Catalog) Key functions provided by the repository:  Object versioning  Namespace concept  Support for server-based development SAP HANA Studio Modeling Perspective run time design time SAP HANA content
  • 30. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 32 Delivery Unit Packages Views, Procedures, Privileges, etc. Content lifecycle management in SAP HANA Transport of changes in a typical basic transport landscape SAP HANA Development System SAP HANA QA/Test System SAP HANA Productive System Delivery Unit Packages Views, Procedures, Privileges, etc. Delivery Unit Packages Views, Procedures, Privileges, etc.
  • 31. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 33 SAP HANA Application Lifecycle Management (HALM) Use cases  New SAP customers without ABAP-footprint  SAP customers with the need for a lightweight transport management Simple and easy  Native SAP HANA transport tool, which can be used without additional systems  Lightweight and easy-to-use tool  Easy setup and minimal configuration effort Constraints  No central management of extended system landscapes  No transport synchronization to non-HANA content  No integration in SAP process tools (ChaRM, QGM)
  • 32. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 34 Change Tracking • Optional mode for managing content in a promote-to-production system landscape (activate in HALM) • Automatic recording of changes to a change list • Allows a developer (or team) to work on a development artifact and release the “change” only when the artifact is ready to promote to the test system • Provides more precise control over which objects get transported from the development system
  • 33. SAP HANA Studio Development Perspective
  • 34. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 36 SAP HANA Studio Development Perspective Goal: Provide an extensible and integrated development environment supporting all development artifacts necessary for building a HANA application, covering development, testing, debugging, supportability and lifecycle management. As new and existing technologies are being integrated into HANA, a seamless integration of the corresponding external tools in the HANA Development Workbench should be possible. Target customer: HANA Application Developer (Internal and external developers). Including content development scenarios.
  • 35. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 37 SAP HANA Studio Development Perspective • Utilizes standard Eclipse projects – HANA Specific, General SAP Projects, and even 3rd party ones
  • 36. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 38 SAP HANA Studio Development Perspective • Standard Eclipse Team Provider interface for storing all objects into the SAP HANA Repository
  • 37. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 39 SAP HANA Studio Development Perspective • HANA Specific Editors and Debugger Enhancements (for example: XSJS – Server Side JavaScript)
  • 38. SAP HANA Studio Development Perspective Workflow
  • 39. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 41 Create a new Eclipse Project from within SAP HANA Studio
  • 40. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 42 This is a “true” Eclipse Project persisted on the developers local machine
  • 41. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 43 The project is then linked to the SAP HANA Repository
  • 42. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 44 After linked to a Repository, specific HANA packages are added as folders
  • 43. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 45 The SAP HANA Repository is then treated like Git or Perforce and Eclipse checks out the content for editing
  • 44. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 46 There is also an SAP HANA Repository Browser – entire projects can be checked out from there as well
  • 45. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 47 The Repository content is copied to the developer’s machine and edited locally and offline
  • 46. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 48 Standard Eclipse editors as well as special SAP provided editors are then utilized
  • 47. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 49 Upon saving in any Eclipse editor, a commit back to the SAP HANA Repository is done automatically
  • 48. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 50 Full source merge, rebase, conflict resolution, and version management is built in
  • 49. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 51 Changes are inactive when first committed; inactive testing is supported as of SP7
  • 50. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 52 We also have direct interaction with other Eclipse based tools (such as ABAP Development Tools and SAPUI5)
  • 51. SAP HANA Browser Based Development Tools
  • 52. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 54 SAP HANA Web-based Development Workbench • SP6 introduced two separate browser based IDEs • SP7 merges both of these back together into a single application with three sub-tools: • Editor • Catalog • Security
  • 53. SAP HANA Web-based Development Workbench Editor
  • 54. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 56 SAP HANA Web-based Development Workbench Editor • completely browser based IDE for lightweight creation and editing of development objects and debugging without the need for SAP HANA Studio • Direct URL: /sap/hana/xs/editor/
  • 55. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 57 SAP HANA Web-based Development Workbench Editor • Access to the full SAP HANA Repository in a browser • Create, delete, and rename packages and files
  • 56. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 58 SAP HANA Web-based Development Workbench Editor • Code Editors with • Syntax Coloring • Code Folding • Client side and server side checks • No need to check out content – direct editing and activation upon save
  • 57. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 59 SAP HANA Web-based Development Workbench Editor – Application Templates • Application creation wizards which create the package as well as the starting artifacts • Both mobile and desktop SAPUI5 templates with the correct bootstrapping for SAP HANA • Automatic generation of .xsapp and .xsaccess files • Special UI5 templates for injection into existing HTML pages as well
  • 58. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 60 SAP HANA Web-based Development Workbench Editor – Direct Test • Test html pages, xsjs, and xsodata services directly from the editor in the browser • Including special mobile device emulation modes for testing
  • 59. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 61 SAP HANA Web-based Development Workbench Editor – XSJS Debugging Support • Set Breakpoints from the editor • Interactive server side debugger running in-place in the browser • View and change variable values
  • 60. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 62 SAP HANA Web-based Development Workbench Editor – Versions • Access to version management of objects • Two way comparison editor • Select any two server versions for comparison
  • 61. SAP HANA Web-based Development Workbench Catalog
  • 62. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 64 SAP HANA Web-based Development Workbench Catalog • Also access the SAP HANA Catalog • View Tables, Views, Procedures, Functions, etc and their Content • Direct URL: /sap/hana/xs/catalog/
  • 63. SAP HANA Web-based Development Workbench Security
  • 64. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 66 SAP HANA Web-based Development Workbench Security • Also access User and Role Details • Assign roles to users and perform basic user administration tasks • Direct URL: /sap/hana/xs/security/
  • 66. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 68 SAP HANA Web-based Development Workbench Trace • Access to the developer centric server trace files • Direct URL: /sap/hana/xs/trace/
  • 67. SAP HANA Native Development Model
  • 68. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 70 Development model – general rules SAPUI5 UIS XSJS XSODATA SINA XSXMLA CDS/HDBDD SQLScript SQL Views AFL HDBTable HDBRole • UI Rendering completely in the Client • Server-side procedural logic in JavaScript • All artifacts stored in the SAP HANA Repository •
  • 69. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 71 Development model Data Intensive Logic • SQLScript / SQL • HANA Views • Attribute • Analytical • Calculation • Application Function Library (AFL) • Business Function Library (BFL) • Predictive Analytics Library (PAL) SAPUI5 UIS XSJS XSODATA SINA XSXMLA CDS/HDBDD SQLScript SQL Views AFL HDBTable HDBRole
  • 70. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 72 Overview What? SQLScript is  An interface for applications to access SAP HANA  Extension of ANSI Standard SQL  Language for creating stored procedures in HANA  Declarative Logic  SELECT queries  Calculation Engine(CE) functions  Orchestration Logic  Data Definition Language(DDL)  Data Manipulation Language(DML)  Assignment & imperative logic
  • 71. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 73 Overview Why? Main goal is to allow the execution of data intensive calculations inside SAP HANA Two reasons why this is required to achieve the best performance:  Eliminate data transfer between database & application tiers  Calculations need to be executed in the database layer to get the maximum benefit from SAP HANA features such as fast column operations, query optimization and parallel execution.
  • 72. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 74 Overview Advantages Compared to plain SQL queries, SQLScript has the following advantages:  Returns multiple results, while a SQL query returns only one result set  Complex logic can be broken down into smaller chunks of code. Enables modular programming, reuse and a better understandability by functional abstraction. For structuring complex queries, standard SQL only allows the definition of SQL views. However, SQL views have no parameters  SQLScript supports local variables for intermediate results with implicitly defined types. With standard SQL, it would be required to define globally visible views even for intermediate steps  SQL Script has control logic such as if/else that is not available in SQL
  • 73. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 75 Front-end Technologies  http/s  HTML5 / SAPUI5  Client-side JavaScript Control Flow Technologies  OData  Server-Side JavaScript  XMLA Data Processing Technologies  SQL / SqlScript  Calculation Engine Functions  Application Function Library (AFL) Presentation logic Control flow logic Data Client: Browser or Mobile SAP HANA XS Calculation logic Overview Application Development Technologies
  • 74. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 76 DB Layer Code Traditional: “Data to Code” New Model: “Code to Data” Massive data copies creates bottleneck Transfer Minimum Result Set Overview Traditional Programming Model vs. New Programming Model Application LayerApplication Layer DB Layer Code
  • 75. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 77 Overview SQLScript Code Example BEGIN ... -- Query 1 product_ids = select "ProductId", "Category", "DescId" from "SAP_HANA_EPM_DEMO"."sap.hana.democontent.epm.data::products" where "Category" = 'Notebooks' or "Category" = 'PC'; -- Query 2 product_texts = select "ProductId", "Category", "DescId", "Text" from :product_ids as prod_ids inner join "SAP_HANA_EPM_DEMO"."sap.hana.democontent.epm.data::texts" as texts on prod_ids."DescId" = texts."TextId"; -- Query 3 out_notebook_count = select count(*) as cnt from :product_texts where "Category" = 'Notebooks'; -- Query 4 out_pc_count = select count(*) as cnt from :product_texts where "Category" = 'PC'; ... END; Notebooks PCs Products Q3 Q4 Q2 Q1
  • 76. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 78 Overview Parallel Processing SELECT statements are executed in parallel unless:  Any local scalar parameters and variables are used in the procedure  Any read/write procedures or DML/DDL operations are executed  Any imperative logic is used within the procedure, such as IF statements of FOR loops  Any SQL statements are used that are not assigned to a intermediate variable or parameter
  • 78. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 80  “Stored Procedure” under “Database Development”  Two file formats  .hdbprocedure is the new artifact type which will be the recommended file format moving forward.  .procedure is still supported, but has been deprecated and eventually will be removed. Wizard, Editor & Viewer Stored Procedure Wizard
  • 79. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 81 Wizard, Editor & Viewer Procedure Templates  Create procedure templates(.proceduretemplate file)  Template parameters can be used as placeholders  Consumable from Stored Procedure wizard dialog, currently only supported by .procedure file format
  • 80. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 82  Procedures based on templates inherit the template parameters  Changes to templates are reflected in the consuming procedures Wizard, Editor & Viewer Procedure Templates
  • 81. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 83 Wizard, Editor & Viewer Editor Integration with SAP HANA Development Perspective  Source code based editor  Client side syntax checking  Code hints  Syntax highlighting
  • 82. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 84 Wizard, Editor & Viewer Procedure Code Breakdown  Schema definition – developer can define which schema in which the run-time object of the procedure will be created
  • 83. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 85 Wizard, Editor & Viewer Procedure Code Breakdown  Package hierarchy and procedure name – contains the complete package hierarchy as well as the name of the procedure, separated by double colon(::)
  • 84. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 86 Wizard, Editor & Viewer Procedure Code Breakdown  Input/output parameter definition – developer can define both input parameters with default values as well as output parameters. Parameters can reference simple types, or global types defined via CDS
  • 85. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 87 Wizard, Editor & Viewer Procedure Code Breakdown  Metadata declarations: developer can set language(SQLScript/R), security(invoker/definer), default schema and read/write access
  • 86. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 88 Wizard, Editor & Viewer Procedure Code Breakdown  Script body – developer writes the body of the script between the BEGIN and END statements
  • 87. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 89  Procedures in the catalog can now be viewed in the SQLScript editor in read-only mode.  Allows for setting/removing of breakpoints within the runtime object. Wizard, Editor & Viewer SQLScript Procedure Viewer
  • 89. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 91 Debugger Debug Perspective  Resume/Terminate  Variable evaluation  Breakpoint management  Break on break-points  Basic step debugging
  • 90. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 92  Define procedure to be debugged  Debug both repository and catalog procedures Debugger Debug Configuration
  • 91. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 93  Debug with input parameters Debugger Debug Configuration
  • 92. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 94 Debugger External Debugging  Attach to running session  By connection ID  By application user ID
  • 93. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 95 Debugger Debug Compilation Options  Full debug compilation mode  Debug any procedure within the call stack
  • 95. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 97 SQLScript Language Features Declarative Logic  Allows the developer to declare the data selection via SELECT or CE(Calculation Engine) functions  Developer defines the what  Engine defines the how and executes accordingly  Massive parallelized
  • 96. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 98 SQLScript Language Features Imperative Logic  Allows developer to control the flow of the logic within SQLScript.  Scalar variable manipulation  DDL/DML logic  WHILE loops  Branching logic based on some conditions, for example IF/ELSE  Executed exactly as scripted, procedurally  No parallel processing
  • 97. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 99 SQLScript Language Features Arrays  Allows the developer to define and construct arrays within SQLScript  Set elements  Return elements  Remove elements  Concatenate two arrays  Turn array into a table  Turn a column of a table into an array  Return cardinality of an array
  • 98. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 100 SQLScript Language Features Dynamic Filtering  Allows developers to apply a dynamic WHERE clause to SELECT statements  Both database tables and intermediate table variables are supported
  • 99. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 101 SQLScript Language Features Exception Handling  Allows developer to handle SQL errors gracefully  For example, handle duplicate insertion and pass message to caller
  • 100. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 102 SQLScript Language Features Cursors  Allows developers to iterate over a result set and perform row-based processing and calculations.
  • 102. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 104 User Defined Functions Overview Language used within the body is SQLScript, no other languages are supported Functions are read-only, side effect free Two types:  Table User Defined Function  Scalar User Defined Function
  • 103. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 105  New repository artifact(.hdbtablefunction) and wizard  Currently a simple text editor, more robust editor features are planned for a future support package User Defined Functions Table UDF
  • 104. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 106 User Defined Functions Table UDF  Can have any number of input parameters  Returns exactly one table  Table operations are allowed within the body  Consumed in the FROM clause of a SELECT statement
  • 105. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 107  New repository artifact(.hdbscalarfunction) and wizard  Currently a simple text editor, more robust editor features are planned for a future support package User Defined Functions Scalar UDF
  • 106. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 108 User Defined Functions Scalar UDF  Can have any number of input parameters  Can return multiple values  Expressions are allowed within the body  No table operations such as CURSOR, CE functions or Array operations  Input parameters can not be table type  Consumed from the field list or the WHERE clause of the SELECT statement
  • 108. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 110 Triggers Overview  Special type of stored procedure that automatically executes when an event occurs in the database server, for example upon INSERT of a table  Management of objects can only be done via SQL Console. Support for storing the artifacts in the repository is coming in a future support package
  • 110. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 112 An open source software language and environment for statistical computing and graphics with over 3000 add-on packages. http://www.r-project.org/ The packages cover wide range topics -  Cluster Analysis & Finite Mixture Models  Probability Distributions  Computational Econometrics  Empirical Finance  Statistical Genetics  Graphic Displays, Dynamic Graphics, Graphic Devices & Visualisation  Machine Learning & Statistical Learning  Medical Image Analysis  Multivariate Statistics  Natural Language Processing  Statistics for the Social Sciences  Time Series Analysis R Language What is Open Source R
  • 111. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 113 Join OP ROP OLAP OP Calc. Engine R External Packages (Forecasting, Parallelism, statistics, etc.) RClient SAP RHANA Package Send data and R script NewDB Space OpenSource R Space 1 3 NewDB R Integration Open Source R 2 Run the R scripts Get back the result from R to SAP HANA R Language Integration with HANA Database
  • 112. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 114 Development model Repository Representation of Catalog Objects • Schemas: HDBSchema • Tables: HDBTable • Views: HDBView • Structures: HDBStructure • Sequences: HDBSequence • Roles: HDBRole SAPUI5 UIS XSJS XSODATA SINA XSXMLA CDS/HDBDD SQLScript SQL Views AFL HDBTable HDBRole
  • 113. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 115 Development model CDS – Core Data Services • Data Definition Language • Query Language • Expression Language SAPUI5 UIS XSJS XSODATA SINA XSXMLA CDS/HDBDD SQLScript SQL Views AFL HDBTable HDBRole
  • 114. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 116 CDS/HDBDD Syntax Changes - Associations • Associations define relationships between Entities (tables) • Not yet integrated into the database/SQL but can be referenced when defining views within the same CDS object
  • 115. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 117 CDS/HDBDD Syntax Changes - Views • CDS syntax expands to include the definition of views • Views can utilize the defined associations between entities
  • 116. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 118 CDS/HDBDD Graphical Editor • Added graphical representation of the HDBDD Entities and their associations • Graphical mode is ready only. All changes made to the source code editor • Navigation into the source editor from the graphical display
  • 117. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 119 Development model XSODATA • Low coding OData REST service generation framework • based upon existing tables and views • Create/Update/Deletion operations support added in SPS 06 SAPUI5 UIS XSJS XSODATA SINA XSXMLA CDS/HDBDD SQLScript SQL Views AFL HDBTable HDBRole
  • 118. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 120 OData JavaScript Exits – New in SPS 07 • Processing exits can reference xsjslib files and specific JavaScript functions • The database connection and temporary tables with the before and after values are passed to this function • Particularly useful for server-side validations (but open for other use cases too)
  • 119. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 121 Development model Server Side JavaScript (XSJS) • Light weight procedural logic • Openness • Reuse • One Language – Client and Server Side • Widespread Knowledge SAPUI5 UIS XSJS XSODATA SINA XSXMLA CDS/HDBDD SQLScript SQL Views AFL HDBTable HDBRole
  • 120. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 122 SAPUI5 • Enterprise-Ready HTML5 Rendering Library • Completely client-side UI • Open and flexible • Web development skills (HTML, CSS3, JavaScript) • Extensibility and Theming • 3rd Party JavaScript Integration • Targets Multiple Devices • Smartphone, Table, Desktop
  • 121. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 123 Introduction Demand and requirement Growing demand for  business insight everywhere on any device  business UIs following known End User Paradigms  applications with native look & feel  high client side interactivity and performance  seemless integration of modern web standards and functionality (Social media, web 2.0, …)
  • 122. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 124 Introduction HTML5 definition versus common understanding The official definition of HTML5  is a markup language for structuring and presenting content for the World Wide Web, …. It is the fifth revision of the HTML standard (created in 1990 and standardized as HTML4 as of 1997) The commonly used definition  Integrated Multimedia support  Graphics and Charts (Canvas / SVG) • New JavaScript APIs (e.g. Web SQL, Web Storage, Web Workers, …)  ARIA (accessibility) • OpenAJAX (interoperability) • JIT JavaScript compilation • CSS3
  • 123. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 125 Key capabilities Features and benefits Eclipse-Based Designtime Enterprise Readiness Well known and easy to learnTimeless SAP Data Consumption Great Productivity Unmatched Extensibility Powerful Theming & Branding Any Screen on Any Device Cutting-Edge Controls Based on STANDARDSFoster INNOVATIONDelight USERS Openess & FlexibilityFast Release CyclesEfficiency & Performance
  • 124. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 126 Key capabilities Features and benefits Runs on Various SAP and Non-SAP Platforms SAP HANA XS SAP NetWeaver AS ABAP Open Source Platforms SAP NetWeaver Cloud SAP NetWeaver AS JavaSybase Unwired Platform Built with Leading Web Technologies jQuery CSS3 OData LESS D3.js ARIAOpenAJAXHTML5
  • 125. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 127 Key capabilities Development environment Homogeneous Set of Eclipse Tools and Editors  Small learning curve for web developer  UI Screen & Application development  HTML5 templates support  Shipped via SAP release train for Eclipse (SRTE)  NWDS support  Outlook: − WYSIWYG Design of HTML5 Applications − Web based IDE
  • 126. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 128 Architecture overview SAPUI5 components Controls jQuery.UI SAPUI5 Libraries SAPUI5 Core jQuery (Static) Web Server SAP jQuery Plug-ins Event Resources Device LoggerUtils UI Data Binding Control Base Render Manager Themes Mobile Desktop Mobile Desktop Resource Handler (optional)  Optional server component  Core JS Framework including jQuery  Extension libraries – Controls – Themes  “Helper” assets like e.g. – Less – Code minimizer jQuery Mobile
  • 127. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 129 The SAP HANA repository • Object management, versioning and transport • Software component delivery and patching • Built-in support for translatable texts • Support for server based development
  • 129. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 131 Creating an application T1 T2 T3
  • 130. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 132 Creating an application T1 T2 T3 V1 V2 cv
  • 131. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 133 Creating an application T1 T2 T3 V1 V2 data model (DB) cv sp trigger
  • 132. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 134 business logic (MVC) Creating an application T1 T2 T3 V1 V2 data model (DB) cv sp control trigger
  • 133. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 135 business logic (MVC) Creating an application T1 T2 T3 V1 V2 data model (DB) cv sp control trigger access control (RBAC)
  • 134. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 136 business logic (MVC) Creating an application data model T1 T2 T3 V1 V2 data model (DB) cv sp control trigger SQL over xDBC access control (RBAC)
  • 135. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 137 business logic (MVC) Creating an application data model T1 T2 T3 V1 V2 data model (DB) cv sp control view trigger OData over HTTP SQL over xDBC access control (RBAC)
  • 136. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 138 business logic (MVC) Creating an application data model T1 T2 T3 V1 V2 data model (DB) app mob app cv sp control view trigger client OData over HTTP SQL over xDBC access control (RBAC)
  • 137. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 139 Creating an application, using SAP River T1 T2 T3 V1 V2 data model River cv sp business logic trigger app mob app client OData over HTTP access control Fiori, UI5
  • 138. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 140 SAP River • A development environment for rapidly building complete SAP HANA native applications – Professional Developers (initial focus) – Casual Developers  Integrated program specification of the data model, business code and access control enables accelerated development  River interoperates and cross-compiles into native HANA objects (tables, views, procedures …)  The data model only exists in the data-base, no ODBC-like connection, data copying or ORM
  • 139. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 141 HANA XS development model 1. Develop & Share 2. Activate & Test 3. Deploy HANA DB activate Activation DB objects SScript OData Auth XSJS roles River compiler stored procedures tables views package & deploy studioRiver Editor (on-premise) browserRiver web Editor (Cloud) browser Studio Repository .rdl business app developers .rdl workspace, save HANA based development Object management & versioning Delivery and patching
  • 140. The SAP River Language
  • 141. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 143 Demo scenario: "River Airlines" River Airlines Reservation System  List all flights  Book a seat  … Implementation Flight flight id, from/to, list of seats Passenger passenger details, flight & seat reservation Seat status City
  • 142. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 144 Entities and associations: the data model entity Flight { key element flightId: String(8); element flightNum: String (3); element cityFrom: association to City; element cityTo: association to City; element depDate: LocalDate; element depTime: LocalTime; element flightSeats: association[0..*] to Seat via backlink flight; } entity Seat { key element flight: association to Flight; element id: SeatNum; element isExitRow: Boolean default false; element Status: enum {free; reserved;}; } Primitive types, enumerations, structured types keys Associations Default and calculated values  Use "E/R modeling" to define your data model – Entities correspond to database tables – Associations describe relations between tables
  • 144. 146© 2013 SAP AG or an SAP affiliate company. All rights reserved. https://3im.asia.sap-river.com/river/ @OData application MyFirstRiverApp { // ----------------------------------------------- Data model // Flights travel between cities and have seats // Passengers book seats on flights entity Flight { key flightId: String(8); flightNum: String(3); opened: Boolean default false; depCity: association to City; arrCity: association to City; depDate: UTCTimestamp; depTime: LocalTime; planeCode: String(10); seatList: association[0..*] to Seat via backlink flight; } entity Seat { flight: association to Flight; rowNum: Integer; seatType: SeatType; seatLetter: String(1); isExitRow: Boolean default false; seatStatus: SeatStatus; } entity Passenger { flight: association to Flight; passengerName: String(35); passengermail: String(35); assignedSeat: association to Seat; } entity City { cityCode: String(3); cityName: String(35); } type SeatType: String(6) enum { window = 'Window'; middle = 'Middle'; aisle = 'Aisle'; } type SeatStatus: String (15) enum { free; reserved; }; } // riverflights
  • 145. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 147 Actions: the business logic entity Seat { flight: Association to Flight; seatNum: SeatNum; isExitRow: Boolean default false; seatStatus: SeatStatus; } entity Flight { … flightSeats: Association[0..*] to Seat via backlink flight; action GetEmptySeats() : Seat [] { return select * from this.flightSeats where Seat.seatStatus = SeatStatus.free; } } this  Actions describe the application's business logic – Local variables (scalar, streams) – Control statements (if, foreach, apply…) – Integrated SQL queries
  • 146. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 148 Extended queries entity Seat { flight: Association to Flight; seatNum: SeatNum; isExitRow: Boolean default false; seatStatus: SeatStatus; } entity Flight { … flightSeats: Association[0..*] to Seat via backlink flight; action GetEmptySeats() : Seat [] { return select * from this.flightSeats where Seat.Status = SeatStatus.free; } } – Use entity associations naturally in queries: extending SQL! = __temp16 = select T1. … from Flights as T0 inner join "flights.Seat" as T1 on (T0."flightId" = "T0:flightSeats"."flight.flightId") where "FlightId" = 12345; __retval__ = select T2. … from :__temp16 as T2 where T2."seatStatus" = 'free'; __FlightId Status FlightId SeatNum id Flight temp16 Seat
  • 147. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 149 Access control role Dispatcher; entity Flight { key flightId: String(8); flightNum: String (3); cityFrom: Association to City; cityTo: Association to City; depDate: LocalDate; depTime: LocalTime; flightSeats : Association[0..*] to Seat via backlink flight; } action OpenNewFlight() accessible by Dispatcher { … } entity Seat { …… action save() accessible by Flight; …  Define roles  CRUD and call access privileges  Assign run-time users to roles
  • 148. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 150 Interoperability entity employee { action is_legal_SAP_email(hdr: String): Boolean as HANAJS {% var re = /^S+@sap.(com|corp)$/; return re.test(v_hdr); %} } entity Company as alias to sap.hana.catalog.ExtTable.T001; view Company as SELECT FROM sap.hana.catalog.ExtTable.T001 { BUKRS as companyCode, BUTXT as companyName } let StockQuotes: StockQuote[] = sap.hana.repository.XSStock.fetcher.getQuotes('http://www.nasdaq.com/quotes'); breakouts: inline JavaScript or SQlScript alias abstraction view Call XS JS directly
  • 150. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 152 The SAP HANA Programming Model 1. SAP UI5-based design language and tools for clients 2. OData: universal, standard web-based data interface 3. SAP River: new XS native application development environment: use a single integrated language for data modeling, business logic and access control o Eliminates data model duplication – no ORM o Interoperates with and compiles into other SAP HANA native development objects for ultimate flexibility / reuse mobile Entity Data Model HANA SAP River browsers client apps OData
  • 151. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 153 More About River SAP River is part of SAP HANA SPS7 To learn more, or to participate in the SAP River Early Adoption Program:  Please contact SAPRiver@sap.com  Check out SAP River at http://SAP-River.com Thank you!
  • 153. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 155
  • 154. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 156 Further Information SAP Education and Certification Opportunities HANA Academy openSAP Course Watch SAP TechEd Online www.sapteched.com/online SAP Public Web SAP HANA SAP HANA Developer Center SAP HANA Developer Online Help
  • 155. Appendix: SAP HANA UI Integration Services Overview and roadmap
  • 156. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 158 Agenda SAP HANA UI Integration Services Using SAP HANA UI Integration Services Roadmap Summary
  • 157. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 159 Trends and expectations in the market User Experience  Demand for attractive user experience  Responsive design and high interaction  High user productivity  Real-time access to critical information  Analytical applications  Web and native applications on any device Global trends  Cloud  Mobile  Social  Information (big data) Development  Emergence of SAP HANA platform for in- memory, high-performance applications  Agility, fast innovation cycles  Developer efficiency and reduced TCD  Consistency across applications  Open standards and open source
  • 158. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 160 Business perspective Addressing the needs of various business roles  Launch sites and overview dashboards with analytics or business applications to quickly analyze business data in a central, personalized work environment  Drill down into details if needed  Structure business content and make applications, reports and information available to end users based on their business role  Enrich standalone business applications with contextual information & services  Efficiently develop high-performance, interactive applications based on SAP HANA leveraging core services End user Designer Developer Use & personalize Configure & enhance Develop
  • 159. SAP HANA UI Integration Services Overview
  • 160. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 162 SAP HANA UI Integration Services Value Proposition With SAP HANA UI Integration Services, developers and designers can easily create and design application sites based on HANA applications through efficient development using standardized services and consistent UI patterns to support end-to-end business scenarios with harmonized user experience across applications.  Provides end users a state-of-the-art user experience and access to seamlessly integrated HANA native applications  Enables designers to easily organize applications and widgets into sites via intuitive design environment  Gives developers a simple way to use standardized services for creating application sites and integrating widgets within their familiar SAP HANA studio environment
  • 161. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 163 Benefits  Consistent user interface and state-of-the-art user experience  Unified access point to assigned sites and applications  Options to personalize preferences  Quickly compose and configure application sites via site designer  Aligned user experience by using same paradigms for widget configuration  Allow easy extensibility of custom-build or partner applications  Simple way to use standardized services as part of HANA native (XS) development environment for creating well-performing, two-tier applications  Easily build and reuse HTML5-based applications using widgets  Design the application UI with the design environment embedded in SAP HANA studio  Create and manage all artifacts directly from SAP HANA studio and repository  Allow the business developer to focus on the business apps End user Developer Designer
  • 162. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 164 SAP HANA UI Integration Services - overview  Sites and page building: state-of-the-art design environment of for managing sites, page navigation, layout and content  Property persistence: widget can define properties that are persisted via customization  Personalization: persistency of widget properties on user level  Publish-Subscribe: eventing mechanism allowing data interchange between widgets (mashups)  Context: properties can be reflected in the URL allowing bookmarking and sharing  OpenSocial: integration of OpenSocial-compliant widgets SAP HANA Platform UI Integration Services Sites & navigation Properties Personali- zation Eventing Context Widget catalog Detailed information about the UI services and APIs are described in the “SAP HANA Developer Guide” (http://help.sap.com/hana_platform)
  • 163. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 165 End user perspective Quick access to interactive application sites Native HANA application wrapped as widget Application site with interactive widgets Full flexible page layout Flexible navigation based on the user’s roles
  • 164. SAP HANA UI Integration Services End-to-end scenario for using UI Services
  • 165. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 167 Creating a native SAP HANA (XS) application and application site Development process overview Developer Designer End User Develop and enrich native applications leveraging UI services Create application site in HANA studio with full support of the lifecycle Adjust application site provided by a developer Change site layout, add widgets and configure properties Optimize the site to match end user needs Assign end users who are allowed to access the site Use application site Personalize the site
  • 166. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 168 SAP HANA native applications development flow Detailed information for developers is available in the “SAP HANA Developer Guide” via http://help.sap.com/hana_platform • DB tables • Analytical objects • Data restriction 1. Define data artifacts • Control flow logic • Data services • Calculation logic 2. Implement business logic • Shell • Navigation • Theming • … 3. Implement user interface
  • 167. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 169 Development environment SAP HANA UI Integration Services provide tools and client-side APIs for development of widgets and integration into application sites:  UI integration services as dedicated delivery unit  SAP Hana repository plug-ins  Wizards for SAP HANA studio How can developers integrate an existing HANA application as widget into an application site? 1) Wrap the application as an OpenSocial component 2) Use wizard to turn it into a widget 3) Create an application site object 4) Open the application site in the design environment and add a widget
  • 168. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 170 Developer perspective Integrated development environment in SAP HANA studio Creation wizard for application sites and widgets Application site Widget Editor for using UI services API in your code
  • 169. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 171 Designer perspective Intuitive design environment for managing application sites Web-based editor for creating and organizing application sites and content Widget catalog Standalone native application wrapped as widget Application site Full flexible page layout Manage site layout Manage navigation structure Manage site properties Adding widgets to the site
  • 170. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 172 Step-by-step  Begin the UI implementation with a UX wireframe describing the entire application and site structure  Should include all required screens and the entire interaction flow Define UX mockup Put it all together and launch! Design complete application site Import or develop widgets Identify UI components
  • 171. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 173 Step-by-step  Break down the mockup to identify distinct UI components (building blocks)  Can either be simple controls or more complex elements  Different components should be loosely coupled Define UX mockup Put it all together and launch! Design complete application site Import or develop widgets Identify UI components Search box widget Table Widget Details Widget Pie Chart Widget Navigation Bar (Shell) Navigation Bar (Shell) Exact Parameter Selector Widget Bar Chart Widget
  • 172. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 174 Step-by-step  Build UI components as widgets directly from the HANA native IDE (HANA studio)  Use third party widgets for selected components  Define widget customizable properties to allow optimal flexibility and reusability  Define widget personalizable properties to allow end users to persist preferences  Define events widgets can publish or subscribe to allowing widget communication  Define application context attributes reflected in the URL Define UX mockup Put it all together and launch! Design complete application site Import or develop widgets Identify UI components
  • 173. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 175 Step-by-step Define UX mockup Put it all together and launch! Design complete application site Import or develop widgets Identify UI components Table Widget Details Widget Search box widget Pie Chart Widget Exact Parameter Selector Widget Bar Chart Widget Personalizable attributes Context attributes in URL Widget interaction 3rd party widget Widget interaction Customizable widget properties
  • 174. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 176 Step-by-step  Create the application site directly from SAP HANA studio as the application shell  Edit the application site using the design environment  Add, rename, reorder and manipulate sites to define the application site hierarchy  Add widgets to pages and customize them  Reposition and resize widgets and refine the layout to reach a pixel perfect experience Define UX mockup Put it all together and launch! Design complete application site Import or develop widgets Identify UI components
  • 175. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 177 Step-by-step Define UX mockup Put it all together and launch! Design complete application site Import or develop widgets Identify UI components Adjust site hierarchy and manage pages Add widgets from gallery Pixel perfect layout definition Customize widgets (width, properties)
  • 176. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 178 Step-by-step  Refine and iterate as needed  Activate the application site from SAP HANA studio  Provide the link to your end users to access the site Define UX mockup Put it all together and launch! Design complete application site Import or develop widgets Identify UI components
  • 177. SAP HANA UI Integration Services Roadmap
  • 178. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 180 Planned InnovationsToday Future Direction SAP HANA UI Integration Services Roadmap End user  Easy access to and navigation between (native) applications Designer  Embedded WYSIWYG design environment to organize application sites and widgets  Manage site layout, hierarchy and properties Developer  Integrated development environment in SAP HANA studio  Wizards for creating artifacts such as application sites and widgets  Public APIs for consistent UIs Core Services  Additional services supporting developer scenarios, e.g. navigation, branding, layout personalization in the shell Shell  Support of additional shell(s)  Support of catalogs from different sources Widgets  Re-useable templates for widgets to support common requirements e.g. responsive tables Future enhancements  Extension of the developer story to an integration point for end users on SAP HANA stack  Integration of SAP HANA and non- HANA applications  Service integration with other SAP solutions, e.g. SAP JAM  Usage of smart, contextual services to provide the right content in the right context to end users This is the current state of planning and may be changed by SAP at any time. This presentation and SAP‘s strategy and possible future developments are subject to change and may be changed by SAP at any time for any reason without notice. This document is provided without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement SAP HANA SP6
  • 179. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 181 SAP HANA UI Integration Services What’s new in SAP HANA SPS7  Enhanced Catalog Services allowing to retrieve non-widget content  Widget Directory leveraging the new catalog service enhancements  New permissions mechanism on Application Sites  Introduction of a new navigation service  Supporting the Golden Reflection Theme and the new Blue Crystal Theme  Demo content available as part of the SHINE demo package
  • 181. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 183 Summary With SAP HANA UI Integration Services, developers and designers can easily create and design application sites based on HANA applications through efficient development using standardized services and consistent UI patterns to support end-to-end business scenarios with harmonized user experience across applications. SAP HANA XS UI Integration Services Page building Properties Personali- zation Eventing Context Widget catalog  Provides end users a state-of-the-art user experience and access to seamlessly integrated HANA native applications  Enables designers to easily organize applications and widgets into sites via intuitive design environment  Gives developers a simple way to use standardized services for creating application sites and integrating widgets within their familiar SAP HANA studio environment
  • 182. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 184 5 easy steps to quickly get started 1) Watch the tutorial videos on SAP HANA Academy 2) Download SAP HANA developer edition 3) Join OpenSAP course to learn more and run the exercises 4) Learn more by reading the comprehensive developer guide and latest enhancements 5) Share your feedback with the SAP HANA developer community
  • 183. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 185 Further Information Overview Experience SAP HANA http://www.saphana.com/welcome SAP HANA In Memory http://scn.sap.com/community/hana-in-memory HANA Startup Focus Program http://www.experiencesaphana.com/docs/DOC-1781 Twitter @SapDevs, #sapdevcenter Developer Information SAP HANA Developer Center http://scn.sap.com/community/developer-center/hana and http://developers.sap.com/hana SAP HANA Help Center http://http://help.sap.com/hana_platform (Release Notes, Developer Guide) SAP HANA Academy http://academy.saphana.com / http://www.saphana.com/docs/DOC-3123 SAP HANA Developer Edition http://scn.sap.com/docs/DOC-31722 OpenSAP courses https://open.sap.com
  • 184. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 186 SAP and SUSE 15 successful years of co-innovation asdf The recommended and supported OS for SAP HANA Reliability Scalability Performance Security
  • 185. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 187 Agenda SAP HANA Development: Overview  Platform  SAP HANA Extended Application Services (XS) SAP HANA XS Technical Architecture SAP HANA Studio Development Perspective Browser Based Development Tools SAP HANA Native Development Model Introducing River (time permitting) SUSE Technology Overview Advantages for partners (as part of SAP PartnerEdge program for Application Development ) Questions & answers
  • 186. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 188 SUSE Portfolio
  • 187. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 189 SUSE Linux Enterprise Server What Do You Need to Deliver IT as a Service?
  • 188. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 190 Key Features and Benefits SUSE Linux Enterprise Server
  • 189. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 191 Large Ecosystem, More Choices SUSE Linux Enterprise Server Available on Five Different Architectures Intel64/AMD64, IA-32, IBM POWER, IBM System z and Itanium More Applications, More Hardware 11,400+ ISV applications 13,500+ hardware devices certified and supported Most Up-to-date Drivers and Comprehensive Tools The SUSE SolidDriver Program: deploy necessary third-party kernel drivers with confidence SDK: IDE and popular programming languages Resource:  www.suse.com/susepsc/home  www.suse.com/yessearch/search.jsp  http://drivers.suse.com
  • 190. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 192 SUSE Linux Enterprise Server Includes ~ 3000 applications and libraries
  • 191. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 193 Optimized Linux for SAP SUSE Linux Enterprise Server for SAP Applications Page Cache Limit Clam SAP 18 Months SP Overlap SAP Installation Wizard High Availability Extension SUSE Linux Enterprise Server SAP specific update channel Priority Support for SAP Priority Support for SAP
  • 192. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 194 Join PartnerNet Program (free) Gain free access to sales and technical training access to software for testing, demonstrations, evaluations, etc. inclusion in the Partner Locator Complete the online application www.partnernetprogram.com Click “Join PartnerNet”  Please note: if you do not have a login account you will need to create one and then complete the application  Enter “SAP” in promotion field on the application PartnerNet Help Desk available to assist with questions https://www.partnernetprogram.com/helpdesk.html
  • 193. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 195 SUSE Developer Resources
  • 194. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 196 Agenda SAP HANA Development: Overview  Platform  SAP HANA Extended Application Services (XS) SAP HANA XS Technical Architecture SAP HANA Studio Development Perspective Browser Based Development Tools SAP HANA Native Development Model Introducing River (time permitting) SUSE Technology Overview Advantages for partners (as part of SAP PartnerEdge program for Application Development ) Questions & answers
  • 195. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 197 Investment First pack*: €2500 p.a. Single, global eContract Set app price to bundle with runtime licenses** Benefits 25 developer licenses, including enablement Market your platform applications: SAP Store Six Innovation Packs: SAP HANA, SAP HANA Cloud, Mobile, Business Intelligence, SAP Business One, SAP Business Suite Partners New and existing All companies (SI, VAR, OEM, ISV, …) interested in creating and selling business applications utilizing SAP’s market leading platforms A New Way to Partner With SAP The SAP PartnerEdge Program for Application Development All information: www.sapadpc.com *Each additional pack: €500. SAP HANA Cloud : 3500€/1500€ ** for select Innovation Packs
  • 196. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 198 Announcement 2014 SAP PartnerEdge Program for Application Development Challenges How can you participate? Publish an application on the SAP Store between April 1st and August 31st and register through either of these three links: SAP HANA, SAP HANA Cloud or Mobile* Three Challenge Categories SAP HANA Mobile SAP HANA Cloud What can you win? Join an Award Session to receive your Finalist Trophy. Have your app publicized through SAP‘s social media channels, SAP Store, newsletters, videos & press releases and/or reference slides. Winners and finalists will be considered for the coveted SAP Pinnacle Award and will benefit from demand-generation activities. 2013 Trophies 2012 Award Session at SapphireNow
  • 197. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 199 More SAP and SUSE Technical Trainings Register or access the recordings HERE
  • 198. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 200 Call to Action Familiarize yourself with the SAP PartnerEdge program for Application Development and sign up Learn about SUSE solutions for SAP (www.suse.com/sap) and PartnerNet program for SUSE partners Join the Campaign Jam Group HERE
  • 199. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 201 Questions & Answers &
  • 200. © 2013 SAP AG or an SAP affiliate company. All rights reserved. 202 Call to Action Familiarize yourself with the SAP PartnerEdge program for Application Development and sign up Learn about SUSE solutions for SAP (www.suse.com/sap) and PartnerNet program for SUSE partners Join the Campaign Jam Group HERE