Expand +



SAP's New ERP Strategy for Developers: 4 Ways to Make the Most of Your SAP ERP System

by Karl Kessler | SAPinsider

July 1, 2007

SAP ERP 6.0 is the go-to release for SAP customers and will be for some time. Find out the four things you’ll need to know to develop for the new SAP ERP landscape, and what future improvements and innovations will soon be delivered in enhancement packages. You’ll also discover the benefits you can expect from developing on SAP NetWeaver 7.0, the foundation of SAP ERP.


In a typical enterprise, the lion's share of the IT budget is invested in the existing landscape's consolidation and ongoing operations, including maintenance procedures and patches. But once a mission-critical solution is installed, configured, and live, companies are ready to dedicate their remaining resources to improving their processes — preferably without upgrading the ERP backbone.

This is where the new release strategy for SAP ERP comes into play. SAP ERP 6.0 (previously mySAP ERP 20051) is positioned as the go-to release for SAP R/3 and SAP R/3 Enterprise customers, and will be the SAP ERP release for some time to come. For developers, the SAP strategy for bringing innovation to SAP ERP systems and its foundation, the SAP NetWeaver platform, will also mean some new opportunities to leverage your development skills. Here are some of the key things you need to know to develop for the new SAP ERP (see sidebar).


What Every Developer Should Understand About SAP ERP 6.0 and SAP NetWeaver 7.0

  1. Process innovations are available from enhancement packages, which are activated and managed based on your company's business requirements via the switch and enhancement framework.

  2. The SAP NetWeaver Business Client offers a new interface for power users.

  3. Enterprise services, based on Web service technology, are in play within SAP ERP and are highly accessible for your development work through the Enterprise Services Workplace on SDN (

  4. The SAP NetWeaver Composition Environment brings new opportunities to create composite applications from ERP enterprise services and from other systems' services.

The New ERP Strategy: Background for Developers

A keystone of the SAP ERP strategy is the stable, generic core that is the basis of the SAP ERP 6.0 release. This means that rather than relying on frequent, large-scale upgrades of backend solutions, customers, SAP, and partners now have an evolutionary path for ongoing enhancements to ERP systems.

SAP ERP 6.0 offers a solution for continuous business process innovation with enhancement packages and the switch and enhancement framework, both of which allow customers to control which components and functionality they'll use in their organizations (see Figure 1).


Figure 1
Enhancement packages provide innovation and enhancements over time on top of a stable SAP ERP core

With these enhancement packages, SAP will address innovations such as:

  • Process and user interface simplification, including new Web-based UI scenarios (discussed in a later section of this article)

  • Enterprise services, which enable the development of innovative composite applications using SAP's new Composition Environment (also discussed in a later section)

  • Cross-industry functional enhancements

  • Industry-specific enhancements — with a particular focus on Enhancement Package 3 (EhP3), which is planned for release in November 2007


For developers, the first order of business is to become familiar with the enhancement packages at work in your SAP ERP system landscape.

Additionally, SAP ERP is built on SAP NetWeaver technology. With the SAP NetWeaver 7.0 platform (see sidebar below), both ABAP and Java developers will see significant new opportunities to leverage their development skills for the SAP ERP landscape, including:

  • Enterprise SOA architecture and integrated enterprise services

  • New flexibility and possibilities for Web Dynpro interfaces for both Java and ABAP developers

  • Enhanced development tools for building composite applications

For developers, the first order of business is to become familiar with the enhancement packages at work in your SAP ERP system landscape.


SAP NetWeaver — Foundation of SAP ERP

With SAP NetWeaver 7.0 as the technology platform for SAP ERP 6.0, ERP customers can benefit from functional features, such as access — through the portal capabilities of SAP NetWeaver — to applications such as self- services, structured BI reports, and unstructured content, including KM folders and collaboration capabilities.

SAP NetWeaver allows SAP to more quickly deliver innovation to its install base, and — for developers — supports the use of enterprise services to decouple composite and core processes. It also provides the switch framework, which allows customers to flexibly choose what functionality to adopt.

SAP NetWeaver, the foundation of SAP ERP, is based on an architecture in which the Java and ABAP stacks are loosely coupled. On the ABAP side, some innovative offerings we'll discuss in this article are the support for the Web Dynpro paradigm embedded in the tools of the ABAP Workbench, as well as the switch and enhancement framework.

On the Java side, SAP NetWeaver offers a sophisticated Eclipse-based development environment, which includes the Composition Environment and the Enterprise Services Workplace for a process-based approach to accessing the enterprise services that are a major focus of enhancement packages.

Enhancement Packages: The Implications for Your ERP System and Development Projects

Enhancement packages are made to run on top of the stable ERP core.2 Each enhancement package offers the option to install various components, meaning customers can decide which components and functions should be "switched" on or off. These selections are maintained as you add future packages, so you won't lose the original selected active functions when you install a new package.

Understanding how enhancement packages work is key to facilitating programming against the activated components. During implementation, certain parts of development objects may become active or may remain passive. For example:

  • A field on a screen might become active and therefore visible, ready for input

  • In the code, a certain module call related to the field might be invoked

  • In the business logic layer, implicit and explicit "enhancement points" — which indicate changes to core code or the addition of industry solutions — might be active; explicit enhancement points are typically identified using a BAdI definition

  • On the implementation side, multiple BAdI implementations might reside inside a system and, depending on the actual switch setting, any of these implementations might be active

Developers need to be aware of which components have been activated, how to check the dependencies of these functions, and how to call additional functions as needed. For this, you will continue to use the switch and enhancement framework.


Developers need to be aware of which components have been activated to run in the SAP ERP system, how to check the dependencies of these functions, and how to call additional functions as needed.

An Overview of the Switch and Enhancement Framework

In its initial release, SAP ERP 6.0 introduced industry solutions and the switch and enhancement framework along with its core solution.3 The framework offered the technical means to access industry solutions simply by activating the required business functions that make up the applicable industry flavor of SAP ERP. The switch and enhancement framework can be found in the ABAP Workbench and is reflected in the ABAP runtime environment.

Administrators and system customizers generally use the switch framework during implementation to choose and activate development components. The enhancement framework then allows you to identify the "enhancement points" in your code in which industry solutions interact with the core, so you can locate exactly where code extensions can be added.

The switch framework is now also the vehicle for selecting and implementing the desired components of enhancement packages. Developers can access the dependencies of the chosen solutions that will impact custom development. With the maintenance transaction SFW5, available through the switch framework, you can investigate which business functions are active; with the latest version of this framework, dependency information is now made very clear (see Figure 2).


Figure 2
Checking a specific business function with transaction SFW5, the new switch framework maintenance view

The enhancement framework will be key to developers who need to understand which business functions are active and available within the system.

Advances in the Framework

Although many of the key parts of the switch and enhancement framework were delivered with SAP ERP 6.0, new additions to the framework — based on recent feedback regarding industry solutions — have since been developed:

  • It became apparent that the enhancement framework would sometimes need to be supported by a view of subsequent layers. Accordingly, an updated enhancement framework will include support for nested business functions, providing easier ways to group enhancements and more explicit ways to investigate dependencies of activated business functions.

  • Managing switch settings will be simplified with a more intuitive maintenance transaction (as shown in Figure 2) so that developers can more easily identify the components that have been activated, along with their dependencies.

  • The switch framework is being refined to further automate the activation of components.

These enhancements will be delivered in upcoming SAP NetWeaver support packages that are the basis for the next enhancement package releases (see Figure 3).4


Figure 3
Roadmap for upcoming enhancement packages (EhPs) and corresponding support packages (SPs) for SAP NetWeaver


You can think of SAP NetWeaver Business Client as a close relative of — and a successor to — SAP GUI.

SAP NetWeaver Business Client: A New Interface Option for Direct SAP Backend Information

SAP introduced SAP NetWeaver Business Client for professional business users who typically work heavily with an SAP backend system (see Figure 4). In contrast to casual users who access the SAP backbone primarily via the portal — launching self-services from time to time, collaborating on documents and workflow, and running analytic applications such as dashboards or BI reports — SAP NetWeaver Business Client users do more "heavy lifting" and therefore want more direct GUI-type interaction and behavior.


Figure 4
How a user accesses a procure-to-pay solution from SAP NetWeaver Business Client

In that sense, you can think of SAP NetWeaver Business Client as a close relative of — and a successor to — SAP GUI. More precisely, it provides a "shell" that serves as a workplace/session manager, runs directly on the user's computer, and provides a higher response time than a browser session. It also offers a roadmap-based navigation panel, highlights favorite transactions, and allows users to set themes.

Inside, though, SAP NetWeaver Business Client allows users to access the "canvas" where clients — such as the Web Dynpro smart client, a local installation of Web Dynpro rendering, the original SAP GUI, or HTML content — can be displayed in a role-oriented fashion. For your SAP ERP system, simplified processes such as "procure-to-pay" (shown back in Figure 4) or "order-to-cash," which have been reimplemented using Web Dynpro UI technology, make perfect candidates for the SAP NetWeaver Business Client interface.

In contrast to the portal, in which SAP GUI screens are typically displayed using Web GUI based on the Internet Transaction Server (ITS), SAP NetWeaver Business Client uses the locally installed SAP GUI (version 7.10) to launch transactions. So when choosing between using SAP NetWeaver Business Client or classical SAP NetWeaver Portal access, the tradeoff lies in whether you are willing to maintain a locally installed client for your users or if you would prefer to only support a zero-footprint solution, based on the portal, that will rely on server-side rendering.

Happily, from a programmer's point of view, your Web Dynpro applications may run the client, without any changes, in both the portal and SAP NetWeaver Business Client environments. Users don't see much if any difference, making it easy for you to target both environments (see sidebar). Even sophisticated features, such as portal eventing, work in the SAP NetWeaver Business Client environment.


Web Dynpro: ABAP or Java?

Whether you prefer the ABAP or Java variant of Web Dynpro depends, as always, on your team's skill sets.

Java requires that some additional development infrastructure be set up beforehand — when it comes to transports, for example — to smoothly organize your team's development efforts. An ABAP correction and transport system and related tools, on the other hand, are available in the ABAP Workbench.

Some recent extensions in the ABAP Workbench to further ease the creation of Web Dynpro applications include:

  • Wizards for recurring tasks, such as the handling of Web Dynpro table views

  • Easier binding of data sources and service invocations to Web Dynpro controllers

From a user's perspective, of course, there is not much difference. Both variants support unified rendering, and the Web Dynpro meta model is identical in both worlds. Most of SAP ERP's simplified scenarios are written in Web Dynpro ABAP, while employee and manager self-services are developed on the Java stack.

Enterprise Services: New Opportunities for SOA-Based Development with SAP ERP and the Enterprise Services Workplace

SAP ERP 6.0 delivers on SAP's commitment to an enterprise service-oriented architecture (enterprise SOA) and solutions that can function as a true business process platform.5 Through enterprise services repository technology, many of SAP ERP's business objects are now exposed as enterprise services.

You can review many of these services in the Enterprise Services Workplace on SDN (, where all service definitions can be inspected centrally based on global data types. Here you'll find services inventoried in a more process-oriented way so that you can select your services by business process (e.g., "procure-to-pay" or "sales order processing" or "order-to-cash" — see Figure 5).


Figure 5
Viewing the Sales Order Processing enterprise service at the Enterprise Services Workplace

Enterprise services are rolled out in bundles that group related enterprise services from a process- oriented perspective. This makes it much easier for developers to find all the interdependencies of enterprise services in a particular domain.

From a development perspective, the approach is similar to what you may have used in an SAP NetWeaver Exchange Infrastructure environment. You can specify message types and other process components centrally, and then later use them in a backend system for proxy generation.

From SDN, you can also test drive services, discuss specific services, and even request new services to be exposed. After browsing all published enterprise services on SDN, get demo downloads of the Enterprise Services Workplace and access a backend landscape to browse service entities and walk through enterprise service invocation in a real-life ERP backend system. When you're ready to begin development, you'll use sophisticated tools based on the Composition Environment to display the services ready for composition.


Through enterprise services repository technology and the Enterprise Services Workplace on SDN, many of SAP ERP's
business objects are now exposed as enterprise services.

SAP NetWeaver Composition Environment: Build Composite Applications for Your SAP ERP Systems

Once enterprise services have been made available, you are in a comfortable position to consume them or to compose services from various backend systems in the SAP NetWeaver Composition Environment.6

While this environment is not entirely new, from an SAP ERP perspective it now allows third-party software solution providers and development shops at customer sites to leverage the benefits offered by the enterprise services shipped via enhancement packages to the ERP ecosystem. Now you can test out the SAP NetWeaver Composition Environment by downloading it from SDN at

The basic characteristics of composite applications (see Figure 6) include:

  • A process choreography that addresses mainly collaborative processes — including workflow-based user interaction — in a model-driven way

  • UIs, including dashboards, that are expressed programmatically through Web Dynpro or in a model-driven way by means of SAP NetWeaver Visual Composer

  • Data composition that takes place in the Composition Application Framework (CAF) layer7

  • Business object abstraction and implementation that hides the backend connectivity used to build the composite


Figure 6
The layered architecture that characterizes a composite application

The SAP NetWeaver Composition Environment is based on SAP's Java stack and complies with the Java EE 5 standard.8 This means you can develop composite applications in Java on top of the specification. The SAP NetWeaver Developer Studio offers not only standard plug-ins, such as WTP for Web and Java EE 5 development, but also the CAF perspective, which serves to implement a persistent layer of composite applications if you do not want to persist the composite business objects in the associated back ends.

The Composition Environment also addresses higher-order levels of composition, which help business process experts with less programming experience to model composite views using SAP NetWeaver Visual Composer and define user-driven workflow processes using guided procedures.


SAP ERP 6.0 builds on the solid foundation of SAP NetWeaver. Enhancement packages keep the generic ERP core stable, yet allow business process innovation without the need to upgrade your ERP instances. SAP ERP also offers enterprise services in an evolutionary fashion — and developers can consume and compose these services through the new SAP NetWeaver Composition Environment.

With these technology enhancements, SAP ERP 6.0 puts the focus on process and UI simplification. This gives developers an excellent opportunity to create added value with powerful tools and frameworks, offer the innovation that every business and system landscape demands, and ultimately provide end-user satisfaction.

For more information, visit the SAP Developer Network at, where you can find demo downloads of the Composition Environment and the Enterprise Services Workplace.

1 SAP has recently changed its branding of all "mySAP" solutions. The updated solution name for mySAP ERP 2005 is SAP ERP 6.0.

2 For more information on the specific features of enhancement packages, please visit ? Wiki ? My Home ? Enterprise Services WIKI ? Home ? Enhancement Packages.

3 For background on the original switch and enhancement framework offerings, see my article "A New and Improved Approach to SAP Industry Solutions" in the July-September 2005 issue of SAP Insider (

4 Look for these to be delivered mainly in SAP NetWeaver support packages SP12 through SP14, which are the basis for upcoming enhancement packages EhP2 and EhP3.

5 For more information on SAP's enterprise SOA, visit, and see Dr. Franz-Josef Fritz's article "How mySAP ERP 2005 Supplies Core Ingredients of Consolidation and Innovation" in the October-December 2006 issue of SAP Insider (

6 For more information on composite applications, please see my article "Get Ready to Build Your Own Composite Application: An Introduction for Developers" in the October-December 2006 issue of SAP Insider (

7 For more on the CAF, please see my article "Get Ready to Build Your Own Composite Application: An Introduction for Developers" in the October-December 2006 issue of SAP Insider (

8 In fact, SAP NetWeaver Application Server as the basis of the Composition Environment was the first enterprise server to fulfill
the Java EE 5 specification.


Additional Resources

"Introducing the switch and enhancement framework — consolidating industry solutions with the mySAP ERP core" by Karl Kessler (SAP Professional Journal, March/April 2006,

SAP xApps and the Composite Application Framework by Jo Weilbach and Mario Herger (SAP PRESS,

"A New and Improved Approach to SAP Industry Solutions — How the Switch and Enhancement Framework Now Consolidates SAP Industry Solutions with the ERP Core" by Karl Kessler (SAP Insider, July-September 2005,

"SAP journey mapping — how to develop a winning mySAP ERP upgrade strategy" by Adolf Allesch (SAP Professional Journal, January/February 2006,


Karl Kessler joined SAP in 1992. He is the Product Manager of the SAP NetWeaver foundation — which includes SAP NetWeaver Application Server, Web Dynpro, ABAP Workbench, and SAP NetWeaver Developer Studio — and is responsible for all rollout activities. Currently Karl's focus is on how SAP NetWeaver powers SAP ERP and the SAP Business Suite. You can reach him at


An email has been sent to:

More from SAPinsider


Please log in to post a comment.

No comments have been submitted on this article. Be the first to comment!