Beginner’s Guide to SAP

Binu Nethmi
11 min readMay 23, 2020

I would like to teach the basics of a language that I learnt while I was in my placement year. It was new to me but was very exciting. I would be taking you all through on how to code in ABAP by developing a simple Hello World program.

Let’s cut to the chase. I’ll try my best to keep you awake .

What is SAP?

SAP stands for Systems Applications and Products in Data Processing. SAP system consists of a number of fully integrated modules, which covers virtually every aspect of business management.

We can provide ERP (Enterprise Resource Planning) solutions by using SAP. The SAP uses ABAP as its core language.

What is SAP Logon?

You may be wondering on how to start developing a program using SAP. That’s where we have to talk about SAP Logon. SAP Logon is a locally installed program that you use to directly log on to a SAP system.

SAP Logon

You should be able to see IDS under the column Name. It’s the system we use to try new things. When we start out as a beginner, this is the system they provide us to try out our sample exercises and specifications. This would be our beginner work space to experiment and learn. When working with this system, we see many ways to do the same thing differently because it gives the exposure to try. It helped me a lot in the learning process and will help you too.

Once you learn the basics, they give other systems to work on. Since those are live company systems, we have to be much more responsible with them. There are three systems that we should work on:

  1. Development
  2. Quality
  3. Production

According to the issue, we have to choose the correct system.

IDS Login Page

This is IDS Login Page. I’ll be explaining the code using this system.

You have to add the user name and password to log in with the credentials that the company has provided you with.

What is a TCode?

TCode stands for Transaction code. It is a common term used in SAP. While developing something we can’t miss using at least one TCode. Developers often use TCodes to execute certain function within SAP.

By entering the TCode into the command field on the toolbar we can jump to any screen in SAP.

Entering a tcode into the command field

There are some main TCodes that will come across for sure if you are doing a development in SAP.

  1. SE11: ABAP Dictionary Maintenance (Database tables)
SE11 Tcode

2. SE38 : ABAP Editor (Programs)

SE38 Tcode

3. SE80 : Object Navigator

SE80 Tcode

4. SE37 : ABAP Function Modules

SE37 Tcode

I have listed the most important TCodes for your reference. You can find the TCodes and what it is for from the link given below.

I just gave an overall simple explanation about SAP and the main points that will surely come across when coding a new program.

Create a new program (SE38)

After successfully logging into the IDS, the first thing you have to do is to create a program. For that you have to go to the ABAP Editor screen. The TCode that directs you to the ABAP Editor screen is SE38.

SE38 — ABAP Editor

Giving a meaningful name for your program helps you to identify a certain program. This is a good practice to follow for every program you write.

  • You may wonder what’s with the ‘Z’ at the very beginning of the program name. It’s how SAP indicates our custom programs. Standard programs don’t have ‘Z’ at the beginning.

Time to learn more about SE38.

How to find an existing program code?

There’s no trouble if you remember the name of the program that you want to search. But think about forgetting the name of a program. As coders , it happens all the time .

SAP provides a solution for that. Let’s see what that is.

SE38 — Searching a program

As the screenshot given above, you can type the first letter you remember. In our case its ‘Z’ .

Type ‘*’ next to the letter in the program name input field. Next click on the search option icon in the corner of the program input field.

Search options

You can find all the programs starts with ‘Z’ and you can find the required program from that list.

Display option in SE38

If we want to display an existing program, type the program name and click on the ‘Display’ button.

SE38 Display option

We can refer and understand other programs by using this option.

Change option in SE38

If we want to change an existing program, we can click on the given below icon.

Change icon
Changing a program code

Now you can change the code.

There’s another option.

Like we did in display option, type the program name in SE38 and click on the change option. It directly gives the chance to change the program. Same thing happens both ways. Use the better option accordingly.

  • It’s better to go with the ‘Display’ option unless otherwise you were told to change someone’s program. It can prevent accidental changes happening in someones code. So, better to use ‘Display’ option when you are studying someones code.

Create option in SE38

If we want to create a new program , type the program name and click on the ‘Create’ button in SE38.

Let’s create our new program.

When you initially creating a program, the given window below will pop.

Program Attribute window

In this window you have to add the attributes that are needed to be included to your program. In here we have given a title, type and a status.

Now Save it.

Next, we have to save our program in a package.

Saving to a local Object

We can save the program in a local object or we can save it in our own package.

If you are saving this in a local object you have to use $TMP and click on the Local Object button.

If you are saving the program in your own package, then you have to add that package name into the package input field and save it using the save icon button.

How to create a custom package?

We have to use SE80 tcode (Object Navigator screen) to create our package.

Let’s say our package name is ‘ZPAC1’

Create Package in SE80

