Getting the most out of ABAP requires more than just a familiarity with programming languages and an ABAP certification, according to one expert. It requires overcoming some common problems that tend to plague the ABAP developer community.
ABAP today is more powerful than ever before, but SAP application developers still tend to find themselves stumped when it comes to optimizing the performance of ABAP programs, conducting ABAP upgrades, and gaining the necessary experience to debug the programs, according to Rehan Zaidi, senior SAP technical consultant at Siemens Pakistan and an ABAP expert.
"Users are our first [priority]," he said. "You have to mold and adapt the system in order to suit your users' requirements."
SAP's ABAP programming language was first introduced in 1992 to help developers create programs for the client-server R/3 platform. SAP currently positions the technology as the key business applications programming language for its Web Applications Server, which is a major component of NetWeaver 7.0.
For ABAP beginners, understanding SAP ERP is key
Developers getting started with SAP ABAP tend to be adept with multiple programming languages, and that's all well and good, according to Zaidi. But getting to know SAP ERP is equally, if not more, important.
"Most people that I train are VB programmers or Java programmers; 80% are not ERP programmers," he said. "So the basic difficulty is that we have to first tell them the architecture of SAP, which is based on the three-tier design."
The three-tier client/server design is the combination of the database, the applications and presentation logic. This architecture is commonly run on three separate physical computers that work together to bring the user a desired result.
Under the three-tier design, the database and the applications communicate to extract and push data through the presentation logic tier, which is essential to providing accessible information to the end user.
The next step
Once developers familiarize themselves with SAP ERP, the next and most common task to focus on is generating reports in ABAP. And that means gaining an understanding of the ABAP dictionary, Zaidi said.
The ABAP dictionary is responsible for managing the system data. It is an interfaced part of the ABAP Development Workbench and supports the definitions of user-defined types (data elements, structures and table types), Zaidi explained. The ABAP dictionary is at the core of an ABAP developer's career because almost all data is filtered through it.
"[Developers] must have knowledge of the ABAP dictionary because [it] shows all the tables … we fetch data from," he said. "If you don't have knowledge of the dictionary, then [you're of] no use as an ABAP editor."
ABAP performance and upgrades
Developers must also be proficient in performance optimization and upgrades, Zaidi said. Both are integral to an ABAPer's career.
"One important thing that has always been troublesome for ABAPers is the program running slow, or the program losing its performance through the passage of time," Zaidi said.
The best way to fix performance issues and seamlessly integrate upgrades is to debug errors, but finding where errors exist can be problematic, he said. An error can generally reside on any program in any server at any given time, and the ability to debug these errors quickly and efficiently comes only with years of technical experience.
ABAP certification not enough
An ABAP certification is a nice thing to have, but it's no substitute for hands-on experience in the workplace, according to Zaidi.
Besides, he added, the Siemens ABAP certification class in Pakistan has some notable weaknesses.
For example, the 25-day course doesn't leave the ABAP beginner with enough knowledge of technical work, he said, and typical scenarios for extracting data and troubleshooting are not covered across the various SAP modules.
"I don't agree with [the course's] outline," Zaidi said. "The main thing the ABAPer should know is how to handle problems, the practical problems that occur in your working life."
Rehan Zaidi has been working with ABAP for eight years and is currently a senior SAP technical consultant at Siemens Pakistan. In addition to being a renown ABAP expert, Zaidi has co-authored the book 201 Interview Questions - SAP Workflow. He is also the founder and webmaster of ERPDomain.com.