Skip to Content

Hi,

I would like to share my experience regarding efficiency of development in eclipse as compared to SE80 tool.

I think I am in minor part of ABAP developers, who first had to switch from eclipse to SE80 and not the other way round. When I started my adventure with ABAP, I was already used to eclipse so naturally from java development that I was shocked with SE80 tool. It was so difficult to use class builder, search for any object or be limited by few dialog sessions only. In this blog I try to recall what I missed so much in SE80 and why I moved back again to eclipse quickly after it has been released for ABAP development.

Advantages

1. Working with text code is more efficient than filling dialog forms.

This is argument used by SAP when they recommend to use eclipse. I totally agree with this statement. Wizzard and dialogs that help to build class and methods are useful for beginners as they clearly point what to fill and where. However for developer who works with code daily, learning syntax is not a big deal and handling code as text only is much faster. I will bet that writing example calculator class with 4 basic arithmetic operations will be done faster in eclipse than in SE80 dialogs.

2. Eclipse allows to work offline.

That is big advantage. You can cache your development locally and synchronize it when there is connection to server. Just be careful with data synchronization, to update right version and not loose your development. Also switching between read/edit mode does not require special button. Just start typing and editor will lock file for you automatically.

*** 2013-04-23 Update:

In fact at the moment it is limited offline mode but still – current changes will not be lost when network goes down. I can still read all loaded files and modify those in which I started to type in before network was disconnected.

3. Many source objects opened in parallel.

That was a nightmare in SE80 for me. How can it be, that only 6 objects can be opened for edition at the same time? And if we run program and have single debugger session opened, 2 slots are already taken so we are left with 4 objects opened. Of course it is possible to do development, but I remember how often I had to close one place to jump into another, then I had to close it again and find original place. In eclipse there are convenient tabs that allows to open as many source objects as we want. We can also save context of opened elements, but I describe it later in point 9.

4. Personalized flexible windows positioning.

That is extremely useful and important for me. I like to have control over things that I see. With eclipse flexible windows positioning I can easily set up main source editor in the center, supported by second dialog which show me another source code that I am updating (test class for example) and having third window with preview on database table to see possible input/output values. No need to jump between different windows as in case of SAP GUI, everything is in one place, customized for own needs. Why not to use full screen of wide monitor when it is possible?

5. Quick fuzzy search for any object.

With eclipse you can press CTRL + SHIFT + A and type letters combination for any object that you want, including wildcards (like zcl*adam*). I do not care if this is class, function module or database table – everything is accessed through one shortcut. And how fast it works, certainly much better than searching for anything in SE80.
Also when you are in the class, just press CTRL + O and start type any method/attribute name like mt_* to see all member tables etc. See how fast and easy it is.

6. Better code support for refactoring.

SE80 has some basic refactoring options like changing name of objects or inserting pattern. That is nice. However eclipse offers much more. In current version that I have, I can:
– rename variables that are not used outside class;
– remove unused variables from part or whole class;
– use code templates shown in code completion that can be easily extended in eclipse settings;
– extract methods automatically;

– create methods declaration and implementation automatically (quick fix);
– use quick fix which is so important that I describe it in next point.

7. Quick Fix – CTRL + 1.

Eclipse allows user to create new methods extremely fast. It is enough to declare input and output variables that we want to have and write new method call like it would exist. Then press CTRL + 1, ENTER, confirm wizzard and method definition with empty implementation are generated.

Example how to prepare parameters with predefined type to create method automatically, CTRL + 1:

/wp-content/uploads/2013/04/eclipse_quick_fix_202061.png

After pressing enter, simple wizzard appears where we can update parameters properties or just approve by enter:

/wp-content/uploads/2013/04/eclipse_quick_fix_wizzard_202062.png

This function is very useful if we need to create new method in class – just type it in definition section with parameters, and create implementation signature with Quick Fix. Editor will jump into new method so you can start coding there. Also refactoring becomes much simpler, just prepare parameters with defined type and write method call that you need, wizzard will generate it for you.
Even simpler option is to use Extract Method function (CTRL + SHIFT + M). Just select piece of code that you want to extract and let the tool care about creating method definition, implementation and proper parameters types.

Here again I will bet that with these refactoring support options, simplifying long sequential report into modularized code will be done much faster in eclipse than in SE80.

8. TODO tasks in editor, not in code.

We often have things that are left to do. Have you ever found in source code comments like “*TODO – need to be refactored later” ? Instead of making comments in code it is better to add it to own editor. Eclipse keeps list of Tasks to be done. We can have general task or task which is assigned to the place in code – then by double click we can directly jump into place that needs to be fixed.

TODO_tasks.png

9. List of tasks that keep context of development.

Eclipse allows to register all opened objects and assign them to context saved in “Tasks list” view. You can create many tasks, each for new development for example. Just select right click on task and Activate option to have all objects from context loaded to eclipse. If you finish work with task, just choose option Deactivate. This will close all tabs and save the context, so you can open next task to work on. This is very useful option if we need to switch between development, loads context of changes within seconds. Keep in mind that embedded SAP GUI dialogs are not loaded back.

In addition tasks can be created locally for own needs or also on the repository server. It means that we can share task context with other developers. It makes it so easy to pass the task with all “touched” classes and context to other person.

10. Navigation history.

Although SE80 has also good sequential history of steps performed on dialogs, eclipse offers more. Alt + Left/Right jumps between editor history, but you can also click small arrow that will expand wider list of dialog steps history. You can press CTRL + Q to jump directly to last edition place.
Also the history of searches is kept in memory. If you search references to objects from eclipse (CTRL + SHIFT + G), the history can be easily recalled from “Search” view. It means that you can quickly display already used search results if you need to jump between different paths. That is helpful. In SE80 you can keep history of searches only in sequence (you can search, go into code, then go back).

11. Others.

There are many other advantages that I could highlight about ABAP in eclipse. I will just mention shortly other things that I like:
– Embedded SAP GUI when needed.
– Text highlighting and selection.
– Package hierarchy clearly visible.
– Compatibility with SE80 development where possible (same shortcuts).
– Fast fuzzy search in many places (use * for any character).
– Dedicated tabs (placeholders) in the text class editor so I see clearly where to put main code, local types or unit test classes.

