Category > Tips & tricks
Supported by
Supported by Inetum


images/thumbnail.jpg - Thumbnail
When you’re going to modify existing records of a database table it is common to first SELECT them to see how they are and only then UPDATE them with what they will be.

Table with all development keys

images/thumbnail.jpg - Thumbnail
When I get to a new project the system administrator generates a development key for each development system assigned to our SAP username. Usually it’s sent to me by e-mail. Usually I lose track of it.

Easily modify internal table record

images/thumbnail.jpg - Thumbnail
The new way to get data from internal tables is also the new way to put data into internal tables.

IF branches should be small

images/thumbnail.jpg - Thumbnail
Picture yourself as a monkey hanging from a tree branch. You want to jump to another branch but it’s so far away that you cannot see it. If you jump you’ll probably fall to the ground. That’s bad.

Trotting debugger

images/thumbnail.png - Thumbnail
There are many excuses not to use the new functional syntax of ABAP 7.4. One is complaining that it’s impossible to debug. But it is not.

Escape from hackers

images/thumbnail.jpg - Thumbnail
Data entered by the user is one of the main vulnerabilities of a programme.

Avoid obsolete ABAP

images/thumbnail.jpg - Thumbnail
ABAP evolves (even though it stood mostly still for too many years). And as it evolves, it leaves behind some commands and syntax constructions which are replaced by better ones. Besides learning what’s new it is also important to learn what becomes obsolete.

Don't be so negative

images/thumbnail.jpg - Thumbnail
Legibility is very important in all written text. Except, maybe, in concrete poetry. As a follow up to the previous post, here are a couple of rules to help you deal with the negative in boolean expressions.

IF conditions should be simple to read

images/thumbnail.jpg - Thumbnail
Because…why should they be complex to read? It would only make it harder to maintain in the future. Just because an IF condition is complex doesn’t mean it has to be complicated.


images/thumbnail.jpg - Thumbnail
ABAP SQL is becoming more and more interesting and powerful. My latest discovery is the ability to use CASE in SELECT.

Insert without raising exception in internal table with unique key

images/thumbnail.jpg - Thumbnail
How many times in your ABAP consultant life did you have to deal with dumps happening as a consequence of a program trying to insert duplicate lines into an internal table defined with a UNIQUE KEY? Enough.

Manually populate a LISTBOX

images/thumbnail.jpg - Thumbnail
In 2012 I wondered why LISTBOX is so rarely used. I taught how to use it with standard data elements, which automatically populate it. Today I’ll teach you how you can populate it yourself.


images/thumbnail.jpg - Thumbnail
There’s so many things you can do on the selection screen. Here’s another one: five buttons in the toolbar.

Send emails to a distribution list

images/thumbnail.jpg - Thumbnail
When you need to send an email to multiple email addresses, the usual approach is to store that list of email addresses in a custom table and then add each one as recipient to the BCS request. But I recently learned a much nicer way to achieve the same result.

Change selection screen texts without hard coding them

images/thumbnail.jpg - Thumbnail
Even though many ABAP programmers tend to forget this, the less texts you hard code in your program the simpler it will be to translate it. Here’s a simple but rather obscure way to manipulate selection screen texts while still being able to translate then. This way you can, for example, prefix them with icons.