Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
JensWeiler
Advisor
Advisor


With the brand new NW AS ABAP 7.4 SP5 we are adding a new possibility for ABAP Developers to leverage HANA capabilities ( New ABAP for HANA features in SAP NW 7.4 SP5 ).

 

The whole ABAP for HANA story began last year with our first release of NW AS ABAP 7.4 introducing a new coding paradigm (at least for ABAP): “code pushdown”.



 

So what does this mean?

Code pushdown means delegating data intense calculations to the database layer. It does not mean push ALL calculations to the database, but only those that make sense. An easy example is if you want to calculate the amount of all positions of invoices. You should not select all positions of those invoices and calculate the sum in a loop. This can be easily done by using an aggregation function (here SUM()) on the database.

 

However, pre ABAP 7.4 releases only provided very limited support for such an approach. In the 7.4 SP2 release we did our first step to overcome this limitation. We introduced new ABAP artifacts to consume HANA views and procedures in ABAP: The “Bottom-Up approach”.

 


Only use this in needed cases


 


Sounds perfect? Yes, but unfortunately it has some drawbacks. First of all, as a developer, you have to work in both worlds (HANA and ABAP). This requires a database user, which alone is quiet tricky in some enterprise environments. You also have to keep the HANA and ABAP artifacts in sync and take care of the lifecycle management.

 

With the new SP5 release we are taking the next step to enabling code pushdown with ABAP for SAP HANA: The “Top-Down approach”. It is based on your feedback and our own experience using ABAP for SAP HANA. It enables developers to continue working in their ABAP environment and still have similar possibilities to leverage the power of SAP HANA.

 


Recommended approach


 


This approach comes with a huge bag of goodies, like writing SQL Script or being able to create database views with new join and aggregation capabilities directly in ABAP. We will describe these features in detail in more blogs that will follow soon.

 

By the way: this does not mean you do not need the Bottom-Up approach anymore. There are still special cases which you won’t be able to tackle with these new “Top-down”-features. But we are continuing to enrich the ABAP possibilities with every SP. Stay tuned.

 

If you are interested in those new features there is are already great videos available in our YouTube Channel: ABAP for SAP HANA - YouTube

 

Cheers

 

Jens

15 Comments
abdul_hakim
Active Contributor
0 Kudos

Jens - Thanks for sharing this info with the ABAP Community..Glad to know that ABAP is getting better in every release..Just a thought..is there any plan to come up with "Open SQLScript" similar to "Open SQL" so that the SQLScript also will be database independent..

Thanks

Hakim

JensWeiler
Advisor
Advisor
0 Kudos

Hi Abdul,

valid question, but sorry: at the moment we have no activities planned in this direction. Current focus is to get the best out of ABAP and HANA and there is still a lot to do for us.

Cheers

Jens

abdul_hakim
Active Contributor
0 Kudos

Thanks for the clarification.

vikas2
Active Participant
0 Kudos

Thanks - very useful post. CDS and AMDP definitely make things easier as getting the dB user is not easy sometimes.

yogesh_vijay
Explorer
0 Kudos

Very useful post. Thanks Jens Weiler

0 Kudos

Thanks - very useful and helpful post, 🙂

BTW, can I get some explicit special cases regarding what you mentioned?


By the way: this does not mean you do not need the Bottom-Up approach anymore. There are still special cases which you won't be able to tackle with these new "Top-down"-features.


Cause, I know why I should use CDS View and AMDP, but I'm not sure why we still have to use Bottom-Up approach... although it is drawbacks...

Thank you in advance,

BR

Hyukjoo

jasmin_gruschke
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Hyukjoo,
you should in almost all cases prefer the top-down approach. What Jens refers to by "special cases" are e.g. cases where you have an SAP-delivered (or partner-deliverd) database procedure or column view, which you would like to consume. In such a case, you might just wrap the delivered content with an external view / database procedure proxy. Or you might be in the unlucky situation to "just have ABAP 7.4 SP2 at hand", which does not include AMDPs and only limited capabilities in CDS views.

But to repeat the above advice, you should stick to the top-down approach and only use in special (rare) cases the bottom-up approach.

Cheers,

  Jasmin

0 Kudos

Thanks a lot Jasmin,

Now I'm very clear on this topic~!

BR,

Hyukjoo

ShakulJugran
Product and Topic Expert
Product and Topic Expert
0 Kudos

Thanks for another useful post, Jens :smile:

Former Member
0 Kudos

Really a helpful information .. Thank you Jens.. :smile:
Looking forward to have such quality post in coming days.. :smile:

Former Member
0 Kudos

So much informative... Thanks for sharing :smile:

Former Member
0 Kudos
Nice Blog.

Could you please explain a little bit when to go for ADVANCE OPEN SQL(ABAP 7.4 or ABAP 7.5) instead of ABAP CDS?

Also, little more about SQL script?
vodela
Active Participant
0 Kudos
I have looked at some of your Teched sessions such as SH109 and SH140  - is there any chance that I can access the demo code -

Thanks

Ramesh
manish_gupta32
Participant
0 Kudos
Hi Jens,

Are there any guidelines available which can help in decision making on when to do code push down and when to use open SQL?

I am asking it specifically with regards to Open SQL and AMDP.
rangam
Explorer
0 Kudos

Thanks for useful information.

Regards,

Ranganath