Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Overview of the ABAP Workbench

Purpose
This section introduces you to the ABAP Workbench and the basic concepts you need to be familiar with
before using it. The ABAP Workbench is a collection of tools you use to develop, test and run ABAP
programs.
Integration
All tools in the ABAP Workbench are integrated. For example, when you edit a program in the ABAP
Editor and want to open an object created with another tool, you just need to choose the object and the
ABAP Workbench automatically launches the tool you need to edit that object.
To help you organize your application development in this integrated environment, SAP has developed
the Object Navigator. It provides a tree-like hierarchy of development objects that makes it easier for you
to navigate and edit the objects you need.
We recommend that you use the Object Navigator as a starting point when you develop your applications.
For this reason, this documentation is written from the perspective of an Object Navigator user.
Features
What are Development Objects and Packages?
When you work with the ABAP Workbench, you work with development objects and packages.
Development objects are the individual parts of an ABAP application. Some examples of development
objects are:
● Programs: reports, transactions, and function modules

● Program components: events, screens, menus, and function modules

● Objects that programs can share: database fields, field definitions, and program messages.

A package is a container for objects that logically belong together. For example, all objects in an
application belong to a single package. A package is also a type of development object. An example of a
package is General Ledger Accounting.

**Note--> When you create a new object or change an existing object, the system asks you to assign the
object to a package.

Where and How to Store Development Objects?


The SAP system stores development objects in the Repository, which is a part of the database. When
you complete your work on a development object, you generate a runtime version of the object. Together
with the object, this runtime version is stored in the Repository. An application consists of several runtime
objects that are processed by the work processes in the SAP system.
Why to Divide Development from Production?
In a standard SAP installation, development and live operation take place in separate systems. You
create new applications in the development system and transport them to the production system. Daily
work takes place in the production system, which uses runtime versions created in the development
system.
The division between production and development systems is recommended because changes to an
existing ABAP application take immediate effect. To prevent disturbances in the daily workflow of the
production system, all developments are carried out in development systems.
Why to use the Transport Organizer?
You use the Transport Organizer to move applications from the development system to the production
system. The Transport Organizer also provides version control and tracking.

The following documentation contains more information about the ABAP Workbench and ABAP
programming:

ABAP User’s Guide


A comprehensive guide to the individual parts of an ABAP program. It contains information about
both basic and advanced ABAP programming, including the techniques of list and transaction
processing.

ABAP Dictionary
An introduction to ABAP data. Basic objects and aggregated objects are discussed. Here you can
find information about maintaining dictionary objects.

Transport Organizer
A guide to organizing large development projects in an SAP system. It covers how to set up the
ABAP Workbench Organizer and transport system, version management, and the modification
concept.

Extended Function Library Applications


This guide addresses topics like standardized dialogs, central address administration, application
logs, and archiving.

Background Processing
A description of the programming interfaces for SAP components including background processing
and batch input.
The Old Package Concept
Current situation

At present, the SAP System contains more than 300 000 development objects (programs, tables,
screens, BAPIs, function modules, types, and so on). These objects are grouped in over 1700
development classes stored in a flat structure.
Any developer can use any object. A developer can hardly set up a protection for his own development
objects. He can also only with difficulty mark the development objects that he would like to make available
to others. The technical modularization options open to developers on a small scale – for example, using
module pools, function groups, or classes – are very limited. Whether on a large or small scale however,
there are no mechanisms for technical modularization.
The package concept was developed to address these issues. Packages are a further development of the
current development classes with new additional semantics. They are designed to help
developers modularize, encapsulate, and decouple units in the SAP System.
Packages
Existing development classes are simply containers for development objects with a transport layer that
determines how the objects will be transported. Packages extend the concept of development classes
with the addition of new attributes: nesting, interfaces, visibility, and use accesses.

 Nesting allows you to embed packages in other packages.


 Visibility is a property of package elements. Elements may be visible outside their package.
However, they are always visible to other elements in the same package and always invisible to
embedded (sub-) packages within their package. For an element to be visible outside the
package, it must be contained in at least one package interface.
 Use access is the right of one package to use the visible elements in the interface of a second
package (but not the other way round).

Packages use interfaces and visibility to make their services known to other packages. All the visible
elements in a package can, potentially, be sued by other packages. In contrast, invisible elements cannot
be used by other packages as well. This allows the package to encapsulate its contents and protect its
elements from being used by unspecified external packages.
Use accesses restrict the use of the visible elements of other packages’ interfaces. Not all visible
elements can be used. A package can only use the visible elements of the provider package after the use
access to the latter’s interface has been created.
Nesting allows you to split up larger units of the SAP System and structure them in a hierarchy. The
interplay between interfaces and use accesses allows the elements of a package to be hidden simply,
and thus protect them from unintentional use.
The package concept also offers the option of splitting and encapsulating the SAP System into technical
units (the packages), reducing high levels of dependency and thus decoupling the system on a large and
small scale.
Note:-
For either the user package, provider package, or both, there may be consistent exceptions to the
package check. This is, for example, makes sense in system programs or generated programs.
There is also a transitional phase for migration projects in general, during which package checks will be
less strict.

Transport Organizer

The Transport Organizer provides you with functions for organizing software development projects. It is
designed to support projects of all sizes, whether they are carried out centrally or in a distributed
environment.

Information is given on the following topics:

 Requirements for Working with the Transport Organizer


 Object Editing in Customizing and Repository
 Working with the Transport Organizer
 Transport Workflow (Development)
 Working with Projects
 Version Management of Repository Objects

Change and Transport System


The Change and Transport System (CTS) is a tool that helps you to organize development projects in the
ABAP Workbench and in Customizing, and then transport the changes between the SAP Systems in your
system landscape.
This documentation gives you an overview of how you can use the CTS to organize your changes, as
well as basic information on setting up your system and client landscape, and choosing a transport
strategy. Read and follow this documentation when planning your development project.
For practical information on working with the Change and Transport System, see Transport
Organizer and Transport Management System.

You might also like