Out Now: ADT Version 2.51 for the brand new AS ABAP 7.50
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
- New Quick Fixes
- News from ABAP Doc
- News from the Property View
- Change package assignment
- Assign changes of classes to separate transport requests
- Developing ABAP Transformations in Eclipse
- News from the Debugger
- New tracing and logging capabilities for ABAP
- What’s New in the ABAP Web Dynpro Tools?
- SQL Monitor for ABAP in Eclipse
- News from the CDS Editor
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:
You have all the benefits of source code editors like:
- Code Completion
- Syntax Coloring
- 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:
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.
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.
Here is how it works:
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” :
The editor automatically adds the new method declarations and implementations of the methods to the class.
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:
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:
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.
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.
Now I want a 7.50... cool stuff and a huge step forward!
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?? 😀
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) 🙂
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!
Does any of these features work with 7.40 backend, or all of them need 7.50?
these are all features of the new AS ABAP 7.50 release.
None of them is working with 7.40 or 7.31.
Thanks for the info.
Where can we practice personally for such a new amazing stuff.....
we are trying to provide a 7.50 ABAP developer edition in AWS as soon as possible.
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 😉
"Change Package assignment" feature request: apply the function to multiple selected objects, thank you 🙂
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.
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.
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:
Like I said, just my personal thoughts ;-).
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 🙂
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
BTW: What happened to the CDS view test-doubles. They looked promising and if CDS views get complex they would be extremely helpful.
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.
ok found it in the properties tab below.
do you expect to have the description editable in the editor directly?
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.
I like the dictonary tools better then befor.
Do you think a source based data element/ domain editor would make sense?
Or is form-based more convenient?
PS: Please do not suggest to have both 🙂
Why not both?
In principal not a problem. Only a question of efforts.
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.
Good information... Thanks
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.
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)...
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.
Excellent - looking forward to testing it 🙂