Comparing Sidecar-less Service Mesh from Cilium and Istio
Abap web dynpro
1. ABAP - Web Dynpro
An Overview by Manoj Dhir.
01/10/13 Manoj Dhir 1
2. Introduction
This presentation will be a starter package for
all who are and want to be a part of new age
SAP UI development and moreover are here
to make a change..
01/10/13 Manoj Dhir 2
3. Before I share the Agenda..
Who is a developer ?
What can we call a good UI ?
What do you thing ABAP - Web Dynpro is ?
What is the take away you expect after this
course?
01/10/13 Manoj Dhir 3
4. Agenda
1. Web Dynpro – The Motivation
2. Web Dynpro ABAP –The Programming Model
2.1. Views and UI Elements
2.2. Controllers and Context
2.3. Navigation and Plugs
2.4.Component Usage
3. Web Dynpro Features
3.1. ALV
3.2. Object Value Selector
4. Lets Wrap up. Anyone?
5. Any Questions ?
6. Ok! Can I ask now?
01/10/13 Manoj Dhir 4
5. Objectives of Web Dynpro
Model-based UI development
Enforce clear separation between UI logic and business logic
Little coding, lots of design
Declarative UI development
Future Proof UI Declaration
Browser, Web Dynpro Client, Mobile Device,…
Client technology independent UI definition
Central implementation of user interface standards
Accessibility support
Adobe Forms integration
Centrally provided UI elements
Internationalization support
Supports major platforms
Java (as of SAP NetWeaver '04), ABAP (as of SAP NetWeaver 7.0)
01/10/13 Manoj Dhir 5
6. Motivation Web Dynpro
Web Dynpro
UI definition independent of
client technology
As much abstract declaration as possible
Different rendering engines for different (future) UI
technologies without adapting application coding
01/10/13 Manoj Dhir 6
7. Application Scenarios With Web
Dynpro SAP NetWeaver Portal
NetWeaver
Web Dynpro iView Web Dynpro iView
Business Client
Web Dynpro J2EE ABAP Web Dynpro
Web Dynpro App Web Dynpro Web Dynpro Web Dynpro App
App App
Runtime Runtime
ABAP
SAP
RFC, WS Workbench
NetWeaver
Developer
Studio
RMI
J2EE ABAP Business
Server EJB (e.a.) Server API (BAPI,
BackendBusiness
Business
Application
Web Services)
Data Data
01/10/13 Manoj Dhir 7
8. Come to the point -The
Development
Development completely integrated into ABAP
Workbench
Graphical View Layout design
Declarative UI development
ABAP editor with forward navigation
ABAP dictionary data types directly available
Simple remote debugging
Functionality and services of
the ABAP environment directly usable
ABAP lifecycle management
Transport
Translation
Enhancements
01/10/13 Manoj Dhir 8
9. Meta-Model Declarations and
Custom Coding
Meta-model Custom Coding
Declarations Guarantees universality
Guarantees common app. design Good for data-driven, dynamic
Good for graphical tool support apps
Screen Layout and Nesting Implementation of business rules
Navigation and Error Handling Dynamic screen modifications
Data Flow Access to services (files etc.)
Componentization Portal eventing
... ...
Meta-data
Run able App
Generated
Compiler
Web Code
Dynpro Generator
Tools Custom
Code
01/10/13 Manoj Dhir 9
10. Model View Controller (MVC)
Generates the application
data without caring how it
Model will be displayed.
Binds the user and business
interaction layers together. All
intermediate processing is
performed here.
Business Interaction Layer
User Interaction Layer
Controller
Visualizes the application
data without caring how it
Binding Layer was generated.
View
01/10/13 Manoj Dhir 10
11. Defining View Layout
UI element
UI
libraries
element
tree of
view
Properties of
selected UI
element
View
layout
01/10/13 Manoj Dhir 11
12. UI Element Categories
e.g. Button, InputField,
Label
e.g. DateNavigator,
Table, Tree
e.g.
TransparentContainer,
Tray
Each UI element object is represented as an abstract class that is independent
of any client presentation layer.
01/10/13 Manoj Dhir 12
13. Lets Wrap up. Anyone?
Web Dynpro is SAP’s UI strategy
Declarative, MVC based UI programming model
UI definition independent of rendering technology
Web Dynpro for ABAP available with SAP
NetWeaver 7.0
Programming model similar to Web Dynpro for Java
Completely Integrated into the SAP NetWeaver
Application Server ABAP
01/10/13 Manoj Dhir 13
16. Where to Get More Information
www.sap.com
01/10/13 Manoj Dhir 16
Hinweis der Redaktion
UI development should be independent of rendering technology: developer should just think about UI design and not worry about HTTP request/response cycles No HTML or JavaScript code part of UI definition no need to care about browser platform, not even if the client is a web browser at all Whole UI definition (layout, eventing, data binding,...) stored in format independent of client technology allows rendering for different UI technologies: browsers, rich clients, future technologies clients in case of future UI technology paradigms (“WWW forever?”) the application UI should still be usable without redesigning
Forward Navigation is possible in Web Dynpro, however objects cannot be created using forward navigation
Metamodel Concept and Declarative Programming A Web Dynpro application is developed using a declarative programming approach. Within the ABAP Workbench there are special tools that allow you to build and abstract representation of your application in the form of a Web Dynpro metamodel. The necessary source code is then generated automatically and conforms to a standard architecture known as the Web Dynpro Framework (WDF). The WDF allows each controller within a component to have a set of standard hook methods. It is within these hook methods that any required custom coding can be placed. In addition to the events provided by the WDF, you can also define your own events for a Web Dynpro application. All Web Dynpro applications are constructed from the same basic units. However, through the use of custom coding in the standard hook methods, the standard framework can be extended to supply any required business functionality. Not all implementation decisions need to be made at design time. It is perfectly possible to implement a Web Dynpro application in which the appearance of the user interface is decided at runtime. This allows a highly flexible application to be written without requiring the need to directly write any HTML or JavaScript.
The roots of Web Dynpro – Model-View-Controller SAP’s Web Dynpro is built on the foundation of the Model-View-Controller (MVC) design paradigm. MVC was a revolutionary design paradigm because it was the first to describe software components in terms of: The functional responsibilities each should fulfil. The message protocols to which each component should respond. SAP has modified and extended the original MVC specification in order to create the Web Dynpro toolset.
UI elements are provided in several UI element libraries on the left hand side The hierarchy of the UI elements can be seen and changed in the UI element hierarchy at the top right of the workbench. A view layout is defined by placing UI elements on the view via drag and drop or changing the UI element hierarchy directly. Properties of a selected UI element can be defined at the lower right corner Visible UI elements can be arranged by container UI elements (transparent container, tray,…) with specific layout properties (Matrix, Flow Layout,…)
What has been extended from standard MVC in Web Dynpro ?