Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
tamitdassharma
Active Participant

Last year we celebrated ABAP as SAP's programming language as it turned 40 and from the vision and roadmap from SAP it is evident that it is going to stay here for some more decades. SAP has been leading in the Gartner's quadrant for ERP for decades now and this has been possible because of SAP's vibrant partner eco-system.

Having said this, let's turn our focus to one of its advancement, i.e., the ABAP environment in the Business Transformation Platform (commonly know as SAP BTP). With the introduction of SAP BTP in the last couple of years there has been a huge shift of mindset in the development fraternity of SAP. At least in the partner ecosystem now solutions are being developed keeping SAP BTP in mind, i.e., solutions being developed in the partner eco-system are being made more platform agnostic. 

To achieve a clean and controlled design paradigm in the cloud environment of ABAP, SAP came up with the ABAP Language Version for cloud which is known as ABAP for Cloud Development. The value for the ABAP Language Version determines which language elements can be used in the development. For example, the language version of ABAP for Cloud Development has a more restricted use and has an extensive list of elements that can be used but not as the language version Standard ABAP where there are no restrictions. [The list can be viewed in Language Elements in ABAP Versions] As mentioned already the language version ABAP for Cloud Development has a more restricted use and therefore not all objects from Standard SAP language version can be used in objects with language version ABAP for Cloud Development. Only APIs having language version as Standard ABAP and with a C1 contract which are released for Use in Cloud Development can be used in the development objects with language version ABAP for Cloud Development. [ABAP for Cloud Development is a good read to understand the concepts of Restricted Language use and API contracts.]

As mentioned before, SAP's partner eco-system has to always go hand in hand with SAP. This means that with the introduction of SAP BTP, ABAP environment, partners needs to build solutions that are more platform agnostic, i.e., solutions which can run independently on the on-premise solutionSAP ERP,SAP S/4HANAand as well on the SAP BTP, ABAP environment. This is a most widely accepted paradigm in the solution design, otherwise maintenance cost of the code-base would increase exponentially. And anyone from the partner eco-system's development fraternity will agree with the fact that refusing APIs from SAP standard solution makes our life easy and reduces the cost and time of the development life-cycle of the add-on solutions. 

To be able to build solutions which are platform agnostic, i.e., would run independently on SAP S/4HANA as well as SAP BTP, ABAP environment the minimum on-premise version that can be used is the SAP S/4 HANA 1909 version. However, for objects to be deployed to SAP BTP, ABAP environment it is mandatory that the objects have the ABAP Language Version is set to ABAP for Cloud Development. But then if one tries to make use of any objects from the Standard ABAP, i.e., ABAP Language Version set to as Standard ABAP the following compilation error occurs.

tamitdassharma_0-1710410304020.png

Now since this class belongs to the Standard ABAP Language Version and is not released for use in Cloud the compilation error is displayed. This can be resolved by Adding a Release Contract, i.e., C1 contract in this scenario and marking the object for Use in Cloud Development.

Screenshot 2024-03-14 at 11.05.55 AM.png

tamitdassharma_2-1710410700759.png

This way you can make sure that the standard object can be used in cloud environment, but it is not a recommendable approach as there will be issues in deploying to the cloud environment.

Another scenario is where the development fraternity of the partner eco-system tries to reuse objects from standard SAP solution. And to identify objects with a released API state is cumbersome. But with ADT it can be achieved with using keyword in the properties field of the search. The search can be triggered using Search option from the menu bar and selecting ABAP Object Search, or using the keyboard shortcut of Control + H or using the Open ABAP Development Option or the using the keyboard shortcut Control + Shift + A. [Refer the screenshots below]

Screenshot 2024-03-14 at 11.16.23 AM.png 

Screenshot 2024-03-14 at 11.19.49 AM.png

This way one can list out the released API or artefacts for use in SAP BTP, ABAP environment, i.e., the objects that would always be available for use in SAP BTP, ABAP environment. [Refer to the blog Searching Development Objects with the ABAP Object Search for better understanding of search options in ADT.]

Labels in this area