After clicking ‘Yes’, you have to add a short description in the package details pop up window.

Add Package details

After saving it, it directs to the workbench request pop up window.

What is a transport requests (TR)?

Transport requests (TR) are like containers which store the changes that are made in the development system. It also records the information regarding the type of change, the purpose of transport, request category and the target system. Every TR contains one or more change tasks.

What it does is it helps us to transport our changes to Quality or Production systems.

Creating a TR

After clicking on the Create Request button you can create your own TR.

Adding TR details

Add a description in your TR details and save it. Adding a project is optional.

Newly created TR

You can see there is request number. In our example its IDSK901787 . It has a standard format <SID>K<Number>

  • SID — System ID
  • K — Is fixed keyword/alphabet
  • Number — can be anything from a range starting with 900001

Now you have your own TR. Click on the tick.

SE80- New Package

Now we have our own package.

We can go and check whether we have created our TR successfully.

How to Display TR?

We use SE01 (Transport Orgamizer Screen)to display TRs.

SE01- Display TRs

By adding the request number and clicking on the display button , you can display the TR.

SE01- Expanded view of a TR

In here you can see our package has been included to the TR which we created just now.

Let’s say you want to edit the description of your TR.

How to edit the TR description?

Double click on the description .

It will direct to the window given below and in properties we can do the change.

Click on the change icon (the pencil).

SE01- Changing the request details in properties

Add the description and save it. (Ctrl+s).

If you go back, you can see the new description in the TR description.

SE01-After the description change in properties

Let’s go to the very beginning where all of this started. We wanted to create a package and we have our package in our hand now. Let’s continue.

Saving our program in our package

Add the package name and save it .

TR

It asks about our TR again.See whether it’s the correct one .

If it’s yours, click on the tick. If not, go and create a new TR for your change and save the changes in that TR.

Now we have created our new program.

SE38-New Program

This is where we have to write our code.

Let’s just write a code to display “Hello World”.

SE38- ‘Hello World’ write statement

It’s just a write statement. We use single quotation to represent a string. We have to end a statement using a full stop.

Before executing we have to follow three steps.

  1. Check syntax
  2. Save
  3. Activate

1)Check syntax

We check for syntax errors.

Check for syntax errors

By clicking the check icon (Ctrl+F2) you can check for syntax errors

Output after checking syntax errors

In our case there are no errors.

2)Save

Using save icon or (Ctrl+s) we can save the program.

Output after saving

We successfully saved our program.

3)Activate

We can’t execute if the code is not activated.

Activate a program

Select the correct program in the given below window and click on the tick to activate.

Inactivate Objects list

The Program got activated successfully.

When you’re familiar with SAP, what you do is you directly activate and execute the program. If there are no errors it’s easier . But say there’s an error .We have to go one by one to see what happened. So, as beginners follow the above order. Don’t use rabbit jumps .

Now it’s time to execute and display Hello World.

Execute the program

Click on this icon or press (f8) to execute.

Output

We successfully displayed Hello World.

You have created your first SAP ABAP program.Great job!! Cheers!!!

There are some points that I would like to cover. I think these will give you some additional knowledge.

Let’s begin.

Can you remember we created our new package ‘ZPAC1’ using SE80?

We can create many more using SE80. Not only packages. It’s like a root.

SE80-Object Navigator

Like this, we can create a program in our package using SE80.

We have another way to create a program using SE80. We can directly create a program. Let’s see how.

Se80-Creating a program

After typing the name of your new program and pressing enter, you can create directly.

  • But if we want to create a program, we go for SE38 because we are used to follow that path.
SE80-List of the things that we can create

We can use SE80 to create whatever in this given above list.

How to get the object list in SE38?

Display Object List icon

If we click on that icon, you can see , we get the chance to work on our program parallel with the object list.

Display Object list

If you want to check whether all the changes you’ve been doing have attached to the TR you created, you go for SE01. Let’s go and check in SE01.

SE01- Expanded TR with tasks

Yes. The package and the program are attached to our TR successfully.

How to find the TR number if forgotten?

Go to SE01 .

SE01-Transport Organizer

In here, if you were unable to remember the TR number you just created, it has to be in Modifiable request stage because you were modifying the code minutes ago.

So, tick Modifiable and click on Display button.

SE01-Modifiable TR List

There you can find all the modifiable TRs and you can get your TR number.

  • If you want to find out the released TRs, you tick the Release status and click on the Display button. It will give you all the Released TRs.

You are awesome!! You have reached the end of this article without giving up. CHEERS!!

That’s all for now . Hope you could get the most out of it.

I wanted to cover up the environment briefly as possible, while walking towards the destination “Writing a simple ‘Hello World’ program” .

See you in the next article!

Thank you , Have a great day and stay safe!

--

--