SAP UI Technologies

This Post on SAP UI Technologies will document the different tools and technologies that SAP provides for building user interfaces and what the primary benefits and/or limitations are for each UI technology.  This document will also outline where each UI technology is most suitable and best utilized.

What are the Available SAP UI Technologies

BSP – Write a BSP application and access it via BSP iView or directly using its URL.
WebDynpro for ABAP – write a WebDynpro application in ABAP and access it via WebDynpro iView or directly using its URL.
WebDynpro for java – write a WebDynpro application in Java and access it via WebDynpro iView or directly using its URL.
JSPDynPage / JSP / Java application (servlet/EJB), PAR files. Write a java servlet, JSP, EJB application, AbstractPortalComponent (PAR), or JSPDynPage and access it from Portal via URL iView, custom iView from PAR. JSPs , servlets and EJB applications can be accessed directly using their URLs.
Visual Composer – Write a SAP function module and deploy it via Visual Composer.
WebGUI for HTML and ITS – write a custom SAP transaction and access it from portal via SAP Transaction iView, or access it directly via ITS.
APS/.Net Application – write a .NET application and access it generic URL iView, or directly using its URL.

BSP Technology

Advantages:

  • Proven, scalable development environment
  • Tight integration with security and administration tools
  • The BSP runtime includes a library of HTML Business tags for automatically generating complex user interface elements.
  • Native Web Look and Feel
  • Can leverage standard HTML business tags , which automatically output HTML for tables, trees and graphs
  • Less complicated for ABAP-ers than WDJ

Disadvantages:

  • Separation of concerns BSP pages allow you to insert ABAP code anywhere in the static HTML code.The application code, the business logic, and the presentation data are free to mix together — an arrangement that is error-prone and difficult to debug. However this may be an advantage as well, allowing for more flexibility.
  • Automatic data type conversion If you output an ABAP field in the dynamic HTML page, you will find no standard way for performing the data type conversions (e.g., for date, time, or currency handling) needed in complex web applications.
  • Reuse BSP pages offer limited reuse capabilities via page fragments.
  • Style and branding Although BSP pages support cascading style sheets (CSS), BSP applications do not have a way to enforce a consistent look and feel across multiple pages of complex applications.
  • Browser independence Anyone who has written a nontrivial web application will face portability problems with plain BSP pages.
  • No ALV, F4, Office or Adobe forms integration out of the box.

This is great for less complicated, SAP-centric applications for SAP and non-SAP users and also great option when a true Web look and feel is desired.

WebDynpro for ABAP technology

Advantages
Proven, scalable development environment
Tight integration with security and administration tools
Offers HTMLB tags
Complex integrated controls/functionality: F4 help, ALV forms, Adobe Interactive Forms

Disadvantages
SAP Web Dynpro ABAP still does not offer all the functionality that WebDynpro Java provides (for example Mobile Infrastructure).
Available only with NetWeaver 04s
Unlike WDJ, it has no support for mobile solutions
No interoperability with the most popular Web UI frameworks (Struts, JSF,Tapestry)
Will only run on WebAS – not on third-party web servers
Cannot access portal runtime services.

This option is appropriate for developers with extensive ABAP experience. WebDynpro for ABAP promises to be the best ( SAP –preferred) option for building web-based applications that access SAP and non-SAP data.

Web Dynpro for Java technology

Advantages

  • The Web Dynpro runtime provides many services for you (for example, flow control and field formatting) that you would otherwise code yourself.
  • Productivity through declarative approaches to modeling instead of programming, layout, screen usage, navigation, and data binding.
  • Supports personalization – totally dependent on EP personalization
  • Page reloading- reloads only a particular component
  • Reusability – through development components
  • Predefined interfaces to backend systems (Web Services, JavaBeans, XMI, RFC, …)

Disadvantages

  • Web Dynpro Java application can only run in SAP Web AS 6.30 or higher.
  • The ui elements are dragged/dropped into the layout. Web Dynpro is a standard UI used to build business applications, which means that you can’t change the look and feel with embedded html or javascript.
  • Unlike WDA, it does not have F4 help and integrated ALV grids.
  • Unlike other Web java-based frameworks, it does not provide an easy way to gather requirements and present the design to stakeholders.
  • Must still connect to SAP system via Jco which is much more complicated than from ABAP

