Supported by
Supported by Inetum

Automatic keyboard

images/thumbnail.jpg - Thumbnail
Every programmer knows about the intimate relationship between batch-inputs and paperweights, staplers and similar heavy objects. These precious little helpers can keep us from spending up to eight hours hitting the “ENTER” key with one finger. Although these objects have a certain charm, the law of gravity - the same one that makes them useful - sometimes makes them fall over and stop pushing this key.

Adding values to a standard domain

images/thumbnail.jpg - Thumbnail
If you think it’s impossible to add values to a standard SAP domain without requesting an activation key, you’re wrong.

ABAP sucks

images/thumbnail.jpg - Thumbnail
Go to the ABAP Editor (SE38) and check out line 323 of standard program RCIFCUST. If you’re lazy, here it is: SAP programmers are wild. Thanks Brian Wolfe for the photo. Greetings from Abapinho

Always use message classes in exception classes.

images/thumbnail.jpg - Thumbnail
Exception classes let you state multiple texts describing the different possible errors that they can represent. However, there exists an option to associate it with a message class (SE91). This allows texts to be defined as classic SE91 messages instead of being defined directly in the exception class. And it has advantages.

Mathematics problem

images/thumbnail.jpg - Thumbnail
Do you know the difference between a mystery and an enigma puzzle? An enigma puzzle is known to have a solution, but with a mystery you don’t know if there is solution. Do you agree with this? 5 * 3 / 10 = ( 5 * 3 ) / 10 = 5 * ( 3 / 10 ) = 1.5 If you don’t, you should agree because it is a mathematical fact. Now let’s do some experiments.

The ABAP editor has a good memory

images/thumbnail.jpg - Thumbnail
Select a word in the ABAP editor and choose CTRL-C. Then select another word and choose CTRL-C again. Then another word and so on. You have copied words several times to the clipboard. Experience and common sense tells us that if you choose CTRL-V you can only paste the last word you copied to the clipboard. But that is not quite right. You may not be aware of it, but the ABAP editor has a good memory.

Compare a table across two systems

images/thumbnail.jpg - Thumbnail
The SCMP transaction compares the content of a table across two systems. It is very useful, especially for parameterization tables. It is very easy to use. It allows for the pre-selection of the registers and fields to compare. It also allows you to only display the differences, which is convenient for tables with lots of data. I don’t think any more explaining is required. Ite et videte. This tip recently appeared in the ex SAPtricks blog and I think it is so useful that I have reposted it here, in case you haven’t already seen it.

SELECT... ...ORDER BY PRIMARY KEY

images/thumbnail.jpg - Thumbnail
Although I have been using ABAP since 1998, I learn new features or options every week, and sometimes even new commands. It’s hard to believe. Today, I’ll share a little SQL option that I recently discovered. SELECT * FROM T001 INTO TABLE T_T001 ORDER BY PRIMARY KEY. I have known SELECT, FROM, INTO, TABLE and even ORDER BY for a long time. I just didn’t know of PRIMARY KEY. It orders the internal table by its key.

Function to create cartoons

images/thumbnail.jpg - Thumbnail
Cartoons always look good in a report. In a SAPGui that is boredom in blue, the more colours and cartoons there are the better it is. Luís Rocha showed me a very convenient function to fill up a report with icons.

SELECT comparing 2 fields of the same table

images/thumbnail.jpg - Thumbnail
This tip is simple and quick, but I bet 200.482 Portuguese escudos that few know it.

Syntax error when returning tables of a method

images/thumbnail.jpg - Thumbnail
When you create a return parameter in a method of a class that is a TABLE TYPE based on a type declared in the class proper, an error sometimes pops up that says: “Type of RETURNING parameters must be fully specified.”

Steal data from a SALV

images/thumbnail.jpg - Thumbnail
A friend of a friend of a friend said that a friend of his knew a friend who explained to him in a shady club bar in the docks area of Lisbon how to steal data from a SALV.

/HS Command

images/thumbnail.jpg - Thumbnail
Most functionals, and even the hardcore functionals, knows that in order to start debugging an ABAP program, we use the /H command. But few programmers, even the hardcode programmers, will know the purpose of the /HS command.

Have you used regular expressions before?

images/thumbnail.jpg - Thumbnail
Regularly expressions have been around for ages. But they’re not very well known and even less used. They are a sort of descriptive language that allows for making research and very sophisticated replacements in alpha-numeric chains. A simple example: to validate an email address. If you have to do this through an algorithm you’ll have to work hard. However, with regular expressions, only two or three code lines and the regular expression "\b[A-Z0-9.

Dynamically call classes and methods

images/thumbnail.jpg - Thumbnail
Now, learn how to dynamically invoke a method. Let’s go for it.