Supported by
Supported by Inetum

SELECT FOR UPDATE

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.

We manually implemented 1000 SAP notes

images/thumbnail.jpg - Thumbnail
In the last years of the previous century, an SAP project manager stubbornly opposed to upgrading the SAP system. Instead, he decided that all the SAP notes belonging to that upgrade were to be manually implemented. All 1000 of them.

Podcast Sem especificação

images/thumbnail.jpg - Thumbnail
This Tuesday I was invited by Renan Correa to participate in his podcast “Sem especificação”.

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.

Can your users hack your SQL?

images/thumbnail.jpg - Thumbnail
Are you sure your SQL is bulletproof?

Do just one task per LOOP

images/thumbnail.jpg - Thumbnail
When ABAP programmers run into a LOOP they like to use it to get as many things done as possible. Even if that LOOP ends up having hundreds or thousands of lines.

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.

A program is an animal

images/thumbnail.jpg - Thumbnail
When a program is bad because it has duplicate code, it usually becomes shorter once we rewrite it to make it better. But, if its problem is not being properly structured into several classes and methods, if we rewrite it according to the best practices, it will probably end up longer.

Try poligamy

images/thumbnail.png - Thumbnail
Most ABAP programmers are like swans. They marry ABAP forever and are eternally faithful.

Keep code blocks short

images/thumbnail.jpg - Thumbnail
Unfortunately that is not what happens in most of the Z code I have seen in my life as an ABAP programmer. Both IFs and LOOPs tend to grow bigger than anyone can deal with. I recently ran into a LOOP with over 1500 lines.

ABAP inside SQL statements

images/thumbnail.jpg - Thumbnail
Did you know that, if you SAP is recent enough, you can use complex ABAP expressions in the middle of SQL commands?