Does the function exist?
You call a function. Imagine it doesn’t answer. It may be that it’s staying silent. Or it’s shy. Or dumb. Or, of all the misfortunes, it doesn’t exist.
To make sure and put your mind to rest you then do:
You call a function. Imagine it doesn’t answer. It may be that it’s staying silent. Or it’s shy. Or dumb. Or, of all the misfortunes, it doesn’t exist.
To make sure and put your mind to rest you then do:
Some people read the TCURX to find out the number of decimal places of a CURRENCY when they need to write a money field to an alphanumeric variable.
Are you one of those people? Don’t be.
You’ve screwed up the productive system. You made a change to a method of a class (or to a function, whatever). Someone else makes another change to another method of the same class (or to another function of the same group of functions, whatever) and saves it to a different transport. When you transport your changes to the productive system, you discover that the class (or function, whatever) now has a syntax error because the changes had interdependencies. You also discover that now, until you get this problem resolved, all your functional co-workers hate you.
Finally, the SAP NetWeaver 7.0 Enhancement Package 2 makes ABAP start to seem like a normal programming language.
It even allows expressions to be concatenated, no less!
When reading a file with numeric values to an internal table or vice versa, the success of the conversion depends on whether the user has defined the dot or comma as the decimal separator. It is customary to then go and read the user setting and then adjust the values from the file with a dot or a comma as required.
But this is unfortunate and rather inelegant. There should be a way of not making this depend on the user.
And there is.
Some time ago I wrote a post here showing the advantages of using internal tables with defined indexes instead of simple STANDARD tables. Confession: that habit is so ingrained that since then, almost all the internal tables I have created have continued to be STANDARD TABLE. It’s very common to create internal tables to cache data that I know I’ll often use inside LOOPS to avoid having to SELECT SINGLES inside them.
Imagine you have a herd of related classes sharing between them a whole bunch of constants. Saying the same thing a different way, would you like all the classes of the herd to have easy access to the bunch of constants?
(If you’re confused, then let me tell you that the “herd” thing was just to baffle you)
Carrying on…..
If you really need to access an SAP and nobody lets you, and you don’t have a computer where you can install it or you don’t have enough know-how or patience to do it, you can always rent.
This is not really an article. It’s hardly a tip. It’s closer to getting something off my chest in all the colours of the rainbow.
I am using RANGEs more and more. I use them at breakfast, lunch, and dinner and outside meal times. It’s like soy sauce. A few spoonfuls and everything is instantly tastier.
If I needed to create locking entries in a ZCOISO table I had created, up to two days ago I would have gone to SE11 to create a locking object for the ZCOISO table so that I could then use the function module generated by the locking object to lock the data.
But not anymore.
The client where I’m working at the moment owns more SAP systems than the number of volcanoes in Chile. And, of course, it’s inevitable to have multiple sessions open for several of those systems. With the windows minimized it’s impossible to know the matching between systems and sessions. I mean, it was impossible, because today that’s already possible:
Most of my friends, when they buy a new computer, worry a lot about CPU speed, disk speed and memory speed and whatnot speed. And then they go and buy a €6 mouse and a €7 keyboard. Ironic. While the CPU, the disk and the memory and all that other stuff often end up being wasted, the mouse and the keyboard are used to the max the entire time the computer is in use.
It’s been a while since Abapinho played with fire. Today he will. Because today he’ll show you how to execute DOS commands on the user’s local machine. After you finish reading this article, you’ll be ready to format the hard disks of all your users. Dealing with danger helps make us aware of the power we have and the responsibility that comes with it. Dear reader, listen to your conscience.
SAPlink is a Z program that is installed in the development environment and which enables a wide variety of object types to be imported and exported from the Workbench.
Take a look here at some examples of how SAPlink can be used:
To transfer a table from one SAP system to another
To share a class on the internet
To make a local security backup of a set of programs before making a dangerous change
To keep a development in our personal repository (in Evernote, of course) in case you need it later in another project
Etc.