Skip to Content
Author's profile photo Thomas Fiedler

Out Now: ADT Version 2.51 for the brand new AS ABAP 7.50

ABAP community,

I have very good news for you: We reached the next big milestone for the application server ABAP. The new version 7.50 was launched. You can find a very good summary about the key features in the blog post:  SAP NetWeaver AS for ABAP 7.5  – One ABAP Platform for SAP Business Suite and SAP S/4HANA, on-premise edition

Based on this version we also provide you a new version of the ABAP develoment tools for eclipse. This version is available on our Eclipse Updatesite: SAP Development Tools for Eclipse

ADT version 2.51 contains a bunch of new features that I will present to you in the following sections of this blog:

Dictionary Tools for Eclipse

The CDS view building is available in eclipse since a couple of releases. But what about the other dictionary editors in eclipse?

So we thought about it and came to the conclusion that it is a good idea to provide these tools now also in eclipse. With ADT 251 an editor for data elements and dictionary structures are available for you. The others will follow in upcoming releases.


The editor for data structures is source-based. That means we defined a new syntax for structures based on the CDS specification:



/wp-content/uploads/2015/10/struc_811961.png

You have all the benefits of source code editors like:

  • Copy&Paste
  • Code Completion
  • Search&Replace
  • Syntax Coloring
  • Navigation
  • Elementinfo
  • Quick Fixes


Very important to know: The persistency on the ABAP in the dictionary is the same as in SE11. That means you can edit the same structure with SE11 and eclipse in parallel. There is no migration into the new format needed because the source is created on the fly when opening a structure in eclipse. You can find more details about the new structure editor in this blog post:

New Dictionary Structure Editor

For data elements we followed a form-based approach similar to SE11:


/wp-content/uploads/2015/10/dtel_811891.png


Please find all the details about the new data element editor in this blog post:Editing Data Elements in a Form-Based Way


New Quick Fixes


According to our users the quick fixes are one of the most important features when developing with ABAP in Eclipse.



In the new ADT version there are some new quick fixes available in the area of the exception handling. You know the situation when using frameworks like the ALV for example. You are calling a lot of methods of the framework in your code and at the end the editors says to you that you have missed to catch some exceptions that might occur during runtime.


/wp-content/uploads/2015/10/exc1_812105.png



A tedious job starts now to find the possible exceptions and declare them in a Try/Catch clause. STOP, this is not needed anymore. Just use the new quick fix ‘Surround with Try/Catch’ and you save a lot of time. 


/wp-content/uploads/2015/10/exc2_812106.png


Here is how it works:


/wp-content/uploads/2015/10/exc3_812107.png


Try it out. It is really cool !



Another quick fix that was often mentioned in SCN is the possibility to create getter and setter methods.

Here is how it works with eclipse. Just click CTRL-1 on an attribute in your class and choose the option “Generate Getter and Setter” :


/wp-content/uploads/2015/10/getset_812131.png


The editor automatically adds the new method declarations and implementations of the methods to the class.


/wp-content/uploads/2015/10/getset2_812139.png

That is really quick, isn’t it ?


News from ABAP Doc

ABAP Doc offers you a powerful tool for documenting your source code. You just use the same editor for documentation and for coding. A comprehensive overview about the idea and the features are described in the blog post: ABAP Doc

We got a lot of feedback in the meanwhile concerning the concept. One topic was the relation between ABAP Doc comments and the short texts entered in the ABAP Workbench. The second topic was the generation of offline HTML files for the documentation.

Both topics are solved now with ABAP 7.50:

  • Automatic synchronization between the ABAP Doc comments and the short descriptions is available now
  • Possibility to generate HTML documents for classes/interfaces is available now    

Please find more information in the blog post: New ABAP Doc Features with NetWeaver 7.5



News from the Property View

Did you ever try to change a function module to a remote-enabled function module in eclipse? For this, you needed to open the SAP GUI. From now on, you can edit these object type specific properties, such as the processing type directly in ADT. You will find a new tab called ‘Specific’ in the eclipse property view. For some of the properties we also offer you nice value help for your convenience:



/wp-content/uploads/2015/10/prop_812011.png




Change package assignment

Have you ever tried to move a development object from one package to another one? In the past this was only possible via the workaround in the SAP GUI. Now we have integrated this nice little helper natively in eclipse. In the Project Explorer, just open the context menu on an object and choose Change Package Assignment:


/wp-content/uploads/2015/10/pack_812040.png



In the subsequent dialog, enter the name of the package where you want to move the object to. If you want to see a list with the available target packages, only choose Ctrl-Space for opening the content assist.


/wp-content/uploads/2015/10/pack_812040.png



After clicking Finish the assignment to the new package will be created.



Assign changes of classes to separate transport requests