Disadvantages

Although I am big fan of ABAP in eclipse, I want to mention also some disadvantages that I see in my current version (SAP version 731, ABAP Tools 2.02) . I will just write it shortly to not discourage people from using it:

– Implicit enhancements are not visible in eclipse. I cannot edit them or see code references from enhancements in searching results. That is why if I know that my code is used also from implicit enhancement, I had to go to embedded GUI and search by standard “Where-Used List”.

– Search references or search in program works better in SE80. On the other site eclipse adds history of searching, so for basic “Where used to” I use it.

– Debugger in eclipse works only in some landscapes in my system, not in older versions. I like both debuggers, SE80 is still more powerful, offering many advanced options however eclipse debugger is easy to use and sufficient for basic needs.

– F1 help does not always work or takes more time than in SE80.

– Refactoring only in one file. Not possible to rename variable if it is used from outside – anyhow better than nothing.

– Watch out for parallel work in SE80 and in eclipse for the same source code. I had case when my changes done in SE80 were overridden in eclipse, after dialog prompt where I chose wrong option by mistake. Just be careful. Anyhow it is good that we can work transparently from any editor on same source.

– I am missing “insert pattern” functionality, maybe I have not found it yet.

*** 2013-04-23 Update: Already found – CTRL + SPACE, then SHIFT + ENTER, as shown here:

http://scn.sap.com/community/abap/eclipse/blog/2013/02/01/insert-code-patterns-and-templates-within-eclipse

– Sometimes GUI hangs, but rarely, just few times in history. Anyhow in my opinion eclipse is extremely light and fast editor as compared to SE80.

– Missing features in eclipse like Web Dynpro support, not all development can be done in eclipse still. Anyhow there is always option of embedded SAP GUI and this helps.

– Missing transport management, I still need to go to SAP GUI to release request.

*** 2013-04-23 Update: Already available in newer version:

http://scn.sap.com/community/abap/eclipse/blog/2013/02/20/adt-basics-transport-organizer

Shortcuts

Useful list of shortcuts, worth to use them regularly:

CTRL + SHIFT + A – open any object from repository
CTRL + SHIFT + G – find where used references
CTRL + SPACE – code auto complete
CTRL + 1 – Quick Fix, suggestions to object like rename, create method
CTRL + SHIFT + R – rename object (only in single file no references)

SHIFT + ENTER – insert pattern (used with CTRL + SPACE)
SHIFT + F1 – Pretty printer 
SHIFT + F2 – compile check
SHIFT + F3 – Activation 
CTRL  + SHIFT + F3 – mass activation

Many general helpful shortcuts can be found in Help -> Key Assist.

Summary

That is it. Personally I think that working with ABAP in eclipse is more efficient than using SE80, especially if we develop with object oriented approach and practice unit testing. I am not saying that SE80 is wrong tool, not at all. It is still powerful and advanced development environment, I just think it is a bit old fashioned, good for people who are really glued with it, having many years of experience behind. In my case switching back from SE80 to eclipse took few days anyhow as I already had some habits from SE80. I was used to editor functions, key shortcuts or I did not even know how to write text syntax for class as I was using class builder before. However after few days of development with learning I gained more speed and increased efficiency in eclipse. Now I am sure do not want to move back. When I have to work in older systems where ABAP in Eclipse is not supported, I see even more how slow it is to write code in SE80.

Amongst other benefits, I say that ABAP in eclipse brings success because:

– It is possible to open many objects in editor, no limit of 6 sessions.

– Many dialogs can be flexible arranged on one screen.

CTRL + SHIFT + A quickly finds anything we want.

– Automatic methods creation speeds up development.

I strongly encourage you to try ABAP in eclipse if you have not done it yet. I am sure that if you cross the barrier of trying new thing, benefits will come.

Good luck!

To report this post you need to login first.

73 Comments

