The ABAP wishlist from the community
Hi everyone, a few days ago I asked myself what I want to archive in 2019 and also reflected what I have done in 2018. Thinking about that one part also was what I expect from ABAP and all the related stuff around it.
And because I have some wishes I also thought ask if someone else have a wish which I do not see or even do not see as problem.
And as you may know, a lot of my blogs are designed with bullet points and because I like best practice I stay with it 🙂
1 A Boolean – a real Boolean
When starting with programming (long time ago) I can remember one sentence from my teacher. Always use a Boolean when possible. Do not reinvent the wheel. So this is a wish, I also have, because the Char Boolean is something which hurt me again and again. Not because it is named abap_boolean… a lot developers just put things like that in the coding:
IF var = ‘X’. ##notext … better example IF var = c_x. or even better IF var = var_x "(a few lines above) var_x = c_x.
This wish comes from James Wood
2 Official Editable ALV
Do I have anything to add… this wish comes from Jelena Perfiljeva and you got my vote:-)
3 Inline Declarations for Function modules (corrected.. Don’t drink and write)
Something which might be “easy” to add. This is something I do run in frequently, because I always think it’s there. Thomas Fiedler maybe you and your team has some time left next year 😉
Christian Drumm want this and a lot others for sure also (including me)
4 LHS (Left hand side) Deklarations
Have to be true… never used it in my other languages, because I never realized how awesome the construct is. Never felt a lot of pain to declare different constants, but yes, right now I know how LHS work and what I could do with, I miss it here;-(
This wish comes from Raphael Pacheco
he also provided a link to learn a more https://en.wikipedia.org/wiki/Immutable_object
5 A new Dynpro Painter with Events
A huge wish, but hey, think beyond is my personal mindset and I think also the mindset of Bjoern Goerke
So, what do I expect from a new painter. We do not need to develop everything new… SAP and Microsoft are partners and Microsoft can learn a lot from SAP, but also SAP can learn from Microsoft. I recommend before developing the dynpropainter have a look into the dotnet-IDE . This painter is just awesome.
The webdynpro painter is better, but still far away from this. So please do a painter for the next generation… maybe with the cloud, for the cloud
This wish comes from me.
6 Overload for Methods
That’s something I really really really miss. Way back when I have done my ABAP-Certification the trainer said something like: “We decided to not implement it, because we haven’t seen an advantage here”
This statement wondered me at that time and still wondering about it today. So why do we have optional parameters and returning parameters and more over preferred parameters, but no overloading…
Without overload we mix different things in one method implementation which make code not good to read, not good to enhance and not easy to understand. This should be enough reasons to go for it. Of course, we and I can live without it, but please, whoever is responsible to make it happen.. maybe Karl Kessler ?
go_example->do_something( var1 ) go_example->do_something( var1 , var2) go_example->do_something( var1 , var2, var3)
Again, a wish from me and from some colleagues which aren’t around here…
7 Console applications with input-parameter support
I cannot write down here how much I love the ABAP-Console. I use it frequently and also do a lot of presentations with it. Not because it’s so much better than a write-list. No, it’s because it is build in my Eclipse installation and the examples are just there. No need for a second UI… That make presentations so much smoother and of course, if there is a dump… wanted or not it stays exactly where I want it.
Buuuuut, I would love to have also input parameters.. imagine what’s possible
“The secret of ABAP island: LeEclipse Revenge”, “ABAP Wars” or even “What should I code tomorrow questionary”
ok, more serious, you know what I mean and that would help a lot for mock ups or even see how a coding line works together without having all the UI-Problems to test it more flexible.
My personal “please come true” wish.
8 A better comment function
This is something I even did not think about. But after I read it I recognized that it could be really better. Why not have a plugin for eclipse, which give you the chance to navigate direct to the ticket in your ticket system. At least if you use Solman it could be an enchancement to the tooling.
The wish comes from Renald Wittwer with this information:
My wish since years: A better comment function. With links to other objects (Mails, Incidents, Word Documents…). I see a changed code, click on the attached document an see the reason of the change.
9 RFC and dynpro-support in classes
Ok, now that I’m not sure about wish number 5, maybe this could come true.
A wish by Enno Wulff
10 SCP-Account for every SAP-System by default
Is this still ABAP-Related.. I don’t know, but ABAP is in the cloud, so I want to make use of it. But atm it’s not easy to start with, because the customer (also the new ones) need to put extra money on the table, which is perfectly fine for me, but should be direct in the start-price included, to also make use of all the different possibilities to keep the core clean.
A wish from every ABAPer around the world, at least those who want to get the hands dirty with all SAP give us to play with.
What do you want from ABAP. What have we missed. Comment with your wishlist. Just when we as community share our wishes with SAP there is a chance to bring it in. I realized, that there are wishes I never have thought about and it’s awesome to see, that others have thought about problems (and have possible solutions) I never thought how to solve these.
That’s what I call an outstanding community. Going beyond while sharing and caring.
Merry christmas, happy holidays and we’re going to have an awesome 2019
priority number 1 : method overloading
Thank you for all the nice features you have spent to ABAP in the last few years. It would be so nice if you will extend the next NextGen ABAP and its environment with enclosed features:
1. Extended Object Name Length
Developers do waste their and other developers time by finding / reading cryptic abbreviations for coding artifacts ( e.g. class / method / FuMo names). This waste can be stopped if the naming restriction for development object will be extended at least to 60 digits. Especially in test methods of abap unit tests this will bring a huge benefit for documenting test method behavior directly in the method name.
2. Downport SQL / CDS Test Double Frameworks to ECC 6
The most important progress in efficient unit testing is coming with the SQL and CDS Test Double Frameworks. Unfortunatlly these frameworks are only available in the latest netweaver stacks which are unavailable for the good old ECC6 where the main important music is playing for us in the next few years. With some systems we are already at the latest S/4 stack but our developers are working in both worlds. To increase acceptance and to reduce the steep learning curve it will be great to participate in this feature also in the legacy world.
3. Increase the Features for Acceptance of the ABAP Development Tool in eclipse
ADT is my favorite IDE for writing ABAP code. But unfortunately I am working most of my time with develops in brownfield environments with tons of procedural ABAP code. In this area I it is very hard for me to convince other developers to use this tool. Especially in departments where developers are working in both environments (S/4 and ECC6) they hate the "half baked" ADT IDE because of the missing feature support like:
It would be so nice if the complexity of which IDE the developer has to use for what kind of development can be reduced to a single IDE with all needed features included in to make the developers life great again.
4. Add a real Package based Namespace Concept to the ABAP Kernel
OK... this sounds like Utopia but dreams are still dreams and it will be Christmas tomorrow ... so thumbs up... within our huge custom code base we are working with namespace prefix tags to separate the development from each other. But using this prefix tag in combination with a custom namespace and some technical naming conventions can make it really hard to give the created objects meaningful names. In the worst case we have constellations like [:cust.namespace:]_[:technical prefix:]_[:prefix tag:]_[:descriptive name:] where up to 15 digits are blown away by conventions and only 15 digits are available for a semantic description of my object.
With a package based namespace concept, where the customer namespace will be the part of the first package of my package hierarchy, I will have the freedom for giveing my development objects names for a good readability and have the opportunity to use the same object name in different domain contexts (e.g. [:cust.namespace top level package:].[:sub level package:].[:object name:]).
Thanks Santa for taking care about this tiny wishes...
I wish all of you a merry X-Mas and a happy new year!
Wish number 3 / you mean this one implemented in ADT?
or do I understand something wrong?
Syntatic sugar causes cancer of the semi-colon so I will just ask to make the language more regular. I should not have to understand all those expressions, functions, operand positions to do expression oriented programming:
And I want to edit CDS in SE80.
Please. please please...
CDs in se80... Sorry, but I don't think Santa can do anything to help ?
Why not happy with eclipse?
If it was so easy, I would be using Marmolata.
I can maintain my Eclipse installation on my machine, but for many clients, I log into the private network and have no way to install software.
And I do see why we cannot even have at least display only for CDS in SE80.
Not sure if it helps in your case, but you could at least use transaction SDDLAR to display the CDS View in SAPGUI!
Thanks for the hint. I could fin the transaction on the Netweaver 7.52 demo but not on my client machines (Netweaver 7.50 SP09).
I am not sure about the needed prerequisites (or implemented SAP Notes) to make it running, but it is available on my current customer (Netweaver 7.50 SP11)
If you really need it urgently maybe it is worth the question to the software logistic guys 🙂
I actually have my poor man's viewer. But it cannot handle views CDS where SDDLAR has no problem... And editing is still on my wish list.
If blogs.sap.com would have a dislike function, chances would be good that the wish of "editing CDS in SE80" could make it to the top disliked comments 🙂 (no offense)
Moving to Eclipse is crucial for each ABAP Developer - enabling the editing of CDS in SE80 would be a step in the wrong direction.
Wow that is a great wish list. I have a very small wish
Haha, yes.. I also struggle with it. Also with the == instead of = while doing if conditions?
And I would like to have an event definition in ABAP as it is done by all other programing languages.
This will allow us to develop truly losely coppled component.
Hi ABAP community,
Happy new year to all of you. Unfortunately the ABAP-Santa was too busy over XMas to catch up the topics earlier.
So here at least some comments from my side concerning the wishes to the ABAP development tools.
1.) CDS Editor for SE80: Since a couple of years the message is clear: Eclipse is the way forward. SE80 is in pure maintenance mode. That means that all new feature will only delivered in ADT and not in SE80 anymore.
2.) New Dynpro Painter: For sure this is one of the biggest gaps in eclipse that we do not support the development of dynpros with native eclipse editors. Our focus is on web based applications via the Fiori paradigm. So our goal is to have a first class developer experience for these kind of applications based on the RAP programming model. Therefore we do not have any plans to offer dynpro tools in Eclipse.
3.) Editable ALV: The programming model around the editable ALV is error-prone and not documented. There are no plans to change this. So there will be no offical version of an editable ALV in future.
4.) Better comment function: I think with ABAP Doc we now have a much better concept in place. In the latest release we support now ABAP Doc Links. Maybe we can extend this concept with links to external sources like tickets in the future.
5.) Support for GUI/RFC in classes: Indeed we had plans in the past to support this as well. But currently I do not see remote method innovation in the near future.
First of all, good presentations back in Vegas. Really enjoyed participating on those.
A quick question on current ABAP strategy.
Currently, we are moving forward implementing Eclipse ADT right now as main IDE at the company I work.
However, there are some people mentioning there is a web based ABAP IDE currently begin developed that will replace Eclipse ADT as the main tool. Could you clarify if this is real? as it might impact our current strategy.
Thanks in advance!
Open dynpro fields for further enhancements. For eg. We got requests add a search help on a dynpro field which didn't have one. We got requests to change a field description on a dynpro field where data element enhancement was not feasible (check SAP Note: 440343 where SAP took care of it on a report, but not on the actual table definition). Such simple requests shouldn't require us to do a 'modification' of a screen.
is it possible to add to eclipse Package-tree descriptions of packages or other elements.
For now I can see in tree only IDs but not descriptions.
Depends on the release. Have a look at my screen:
What release are you showing?
This is a 7.52
But it's available since 7.40 SP8 I think. Thomas Fiedler can point it exactly
system generated variables:
Here is a feature I would love to have. I’m not sure if this makes sense but I’m gonna put it on the wish list anyway.
When we use function modules/class methods. The pattern should automatically generate the importing variables instead of the developer typing them in.
I’ll quote an e.g. from the SAP CRM system. There is this function module called CRM_ORDER_READ which is used quite often in the CRM system. Here is how the function module looks like:
In the real world you will not be needing all the IMPORTING parameters. But even if I need half the importing parameters it is a strenuous process to type in the variable for these importing parameters. If we can have a mechanism to generate the variables along with the function module I believe that would be a neat trick.
PS: what would also be awesome is to make this comment box bigger to write such lengthy comments
I'm with you. Do you know the option
Block Selection in Eclipse (ALT + SHIFT + A).
I love this option, especial when I need to copy a lot to a specific area. So you could copy the left side and put it on the right.
Here is a quick link with an example:
This option is available in the ABAP editor as well. Hold the ALT key and select the block of code you'd like to copy.
I've started using eclipse for ABAP extensively for the past couple of weeks.
This surely is a good option Mahesh. But wouldn’t comply with the general SAP naming standards I believe.
Yeah, agree with that. But still this solution is a lot better especially in the eclipse. Hope in future eclipse releases we will have this functionality you are requesting.
So, this year I haven't put a new wishlist on the table,, because I hope to get the wishes from the last few years implemented...
Or do you have more important stuff to get fixed... 🙂