Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Is editing enhancements with ADT/Eclipse still not possible?

BaerbelWinkler
Active Contributor

We are moving ever so slowly into the direction to do more ABAP development via ADT/Eclipse. One large stumbling block on this journey is that we have a couple of fairly big and complex (think ~35,000 lines of code for one of them) enhancements which get updated regularly by different developers. While reading through AiE-related topics here in the community, I happened upon this earlier incarnation of my question from se38 with a response from thomasfiedler posted in March 2015.

I'm wondering - as I couldn't find any newer statements - if it still holds true that editing enhancements with AiE is not possible? And if that's the case, are there plans to make this functionality available in the hopefully not too distant future?

We are currently on NW 750 SP13

Thanks and Cheers

Bärbel

1 ACCEPTED SOLUTION

BaerbelWinkler
Active Contributor

While leafing through bfeeb8ed7fa64a7d95efc21f74a8c135's 3rd edition of ABAP to the future - which he mentioned in passing in a recent blog post - I found an answer to my question! On page 65 there's a note about "Assorted 1809/7.53+ Features" which includes "Changing Z enhancements (enhancement framework)" among some other functionality to become available with that version (ST22, modification editor, SE10, lock objects).

So, that's some good news. The bad news is that we are on NW 750 SP13 and that version will not be available to us anytime soon.

Cheers

Bärbel

23 REPLIES 23

Sandra_Rossi
Active Contributor

It's still not supported with latest ADT 3.0.2 / ABAP 7.52, but you may easily go to an enhancement by ctrl+shift+A , enter "type:enho Z" and the list of Z enhancements is proposed, then the enhancement opens directly in SAP GUI embedded in ADT. One big drawback is about the debug, because you have to choose between breakpoints of the ADT or the ones of the SAP GUI but not both, so it's a mess if you want to set a breakpoint inside an enhancement (+ you may need to switch off ADT project debugging temporarily because of conflicts between ADT/SAP GUI), hopefully you may reactivate the ADT debugging while you are debugging via the SAP GUI, no need of restarting the program.

