Product Information
Getting Started with ABAP in 2021
Whether you are new to ABAP or just want to learn something new this year, this blog post will give you an overview and a handful of helpful resources about all the new technologies in the ABAP cosmos. Not only the universe is expanding, but the ABAP world is also. And in recent years it has expanded faster and wider than ever before.
To describe everything you need to learn in detail would easily fill an entire bookshelf (Most likely even more). Therefore, I will give you a short overview and my personal recommendations for the best free and paid courses to master your ABAP skills!
This is my personal recommendation. There might be a ton of different other learning resources out there. I’m trying to focus on our official training offerings and tutorials. Since I am a trainer at SAP for programming and technology topics, I am very familiar with our world-class course curriculum. Therefore, I want to point out our comprehensive course curricula besides the free alternatives.
Start learning ABAP
(If you have more than 3 years of ABAP experience, then you can continue with the next paragraph.)
The ABAP technology is the solid longtime foundation for SAP’s solution portfolio. Its proven robustness, scalability, and extensibility make it the platform of choice for running mission-critical business processes.
It is the underlying technology of SAP’s traditional Business Suite, SAP’s flagship solution SAP S/4HANA, and other forthcoming innovative solutions such as next-generation data warehouse SAP BW/4HANA. It is also a complete application development and runtime platform. It combines the innovation potential of SAP’s in-memory database SAP HANA on the back end; the proven reliability and robustness of the ABAP server; and a digital user experience through SAP’s UI technology SAP Fiori. ABAP technology is continuously extended to serve new business scenarios and innovative application development.
But before diving deeper, you should first start with building a solid understanding of all the underlying technologies and concepts of an SAP system. Make yourself first familiar with the SAP Netweaver Architecture.
3-Tier Architecture
You can read more about the architecture here or visit our comprehensive 4-day SAPTEC course.
After you know how the SAP System works from a technical point of view, it is time for you to get your hands on it and start writing your first ABAP code.
The ABAP Workbench is the central development environment when it comes to classic ABAP programming. You have a lot of different development objects which are called Repository Objects. For each Repository-Object (e.g. Database Table, Structure, Program, Dynpro, etc.) you have an extra bunch of tools on your workbench. You can access the workbench with the transaction code SE80 (Object Navigator). There you can use all the different tools to develop your application.
Since we have 2021, I would rather recommend starting with the ABAP Development Tools (ADT). ADT is fully Eclipse-based and the successor of the ABAP workbench. You will profit from a modern development toolset and from higher developer productivity. So starting with ADT will be a safe investment in 2021!
Follow the instructions on the ABAP Development Tools site to install ADT. Afterward, you can create your first ABAP project in Eclipse.
After visiting the SAPTEC you can now learn the ABAP Workbench Fundamentals in our BC400 course. This will enable you to develop your very own ABAP applications. Followed directly by the BC401 (ABAP Objects) and the BC402 (Advanced ABAP) will teach you about the object-oriented programming approach in ABAP and all the advanced ABAP programming topics (new ABAP syntax with fancy expressions, new ABAP-SQL syntax, ABAP-Runtime and memory environment, generic programming, etc.)
After these courses, you should definitely have a deep(er) understanding of all the concepts.
Instead of visiting all the single BC4xx courses, you can also visit our Consultant Academy which consists of the TAW10, TAW11, and TAW12. These three courses are made up of the individual BC4xx courses and will teach you the most important things. You will also write the ABAP developer certification on the last day of the TAW12. Of course, you can also visit all the individual courses. They will dive deeper into the specific topics.
Upskill your ABAP skills first
As an experienced ABAP developer, you probably would like to get familiar with the latest features in ABAP development. In our ABAP delta course (D75AW), all changes in the ABAP programming language and the ABAP development tools from SAP Netweaver 7.0 to 7.5 will be discussed.
Diving deeper and becoming competent
Once you are familiar with the SAP ERP technology you should take your next steps towards S/4HANA.
S/4HANA is SAP’s latest ERP-suite for on-prem and the cloud. It is to a large extent comparable to SAP ERP, but as mentioned in the first lines of this blog, the ABAP cosmos has expanded rapidly in the past few years, and this strongly affects S/4HANA.
SAP S/4HANA is completely built on top of the in-memory computation platform SAP HANA. (Learn more about SAP HANA here.) One goal of S/4HANA is to unleash and leverage all the capabilities and the full potential of SAP HANA. This is done by changing the programming paradigm from data-to-code to code-to-data aka “code pushdown”. Every operation which is being performed on the data can be pushed down to the database layer. Only additional logic shall then be performed on the ABAP application server. This results in higher performance for your business applications.
Another big shift took place in the way how the end-user interacts with the system. During the SAP ERP era, SAP GUI was the central user interface to interact with the SAP ERP system. But from the release of S/4HANA onwards, SAP Fiori is the new web-based user interface (UI). It offers a completely new role-based user experience (UX) to replace the complexity in several transactions. Read more about SAP Fiori here. To develop SAP Fiori applications you can use the new ABAP RESTful programming model. We will come back later on it.
Yes, that’s a lot to learn so far. I recommend learning more about the new database platform first. Get a deeper understanding of all the new key features like in-memory, columnar store, high data compression, etc.
For this, I highly recommend booking a seat in one of our HAxxx courses. HA100 is perfect for beginners who want the “big picture”. The HA400 (ABAP for SAP HANA) and the S4D430 (ABAP CDS) is the right choice to start learning how to apply the code-to-data approach in your ABAP projects. In these courses, you will learn more about the core data services (CDS) which are one of the underlying core technologies of S/4HANA. Basically, they are views that are defined on top of the relational database tables on the ABAP application layer, but they are pushed down to the database for execution. This has a huge impact on the general performance. Furthermore, they can be semantically enriched to reduce the complexity in the model and to provide a more business-oriented view of the data.
This brings us to the next big thing in S/4HANA: The Virtual Data Model (VDM).
Enabled by core data services, the VDM is the main way to retrieve your data from the database. Instead of using ABAP SQL to query your database table, you will first create a CDS-based view layer on top. The VDM uses basic views to create simple projections that can be enriched with additional semantics and associations (relations to other tables). These basic views can be reused in other views. View-on-View models can be created simply without any effort. The basic views are also known as interface views, which then can be reused in multiple consumption views. Consumption Views are special-tailored views for specific use-cases. For instance, if you want to develop a Fiori app, then creating a consumption view that consumes the interface view is the best-practice. This allows you to reuse your interface views in multiple consumption views but enables you to enrich each consumption view specific for each use case.
Virtual Data Model
If you want to learn more about Core Data Services and the VDM check out this help page or this blog post.
Expand your skills even further
Of course, there are many other things to learn when it comes to ABAP development. But, I would recommend making yourself familiar with the new ABAP RESTful programming model.
In the ABAP RESTful programming model, the core data services (CDS) are the basis for the application development in SAP S/4HANA. Eclipse is used for the end-to-end development process.
ABAP RESTful Programming Model
First and foremost, you create your virtual data model, which consists of Interface Views and Consumption Views, which are particularly created for the current use-case. On top of that, you can define your Service Definition, which defines which fields shall be exposed to the generated OData Service (industry standard for exchanging business data via the web / HTTP protocol ).
Next, you define or generate your Service Binding, which creates the OData Service for your defined service. Now it is possible to generate an SAP Fiori Elements application based on predefined templates and on your service.
Thus, this delivers only a read-only application and not a full transactional app with Create, Read, Update and Delete (CRUD) functionality, we can add specific Behaviors to our views so that we can perform CRUD-operations on our data model.
Read more about the ABAP RESTful programming model here or visit the completely free openSAP RAP course.
I also recommend visiting our CLD400 course for this. This course is intended for the ABAP Environment on the Cloud Platform, but the RAP can also be used on-prem.
Summary
Your ABAP learning journey might have already been started and you might have learned a lot so far.
Keeping yourself on track and becoming more competent in the above-mentioned topics, will be a 100% safe investment for 2021 and beyond.
If you are also interested in further learning resources for SAP Fiori or the Cloud Platform you can also check out individual courses for these particular topics.
Each course mentioned above can be booked via training.sap.com.
I hope this post helped you as a beginner or as an already experienced developer to get a broader picture of all the different solutions and technologies in our cosmos and that it helps you to create your own sustainable learning journey.
Furthermore, we have already created a lot of different learning journeys. You can check them out via this link.
Please feel free to add any other helpful tips for beginners or experienced developers in the comments.
Nice blog! This is sure to help many young (and maybe not-so-young) developers out there.
Cheers
Ged
Nice, Thanks for sharing... Great info....
Thanks for your effort. I've added your blog to my GitHub repository "ABAP starter".
Awesome. Thanks, Micheal!
Thanks for sharing... Great info
Nice guidance, thanks for sharing!
Thanks for your sharing.
Hi Markus,
Excellent and detailed blog, Thanks for sharing.
Could you please suggest guidance for UI5 developers to become SAP Full stack developer?
Regards,
Venkatesh
Hi Venkatesh,
thanks, you're welcome!
I highly recommend going through our learning journey for this topic.
We offer several free and paid courses for UI5 developers:
Then of course you need to understand the backend. I described all the new technologies, which you can use for your backend implementation, in this blog post.
Be really good if some of the content for the BC4* or TW courses could be turned into openSAP video courses to help end user visualize some of the core ABAP programming concepts i.e internal tables, headers, table types, structure etc. Some of the contents I have seen so far don't teach these very well especially in terms of how the declaration of these have changed over the years.
Great blog by the way!
I agree because when I interview or talk to many new colleagues I see they have no understanding of the basic 3 tier architecture, LUW and update processes and we learn those from the same course TAW*** something. may be Open SAP is too much for those simple topics but some tutorial on developer.sap.com would be amazing for these folks.
Thanks Markus for the nice Blog, here is also a nice Toturial to start with ABAP for newcomers to ABAP Development:
https://developers.sap.com/mission.abap-dev-get-started.html
Thank you somuch,
For old and new all ABAPers also follow developer.sap.com site. This is amazing way to keep yourself updated. They have learning missions complete them and learn I found it very refreshing
Great blog!
Very useful blog . Thank you