You must be Logged on to comment or reply to a post.

  1. Paul Hardy

    I cannot yet go onto ABAP in Eclipse as my company is not yet on the correct Netweaver level, but I have been looking forward to this since the day it was announced. I too was familar with Eclipse from working with Java, although the vast bulk of my career has been spent writing ABAP using SE80.

    The good thing about Eclipse is that you can plug things into it, so if there is something mssing or you don’t like, you can fix it yourself. Some of the gaps you outlined above are important and need to be addressed, but the experiments on SDN, such as plugging SAPLINK into ABAP in Eclipse make me wonder if it is possible for the SAP community to address gaps if SAP itself is slow off the mark?

    I would also note that this is a VERY emotional subject for many. A while back I dared to say on SCN how much better I thought eclipse was going to be than SE80 and I got half a ton of vitrolic personal abuse. The “barrier of trying a new thing you refer to above is a thousand mile high one mile thick concrete barrier for a lot of people!

    Cheersy Cheers

    Paul

    (0) 
    1. Adam Krawczyk Post author

      Hi Paul,

      I like your comment very much and agree with you. That is why I stressed that it is experience from my point of view. I am not going to argue with people who belive that SE80 is more powerful, as it may be for them. They must decide if they want to cross high barrier of new challange or not. I would just like to help at least those who are not decided or not aware of eclipse strength.

      Another important thing you mentioned are plugins. Eclipse is flexible platform and there are many useful extensions if we only want to discover them.

      Regards,

      Adam

      (0) 
      1. Paul Hardy

        I read something on the internet recently about when the concept of a mouse first came out to make using a computer easier than the keyboard only, all the reviews in the magazines (no internet then) said “this is fun, but it will never catch on”.

        Once almost every computer in the world had a mouse, one journalist had his quote about how “this will never happen” framed above his desk to remind him not to be so sure about his predictions.

        In the same way I can’t say if ABAP in Eclipse will become popular, but my gut feeling is that it will. For the last ten years SE80 has slowly been adopting Eclipse features – like code completion and the colouring of keywords – and maybe they (SAP) have bitten the bullet and said “instaed of spending time and effort copying Eclipse new  features into SE80 each year (or rather whenever an SAP customer has the timeand money to upgrade as opposed to the annual free Eclipse upgrade cycle), let people use Eclipse instead”. Then you can have the best of both worlds.

        The other day I was talking to someone about this new “mars one” thing about colonising mars and he told me in no uncertain terms “that’s nonsense – the human race will stay on Earth forever and never leave”. I wonder?

        (0) 
  2. Fred Verheul

    Great comparison, but foremost a great collection of tips and tricks on how to optimize the use of Eclipse. I haven’t played with it yet, but will certainly come back to this blog when I’m ready to do so.

    Thanks!

    Cheers, Fred

    (0) 
  3. Kumar Mayuresh

    Hi Adam

    Great blog on comparison of SE80 and ABAP in Eclipse. I would like to take all the Tips and tricks and will its going to be handy once I get a chance to play with it. ๐Ÿ™‚

    Regards

    Kumar. ๐Ÿ™‚

    (0) 
  4. Uwe Fetzer

    Hi Adam,

    as I’ve heard about ABAP in Eclipse two years ago I was very sceptical. I’m coding more than 20 years now in TM38, SE38, SE80 and why I should change my beloved Editor?

    Last year I’ve started the project SAPLINK for ABAP in Eclipse (the correct name is ABAP Development Tools (ADT) by the way) I HAD to use Eclipse. Know what: since than for all of my private developments at home I’m using ADT.

    Regarding Transport Organizer: it already works (see  http://scn.sap.com/community/abap/eclipse/blog/2013/02/20/adt-basics-transport-organizer )

    WDA Development is coming in the (very) near future…

    (0) 
    1. Adam Krawczyk Post author

      Hi Uwe,

      Nice to see that you are real example of long term experienced ABAP developer who moved to eclipse. It confirms that such people exist ๐Ÿ˜‰ And as well it shows that with long classic ABAP experience resistance to new editor comes as well. So thank you for sharing your thoughts.

      It is nice that Transport Organizer already exists, it looks promising. Unfortunately I do not have SP6 yet so I can just see “Transport Organizer” view but content does not work. I am looking forward next changes and I am sure that ABAP in eclipse will develop more in the right direction.

      Regards,

      Adam

      (0) 
  5. Stephen Johannes

    Sorry but SAP using Eclipse for ABAP is a major example of outdated thinking and basically a failure on arrival on most SAP shops.  The first issue with eclipse is that is a java based application and even with admin rights, it won’t install correctly with anti-virus scanners set on high security. 

    Next unless SAP is going to get rid of the SAP GUI completely then why is SAP making my landscape to support SAP applications more complex.  I don’t want another bloated 10-year old+ fat client to support my SAP systems.  We already have one for SAP GUI and I don’t think adding more fat clients to desktop systems is innovation.  In fact it’s pushing a tired client/server model of development on more people.  I really don’t know why java folks love Eclipses unless they have a desire for pain and suffering or think installing development tools is a hazing ritual.

    My real question is if SAP is smart enough to develop HANA, then why can’t we get some decent browser based development environment based HTML 5 that only requires a modern web browser.  I think it’s a total lack of innovation that the development tools for cloud based solutions are based on the same ugly fat client tool that was used for traditional on-premise software such as the enterprise portal.  Putting plugins into a fat client is not innovation as SAP already did for the Enterprise Portal back in 2003.  I’m not impressed that we ported a fat client development environment to another fat client.  It’s the technical equivalent of putting lipstick on a pig and doesn’t come up with a next generation development paridgm that allow for “code anywhere” using any device. 

    It’s good to hear that SAP is trying to make sure that the new fat client has the same features of the old fat client and some improvements.  However I would really challenge SAP to rethink the entire development tools approach to a “code anywhere” approach and take a fresh start on the development model for everything just like how SAP refreshed the design of applications with in-memory computing.  That includes not using 10+year old fat client editors and coming up with a true cloud-based development toolset that does use fat clients.

    Take care,

    Stephen

    (0) 
    1. Luรญs Pรฉrez Grau

      My guessings:

      There’s no direct business under development tools, so there’s no point on do a big invesment on that.

      Customers need the system runn fast so they will buy or at least considere to buy Hanna (for example), customer don’t give a s**** if the development tools are bad or worse, because they don’t see an economic impact on that, we all know that existis, but is something very hard tu justify from a comercial point of view.

      So the teams involved in developing Hanna and developing abap based eclipse won’t be equal, not even close.

      So I’m quite happy if I see somethign that will improve my daily work even if is the same s**** but with a different tie. ๐Ÿ™‚

      <Barrett Strong> I want money Moooooneeeey, yes, that’s what i want </Barrett Strong>

      (0) 
      1. Stephen Johannes

        Not to completely hijack the comments, but my point is that no matter how good SAP makes an eclipse based ABAP editor, it’s still a fat client based development toolset.  I’m sure Eclipse tools are nice, but even when I had full admin rights on my machine, due to all the security concerns about java based desktop applications on windows, I couldn’t use any of the SAP plugin tools.  I would have had to spent weeks with my security group trying to figure out what to exclude.

        In addition most people are strongly recommending most people don’t install java on their machines due to all the security flaws.  I know this is mainly for the browser based plugin, but still it’s a valid concern of promoting a java based tool for something that could be done in something else.

        You are right however that SAP doing something innovative with the develper tools instead of just reusing eclipse isn’t going to make them any more money.  It would however increase “mindshare” and given that SAP has already lost their leader position in the CRM market, mindshare is now more important than ever.

        Take care,

        Stephen

        (0) 
        1. Uwe Fetzer

          Hi Stephen,

          as long as there is no other standard development environment (or is there?), where I can develop JavaScript (sapui5), JAVA (Android), Phonegap, Python, ABAP, SQL (HANA) etc. in just one place, I’ll stay at Eclipse.

          I don’t think SAP is the right company to create (again) an own development environment. It’s not their business, not their strength. Let’s keep the pro’s (or the community) make such environments.

          (0) 
          1. Stephen Johannes

            Uwe,

            Fine, then why can’t anyone come up with cloud based development tools instead of fat clients?  Is there someone who already does, and if so why can’t SAP adopt that for their tools? If I want to develop on chromebook, android tablet, iPad, blackberry, etc without needing a remote desktop then why not do it.  Why can’t we leverage the cloud to handle the heavy requirements of compiling without being forced to have a heavy duty windows, mac or unix desktop?

            Just because the software development community thinks that fat clients are awesome doesn’t mean we can’t challenge the assumption.  Technically most of the software community thought SAP shouldn’t be spending its time making a database, so saying SAP is not the right company to make development tools is saying that SAP should not have made HANA because they weren’t a database company.

            If SAP is challenging customers, partners and everyone to rethink how they do business with HANA, then why can’t we challenge back why they are presenting development tools based on a old model of development. 

            Take care,

            Stephen

            (0) 
            1. Cesar Martin

              Stephen,

              I think you have a point with the idea of some form of cloud based (or at least not “fat client”) development environment.

              May be you are thinking about something like https://c9.io/.

              Actually, the traditional ABAP development environment has always been something like a cloud but with a fat client. The code is always centralized in the server. And the server already provides versioning tools, transports, and conflict management, without the need of any additional software or configuration. I don’t think ADT is removing any of that and additionally it is giving ABAP a lot more new possibilities. But yes, an option for development without a “fat client” would also be welcome.

              Regards,

                    César.

              (0) 
            2. Adam Krawczyk Post author

              Hi Stephen,

              It is good to have some critical opinions as well ๐Ÿ™‚

              I guess you have not used eclipse much yet. Have you tried cloud based development before if you recommend it so much? It would be interesting to hear about real user experience.

              I do not think that eclipse is so fat IDE client as you point it in almost every statement, but I like your example with lipstick and pig. Although eclipse uses some CPU and memory, editor works very fast for me and long lasting operations can be run in the background if I want. Just look at example of searching any objects, it is really improved and works within seconds. And “fatness” that you write about, gives multi platform and multi language support, flexibility and usability at once.

              Eclipse offers lightweight pluggins architecture, so you can decide yourself which additions you need. You can have just simple editor if you do not need anything else, but I think there are many modules which can improve programmer and team work much.

              Lightweight IDE run in cloud from browser sounds like a good alternative, but this idea is not popular yet and I do not think that SAP is the one that should invent new client for that. We have already SE80 and as Cesar mentioned below, it is kind of cloud, within intranet only. In my company I can already access SAP SE80 from anywhere by web browser and Java applet/Citrix Client so it is there if I need it in special cases.

              If we see that eclipse is build on top of “intranet cloud solution” it gets benefits from both approaches. Security is also a critical issue, if we want to be able connect from anywhere. With intranet it is easier to control.

              As a local machine client eclipse offers offline work mode which is new as compared to SE80 and I think it is important feature. You can work on code from everywhere even without Internet connection if you have laptop and project already configured. Cloud solution does not offer this as by default it requires Internet connection always.

              I do not think that installing eclipse and project is problematic – it needs to be done only once, occurring problems can be solved and in my case installation was really smooth, not even one interruption (I know eclipse from before).

              I do not see future for development from smartphone or tablet as I think efficiency goes down. But of course in some urgent cases, or just code review that would be a nice feature, SAP could think about it in general. However security issue comes back again – many companies do not offer access to SAP from mobile devices, so it is even longer way to open development mode there.

              Regards ๐Ÿ™‚

              Adam

              (0) 
              1. Stephen Johannes

                Adam,

                The problem is that SAP tried this approach with portal development ten years ago using eclipse as the development tool.  For me Eclipse is old technology just like SE80 is old technology.  That’s my point Eclipse is the old way of doing development even if it is new for ABAP development.  I don’t care how many revisions or improvements you make to the tool, we are still using tools that require software installation on a client machine beyond a browser.  We need to rethink development tools and assume people no longer have traditional PC’s but rather have a browser or mobile device. 

                I also disagree that SAP shouldn’t do this.  That is the type of thinking that basically limits innovations and most people thought SAP shouldn’t create HANA.  The moment SAP starts to think that way, is the moment they can’t compete.

                Even though we may disagree, I want to point out that your blog was excellent and I appreciate the contribution.  Great contributions have awesome content and associated discussions. 

                Take care,

                Stephen

                (0) 
                1. Adam Krawczyk Post author

                  Hi Stephen,

                  I see your point as well, you brought a lot into discussion. I think that in todays world one company cannot be strong in too many areas as it will be beaten by stronger specialized competitors. However SAP HANA example shows exception from this, as it is promising product that has grown up from innovation and courageous decision.

                  On the other hand I am satisfied with eclipse at the moment and age 10+  means experience. For me eclipse is a grown up but still young and fresh platform. I would trust to it more than to new existing cloud based solutions. But they say: those who will not risk cannot win.

                  Thanks for your contribution as well!

                  Regards ๐Ÿ™‚

                  Adam

                  (0) 
                  1. Sudarshan Survepalli

                    Hello Adam,

                    I see that you have mentioned that we can work offline with ABAP content in Eclipse. Please can you guide how we can do it. I am working with HANA Studio with ADT 2.2.

                    Thanks

                    Sudarshan

                    (0) 
                    1. Adam Krawczyk Post author

                      Hi Sudarshan,

                      I quickly tested offline mode (I usually do not work in it) and I see that its limitations are quite big – no autocompletion, code check, pretty printer etc. However I can still read all loaded files and modify those in which I started to type in before network was disconnected. It means that you will not loose your current development when network suddenly goes down, and that is a benefit.

                      You can work offline on source code that is already loaded to current eclipse session. If you do not have connection to the server, you cannot open object that is not yet loaded, so it is limited offline mode.

                      If you want to work offline you need to:

                      – Keep opened sources in eclipse on which you want to work (classes, programs, sources that are opened in eclipse not in SAP GUI).

                      – Enter at least one change to lock file and have it in change mode (start will appear on the object tab name) – then you can also update source contents.

                      I see that you cannot save file unless you have connection back again, so all your development must be kept locally in eclipse session. When connection comes back, you can save it to server by CTRL + S.

                      Regards,

                      Adam

                      (0) 
                      1. Sudarshan Survepalli

                        Thanks Adam for the explanation. Agree, there are quite a few limitations.

                        On the offline mode work, I tried your suggestions, however when not on network, if I close the eclipse, I lose the changes -i.e. cannot save them.. probably have to keep a local copy in a text file and then copy these back online or sync back online. Also, as you mentioned, if an object is not already open, it cannot be accessed while offline.. this is a  limitation. I feel that a check-out and check-in kind of a feature should be provided so a package or a set of objects can be made available off-line always till we check them in again.

                        Thanks again,

                        Sudarshan

                        (0) 
                        1. Adam Krawczyk Post author

                          Hi Sudarshan,

                          Your observations are correct. It looks like offline mode is currently designed to keep current code changes when network goes down and not for offline development in general. However I saw SAPlink project becoming more popular latelly, and maybe this is the future for check out / check in approach.

                          Regards ๐Ÿ™‚

                          Adam

                          (0) 
              1. Stephen Johannes

                Now that would be a cool concept.  Given that the fact if I remember all the external editor tools are RFC/etc, I wonder how hard it would be to insert this into ABAP system via BSP/etc.  I’m going to have to research this some more.

                (0) 
                  1. Luรญs Pรฉrez Grau

                    Is not a big problem if you are only coding, but in ADT you can open SAP GUI tabs to see, a dictionary object or a BADI definition, text elements, etc., if you go to the Orion way, which I personally think is very cool, I don’t see any way to display those without BSP/WD or calling GUI via ITS (nooo! please!)

                    (0) 
  6. Graham Robinson

    Hi Adam,

    thanks for this thoughtful and balanced post. I too am now developing in ABAP using the Eclipse based tooling and I agree with all your points.

    The big issue for me is that I believe the days of the ABAP-only developer are very much numbered and that going forward we will need to develop in more than one language. For example a SAPUI5 application might require ABAP, HANA XS, HTML, CSS & Javascript that all need their own language-specific editor, compiler & debugging tools. Eclipse provides a single IDE for all of them.

    One Ring to Rule them All ๐Ÿ˜Ž

    Cheers

    Graham Robbo

    (0) 
  7. Cesar Martin

    Hi Adam,

    Excellent blog and great remarks on the use of the new ADT for Eclipse.

    I mostly agree with what you say, but I’d like to add one comment: in your first point you indicate that wizards and forms are only useful for beginners. Well, I can tell you that this is one of the things I miss most in ADT. It is matter of options and flexibility. I’d like to have the choice of working with the forms or the text. Besides, you can also work in text only mode in SE80(24) for ABAP classes if you want to (Settings->Source Code-Based Class Builder). And if Eclipse is going to completely *eclipse* SAPGUI one day, don’t you think that an option for beginners should be there?

    The great thing about Eclipse (and the ultimate reason for it to be there) is what Graham and Uwe point out: this is no longer an ABAP only world, and Eclipse is nowadays the tool that covers all this multiple language new world. That one ring (hope it is not an evil ring).

    However, even with WDA for ADT coming very soon, there is still a long way to go, and a lot of good things that we’ve grown to appreciate in the SAPGUI development environment. I’m just hoping that the best features of it are taken into Eclipse, and the best features in Eclipse are adapted to the ABAP world, for our benefit and the best development environment out there.

    Thanks for your blog,

        César.

    (0) 
  8. Matthew Billingham

    I’ve used eclipse extensively, and like it. I’m sure when I get the chance to program in ABAP in it, I’ll find it great. However, I’ve been programming in ABAP via SE80/SE24 for years, and I really don’t find it is as deficient as you make out, especially with the editor of recent years, and certainly don’t find the class builder to be only useful for beginners. I doubt that switching to eclipse will make me any more of super developer than I already am – given I spend half my time while programming simply thinking, rather than typing. That makes me fast, because I write things once, with little need for refactoring.

    I remember the first editor I used for developing in SAP – all the ease of use of vi, and all the functionality of notepad…

    (0) 
    1. Adam Krawczyk Post author

      Hi Matthew,

      That is good approach – think twice before writing any line of code. This often goes with YAGNI rule (You Arent Gonna Need It). Even if you practice it, it would be interesting to get your opinion after you try ABAP in eclipse in longer run – if there is improvement or not really.

      Regarding class builder, it is easy to use but advanced as well. I just see that it is faster with text and methods auto generation in eclipse. If they added it to SE80, it would be good improvement there as well. I learned some key shortcuts in eclipse that allows me to generate code quickly, no need to use mouse actually. And that is easier than filling forms in class builder.

      And finally it is a good point that latest SE80 environment is still powerful editor that has grown up for years, even if it looks old fashioned at start ๐Ÿ˜‰

      Regards ๐Ÿ™‚

      Adam

      (0) 
      1. Matthew Billingham

        Just done day one of a ADT/HANA workshop. I’m sold on abap on eclipse now… at least, on how it will be when it’s fully mature.

        There does seem to be a pattern functionality – our trainer used autocomplete on a function module, and also created her own pattern.

        I love the internal table display in debugger. First showing rows 1-100’000, 100’001-200’000, 200’001 – 300’000. Then that drills down to 1-10’000, 10’001-20’000… and so on until you’re at the individual rows.

        I like that everything is in one place. Sure you can do that with SAPGui and a big monitor, but it’s not quite the same.

        One issue I found – text elements don’t seem to maintainable in Eclipse.

        (0) 
  9. Daniel Schรถn

    Hello Adam,

    first of all thank you for the great blog. It is a nice summary of the advantages of the Eclipse Environment.

    For me especially the refactoring options (which hopefully will be extended in future) are one main reason to use Eclipse. The other reason is the multi Editor support. I allways missed this “freedom” in the SE80.

    What would definetly be an argument for using eclipse is a real offline support. As I understood, the current “offline” capability is more a fallback sollution for a broken connection (what is still a lot better than working in the train and noticing after 100 lines of code, that the connection terminated ๐Ÿ˜‰ ).

    The main reasons not to use ADT are:

    System Requirements: I work for a consulting company. So I mainly develop on customer systems. And up to now I never saw a NW7.31 System in a customer landscape. So I can unfortunately only use Eclipse for internal projects.

    Missing Features: This is sometimes a real pain. When I have to go to the SAP GUI to run certain steps, I often stay there.

    This is especially anoying for features like inheritance. Do you know if there are any plans to have (ctrl + 1) support for method redefinition, or to see the parameter from the super class?

    Regarding the WebDynpro Support: I think/hope this feature will be released in near future ๐Ÿ™‚ .

    Best Regards

    Daniel

    (0) 
    1. Adam Krawczyk Post author

      Hi Daniel,

      Good points mentioned. Benefits of eclipse are even greater if we start to use keybord shortcuts regularly. I hope ABAP in eclipse will involve, what we have now is a lot but of course we expect more. I do not know about future plans as I just use eclipse and not create ABAP tools.

      Regards ๐Ÿ™‚

      Adam

      (0) 
  10. Uladzislau Pralat

    Hi Adam,

    Eclipse might be fast and effective if ABAPer is doing massive new development. It is really depends on ABAP shop. Many ABAPer are doing just system enhancements and modification. These kind of ABAPers spend days to figure out which few lines of code needs to be changed to achieve a desired functionality. In this case eclipse will not give any development performance gain.

    Regards,

    Uladzislau

    (0) 
    1. Matthew Billingham

      But if it doesn’t give a performance hit, why not use it? Instead of the work taking 8 hours, it’ll take 7 hours 56 minutes! Also there are things you can do in ADT that you can’t through SAPGui.

      (0) 
    2. Ashwani Kumar Sharma

      Hi Uladzislau,

           With AIE, you will notice that time you require to analyze code and find relevant code will be much less. Search, Forward Navigation, Short Cuts etc will help you to acheive the same. This will eventually help all ABAPers.

      Regards,

      Ashwani Kr Sharma

      (0) 
  11. Thomas WรœRCHER

    Hi, Adam!

    I just stumbled upon your article and – first of all – would like to thank you for the comprehensive, structured evaluation approach, which I personally miss in many articles on that topic.

    What I cannot share is your enthusiasm on the “next generation” development environment that SAP offers with the Eclipse platform – let me tell you why: In the recent years SAP tends to develop (or buy) new products and technologies that it than tries to sell to its customers with the “future proof, next gen” seal of quality. Portal, Java EE, SUP – many of them thought to replace older technologies like WebDynpro Java/ABAP for Dynpro, BPM for Business Workflow, BRF+ for BRF – just to name some.

    I don’t think that SAPs customers appreciate this ongoing wave of innoviation, because it often brings more problems to them than business benefit – introducing new software components in their landscape, train their inhouse staff, find experienced consultants, overcome initial bugs a.s.o.

    SAP once was known as a product of high-class workmanship that can be built-on for years – just remember the famous R/3 4.6 ERP version. Customers invested into it and the had the real chance to get a ROI just by the fact of technological continuity.

    Nowadays, the waste dump of previously hyped “outstanding innovations” becomes larger and larger (Guided Procedures, Composite Applications, Web Dynpro Java) – and if I was a decision maker I would think twice about taking another risky investment into a new technology just to get the same result as with a toolset already in use.

    Regards,

    Thomas

    (0) 
    1. Adam Krawczyk Post author

      Hi Thomas,

      Thank you for your comment and good points mentioned.

      In fact SAP does not force to use eclipse as everything that exists in SE80 will stay, they say. So it is ok to use it still by company to not introduce new risk. But if we expect new tools, easier navigation and more efficiency in the end, there is option for eclipse.

      Until now SAP certailny was putting a lot of time and money to create own editor that was already given on the market. It looks like now they just work on integration and take advantage of existing solution.

      And finally in IT world if you do not move forward, you never stay in place but rather move back. That is why I think there is always a place for innovations.

      Regards ๐Ÿ™‚

      Adam

      (0) 
      1. Custodio de Oliveira

        Adam Krawczyk wrote:

                               

        In fact SAP does not force to use eclipse as everything that exists in SE80 will stay, they say.

        Yes, what is in SE80 will stay, BUT… new features are being added to ADT but not to SE80. I was very sceptical of using ADT when launched, but now I a) am convinced it’s a better tool (especially after the new features launched last week) and b) realised this is SAP’s priority as IDE and you will HAVE TO use it because some features will only be available there.

        Cheers,

        Custodio

        (0) 
  12. Custodio de Oliveira

    Hi Adam,

    Very good blog. By the time you wrote it I was not convinced Eclipse wins, but was finding it hard to arguee againt it. Now I am convinced.

    Regards,

    Custodio

    (0) 
  13. Thomas Thullen

    Hello Adam,

    nice post, thanks. I’m also trying ADT right now. Installation was very easy. I work with SE80 for 17 years now and saw many improvements, especially for the ABAP editor. Most people say, it looks old-fashioned, but does that really matter? Developing is not only coding but also handling dictionary objects, RFC connctions, services and much more. With SAP-GUI based development everything is in one place. That’s what I loved from the first day on.

    I also see some benefits using ADT, especially more flexibilty, but I guess it will be a very long way since ADT is as powerful as the SE80 environment. But I will keep an eye on it ๐Ÿ™‚

    Also very interesting the input from Stephen Johannes. I’m not convinced if development in a browser (“code anywhere”) is the way to go. Sounds nice first, but it seems browser versions and features are changing faster than I change my clothes and many companies are very careful releasing new browser versions for all users. The main problem, I see here, is that you will be totally dependent on the browser.

    I agree that development will get more complex in future. ABAP only will be not enough in many cases. But since now I can’t see the “golden way” to go.

    best regards

    Thomas

    (0) 
  14. Hans-Joachim Strรผbig

    Dear Adam,

    thank you very much for this blog, the tips and the controversial discussion. For me as a old-fashioned developer it is obvious to give new approaches a chance. Editors and browsers are often seen as a religion – for me – it is only a tool and a matter of personal preferences.

    Best regards…

    …Hans

    (0) 
    1. Luรญs Pรฉrez Grau

      Some guys are working in Eclipse for a long time, I started 1 month ago and I’m quite happy with it, the main problem is the Netweaver version, most of the customer are in too low SP to use ADT.

      (0) 
  15. Otto Gold

    Very interesting read. Useful overview for the newcomers for sure, but I was more interested in the discusssion, including the sceptical opinions ๐Ÿ™‚

    cheers Otto

    (0) 
  16. Peter B.

    Hi @ll

    I`m working on SE80 (unfortunately Old SAP/System ECC5.0) since 8Years … Stepping up from SE38 to SE80 was a huge improvement at that time … (by the way does someone knows the speed and functionality from Eclipse at that time ??? maybe they didn`t differ that much, hmm well maybe thump up for SE80 in speed *g).

    I`m unhappy that SAP makes the decision to have more focus on Eclipse than on the SE80, I`m sure should they could have equip  the SE80 with “every cool thing”that Eclipse now have …  I have to admit I have no experience with AIE ( I` tried Eclipse / IntelliJ for my Java development at home => ended up with INTELLIJ … neither I`m not a Fanboy for my choosen IDE, nor I need that discussion..).

    hope SAP will reconsider it`s IDE Strategy …

    (0) 
    1. Paul Hardy

      I can’t let this one go – there have been so many posts like this.

      The basic thrust of your argument against Eclipse is along the lines of “I have never used it, but I don’t like the look of it, it’s DIFFERENT, so I have decided based on no evidence whatsoever never to use it, and SAP should change its stategy accordingly”

      That is like going to another country and refusing to eat the food because, although you have never tried the food you claim you don’t like the taste.

      You would get a lot more respect if you said “I have tried ABAP in Eclipse, and in my opinion it is worse than SE80 because of (a) (b) (c) etc…”

      Also the comment “does anyone know how fast Eclipse is? I don’t, but I bet SE80 is faster, so thumbs up for SE80“. You don’t know but just jump to a conclusion anyway?

      I am also a bit puzzled about the “switch” from SE38 to SE80? I think you will find SE80 is a bit older than 8 years – without SE80 how did module pool programs like VA01 get created?

      For the record I have tried ABAP in Eclipse, and there are areas where you can do things that just are not possible in SE80 – the code completion for local methods and refactoring tools are just two examples. This blog gives a bunch more as do many more blogs on the internet.

      Indeed SAP could rebuild Eclipse features inside SE80 and have been doing so for some years, I imagine they have decided it is easier to use Eclipse in the first place and then you get new Eclipse features automatically rather than having to rebuild them in ABAP each time.

      Now many people say that Eclipse is not the best IDE e.g. “Sublime Text” gets a lot of attention but the debate here is just about SE80 vs AIE.

      In conclusion it appears to me that all the bloggers coming out in favour of AIE have actually tried it and used it in their day to day work, and all those coming out against it have never tred it even once.

      When the day comes when your company has a high enough system to try AIE I beg you to do so. You may be pleasently surprised.

      Cheersy Cheers

      Paul

      (0) 
    2. Thomas Fiedler

      Hi Peter,

      you also have to consider that with ABAP alone you will not be able to implement modern business applications these times. So you also have to learn new programming languages like HTML5, Java Script, SQL Script in order to build performant apps for any devices. With Eclipse you have a tools platform in hand where all these new artifacts can be maintained.

      Regards,

      Thomas.     

      (0) 
      1. Stephen Johannes

        Yep.  Eclipse works perfectly to reduce the costs for SAP, but SAP failed to consider things like corporate proxy’s, lack of a data dictionary(instead of a SE11 hack), new security objects in the overall TCO of having customers use Eclipse.  I agree SE80 is not a better alternative.

        The biggest problems with Eclipse as delivered

        – The installation process only works when you aren’t behind a corporate proxy.  I had to install the AIE at home, because the install process is not ready for corporate networks.  It’s a bug in Eclipse itself and thus we are stuck with the bad decisions of SAP for not making sure it would install easily in their customer environments.

        – Where is the data dictionary? The whole calling the SE11 in the SAP GUI is unacceptable.   That’s a pretty kludgy solution delivered by SAP and no one should give them a pass.  It’s almost 2015, if you want to deliver a modern development environment, then making calls to SAP GUI screens should not be part of it.

        – Where is the support for the IMG?  I develop extensions to business applications.  I shouldn’t need to go into the SAP GUI for development work if you ask me to develop in eclipse.  Once again it’s a failure by SAP to properly get rid of the SAP GUI.  Three to Five years is enough time.  I don’t want excuses on why this isn’t possible.

        – Package based navigation is not how people work. ABAP developers don’t do their work like java developers by package units.  It’s not going to happen until SAP re-writes all the poorly written code in ERP not to be spaghetti code.  If you are providing tools to support, then we need navigation.  Honestlly the whole tool is a kuldge, since you “create a project” to connect to a system.  If you want people to work like other languages… then why not actually let people create projects that represent CTS projects instead of system connections.  That would actually be more powerful in gather/collecting code.

        (0) 
        1. Uwe Fetzer

          Hi Stephen,

          regarding Proxy: yes, you are right, this is a huge Eclipse problem. But in most large companies you are not allowed to install software from outside of the company anyway. SAP is providing a solution for an inhouse Eclipse update side, which is IMHO the right decision.

          SE11: stay tuned.

          IMG: SAP is not developing the system from the scratch. If you need IMG actions, just call the needed transaction with <alt>-<f8>. I don’t see the problem here.

          ABAP developers don’t do their work like java developers by package units.

          But to be honest, they should finally learn to properly use the package concept. No offense intended here.

          (0) 
          1. Stephen Johannes

            Well it’s nice option to provide an inhouse update… but since I have install eclipse and SAP GUI you just made my landscape more complex rather than simple.  I know how much of a pain distributing the SAP GUI is and I know how much of pain it is distribute new software across windows machines.  My view of this is not from a developer, but from desktop support standpoint.  If you only have a few developers in your company… well it’s no big deal, but several developers that is an issue.  I don’t see any problems with the individual install method.

            I have no issue with the package concept… but that assume you don’t have 15+ year old ERP systems despite being on the latest release still have a lot old stuff in them.  The other problem is SAP’s own organization of packages is horrible.  I mean would anyone look for a “BAPI/table” using package names.  Most people know individual artifact naming conventions and package organizations change often between releases/support packages.  I’m keeping on open mind here, but I plan once I get the “new security” required to use AIE in my landscpaes, to figure out what doesn’t work and works for my most common development tasks for production support.  I just feel that the tool was geared towards java developers who want to write ABAP, rather than existing customers who pay double digit maintenance fees.

            Take care,

            Stephen

            (0) 
            1. Stephen Johannes

              Hello it’s 2015 and why is SE18/SE19 being launched in new SAP GUI windows inside of Eclipse?  BADI’s are a major part of my daily workflow in terms of troubleshooting and meeting new requirements.  Why would SAP deliver a new development tool that can’t handle this natively.

              Also the search for development objects outside of packages is just way inefficient when working with a real system.  Seriously… a free text search with no restrictions on the type of object.  How could this be missed?  That’s a big mistake.

              Another big issue is that the system libary is by technical name.  What happened to the application hierarchy?  You know the area that list things by functional area?

              Take care,

              Stephen

              (0) 
              1. Uwe Fetzer

                Regarding the search:

                /wp-content/uploads/2015/01/scn1_620473.png

                /wp-content/uploads/2015/01/scn2_620495.png

                For all the other things: wouldn’t it be more polite to just ask the team whether they plan to implement these functions in one of the next releases? The chances to get an answer are much higher I think.

                (0) 
                1. Stephen Johannes

                  I’m little shocked that I provided actual constructive criticism of features missing two years later after this blog was written and  I must ask is SAP paying you to promote Eclipse or do you have a financial interest in SAP?   How is saying that it doesn’t support my workflow being too critical?

                  I feel like this promotion of Eclipse is like the story of the Emperor’s new clothes.  I mean in two years since 2013, is it not unreasonable to expect Eclipse to cover 100% of all common stuff(except dialog programming).  It’s a under-delivered product and two years was more than plenty to finish up/complete all the major gaps.

                  Take care,

                  Stephen

                  (0) 
        2. Daniel Ruiz

          hi Stephen,

          which kinda of issue you had installing eclipse plugins behind a proxy? – I installed them a few times in the customer site behind a proxy and I cannot recall being that hard.

          about the Data Dictionary, I believe the AiE team will look into this soon.. in fact, I think eclipse attracts more people using OO and I simply cannot understand the ‘Data Dictionary’ in a OO perspective.. – you have a few primitive types which will become classes once you wrap the primitive, so you effectively work with only a few elements, and pretty much ONCE.. why even bother this much?

          and after two years, there has been some stuff added into AiE, of course not as much as people would expect.. for instance, there is no generate getters and setters, which is a pain in the *** – but IMO, that’s also great in the other hand.. whoever I’ve met who can actually use AiE can code, while SE80 folks.. they cannot even distribute artifacts into packages correctly based on my experience, they usually have no idea of which Basis version they are and all the new additions syntax wise, etc..

          in the past, the AiE team was pretty cool to create polls in order to have some of the community to help them decide what to do next, in terms of features.. perhaps, you should leave your opinion there, might as well make some difference.

          Cheers,

          D.

          (0) 
          1. Stephen Johannes

            Uh… the data dictionary is the heart of the system in terms of applications.   You need tools to structure/build complex data types to avoid class local definition of this stuff, simple reuse right? You should tell SAP to get rid of the data dictionary completely, it would definitely be progress ๐Ÿ˜‰ .

            In terms of feature request it’s simple, replace SE80 and don’t launch the SAP GUI at all in eclipse except for program execution/debug. Don’t you think an organization of the size and scale of SAP could deliver a complete solution in three years?  It’s not too much too ask.

            (0) 
  17. Gregory Misiorek

    Witam Adam,

    thank you for posting this blog and from the number of comments i can see it has been a hit. since i need to jump to eclipse soon i was wondering if there’s a simplified version how to get on Kepler or Juno and start using those environments for ABAP editing. i may have already some libraries installed, but i haven’t yet seen any ‘prerequisites’ lists or blogs that would let me get on board quickly.

    Pozdrawiam,

    greg

    (0) 
  18. Ioan Constantin

    I just tried today to work with Eclipse and unfortunately I must say it is very very very slow. Not only that, but I am also missing a lot of information that SE80 shows me directly. I am a C programmer and worked with C editors but never with Java.

    It’s not possible only to work with Eclipse … you also need SAP GUI. I find such a programming manor very slow and inefficient … sorry. Would definetly try another editor as SE80 but SAP needs to decide first! ๐Ÿ™‚

    (0) 
  19. Attila Berencsi

    There are new features released. Good news! I’m working at customer site, actively dealing with enhancements. There is a possibility to open SAP GUI sessions/screens in eclipse tabs, but really not the same experience. There are more transactions,which I need durring my developer work. The layout of these transactions cannot be pushed into eclipse tabs, would much harder to use. So I can use it only paralel, but for editing ABAP code in eclipse is really good. Lot of people start trying to replace SAP GUI with eclipse, but eclipse is not a UI technology like SAP GUI. It is a development environment, like SE80. SE80 is one of the thousands of transactions implemented as GUI applications. Eclipse can’t replace them. Of course developers requirement is to be able execute all their tasks within one environment. This is an absolute good expectation, but the transition cannot be done in one day, and jumping back and forth from eclipse to SAP GUI can be annoying, missing the navigation capabilities existing within SAP GUI. Decision should be based on developer activities, and their coverage by ADT. There are features available only in ADT. This for example dump feeds for the code for which you’re responsible, which is very cool in my opinion. At customer site, I work on SAP GUI, BSP, WD, FPM and Fiori UIs. Very separated and not integrated for me, to use SE80, ADT and SAP WebIDE at the same time, even for the same application, since SAP discontinoued to support UI5 development in ADT. I need to implement the service in SAP GUI, implement the CDS View in ADT and the UI in SAP WebIDE for a the same simple application. It is really difficult to manage working on several projects and development requests paralel such way. In this situation, I’m under a constraint to use eclipse, at least for CDS views. ADT is day to day better, but for end-to-end application developments not ideal/applicable for the time being, at least for my requirements. In SAP standard development the case is different, every developer is responsible for a small dedicated really specific area, and does not need to use so much tools at the same time. I found SE80, ADT and SAP WebIDe all fantastic, but they are separated, and not integrated to support application development from A-Z.

    (0) 

Leave a Reply