(and I'd like that ADT would handle enhancements soon, too!)

BaerbelWinkler
Active Contributor
0 Kudos

sandra.rossi

Thanks, Sandra!

My question about editing enhancements via ADT is a follow-up to the responses I got for my version compare question. Due to that, opening an enhancement via the SAP-GUI in ADT is not really an option - and what you describe as far as debugging goes is another downside (if not showstopper) from really adopting Eclipse as THE tool for us to do ABAP development with.

matt
Active Contributor

If you have a specific issue in one bit of functionality that you need to debug, then take the time to refactor and encapsulate that bit into a separate class or function module. Then you can set your debug points in Eclipse for that bit, you'll be incrementally improving your code base (and thereby reducing future costs), and you only need SAPGui to write the bit that calls the encapsulated code.

This is what we did at one client (for the purposes of allowing multiple developments in the same place) we added our own Z BADI for use in the BEX variable CMOD exit. Then slowly moved variables defined in the includes so they'd be called by the BADI.

(For what it's worth, sometimes I find it easier to debug in SAPGui anyway - while the Eclipse debugger is more powerful and has some distinct advantages, it's also rather clunkier to use).

Florian
Active Contributor

Just to add my two cents here. Everyone saying today, there is a showstopper to use eclipse do not understand that eclipe is the way to develop abap in a newer system. CDS is a core-feature to develop today and this is just possible with eclipse. whenever there is somethin not implemented yet, just open a gui inside eclipse and you get the best out of both worlds. You might want to listen to my podcast with coffeecorner radio to get some real life experience why eclipse is the better se80

Here is a link:

https://anchor.fm/sap-community-podcast/episodes/Episode-13---How-Eclipse-saved-the-day-with-Florian...

BaerbelWinkler
Active Contributor

florian.henninger

Thanks, Florian! I listened to your podcast and some things you mentioned sounded interesting, like the stuff with the bookmarks and versions. Not having done much with Eclipse thus far, I was however not able to quickly find the mentioned functionality. Is there a description somewhere I could read up on this (and if there is, could relevant links perhaps be added to the podcast description)?

Florian
Active Contributor

A good starting point for a lot of the mentioned features in the talk is here:

https://blogs.sap.com/2013/06/05/adt-feature-availability-matrix-for-as-abap-releases/

It's a collection and refers for mostly all to a blog.

Some others not included there I write a blog at the moment. But with my toddler and another member will join the family soon that might take a while.

BaerbelWinkler
Active Contributor

While leafing through bfeeb8ed7fa64a7d95efc21f74a8c135's 3rd edition of ABAP to the future - which he mentioned in passing in a recent blog post - I found an answer to my question! On page 65 there's a note about "Assorted 1809/7.53+ Features" which includes "Changing Z enhancements (enhancement framework)" among some other functionality to become available with that version (ST22, modification editor, SE10, lock objects).

So, that's some good news. The bad news is that we are on NW 750 SP13 and that version will not be available to us anytime soon.

Cheers

Bärbel

0 Kudos

Well, I have a SAP_BASIS 753 Backend (SP 0000, though), and still can't edit enhancements (or code, that has an enhancement somewhere, which is evene more annying to me)... 😞
I keep on waiting! 🙂

best
Joachim

joachimrees1
Active Contributor

Well, now I'm on

Eclipse: 2019-09 (4.13), AdT: 3.4.4
Backend: NW 7.53, SP00.

Still doesn't work 😞

Code in the screenshot is an include (fully in a /NAMESPACE/ ), which's only flaw is, that it is embedded into SAP-Standard coding via an enhancement.

So it even kind of follows "keep code within Enhancements very small".

I do get that if the code wasn't an include included in the enhancement, but a global class in /NAMESPACE/ with a method being called in the Enhancement, I could edit it with AdT just fine.

I initially wanted to rant, but now think it’s maybe more productive (and better for my peace of mind) to go the way matthew.billingham described and -step-by-step - refactor towards that design.

But still the answer, as I can give it from my perspective, is: true, it's still not possible!

The help contents for ADT state that it is available as of 7.54(1909 and SCP). I am able to see the option to show enhancement Options when viewing an include from the SCP Trial system.

matt
Active Contributor

"but now think it’s maybe more productive (and better for my peace of mind) to go the way matthew.billingham described and -step-by-step - refactor towards that design."

A wise move I feel. 😉

0 Kudos

> I do get that if the code wasn't an include included in the enhancement, but a global class in /NAMESPACE/ with a method being called in the Enhancement, I could edit it with AdT just fine.

In the case mention above, /NAMESPACE/-Coding was inserted into SAP-standard-coding and I think this is fine.

But I have a related case I want to mention here:

If I have coding in a global class in /NAMESPACE/ , and there happens to be an Enhancement-Point somewhere in that Class (because that's what you do when you write AddOns: you provide means to enhance them right?), you are not able to edit anything in that class with adt:

joachimrees1
Active Contributor

I wrote a blog about ~this topic (actually for me it's not about "editing enhancements with ADT/Eclipse" but about "editing code with ADT/Eclipse", I try to make that point clear in the PS).

I'd be happy if you had a look at it, 8b889d0e8e6f4ed39f6c58e35664518f , sandra.rossi , florian.henninger matthew.billingham and others:

https://blogs.sap.com/2020/04/16/how-dearly-i-would-like-to-edit-my-abap-code-in-my-code-editor-that...

Also, note that it my case im not in Z-Namespace, but in our owhn /NAMESPACE/, in case that makes a difference.

Jean_Sagi
Participant

Jejeje...

I don't write/modify ABAP code, but review it. And ADT/Eclipse has proven to be a way better alternative than SE80 except for: "Enhancements"!

Really annoying to have to switch to SAP-GUI just to review enhancement modifications.

But well, most of the time, is just ABAP code and in this regard ADT/Eclipse really shines.

J.

NemanjaSimovic
Participant
0 Kudos

Hi all,


It's interesting that I can click on enhancement icon and just see the enhancement code. The only way I managed to open it inside Eclipse is when I debug it. I placed break-point in front of the form and went step-by-step. 🙂

Regards,
Nemanja

schneidermic0
Advisor
Advisor
0 Kudos

Hi Bärbel,

I think you have distinguish between two scenarios:


a) Editing, Creating enhancement implementations (source code plug-ins) to enhance existing code

For this support has been add by various iterations in ADT:

In SAP NetWeaver 7.4 SP 5 as well as 7.31 SP11 or higher, you can display the source code plug-ins in the source code editor of a class, program, or function group. The source code plug-ins of the available enhancement implementations are displayed in the enhancement popup.

Since AS ABAP 7.53 you can edit source code plug-ins in the enhancement implementation editor.

Since AS ABAP 7.54 you can create enhancement implementations and enhancement implementation elements in the ABAP Development Tools.

See also https://help.sap.com/viewer/c238d694b825421f940829321ffa326a/202110.000/en-US/d6a3f5258c8a4bffa3d941...


b) Editing objects which are enhanced

For release SAP_BASIS 7.54 or higher, you can edit also enhanced objects as long as the original code does not contain any statements ENHANCEMENT-POINT or ENHANCEMENT-SECTION.

For release 7.54 or 7.55 you might have to apply SAP Note 2992070 to enable this in your system.

I hope this information helps.

Kind regards
Michael


Prasenjitsbist
Participant

After so many years still we have to use SAP GUI and SAP GUI still looks more polished than the ADT. I don't understand why SAP needed ADT and wanted to kill GUI. Sometimes I feel SAP like the smart geek who has lost self confidence because of the bullies. ADT because others use it, the new college goers use it... It can not be a valid excuse when your own tool or the IDE is million times superior to the Eclipse ADT. SAP GUI is million times ahead of any comparable UI platform as well. SAP u need to have more belief just dont join the so called cool guys gals group have self belief you are the coolest dude. Either make ADT feature complete or just start investing back in GUI. I don't see a single merit of using ADT except for the fact that SAP on purpose has locked down certain activities at GUI side.

matt
Active Contributor

Really you should write a blog.

Advantages of ADT (in no particular order)

1. A widely known development environment, so the learning curve for many is vastly reduced.

2. Local versioning (every time you save, a local version is cut). This is very useful when you realise that you've gone the wrong way and want to revert to what you save at 10 this morning. Within SAP GUI, you'd have to manually create a temporary version each create.

3. When your network connection goes down, you don't lose your work. Important for remote workers!

4. Code completion is vastly superior.

5. You can have many windows open at a time.

6. You can compare entire classes/interfaces between local version, transport versions, and system - even systems that aren't connected to each other.

7. Unit testing is superior to that in SAP GUI

8. It's a modern IDE - SAP GUI manifestly isn't

9. It's easier to enhance than SAP Gui (you can even write your own plugins)

10. Errors in coding are flagged up immediately

I switched from SAP GUI to Eclipse years ago. Frankly I'm baffled as to why there is so much resistance. I've been developing ABAP for over 20 years (SAP GUI and Eclipse), and I think I'm qualified to say that any disadvantages are utterly outweighed by the advantages. I find development faster and easier. SAP GUI is clunky. Although I'll concede the debugger is more powerful.

matthew.billingham Good idea but no thanks. Glad that you love ADT good for you. But IMO any person who writes code on a daily basis will agree with me. Long loading time, freezes and feature incomplete. As I said already just for the sake of familarity SAP doesn't not have to kills something that is superior. I am from Computer Engineering background and I know Eclipse is good , I wrote Java code; but for ABAP SAP GUI is perfect and everytime you have to open the embedded GUI - I hope will remind you as I said ADT is crap.

There are lots of people who write code on a daily basis and who prefer ADT, sorry. Why do you need to say that something is either good or crap. Why not describing what is good, what is perfectible. There are some big advantages, big drawbacks, in ADT, like in SAP GUI. Just use ADT for tasks with big advantages like refactoring, unit testing, and SAP GUI for tasks with big advantages like some tasks in debugging, SAP GUI screen debugging, etc.

Sandra - What about BOPF tools, SEGW tools what about the ease of accessing any transaction, what about the need to open GUI for many cases where the ADT can not open the data browser. What about the endless transactions not supported. I don't know about you but I have to unfortunately write a lot of code that is more than writing classes and I find it very disturbing so do my numerous colleagues. Even something as mundane as debugging, debugger scripting is so much easily done in the GUI. What about the fact that Eclipse ADT freezes, has a much more loading time, What about the fact that even for RAP UI the test scope is limited I can not go and check all associations etc in the UI preview. It would be a long list. yes there are some nice cool things as well like you said refactoring yes, something as simple as delete unused variables and so much but can it replace GUI - NO as on 23-06-222 it has not managed to do it yet and the embedded GUI is still there.

Also I guess you did not get my point- I am against the point that SAP has to change it's own inhouse things just to attract people from the outside. If your product is good, people will learn it you don't have to make a JAVA version of ABAP to attract new talent. Eclipse is good but ADT lacks features,. What is the problem in accepting that or let some one speak if s/he does not like it? In any case SAP is not going to roll back, right so just chill and ignore my comments if you don't like I am just venting my frustration after a day when I spent so much time looking and doing different things on 2 different IDEs.

As a developer I don't appreciate using 2 tools it's annoying, impacts my workflow and that too when the company claims the one I find superior is on the way out. Please do not take it personally but I have a conclusion that some people have a psychology that everything SAP had like tools the language is so "not cool" and let's be cool like Java or something else. Again kindly do not take it personally I just took the opportunity to share what I feel.

Thank you!!!

PSB

matthew.billingham

I am not offering any resistance I am using Eclipse ADT since 2017. And I still find it feature incomplete. I repeat feature incomplete. Error come up immediately really, I find it too hard to read in the cumbersome manner it is displayed.

It's a modern IDE - SAP GUI manifestly isn't - So that was exactly the kind of ideology I personally dislike and that was the point of my initial comment that you ignored. Just something is modern is not better. ABAP is 39 years old then let's dump ABAP now. Eclipse has been around for too long as well. Make ADT better simple that is what I wish for. The VS -ABAP plugins is a great example.

You can have many windows open at a time.- Well when you need it the most the IDE freezes 🙂

Code completion is vastly superior.- Depends how you see it but still all the pros you counted does not weigh heavily on the cons and that is the burden of evidence against the Eclipse ADT.

Again I have no resistance to anything- I do not belong to that camp so please do not target me, nor I am what you guys like to call the kind of people who do not like to upgrade ABAPsaurs or things like that I have been 3 decades + a couple of years on this beautiful planet and I love to learn but because my time is limited and I want to finish my work fast go home and have fun with family I wish for good working tools and that is what my complaint is. Have a great day and I just tried to make a point I ofcourse have not seen the world or amassed so much experience like you.. I just have been writing ABAP since 2007 🙂 Thank you Sir have a gr8 day.

PSB

matt
Active Contributor

I've moved the discussion to this blog. Maybe more people will get involved.

https://blogs.sap.com/2022/06/24/eclipse-adt-vs-sap-gui-editor