The option is appropriate for developers with extensive Java experience. Webdynpro does not apply when applications that serve a large consumer community (B2C applications like Amazon, eBay) , stateless and browser independent. Great for Web applications that need to pull data from multiple systems/databases and that won’t benefit from tight SAP security integration.

Java-based application

Advantages

  • Custom JSPs and servlets can be ran on any J2EE server .
  • Complete control over the business logic and control flow of your application
  • Maximum code portability.
  • The JSP approach does not provide browser independence, is still pretty low-level, and is strictly bound to the Java/J2EE platform
  • The JSP DynPage provides enhanced event handling an easy session management
  • JSPDynPage provides support for HTMLB
  • Flexible personalization : both custom via own css files, or it can use EP personalization for JSPDyn Page and PAR files
  • Can leverage the portal runtime
  • Can easily access non-SAP systems

Disadvantages

  • If you develop applications on your own, you lose the ability to automatically access information provided by the portal server runtime (for example, users, themes, and other information).
  • Accessing data from the SAP back end by calling function modules through SAP JCo is far more complex than accessing it with OpenSQL in an ABAP application.
  • JSP/Servlets offer basic event handling where you have to take care of the event handling yourself
  • With JSP/servlets The programmer has to take care of the session identifier, which is a unique identifier that makes sure that the datasets are user specific
  • Page reloading – reloads the whole page
  • No out of the box reusability

This option is appropriate for developers with extensive Java experience who want If you are working (or planning to work with ) JSP, use JSPDynpage.

NetWeaver Visual Composer technology

Advantages

  • If the SAP system provides existing function modules, you can concentrate on building iViews using the design tools of SAP NetWeaver Visual Composer.
  • SAP NetWeaver Visual Composer automatically generates all required Java code.
  • No programming knowledge
  • Very easy, quick and cheap to develop
  • Familiar tools and development model for ABAP developers
  • Output automatically shares portal look and feel

Disadvantages

  • If the SAP system does not provide existing function modules, you have to implement them first, which means you need experienced ABAP developers.
  • This option is the easiest way to create a portal application that accesses data in an SAP system.
  • Limited control over the user interface

Great for simple SAP-centric applications requiring a rudimentary one or two screen input-output interface, or when you have strong ABAP development skills in-house.

ASP/.NET applications technology

Advantages

  • Like Java applications, you can easily integrate .NET applications into the portal using a generic URL iView.
  • Another advantage is that you gain complete control over the business logic and control flow of your application
  • SAP connector products available
  • Can easily access non-SAP systems

Disadvantages

  • You need a Microsoft Internet Information Server (IIS) to host your .NET application.
  • SAP has announced ABAP and Java to be the strategic developing languages / platforms.
  • This option is appropriate for developers with extensive experience with Microsoft tools (for example Microsoft Visual Studio) and languages like Active Server Pages (ASP), ASP.NET, Visual Basic .NET, or C#.
  • Accessing SAP application with the .NET connector is much more complicated than accessing them from ABAP
  • Cannot run on EP, unless you run an IIS in parallel

Use when you want to strategically locate your web applications on a single Microsoft IIS server.

SAPGUI for HTML via ITS

Advantages:

  • Generates HTML page for every SAP screen Dynamically
  • ITS functionality is integrated in SAP Web AS kernel
  • Runs on one machine, reduces number of servers
  • Common http infrastructure, no additional Web Sever required
  • Common load balancing
  • Common installation and administration
  • Proven, scalable development environment
  • Tight integration with security and administration tools
  • Familiar development model and tools for ABAPers
  • Applications can be accessed by all SAPGUI Users
  • Tight coupling with SAP security and administration

Disadvantages:

  • SAP Transaction iViews do not use the portal style sheets
  • SAPGUI look and navigation paradigm is different from other web applications
  • All users must have SAP user ID logon
  • User can mistakenly use the browser back arrow instead of SAPGUI back arro, causing problems.
  • In older Netweaver versions , you cannot remove standard SAP menu – security concerns

This option is appropriate for developers with extensive ABAP experience. Great for SAP-centric applications with a complex user interface (lots of screens,fields, functions), developed to an experienced SAP user base.

Comments