Working with classes in eclipse was sometimes a big hurdle when several developers work in parallel on a class and want to store their changes on different transport requests. This was not possible so far. Only one request can be chosen per class. This limitation is now gone with ABAP 7.50. The behavior is now similar to the ABAP workbench.


Please find some more details in this blog post here: Assigning Changes on Classes to Multiple Transport Requests



Developing ABAP Transformations in Eclipse


Simple transformations and XSLT are helpful friends when working with XML documents in ABAP. We also use them heavily in the ADT framework to transfer the data from the ABAP backend to the eclipse client. With the new ADT version you can edit the transformations now also in eclipse. Good luck for us: we could reuse the standard XML editor from eclipse.

See the following blog post to find all the details about the new editor in eclipse:

Editing Source-Based Transformations for XML



News from the Debugger


Also in the area of the ABAP debugger in Eclipse we did some major improvements with the new ABAP version 7.50.


One of the top prio features on the wishlist of our users weas the possibility to create conditional breakpoints. And here they are.

See this blog post for more information about the new breakpoint kind: Conditional Breakpoints  


Another breakpoint type are the so called soft breakpoints. These breakpoints are only valid in the current debug session. Please find the details in this blog: Soft Breakpoints 

A very important round-off in the debugger is the possibility to trigger database commit and rollback during debugging and the possibility to debug update tasks. Here we go with AS ABAP 7.50: Execute Commit/Rollback Work on Database / Update Debugging .


Since AS ABAP 7.40 SP05 with HANA it is possibe to program stored procedures in ABAP. It is very easy because you just develop a method of an ABAP class with SQL script instead of the ABAP language. You don’t have to fear the lifecycle issues anymore that we had in the past with SQL Script procedures developed directly in HANA. Unfortunately the debugging of the AMDP methods was not so easy in the past. This isue is gone now. With AS ABAP 7.50 we introduced sql script debugging natively in the ABAP eclipse debugger. See the blog post about AMDP Debugging to figure out all the details: How to debug ABAP Managed Database Procedures using ADT – Basics

New tracing and logging capabilities for ABAP


The ABAP trace tool in eclipse with its new visualization capabilities is in the meanwhile a very famous troubleshooting tool for the ABAP developer community. If you missed that train so far you may refresh your knowledge in that overview document: http://scn.sap.com/docs/DOC-41223


In most of the cases the biggest issue with tracing is the size of the trace file. Therefore we investigated in a new aggregation kind to optimize the trace file size. In this blog ABAP Profiler – Aggregation by Call Stack it is described how to use this new feature. This new aggregation kind comes along with additional visualization capabilities.    


Static logpoints are present in ABAP since quite a long time with the ABAP statement LOG-POINT. The disadvantage is that all logging capabilities of the system needs to be foreseen already by the developer at designtime. With dynamic logpoints you now have a new powerful tool in your hand. This is really a highlight of the new ABAP version 7.50. Give it a try and read the details how to set these new logpoints in the blog post: Dynamic Logpoints in ABAP


What’s New in the ABAP Web Dynpro Tools?

We now provide a native eclipse editor for Web Dynpro components and applications with AS ABAP 7.50. Find more information in the blog: Web Dynpro ABAP Component and Application Editor

SQL Monitor for ABAP in Eclipse

The SQL monitor is a very powerful tool to optimize the migration efforts for Suite on HANA and S/4 HANA. But what we missed was the developer support for it in eclipse. This gap is now closed with AS ABAP 7.50. Please find a detailed description how to use the SQL monitor in Eclipse to find performance hotspots in your code:  3 Simple Steps to Identify Performance Hotspots in ABAP Custom Code

News from the CDS Editor


CDS (Core Data Services) is the new modelling language in ABAP. With the new ABAP version 7.50 we support a lot of new cool features. Find all the news of the Editor in the blog post: New ABAP CDS Tools in SAP NetWeaver AS ABAP 7.5

Especially the graphical viewer for CDS models is very helpful when dealing with complex models:

Representing Core Data Services Concept in Graphical Form


Woh, a lot of new stuff. Hope you like it and have fun.

Warm Regards,

Thomas.


Assigned Tags

      31 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Florian Henninger
      Florian Henninger

      Now I want a 7.50... cool stuff and a huge step forward!

      ~Florian

      Author's profile photo Łukasz Pęgiel
      Łukasz Pęgiel

      Quite a lot of stuff for 7.50, let's hope I can get my hands on 7.50 sooner than in 5 years 🙁

      Just one remark Thomas, the blog posts are not yet published or does not exists yet?? 😀

      /wp-content/uploads/2015/10/2015_10_22_14h17_56_815669.png

      Author's profile photo Łukasz Pęgiel
      Łukasz Pęgiel

      Additionally, are you able to prepare matrix with functions available in 7.50, 7.40 SP8, 7.40 SP5 and so on? As I see some functionalities works also on 7.40 SP5 (like statement breakpoints) 🙂

      Author's profile photo Ondrej Seman
      Ondrej Seman

      This is really great stuff!

      And I want to support Łukasz's remark (and wish of me and many others):

      Please help us persuade our bosses and customers to use new AS ABAP Systems.

      The best would of course be the possibility to upgrade only ABAP Subsystem without the need to update also other modules (and running the risk of destroying other modules). Is something like this possible/planned?

      Have a great day!

      O.

      Author's profile photo Peter Inotai
      Peter Inotai

      Hi,

      Does any of these features work with 7.40 backend, or all of them need 7.50?

      Thanks,

      Peter

      Author's profile photo Thomas Fiedler
      Thomas Fiedler
      Blog Post Author

      Hi Peter,

      these are all features of the new AS ABAP 7.50 release.

      None of them is working with 7.40 or 7.31.

      Regards,

      Thomas.

      Author's profile photo Peter Inotai
      Peter Inotai

      Hi Thomas,

      Thanks for the info.

      Regards,

      Peter

      Author's profile photo Amol Samte
      Amol Samte

      Hi,

      Where can we practice personally for such a new amazing stuff.....

      Regards,

      Amol S

      Author's profile photo Thomas Fiedler
      Thomas Fiedler
      Blog Post Author

      Hi Amol,

      we are trying to provide a 7.50 ABAP developer edition in AWS as soon as possible.

      Regards,

      Thomas.

      Author's profile photo Henrik Secher Jarlskov
      Henrik Secher Jarlskov

      NetWeaver 7.50 + Eclipse is a powerful cocktail indeed...

      The new Source-Code Based Dictionary and the extended power of Core Data Services is especially awesome!

      Debugging AMDP's also works excellent...

      SAP Gateway with OData v4.0 is also a nice addition (especially filters on Expand 🙂 ).

      ... But the icing on the cake is definitely the additions to the Quick-Assist - Worth the upgrade by itself!

      Well, back to playing with my NetWeaver 7.50 system 😉

      Author's profile photo Thomas Fiedler
      Thomas Fiedler
      Blog Post Author

      Thanks.

      Author's profile photo Uwe Fetzer
      Uwe Fetzer

      Hi Thomas,

      "Change Package assignment" feature request: apply the function to multiple selected objects, thank you 🙂

      Eclipse

      eclipse.PNG

      SE80

      se80.PNG

      Author's profile photo Thomas Fiedler
      Thomas Fiedler
      Blog Post Author

      Thanks Uwe for the Feedback.

      Other functions like delete objects needs to be mass enabled as well.

      Hope we can enable it with the next release.

      Regards,

      Thomas.

      Author's profile photo Christian Lechner
      Christian Lechner

      Hi Thomas (and all the other blog writers that are linked here),

      great news and cool new features that come together with NW 7.50 and the new ADT version. I think once again another step forward in improving developer productivity.

      Nevertheless from my point of view there is a bitter pill in there i. e. in the dictionary enhancement: I was hoping that the DDL file itself would be have been enhanced with NW7.50 moving the ABAP DDL/CDS closer to the HANA native CDS, i. e. one DDL file where one can define several entities and types. Unfortunately, that was not the case. Let's see what the future (aka the CDS journey) will bring on that topic.

      Cheers

      Christian

      Author's profile photo Christiaan Edward Swanepoel
      Christiaan Edward Swanepoel

      Hi Christian,

      interesting view on ABAP DDL sources with multiple entities. My personal opinion (disclaimer here!) ...

      I'm not quite sure if this fits in the ABAP world. Several entities in the same source would require contexts (which can be nested). With contexts:

      1. You can group objects which semantically belong together. But this can also be achieved with ABAP packages (if you're only concerned about the grouping)
      2. The context contributes to the name of the entity. This allows you to have, for example, a "Customer" entity in different contexts. At a glance it seems great, but
        • I fear that this will lead to very long (unreadable) object names, e.g.: SELECT * FROM context1.context2.Customer ... .
        • Alternatively, you would be required to state which context you are using in your ABAP program if you want to deal with shorter names (similar to USING in HANA hdbdd files). Sounds a bit like the old TYPE-POOLS, doesn't it? How glad was I when forward declarations were no longer necessary in ABAP classes ...
        • I'm wondering how contexts and customer namespaces play together. Probably not nicely.
        • Don't forget AnyDB. ABAP CDS aims to support AnyDB. AnyDB currently only supports view names with max 30 characters (although some DBs can manage 255). So we'll probably need some mapping here. Since the feedback about having two names in DDL sources (entity name an sqlViewName) hasn't been great, the next approach might be generated names. I already see all the object names in the database ... V_ABIFNK23RUPOLIHA76MLYKEV6A. @Generators: Don't forget that you must be stable!
        • I don't want to imagine the effort required for the ABAP Application Server to enable support for long names. The runtime objects (NTAB-puffer), tools (debugger, editors, check tools, solution manager, upgrade tools ... ), applications etc. Unfortunately ABAP isn't a green field ... and even Fiori doesn't look cool with input fields with 255 characters ;-).
        • Since the DDL source is the transport object, modifications to any of the entities within the source will "touch" the DDL source and probably require all the contained entities (and their dependent objects) to be generated again. I'd better start reserving some workprocesses ...
        • Refactoring anybody? If you don't like your context name ... better hope there aren't too many entities in your DDL source.

      Like I said, just my personal thoughts ;-).

      Kind Regards

      Chris

      Author's profile photo Christian Lechner
      Christian Lechner

      Hi Chris,

      thanks for your elaborated answer on that topic. My reply is a bit delayed, as I deeply thought about your points and to make a long story short ... I have no real reply 🙂

      1. Packaging is not the point I target at. I would anyway expect all the DDIC source that belong semantically together in one package
      2. Who am I to counter comment your doubts/problems as they are all certainly correct (nevertheless ... is there really still anyDB in focus 😉 ... just kidding).

      But to stick to the point: I think even having all dictionary artefacts in one package the developer's efficiency might be higher if they would be located in one source file or call it "view" (in analogy to the text based editor of ABAP code). I cannot proof it but I would somehow guess so. Are you aware of some investigations of SAP that go into that direction?

      If the efficiency would increase the big question is if that is achievable and how. One DDL file might not be the best way to go, so the question is if one could retain the current state (one file per artefact in the background) but have one big view in the IDE that somewhat is  a "one DDL view". So viewing/editing in one (pseudo) file and then let the system decide what to distribute to which file (and what not in case nothing changed). The meaningfulness of that however, is dependent on the open question if going in any direction like that is worth it i. e. improves the user productivity and gives you an even better flow in your implementation work. 

      So more questions and doubts than answers, but maybe something worth to be discussed

      Cheers

      Christian

      BTW: What happened to the CDS view test-doubles. They looked promising and if CDS views get complex they would be extremely helpful.

      Author's profile photo Former Member
      Former Member

      In the new data elements form I couldn't find how to change the short text of the data element which is in SE11 normally.

      Any idea?

      Thanks

      Stefan

      Author's profile photo Former Member
      Former Member

      ok found it in the properties tab below.

      Author's profile photo Thomas Fiedler
      Thomas Fiedler
      Blog Post Author

      Hi Stefan,

      do you expect to have the description editable in the editor directly?

      Regards,

      Thomas.

      Author's profile photo Former Member
      Former Member

      Yes that would be nice, since I had to search for it and it was not to obvious. I it will save some clicks since I had to add the headers also on the main page.

      Author's profile photo William Gao
      William Gao

      I like the dictonary tools better then befor.

      Author's profile photo Thomas Fiedler
      Thomas Fiedler
      Blog Post Author

      Do you think a source based data element/ domain editor would make sense?

      Or is form-based more convenient?

      Regards,

      Thomas.

      PS: Please do not suggest to have both 🙂

      Author's profile photo Former Member
      Former Member

      Why not both?

      Author's profile photo Thomas Fiedler
      Thomas Fiedler
      Blog Post Author

      In principal not a problem. Only a question of efforts.

      Regards,

      Thomas.

      Author's profile photo Former Member
      Former Member

      Well, I would prefer the source based. But I think for the most - especialy whose are firmed in SE11 - it's easier to change using a form-based editor.

      Author's profile photo Gaurav Patwari
      Gaurav Patwari

      Good information... Thanks

      Author's profile photo Former Member
      Former Member

      Is there a broken Link?

      At section "What's New in the ABAP Web Dynpro Tools?" I get the information "The specified item was not found." instead of a link to the mentioned blog.

      Author's profile photo Thomas Fiedler
      Thomas Fiedler
      Blog Post Author

      Fixed it!

      Thanks.

      Regards,

      Thomas.

      Author's profile photo Henrik Secher Jarlskov
      Henrik Secher Jarlskov

      Any plans to add the possibility of "coding" Tables directly in Source-code mode? (Similar to HANA with Entities...)

      Seems to be the last "link" missing when we have ABAP-basic types, Data Elements, Structures and Core Data Services (= views)...

      Author's profile photo Thomas Fiedler
      Thomas Fiedler
      Blog Post Author

      Hi Henrik,

      yes, this is planned as well. We will support DB table definitions also in a source-based editor in future release. And domains as form-based editor similar to data elements.

      Regards,

      Thomas.

      Author's profile photo Henrik Secher Jarlskov
      Henrik Secher Jarlskov

      Hi Thomas,

      Excellent - looking forward to testing it 🙂