cancel
Showing results for 
Search instead for 
Did you mean: 

Stuff SAP could easily fix - rant / wish list

Jelena
Active Contributor

Since SAP still has not opened any Idea-Place-like site for the improvement suggestions, this place seems as good as any to start a wish list / rant combination.

And I'm not even talking about big stuff like why there is no version control for the forms or why there is no billing status for the orders in the delivery-related billing scenario or anything like that. It's the "small potatoes" that I bet would take SAP all but 5 lines of code and some goodwill to make work.

For example, in SE80 I right-click on the report and pick Create -> Transaction from the menu. Even though clearly I'm creating a transaction for a report (did I mention I right-clicked on it?), it's still proposing 'program and screen' transaction type. Oh-kay... But even after I chose the right transaction type why on earth can't SAP fill in the report name here?

Hmm, which program could this transaction be for... How about the one that I've just right-clicked on?! Ugh...

Accepted Solutions (1)

Accepted Solutions (1)

JL23
Active Contributor

I wish they would fix all the links in their KBAs which are  pointing to OSS notes on  css.wdf.sap.corp... which cannot be opened by the normal folks.

Jelena
Active Contributor
0 Kudos

Good point. I'm also not sure why there is no easy way to signal documentation issues with the note  or incorrect links? E.g. Amazon has a link 'report an issue with this page' where anyone can tell them that product description is wrong and such. Does SAP really believe the customers need to go through all the trouble of entering an incident for that?

ErvinSzolke
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Jürgen,

I pinged the KBA Process Owner to look into this.

Cheers,

Ervin

JL23
Active Contributor
0 Kudos

Here is example, this KBA has links to 4 different notes and for all I get the error "host name css.wdf.sap.corp not resolvable" : 1915844 - How the system valuates a Goods Receipt for a Purchase Order

matt
Active Contributor
0 Kudos

Every time I see KBA, I automatically render it as a "Keep up at the Back Article", or, depending on mood, Kan't Be ...er... bothered...

Former Member
0 Kudos

when i see those i usually put in the 'websmpxxx.sap-ag.de' and that usually works for the 'released' notes.

Answers (52)

Answers (52)

former_member221827
Active Participant

The compiler is having a bad day and is tired of my crap.  I think I finally sent it over the edge.

Former Member
0 Kudos

Not yet "over the edge" I think. It's standing right at the edge, trying out the echo...

Jelena
Active Contributor
0 Kudos

LOL Chris - it's the SAP equivalent of "umbrella... ella... ella". I've mentioned a similar case in another post ("Coded humor", I think). I've seen quite a few of those, not sure what's the deal there. I wonder if might know.

While I'm here, here is another good one. When creating the background jobs in SM36 and adding the steps, my own user ID is always proposed by default. But in Production we never use the personal user IDs in the steps. Yet instead of remembering the last user ID entered, every step is proposing my own again and again. It's rather annoying when creating large jobs.

Actually it would be nice to see some improvements in SM36 UI overall, those screens must have not changed since the 70s.

Matt_Fraser
Active Contributor
0 Kudos

I think the idea is to encourage us all to move to the Redwood central scheduler tool.... why would we do that if SM37/SM36 were to actually have the needed functionality?

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos

A well know bug in translation of TRMSG that should be fixed by now (if I remember correctly, I was  one who reported it) ...

Former Member
0 Kudos

Have you tried SM36WIZ?

Cheers,

Julius

hardyp180
Active Contributor
0 Kudos

I just had a play with SM36WIZ. Apart from looking pretty I can't see how it is any faster, or involves less button clicks than the normal SM36.

It also didn't seem to ask me what user to run the job under, which was the point of the original post.

Former Member
0 Kudos

I understood the comment to be about ancient screens and more user friendly UI.

I speculate that SM36WIZ not being capable of changing the step user is that it's functional intention was a more user friendly way for non-admins to schedule jobs in the system without the ability to change the step user.

But that the job can be made periodic then contradicts this assumption so should not be there either and can be controlled via S_BTCH_ADM = 'P' ( SAP Note 1716340).

I also agree that the step user should be there because that can since the beginning of time be controlled via S_BTCH_NAM.

What IMO is also missing if it is meant to be an end user transaction is that the end user can select the program here. That is functionally equivalent to SA38 authorization to attempt to run any report. Correct would be to offer a transaction which checks AUTHORITY_CHECK_TCODE and is limited to report type transactions and parameter transactions for reports, such that the job then runs with the report behind the authorized transaction and cannot be changed to arbitrarily run anything.

Worth mentioning to SAP as an improvement opportunity as well.

Cheers,

Julius

hardyp180
Active Contributor
0 Kudos

I have a brand spanking new ABAP 750 system to play with and it's still doing the "umbrella" thing as in "the exception ZCX_STATIC_ELECTRICTY is neither caught nor declared in the raising clause of "I HEARD YOU THE FIRST TIME. THE FIRST TIME. THE FIRST TIME. THE FIRST TIME"

Credit where it is due, I like the fact the SE24 transaction has been changed to use the full width of the screen. Now if the same could be done for SE93 that would be wonderful.....

Jelena
Active Contributor
0 Kudos

I understood the comment to be about ancient screens and more user friendly UI.

It was just the last comment, I actually wrote about the user ID that defaults to my own in every step, even though we never use such user IDs in Production. In SM36WIZ I did not see an option to set a different user at all (I guess it's one of the solutions ).

I'll check on the parameter, thanks!

Former Member
0 Kudos

Ideal would be the option in the report transaction itself when choosing "execute in background" to make it more user friendly - but with S_BTCH_ADM = 'P' you can prevent the periodic options.

Nice for admins to make the WIZ more user friendly as a policy reminder would be table BTCOPTIONS prohibitive semantic -> admins cannot schedule jobs as themselves and must use a SYSTEM user and the default could be set as a preference in a user PID.

That would certainly help end users and admins from immortalizing themselves into the background processing.

Cheers,

Julius

Lukas_Weigelt
Active Contributor

I know it's my own fault, but still. I don't click around, I just tab tab tab <object name> F7... can't be bothered clicking that damn radio button everytime.

Cuneyt
Advisor
Advisor

Dear all,

just have read thorugh this interesting coversation and am wondering whether you cannot use the official "influence process" at SAP to submit your specific needs and where you actively can participate in a variety of other influencing projects we are currently offering across different SAP products and solutions.

I think it would be a great choice for you, helping you in addressing your need for quick and easy improvements. Here is the hyperlink to the dedicated space: influence.sap.com called "Customer Influence", a collaboration platform we are offering for all SAP customers of mainstream products. It is a chance for everybody who would like to improve his/her daily life and so influence SAP products. You will find all information necessary within the mentioned site. On the same platform, you may also address innovational needs on our products.

The SAP Customer Connection program is dedicated to be the channel for addressing improvement requests for SAP products which are in use already. More details about the program is also available at www.sap.com/cc, our official site with a quick overview, as well as on our SCN Space under

http://scn.sap.com/customer-connection.

As mentioned by other users above as a kind of "wish list", I recommend to take the opportunity and have a look there. It is for sure much more than just a wish list!

Hope you will use this chance provided in future as it totally fits to your needs.

Best regards,

Cueneyt Cam

SAP SE

Communications - SAP Customer Connection Program

Message was edited by: Cueneyt Cam Just forgot to mention our dedicated SCN space with further details about our Customer Connection program: scn.sap.com/customer-connection

ErvinSzolke
Product and Topic Expert
Product and Topic Expert
0 Kudos

small correction:

Jelena
Active Contributor
0 Kudos

Are you guys aware that Customer Connection is limited to the specific Focus Topics? The current and upcoming topic list is available here, there are only 6 of them total (out of the whole vast SAP universe) and ABAP ain't one of them. And new Focus Topics can only be submitted by the whole user group. It's quite a long shot for fixing a minor thing I've mentioned here.

I understand what you're saying about priorities, resources, etc. We have the same challenges when supporting SAP systems in our companies. But we ask our customers to put all their requests into the ticket system and we somehow manage make most of the changes they ask, even the small ones.

ErvinSzolke
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi ,

do you have a recommendation for minor change requests as pointed out?

Thanks and Regards,

Ervin

Cuneyt
Advisor
Advisor
0 Kudos

Jelena,

the SAP Customer Connection program already provides more than 800 improvements available for several SAP products and solutions across our whole mainstream portfolio. All you need to do is to have a look at www.sapimprovementfinder.com and search for the ones which are already delivered to our customers. May be there is the minor fix already you have been looking for?

On the other side, Customer Connection is the SAP way to address your minor changes on mainstream products - and believe  up-to-now there are various so-called "improvement requests" submitted to us already within the last few years. Most of them are of the sort minor changes which make the life for the customer much easier. As you already say, the way to collect these requests needs to be well-organized, structured and transparent for everyone so that the requests first express the customer's urgent needs on the one side (meaning that it is not a single request by one customer only - expressing the urgent need of the whole customer community) and that you are able to follow-up the status of your request at any time since you have submitted. That's why we simply offer you to go via your corresponding regional SAP user group or customer community who are well-briefed about the SAP influencing programs and are more than willing to help you in related activities. Means for you, contact related persons in charge in one the ASUG chapters or directly within the ASUG headquarter to help you.

The collaboration platform for influencing SAP products is called "Customer Influence" and is available at http://influence.sap.com. Everybody with a valid user account is free to drop-in there and influence our products and solutions offered currently. And if you don't have an user account, you are free and able to create one yourself - it's that easy! And there are currently many various projects already running and developing related improvements, besides the ones which are currently in the so-called collection phase were the speciifc products is open for collecting improvement requests.

I hope and believe that you have already a user account there and maybe also had a look into the currently offered projects where you can participate right now.

I strongly recommend to everyone who is in need of an enhancement or improvement to visit our tools as mentioned above as well as get more insights and information within our dedicated web pages under www.sap.com/cc or even easily on our SCN space under SAP Customer Connection Program.

Hope you will use this chance provided in future as it totally fits to your needs.

Best regards,

Cueneyt Cam

SAP SE

Communications - SAP Customer Connection Program

JL23
Active Contributor
0 Kudos

Long story but no clear answer (maybe I am just unable to find it in this text).

The influence.sap.com focuses on certain topic at certain times, this is well understood. But is it possible and wanted to submit an improvement idea which does not fall into those "focus topics"?

Cuneyt
Advisor
Advisor
0 Kudos

You are free to discuss such ideas with your corresponding user group/community and they can/will help you in how to act in these cases. In Customer Connection it is only possible to be involved in the currently provided topics (which are a result of these kind of discussions of customers with their user groups/communitties and the subseqent Focus Topic request).

So, this way projects are expressing the most urgent needs of our customers as a backing from others is automatically granted and the cooperation in the platform is a great opportunity to capture related feedback. Submitting single requests which do not fall into these focus topics is not possible.

Jelena
Active Contributor
0 Kudos

I'm curious - are there no ABAPers that work for SAP who ever noticed this? It's not some kind of a customer issue, it affects anyone who uses ABAP Editor to create a transaction, including SAP's own employees. Do they also go "ugh!" when they see that (and do they have some internal forum to communicate "we should really fix this")? Or do they always use only SE93 or some kind of jedi mind trick to create transactions?

Meanwhile in the ABAP swamps... SE91 prompts for the target language for the translation of every message:

Had to translate about a dozen of messages to Spanish today and enter ES for every single one of them. We only have two languages for cripes sake. Is it so difficult to remember the last one used?

Former Member
0 Kudos

AFAIK SAP does not use their own translation tools for their translations. There is an API for translation and they use an external translation service. Up until a while ago it had a hardcoded user and password in it, so you could also "dock in" and enjoy the ride... but I reported it and it was blocked. Sorry.

Anyway, that explains the general neglect of this applications user experience on the SAP side. Specifically for the popup, we found a way to set the value using session parameter IDs for the choice of the user and then you can get an overview of all translation status of a package and with double-click go directly to SE91 / SE61 into the translation dialog without any silly popups and clumsy things to look for or click on.

All you need is an Otto and then you will be fine..  😉

Cheers,

Julius

Jelena
Active Contributor
0 Kudos

Yes, "an Otto" might be a solution to many problems.

Went to check SAPLEXT program, the field actually has SPR parameter ID yet it's somehow not working even if I add an entry to my user profile. So maybe this one actually is an incident material...

Former Member
0 Kudos

Yep, Otto is way up there on the essentials check list along with toothbrush, passport and pocket knife.. 😉

The GET PARAMETER is not passed even if you set it and then asks again. You could probably report that but first check whether a note already fixes it beyond 7.31 SP 12 (which is what you are on).

Cheers,

Julius

OttoGold
Active Contributor
0 Kudos

*blushing*

davsamuels86
Discoverer

My favorite this week...Eclipse ADT, have an active working DDL/ABAP CDS view. click on CDS Navigator tab and get the message "CDS Navigator not available" Why? it works with some things but not others, and only when logged into a project. Where is the log about this? This is like the message "I dont know what happened...contact your system administrator" ...and I am the admin! //end gripe...

Jelena
Active Contributor

Just added an output condition record (MN04) and got this gem of a message:

Transportation is not defined for master data

Message no. VK251

Diagnosis

You work in Customizing. You maintain master data but the transport of master data has not been defined.

System Response

None.

Procedure

If you require the data in a different system, you must create the master data in this system.

As Trevor Noah says, "I have so many questions!". So am I in customizing or in master data? If "system response = none" then why am I seeing this message? Is message not a "system response" (am I hallucinating?)? Is "transport of master data" defined for anything else? E.g. I'm not getting this message in VD01, so why here? I'm just testing a form and don't care about any transportation, so why am I shown this (repeatedly)? And I'm not a wiz in English grammar but if I wanted the data in a different system, wouldn't I need to create it in "that" system, not "this"?

Somehow we survived till EHP6 without this message. Everyone with Google access knows that condition records can't be transported. If this communication was super-necessary then at least why not add "do not show me this again" checkbox? Do I really have to be reminded about something I already knew every time when I open transaction?

JL23
Active Contributor
0 Kudos

the resolution in KBA 2072050 - Message VK 251 wrongly issued

is even topping it: This message is for information purposes only and can be misleading to endusers. It is however correct for the system to issue this message and this is part of the standard.

matt
Active Contributor
0 Kudos

Sounds like someone raised the issue to support, and rather than address it, support decided to issue a KBA that is quite silly. I pretty sure that support are measured by how many incidents they close at first level. Unfortunately, some of them don't seem to be able to tell when the incident really should be escalated beyond their level of competence.

hardyp180
Active Contributor
0 Kudos

This is exactly what I was talking about with "for all entries".

Software Company X (SAP in this case, but they are far from alone) does something, it turns out to be incorrect/fatal/just plain stupid and people start complaining.

The last thing Company X is willing to do is admit they have made mistake. So they can't fix the problem, as that would be an admission they had made an error, which is viewed as the end of the world, despite the fact that no human being on the face of the planet can get through even one day without making an error of some sort.

So they document the error, making 100% sure that after they have explained the weird behaviour, they explain again and again that this is not in fact an error it is a desirable feature as in the quote above "it is however correct for the system to issue this message" which is a thumping great lie, of course it is not correct to output, what is, in essence, utter nonsense, to an end user. But, as we have seen, now it is viewed as a desirable feature to annoy the end users by shoving an annoying message which tells you something you already know, in very broken English, again and again and again.

Also if you fixed something that was obviously broken, but had been for a very long time indeed,  it would not be downward compatible, because a broken thing would start working properly and that would be a change in the behaviour of the system.

Jelena
Active Contributor
0 Kudos

Thanks for finding the note, Juergen. Wow, this is even worse than I thought. "We know you don't like it and it's not needed but it's The Standard, so bwahaha". Where is this "standard"? I really want to see it. Why does the same message not appear in VK11, for example? It's the same thing - create condition records. So what gives?

And the message itself doesn't even make any sense. I'm really curious what's the story behind this. Here comes material for another blog.

Former Member
0 Kudos

I know this behavior all too well, but my explanation for it is that the person you are talking to is not permitted to make any changes to any code... as a correction would require up-stream release compatibility.

If you insist, then quite often you see it corrected in the next release. Whether you were alone you will never know. Your message will be left to "closed automatically" after more than 5 interactions...

If you give up, then the 1st level supporter is probably as thankful to you as what you would have been for a solution because they don't have to talk to the real developer.

Solution (if you are sure that you are onto something): ask in a polite but authoritative way to pass the message on to 2nd level support. A trick is also to look in the coding for a D- or I- number and then search via SCN for the person's name (if they ever posted here), google them and then mention their name in the incident ticket. Eg. "Yeah, well... I was chatting to Engineer XYZ last Saturday about this problem when they came for a BBQ (our kids go to school together) and they told me to open this OSS note and it will be taken care of properly..." etc..

Just getting past 1st level support should be your primary goal in most component areas... 🙂

Cheers,

Julius

Former Member
0 Kudos

I don't want to provoke being called a "company man", but I think I can anticipate the sense in this...

Some customers treat some historical master data type objects as being sensitive enough and want to keep them consistent in the landscape (without dirty RFC connections...) that they activate the transport connection in transaction SOBJ for them.

SAP is giving you a "heads up" here that VK11 is going to change and is recommending it and there is customizing option to enforce it even, but via the weapon of choice (the transaction you use) you can still make your own choice whether to treat condition records as local or transportable data -> authorize the users accordingly.

I have seen the same in OKEON. It generally makes sense to transport this data, but it was not historically enforced. PFCG is the same now as well (transport connection to change roles in production can be activated, which deactivates it if that is what you have selected. Another popular example is bank master data in the treasury module - it is master data but with option for transport connection because of the sensitivity and need consistency.

Did you check the code where this message came from? There are often a lot of hints there which are more useful than the documentation... 🙂

Cheers,

Julius

Jelena
Active Contributor
0 Kudos

Julius, if you read the message it says there is no option to transport and no option to change this. The output conditions are not transportable AFAIK. There are some good reasons for that and it's perfectly fine IMHO. Specific issues with this message:

1) Inconsistency - it does not occur in other similar transactions. I gave VK11 as an example where the message does not occur. If this message had any value then wouldn't it be logical to add it to all such transactions? But that's not how it works. I guess the teams who worked on other modules realised it was not needed.

2) As I pointed out, the message verbiage is not clear.

3) Is there an actual need to display this every single time you go to the transaction? We can't transport this, OK, I get it, now stop telling me the same thing over and over.

4) WTF it's displayed in QA/PRD? We don't create transports there whether it's customizing or whatever. In PRD the only people who access MN04 are our business users. What are they supposed to do with this message? And again - every single effin time...

I can at least pretend to understand some things that SAP does and calls "the design". But this case just defeats any common sense. And what does SAP do when people get confused (like here) and eventually contact support? Instead of removing stupid message that adds no value they issue a KBA. Useless KBA for a useless message, wow.

Of course, I checked "where-used" for the message and I see what conditions trigger it. But it does not explain "the design". What could possibly be the business requirement for such nonsense? KBA does not say.

matt
Active Contributor
0 Kudos

I think KBA must stand for Kan't Be Ar...  er... bothered.

VeselinaPeykova
Active Contributor
0 Kudos

A few years ago I had to answer the following question during an interview (non-SAP related): 'What is the difference between an incident and a change request?'

My answer was something like that: "If a user is unhappy because a certain functionality does not work as documented, explained or agreed upon, then this is an incident. In this case the cost is OPEX and we need to fix that without expecting additional project budget.

If a user complains that a certain functionality does not work as he wants, but it works as designed, documented and explained, then this is a change request, which is CAPEX and they need to pay for an improvement."

The interviewer asked: "And what about the case, when a functionality does not work as expected, but the user is happy about that?"

Me: "I am yet to see a case where people are happy with what vendor XXX delivers for free, but if this happens, we will call it a feature".

I hope you get the idea.

Former Member
0 Kudos

How about the foreign client dependent edit function in the interface of SE16N? That was bad design, not really intended and everyone who found it absolutely loved the thing... so much so that for several years no one reported it...

Trying to understand the rationale for something is a completely different pair of shoes to agreeing with it. That also helps with keeping calm and moving on. That is the point I was trying to make...

Cheers,

Julius

Former Member
0 Kudos

Have you checked on Ehp8 (a.k.a. 7.50)? I don't get that message there anymore... seems like the pixie dust was already used to make it go away..  .-)

Cheers,

Julius

matt
Active Contributor

No matter how much authorisation you might have, you should absolutely not be able to delete your own userid.

Former Member
0 Kudos

And -surprise- in SapMarketPlace and SCN you can't. But in their product palette, SAP doesn't care

matt
Active Contributor

Guess how I found out about this feature!

It did make my colleague's day though.

Jelena
Active Contributor

The other day I had to wear my SD hat and play around with some copy control settings. Exhibit A below shows the VTAA transaction where we can configure how one sales document type is copied to another. Many other config transactions look the same way.

There are tons of entries in the table and "Position..." button (what's the deal with ellipsis? something left unsaid?) at the bottom is supposed to help navigate it. If you click it, the "Another entry" pop-up appears. Hmm, do I use "SalesDoc Type" or "SalesDoc Type"? Decisions, decisions...

Well, thankfully it doesn't matter much because only one of them works anyway. If you put something in the first type field, it will take you to the entry where this type is in the "Target" column. So far so good. But if you leave the first field blank and put something in the second field then it does not take you to the entry where that value is in the "Source" column, as one might logically expect. In fact, it does absolutely nothing, you can click all you want. It's not going to tell you that it doesn't work if you don't put anything in the first "SalesDoc Type" and that there is no option to search by the Source column only. Bwahaha.

Good thing I'm not some helpless SD consultant but an ABAPer, so I go to SE16 and simply browse TVCPA table there, like a boss.

Hopefully "the guided configuration" will put an end to this nonsense. Or will it?

VeselinaPeykova
Active Contributor
0 Kudos

In VTAA the helpless SD consultants use selection-> by contents and get some meaningful results with a few more clicks.

Speaking about decisions, this is V/06 and it is from the same popup.

This is not even a rant/wish... I foolishly assumed that the German translation will be better than the English one... in the English version we get only one identical set of choices there and I always pick the wrong one.

Jelena
Active Contributor
0 Kudos

Veselina Peykova wrote:

In VTAA the helpless SD consultants use selection-> by contents and get some meaningful results with a few more clicks.

Thanks for the tip! But OMG, it's the gift that keeps on giving.

Good luck looking for "Source" there because it's now called "From SalesDoc Type". By this logic "Target" should be called "To SalesDoc Type" but who cares about the logic. (And I'm sure the labels like "Data transfer FPLA" totally make sense to an SD person. Or a human.)

Question: what happens if you enter the document type and click the green checkmark in this pop-up?

The correct answer is... ding-ding-ding... NOTHING! Nothing happens. Because you need to click "Choose" button. But wait, there is more: [+] and "Append" buttons do the same exact thing. Why?!

hardyp180
Active Contributor
0 Kudos

Talking about buttons that do not do anything, looking at indexes on a database table in SE11 is always fun. In the pop up box listing the indexes, I am always tempted to press the green tick, even though I know it does not do anything, it is there purely as some sort of twisted joke.

Also you can create an index that is three characters long e.g. Z01, but I have a feeling that only the first two characters make it to the database, at least in an Oracle situation.

Jelena
Active Contributor

Another one I ran into again today: why are the translations for the report's text elements not added to the transport automatically?

Why do we have to add it to the transport manually or resort to some silly tricks (quite a few posts on SCN, e.g. this one)?

Jelena
Active Contributor

Back in the Bizarro world - in the infoset (SQ02) when trying to delete a table from the JOIN the following message appears:

... and the table does not get deleted. After trying deletion again and wondering whether I have gone insane (as doing the same thing and expecting a different result would clearly indicate) I realized the message just needed to be translated from SAPanese. Apparently in English this means that the table fields are used in a field group and first need to be deleted from there. Quite silly of me to expect that deleting table from infoset altogether would take care of that (or at least provide accurate information on the action expected from the user).

vwegert
Active Participant
0 Kudos

Also, you can never delete tables from a quick view join (SQVI) again...

Jelena
Active Contributor

Feel like reviving this old thread today - why, oh why SE16 keeps showing us this stupid message?

ABAP Dictionary type FLTP is not allowed for screen element

Message No. 37048

Uhm... What am I supposed to do with this information? I've only added VBAP-MATNR to the selection, it's not FLTP type last time I checked.

Before anyone asks - it's in EHP7 and all versions before that. I've been casually dismissing this message for about 10 years. At this rate I bet it will make its way to S/4HANA too.

P.S. Also if you go to the menu 'Fields for selection' but then change your mind and just close it without making any changes this menacing red message appears:

Abend during choice of selection criteria

Message No. MO450

Yes, and Guten Abend to you too! How thoughtful!

hardyp180
Active Contributor

I have just come up with four things which annoy the hell out of me in my day to day work and could be fixed in minutes by SAP development. That is never going to happen, but I thought I would share anyway.

When I create a database table, the system will moan and groan during activation  if I do not choose an "enhancement category". So I take the menu option to choose one and what do I get?

That takes the biscuit for stupid messages. A message to tell you that you have not yet done the thing that you are attempting to do, and that message never appears UNLESS you are trying to do that right thing.
If you do not do the right thing you can save with no warning at all. Is that crazy, or am I?

Next, if I have ten transport requests open, because I am working on ten things at the same time, and I take the option to choose a transport request - what do I get?

A tiny box, which highlights the numbers (the meaningless bit) and my name (which I already know, hopefully most developers know their own name and in this context you only get your own transport request) but truncates the text (the important bit). SAP has a fixation with numbers and GUIDS and hexadecimal strings. Does the enormous amount of hexadecimal numbers in an ST22 dump ever help anybody? If so, can someone tell me how? Anyway, how long would it take someone at SAP to make that box wider? I could do it myself in ten seconds but that would be a "repair" and hence naughty.

Next, if you have a custom table, and you want to be able to maintain it via SM30 (like in the IMG) then after creating the table maintenance, you might like to give a specific transaction to maintain just this table rather than giving users blanket access to SM30.

So you create a Parameter transaction, and at the bottom, what do you get?

A little box, thinner than a super-model, and when you try to enter values suddenly you cannot see both fields at once. That is such a pain. Once again, how long would it take to make the box wider so us developers do not have to keep scrolling from left to right, never knowing what row we are on?

Lastly, I note that when creating a view cluster, on save you are firstly warned if you have not chosen a "compare flag". Then if you choose one, and save again you get another warning this time telling you that you have chosen a compare flag. I am sure both warnings are valid, but if you pop seemingly stupid warnings (i.e. two choices, both seemingly wrong) in peoples face they just ignore them.

Anyway, good to get that off my chest. When "idea place" came out all those years ago I thought that would be just the place to report things like this, but I quickly learned that ABAP ideas (ideas that help developers) just got laughed out of the room.

Cheersy Cheers

Paul

Jelena
Active Contributor

Paul - ROTFL! Actually I don't even get the major significance of the 'enhancement category'. It's a custom table - if I need to "enhance" it I'll just change it. Can't it just be set as 'not classified' by default? Why do we even need this warning for every freaking table? And the message just reminds me of the scene from Kindergarten Cop. Thanks for the tip, SAP!

hardyp180
Active Contributor
0 Kudos

Oh yes, and when creating a view cluster, whatever name you give it you get the following message:-

Last I heard I was allowed to create tings starting with Z.

And then if I decide to cancel and not go through with creating it - I can't get off the screen. The BACK, CANCEL and EXIT icons all have the same effect as pressing the CREATE button. You have to blank out the cluster name and then you can leave.

bruno_esperanca
Contributor
0 Kudos

Some structures can be enhanced "deeply".

Example, a structure that you use for a web service. You can include other structures, with strings in them, etc, no problem.

Some structures can't be enhanced as much.

Example, a structure for a database table or something like that.

I believe this category is used to make sure no one makes a change that would destroy some database or something.

This is my suspicion, anyway.

Cheers,

Bruno

hardyp180
Active Contributor
0 Kudos

I don't think we have an issue with the concept of classifying structures and tables.

The point here is that SAP want you to make a setting.

If you do not make such a setting you get no warning.

If you TRY to make such a setting then you do get a warning.

That is insanity.

The person who designed this is either a sadist, or obviously mad, or does not have the ability to relate to their fellow human beings. All three are all too common in the world of computer programming.

hardyp180
Active Contributor
0 Kudos

By the way, using ABAP 750 and creating a structure using ABAP in Eclipse, it defaults to "NOT EXTENSIBLE" so better late than never.... at least for structures ....

Ryan-Crosby
Active Contributor
0 Kudos

I have come late to this game, but I have to say I laughed my way through the majority of the content this morning after it was bumped with a comment. This one has always annoyed me... doesn't the "Pass IDoc Immediately" imply a package size of 1 given the definition?

kevin_neale
Explorer
0 Kudos

I believe SAP is trying to force their "New" debugger on us. This is slow, clumsy, grabs and extra session from which you can easily get lost on which session is for what. What do people who use this do with their spare time while they are waiting for it to load.

I will keep using

/hset debugger=classic

to avoid having to use this waste of time and resources

Private_Member_7726
Active Contributor
0 Kudos

Please... just put the listboxes/dropboxes here and other appropriate places already

And generally (since there is no easy editable SALV...), I don't know how "easily" it would be done in Dynpro/Table control legacy (probably not that easy), but there are more than 10 years worth of questions on ABAP forum as to how to set up dynamic (differing from line to line) listboxes on Table Control columns... Some are even pretending that there is a solution, but nothing seems to work.

Former Member
0 Kudos

Jānis B wrote:

Please... just put the listboxes/dropboxes here and other appropriate places already

On the other hand, it may prevent easy cut&paste...

Private_Member_7726
Active Contributor
0 Kudos

*Sigh* you're right, I think. But in a "good software" it wouldn't, right?

matt
Active Contributor
0 Kudos

I'm doing a proof of concept for HANA expert scripts (AMDP) in BI transformations. The AMDP class name is generated and placed in $TMP. It has a different name in each instance as you transport it through. Presumably because it is generated, you can only put code in the PROCEDURE method. You can't add your own, private methods to modularise and encapsulate.

So I created my own Z AMDP class to contain procedures I can call. The problem here is that I can't reference the types of the generated AMDP class, because the name of the class varies across instances.

How hard could it have been to generate a class in the customer namespace, in a customer package that can be transported, and can have its own private methods? Why go for this so restrictive generation - is it only because that's how it's been done even when routines were written in ABAP, and no-ones had the wit to redesign according to modern techniques? Even though the opportunity was there since 7.0?

It's like the people who design these things assume that there will only be a few lines of code and, in fact, don't really know much about programming.

hardyp180
Active Contributor
0 Kudos

Here is one from yesterday.

When creating a data element you can use a domain, or can be lazy and use a predefined type.

I was lazy, and choose predefined type DEC.

The description of DEC is "Counter or amount field with comma and sign"

So you might expect this to allow negative numbers. Sometimes it does, however any sort of dynamic analysis of the data element e.g. POPUP_GET_VALUES will return a structure with the SIGN flag being set to FALSE.

The moral of the story is to always use domains, but it is a still a bug.

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos

Data elements and domains of the ABAP Dictionary have technical and semantic properties.

While the semantic properties have no impact on ABAP programs, they are evaluated by the classical dynpro framework (as UI5/OData frameworks evaluate CDS annotations).


GUI technologies such as classic dynpros or Web Dynpro are closely integrated with ABAP Dictionary.

If you look up the Semantic Attributes of Domains, you find:


If a data type of a dynpro field defined in ABAP Dictionary is numeric, the "Sign" attribute must be set so that negative numbers can be displayed on the screen. This attribute can only be specified using a domain.

Not a bug but a well documented feature ...

hardyp180
Active Contributor
0 Kudos

Microsoft also think that if you document a bug really well it ceases to be a bug and becomes a valuable desirable feature.

My favourite IT term is the "principle of least astonishment" which says that in an ideal world the behaviour of software should never shock/surprise you e.g. recently when people got a pop up box saying "do you want to install Windows 10?" and pressed the red X cancel button, they were astonished to learn that instead of cancelling they had said "yes" and the install had begun. Microsoft had to fix that one, though no doubt at the start they would have claimed this was a well documented feature.

If I picked up a box in the supermarket that said "chicken pie" I might reasonably expect that it contained chicken. In the same way if I bought a bottle with green glass that said "extra strong beer" on the front, and found out it actually contained water I would take it back. Possibly the guy in the off licence/liquor store would say "a-ha, if you looked it up on the internet, in our ten thousand pages of documentation you would see that it says that Extra Strong Beer sold in green glass bottles is actually water. So this is better than extra strong beer because this is a well documented feature". Or he might not.

In this case I wanted negative numbers (with sign) so I picked from the list of options the option which had "with sign" in it's name. If a chicken pie with no chicken in it is a bug, why is something that describes itself as having a sign, but does not actually, not a bug?

Or is a chicken pie with no chicken actually a feature? You call it "chicken surprise" and the surprise is there is no chicken.

It is rather like our old friend "for all entries". No one in their right mind would have expected passing in an empty selection table to cause the entire database table to be retrieved. When that happens they are astonished. If I gave you an empty list and said "bring me everything on that list:" you would bring me back nothing as opposed to everything in the world.

Nonetheless SAP refuse to acknowledge this as undesirable behaviour and so document this bizarre behaviour in great detail, magically making it a valuable desirable feature, and now we also have a code inspector check as well.

One possible alternative approach would be to alter the behaviour so that the "for all entries" behaves as any sane person would expect, but in order to fix a problem you have to acknowledge that it IS a problem in the first place, which is not happening here.

Cheersy Cheers

Paul

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos
One possible alternative approach would be to alter the behaviour so that the "for all entries" behaves as any sane person would expect,


You really propose incompatible changes in a downward compatible release line?


Just to mention it, in NGAP (Release 8.x), where we didn't had to care about downward compatibility too much, the behavior was changed and an empty table leads to an exception ...

hardyp180
Active Contributor
0 Kudos

Do I really propose an "incompatible" change?

Yes I do, and for this reason.

I put it to you, ladies and gentleman of the Jury, that no-one has ever intentionally passed in a blank table to a FOR ALL ENTRIES with the express intention of getting the entire database contents back.

It only ever happens by accident. If you wanted everything from the table you would have no SELECT criteria at all.

Moreover I am sure as sure can be that there are hundreds, if not thousands of "customer" programs out there with FOR ALL ENTRIES tables with no checks, that every so often get a blank table passed in and the TIME OUT or give wildly unexpected results. I found one in our system this very day that had been sitting there for ten years, a time bomb waiting to go off. I added in a check, just because it had never happened, did not mean it might not happen next week as it was feasible that a blank selection table could occur in some rare circumstances.

If you did introduce such an incompatible change in behaviour, for wildly illogical to logical, then suddenly a load of holes would be fixed overnight.

If you think about it when would you deliberately take advantage of the bug in FOR ALL ENTRIES and use it to bring back the whole table? SELECT-OPTIONS do the job far better.

I would imagine the whole idea of making things downwardly compatible would be to avoid the situation where something that works fine suddenly starts working differently.

Surely it is a different kettle of fish to fix something that has NEVER worked properly?

As an example, when I worked in Country X (named changed to protect the innocent) in the  legacy system there was not room for the totals of the report to be at the bottom where they logically should be.

So in the old system they were printed on the side of the report, at right angles to the rest of the report. You had to print out the report and rotate it 90 degrees to read the totals.

So when I rewrote the same report in SAP I proudly said you can now have the totals at the bottom, each total underneath the column of figures it was totalling.

The powers that be thought about it, and then asked if could I make SAP print the totals at right angles along the side, just like the old report, as that is what people were used to?

i.e. they wanted a downward compatible change to replicate something that did not work in their old system and so was worked around. They were very upset when I told them it could not be done in SAP.

How about a check box in all new programs with "make FOR ALL ENTRIES work properly" which is on by default for all new programs? Rather like what happened when "fixed point arithmetic" was introduced? Probably technically impossible for some reason or another, but would have been a nice compromise.

Cheersy Cheers

Paul

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos

To answer shortly:

  • You don't imagine how many fixes of  known ABAP bugs/pecularities and how many ABAP renewal attempts were already hindered by the downward compatible trap.
  • The checkbox would rather be a "clean ABAP" Checkbox and entail a little bit more than "FOR ALL ENTRIES works properly" (in fact I'd expect no FOR ALL ENTRIES at all any more). I am proposing that since long. But who am I? Only the documentation writer. Where are all the architects, customers, really demanding that? But I don't give up. Meanwhile, we have the technical possibility for ABAP versions for other purposes and maybe I will live to see a reuse of that concept for a "clean" ABAP version.
former_member182550
Active Contributor
0 Kudos

As far as I care,  FOR ALL ENTRIES emulates select options,  so it's not a bug when an empty table is passed and you get the whole world back.  You are placing NO restrictions on your select.  Simple enough to understand.

Rich

matt
Active Contributor
0 Kudos

Can you update the documentation for FOR ALL ENTRIES so it says "Don't use this unless you really really have to. Use a JOIN instead. It's usually better".?

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos

Thin ice.

Joins circumvent table buffering. FOR ALL ENTRIES in most cases not.

We'll declare FOR ALL ENTRIES as obsolete in the moment, we have that Problem solved.

Former Member
0 Kudos

Richard Harper wrote:

As far as I care,  FOR ALL ENTRIES emulates select options,  so it's not a bug when an empty table is passed and you get the whole world back.  You are placing NO restrictions on your select.  Simple enough to understand.

Richard,

Your logic does make sense.

However, when FOR ALL ENTRIES table is empty, the whole where statement is being ignored and not only the FOR ALL ENTRIES-relevant criteria.

matt
Active Contributor
0 Kudos
Joins circumvent table buffering


I use HANA. What do I care?


But FAE does have its uses and I'm not sure it can be entirely made obsolete. For example, in BI transformations, there are routines where we are supplied with a data package in an internal table. Often we have to enrich this data from db tables. FAE is perfect for that.



Jelena
Active Contributor
0 Kudos

  • Where are all the architects, customers, really demanding that?

They are right here, on SCN. What other channels do ABAPers have?

I've checked all the "customer engagement" etc. stuff - there is no ABAP track anywhere. As an SAP employee, you should have access to the private SAP Mentor Jam space (otherwise email Jason Cao to hook you up). In that space I created a discussion not so long ago on how can we get a function added in SAP because it seemed desirable to many customers (myself included). All I got was crickets.

I do agree with Paul that no one (except for Richard Harper apparently ) expects to pass an empty FAE table and get something as a result. And no, it's not like selection options where you specify the restrictive selection criteria, so if no criteria is entered it is quite logical that all data is selected (= I do not care to restrict my query, just give me everything). "For all entries" should mean 0 result for 0 entries. I wouldn't mind that changed retroactively everywhere. Somehow when my authorization stops working after a support pack it's "we fixed the glitch" and no one cares if it technically "broke" my access.

The reality though is that the business does not really care and SAP doesn't make any more money from ABAP, so this thread is as far as it will go, I suspect.

raghug
Active Contributor
0 Kudos

Shai Sinai wrote:

Richard,

Your logic does make sense.

However, when FOR ALL ENTRIES table is empty, the whole where statement is being ignored and not only the FOR ALL ENTRIES-relevant criteria.

Please don't change it, I like wondering why my program is suddenly slow and the sy-subrc didn't work after a FOR ALL ENTRIES with an empty table. Keeps me on my toes, and gives me another novelty to show off to ABAP newbies.

hardyp180
Active Contributor
0 Kudos

Two element have come in the "for all entries" which I would like to address.

In regard to FAE being like a select-option I would say there is both a semantic and a technical difference.

Semantically speaking a SELECT-OPTION is used in the initial database SELECT and if you were to phrase the request in the from of a sentence it would come out "I would like all the records in this table filtered by the following restrictions". If there were no restrictions (all select options blank) you would logically expect the entire table to come back.

With a FAE you are doing a subsequent read. You may have got a big list of sales orders, looped through the list and got a selection table full of material numbers. semantically you then say "for all of these materials, give me the material name". If there was no list of materials, bringing back any result at all would be unexpected behaviour.

Technically a FAE is more like a PARAMETER than a SELECT-OPTION. In the above example a FAE is rather like

LOOP AT material_table INTO material_structure.

  SELECT matnr makt

     FROM makt

     APPENDING CORRESPONDING FIELDS OF material_name_table

     WHERE matnr = material-structure-matnr

      AND      spras = sy-langu.

ENDLOOP.

When a parameter is blank, you would expect no record to be returned. If the table in the above example was empty you would expect the SELECT not to be called at all. as I mentioned before this is all about what you would logically expect as opposed to bizarre behaviour which astonishes you.

The next point is all about how databases work. About ten years ago I read in the SAP Press book with an Egg on the front about improving the quality of ABAP development, a highly technical explanation about how you should not do a JOIN on transaction data and maser data. In their example there were a large number of sales order items, 75% of which had the same material.

They talked about how in such a case the database would have to do far more work than it should have to do, accessing the name of the same material again and again. So they recommended doing a JOIN on VBAK/VBAP, getting a filtered list of unique materials, and then doing an FAE. They said this would lower the overall run-time.

I did a test (ST05) at the time, and the results in my system bore this out. Naturally, if the master data table was also buffered, as Horst alluded to, then it would be virtually mandatory not to have the buffered table in the JOIN, which is why you get a code inspector warning.

The caveat here is thus - I did my test two database versions ago. In the interim ten years have databases got cleverer and thus the original problem with joining transaction and master data has gone away? the guy who sits next to me says they are bound to have, but I just don't know. If someone does know, please tell me.

Lastly, Horst says I just cannot imagine how frustrating it is to go to the powers that be and say 'something is broken, can I fix it" and being told that fixing it is against the rules, it has to stay broken forever. In actual fact in one place I worked I found myself in that situation on a regular basis.

I honestly do not think the original intent of the "everything must be downward compatible" rule at SAP was to ensure that once broken, something stayed broken for all time. That is just an unfortunate side affect of blind adherence to a rule, obeying the wording of the rule strictly and not thinking about the original purpose of the rule.

UK singer Fred Wedlock said it best:-

"Jobsworth, Jobsworth, it's more than me job's worth. I don't care, rain or snow, whatever you want, the answer's no"

Cheersy Cheers

Paul

matt
Active Contributor
0 Kudos

It didn't used to be mandatory to have super->constructor( ) in constructors. It is now. Just sayin'... 

How hard is it to scan all uses of FOR ALL ENTRIES and see if there is any code that doesn't check for empty driver table, and that really is the desired functionality?

SuhaSaha
Advisor
Advisor
0 Kudos

Matthew Billingham wrote:

How hard is it to scan all uses of FOR ALL ENTRIES and see if there is any code that doesn't check for empty driver table, and that really is the desired functionality?

My 2 cents ...

You can define a "custom" code inspector variant which checks the following:

  1. Can FAE be replace by better performing JOIN?
  2. Are the relevant checks for empty driver table in FAE implemented?

The standard CI check variant 'DEFAULT' doesn't include these checks.

BR,

Suhas

PS: I am working on an ABAP740 SP12 system

Peter_Inotai
Active Contributor
0 Kudos

For super->constructor( ) at least there was a warning ().

From other hand a new statement or option would make more sense, instead of making FOR ALL ENTRIES working in a new way. Anyway JOIN is better most of the case, but there are some cases when it's not.

jrgkraus
Active Contributor
0 Kudos

In the ABAP editor (SE80), CTRL+D doubles a line. So far so good. But what happens, if you select a bunch of lines and then press CTRL+D?

Beautiful, isn't it?

I happen to tap into this trap almost every day...

SuhaSaha
Advisor
Advisor
0 Kudos
I happen to tap into this trap almost every day...

I have read it somewhere that SAP is not investing time & money on developing the SE80 Editor. So i guess you'll have to live with it or (still better) switch to Eclipse

jrgkraus
Active Contributor
0 Kudos

As far as I understood I can not use eclipse to create dynpro based applications, right?

raghug
Active Contributor
0 Kudos

Jörg Krause wrote:

As far as I understood I can not use eclipse to create dynpro based applications, right?

As of now, Eclipse does not have a mechanism to create screens, so it falls back to the older SAP GUI based screen editor. Once you create the screen, you can use Eclipse to write the actual code with no problem. I usually keep an instance of SAP GUI open to create the program (type M - Module Pool) and create the screens, and then work on the code within Eclipse.

The Eclipse group appears to be rapidly adding features and capabilities. If you read their discussion boards, they are also one of SAP teams that appears to be really responsive to user feedback. I wish that group would become a model for the rest of SAP.

FYI - to see the features that have been added recently see

Juwin
Active Contributor
0 Kudos

Don't know if this got reported yet, but:

The syntax of cl_gui_frontend_services=>clipboard_export, always confuses me. The method is used for exporting something into system clipboard. For this, shouldn't the method be importing data table from the calling program?

Thanks,

Juwin

raghug
Active Contributor
0 Kudos

Juwin,

I am pretty sure there is a field for exchanging data in the cl_gui_frontend_services=>clipboard_export as well as the import.

As far as rants, I guess this is not one...

Raghu

Juwin
Active Contributor
0 Kudos

Yes, there is a field. But, it is Exporting and not Importing, as one would expect.

Thanks

raghug
Active Contributor
0 Kudos

Juwin Pallipat Thomas wrote:

Yes, there is a field. But, it is Exporting and not Importing, as one would expect.

Thanks

Ahh, my bad, did not look at the functionality close enough. I was looking at it as the Exporting from Clipboard needing a export parameter, not exporting to the clipboard as it really is. Brings back memories of when first started in ABAP, where exporting becomes importing from within a function module. Perspective matters!

former_member186746
Active Contributor
0 Kudos

This has probably been mentioned before, but:

Why do you want to force me to use my SCN account when I try to access SAP Support Portal?

I'm a consultant so my S number has nothing to do with the companies I work for ususallly they provide me with one of theirs. My work around is that I'm forced to use Internet Explorer for raising incidents or searching notes.

Cheers, Rob.

matt
Active Contributor
0 Kudos

Exactly this! (Except I only have a P number).

hardyp180
Active Contributor
0 Kudos

I have been unable to log on to the SAP Support Portal since the new one started.

My crime was having these "certificates" installed on my PC which store one's "S" number details.

When I log onto the SAP Support Portal the following occurs:-

1. A message appears saying "you have been authenticated. Request is being forwarded to the target system". To quote from the film "Princess Bride" I would say that the phrase "you have been authenticated" does not mean what SAP thinks it means.

2. Then a certificate pop up box appears with my S number. I press the green tick.

3. After a while, the same box appears again with my S number. I again press the green tick.

4. After a while, I get a screen saying I cannot log into the support portal using my P number.

If I then try to log in manually using my S number once again, I am told my account is locked.

If I get BASIS to unlock my account, and repeat the process, the exact same thing happens.

Why does the system even attempt to log you onto the support portal using a P number when it knows this is impossible?

This is like my bank. I have two accounts, only one of which can be used t pay bills via the internet banking. When I go to the screen to pay a bill both accounts are there in the drop down? Why? Why give invalid choices in the possible value list? Even worse, the one that does not work is the default value. It should not even be an option, let alone a default. Then when you change it, and proceed to the next screen, the value reverts to the default and you have to change it again.

My bank cannot see anything wrong with this, the same way SAP cannot see anything wrong with attempting an auto logon with an obviously incorrect entry.

former_member186746
Active Contributor
0 Kudos

I also don't get the multiple pop-ups asking for credentials.

That's just bad design, detrimental to the overall user experience.


What's even weirder is that sometimes I log in the support portal using my own S number which becomes pre-filled by my browser probalby due to some cookie. Then when I click a note or a new popup comes up with another S number pre-filled by my browser and the website doesn't care and let me continue.

The only workaround that I have is to use multiple browsers.

matt
Active Contributor

In your position, I'd change banks pronto - if they can't be trusted with simple log in stuff, can they be trusted to keep your account secure?

Since I make money from SAP, I'm not going to complain too much, but what we're experiencing is not untypical. Some of the causes are

1. Inexperience

2. Narrow knowledge

3. Ignorance of how the users of the functionality actually use it

4. Lack of testing

5. Knowledge gaps

6. Bad programming

7. Bad design

VeselinaPeykova
Active Contributor
0 Kudos

S4/HANA - condition contract customizing:

Two vertical scrolls in a non-resizable popup... with absolutely unhelpful selection options - here is the actual screen:

Yes, I know, I can use SE16 to check which of all 773 standard conditions are relevant for a certain option, but this does not look like an improvement over what I can see in older SAP releases.

Jelena
Active Contributor
0 Kudos

Went to create a maintenance view for a Z table in SE11 today. I just wanted to add a description for one of the key fields from the related text table. It's been a while and I almost forgot what a treat that is.

On the Table/Join tab you can enter one table and there is an "informative" message in blue saying something about the relationships. It seemed like one of those fortune cookies that sound more like a mission statement, so I just ignored it and proceeded to click on the [+] button. At that point the message appeared at the bottom saying that tables must be linked with foreign key.

That part confused the heck out of me since I already added foreign key in the Z table definition. Surprisingly, the message did not go away after clicking on [+] button few more times. Oh well, I guess I'll have to read the long text:



Tables in the maintenance view have to be linked with foreign key

Message no. E2316

Diagnosis

The join conditions for maintenance views are derived from a foreign key relationship. For this reason, it is only possible to select a table together with a foreign key relationship.

It is only possible to delete a join condition by deleting the corresponding table.

It is only possible to add a table or a join condition with the function 'Relationships'.

Uhm, what? What is this "function" you speak of?


Some of you might already be ROTFLMAOing at this point, but keep in mind that the screenshot above was photoshopped to remove blank lines. On my 24" desktop monitor the Relationships button was not even in my line of sight. But after wandering around the menus and some head scratching I did find it finally. (What genius decided to put it there, away from all other controls?)

Why can't the blue message simply say "Click Relationships button to add more tables"? Why does the long text call the button "function"? Why are other buttons even available if they don't work? Why can't +/- buttons simply open the same pop-up as the Relationship button and avoid this whole dance altogether?

vwegert
Active Participant
0 Kudos

I've got a different bone to pick with the table maintenance generator, also related to post-1980s screen resolutions: Why on earth isn't it set to generate overview screens with a width of 255 columns, generate the table control with a width of 255 and vertical auto-resizing enabled by default? Instead, we get an absurdly narrow table control by default and either have to modify each generated screen manually or keep on scrolling all over the place.

hardyp180
Active Contributor
0 Kudos

Here is today's fun fact:-

In Web Dynpro I tried to define an exporting parameter as ABAP_BOOL and got an error message that told me in no uncertain terms "Web Dynpro does not support TYPE-POOLS"

Oh well, fair enough, so I defined it as BOOLE instead.

Then, having a memory like a fish, a few minutes alter in the code I set the exporting value to ABAP_TRUE.

No complaints, no errors, compiled and activated just fine.

Also, I notice in my 7.50 system that the code wizard in Web Dynpro generates code with lots and lots of DATA statements and no inline declarations. Tut tut.

Could this be a sign that Web Dypro ABAP is no longer getting the tender loving care it enjoyed before UI5 came along? I did notice at TECHED last year that on one slide that listed the various SAP UI technologies that WDA had been missed out - although the Floorplan Manager was there.

hardyp180
Active Contributor
0 Kudos

OK, the SAP Web IDE, which is supposed to be all about creating wonderful looking UI5 applications.

On the "Welcome to IDE" launch pad, on a desk top everything is scrunched up in the middle of the screen with acres of white space about it. So much for responsive design.

Then I click on an Icon like "create new project from template" and that takes me to the next screen with no further ado.

Then I get a screen, again mostly white space, with five more icons to choose from. Because pressing on an icon one second ago on the last screen worked I select an icon and press it. Nothing happens. You have to press the "next" button at the bottom. So much for consistency.

On the next screen I decide I have had enough of this and press the little "X" in the top right hand to cancel processing. I get asked "Are you sure you want to exit the Wizard?"

According to the rules of English Grammar there are only two possible responses to such a question - "Yes" and "No"

Instead I get "OK" and "Cancel"

Thus if I decided I do not want to Cancel I have to press the "Cancel" button.

So much for basic common sense.

SAP in all the presentations go on and on about how much they have changed in the UI space, how they use design thinking to get empathy with the end users,  and then they keep coming up with things like this.

Can anyone else see the disparity?

matt
Active Contributor
0 Kudos

Slightly off topic, but concerning design empathic with the end users - just listen to the weeping and wailing arising from the BW team, when they encounter the new web based master data screens in BI 7.4...

dave_price
Participant
0 Kudos

Haha, that still confuses me in SE38:

  • Coding
  • Hit Esc
  • "Wait ! Do you want to cancel?" Yes/Cancel
  • Errrr... I want to cancel that last command, so...  YES!
  • Uh oh.
  • Did I save a recent version? Arrrrrgh...
  • Going to need a new keyboard now too.

Fortunately I haven't accidentally deleted my code since my first year.  Or maybe my second.  Or maybe last week.

Anyways, just to be safe, couldn't they pop up an additional window to ask if I want to cancel the cancellation of my cancellation?

See this all over the place, not just in SAP, of course, I guess it's because the exits are typically  standardized.

The really sneaky one, though, is when it asks if you want to save when you create a version, "before exiting."  For quite a while I thought "oh good, I can version the code as it existed before I started updating."  I didn't catch on for a long time to the fact that if you don't save, it doesn't create a version at all ("Do I have a recent version?  Of course I do!  Uh...")

Jelena
Active Contributor
0 Kudos

Paul Hardy wrote:

I get asked "Are you sure you want to exit the Wizard?"

Always wanted to ask: what's the deal with all those "are you sure?" questions? Maybe I'm not so sure but I'd like to exit anyway.

Got another UI gem in SE01 today. I created a transport of copies and needed to release it. They are always created without a target but, of course, I tend to forget about it and just hit Release. Of course, I immediately get an error message:

Specify a transport target

Message no. TK893

Guess what happens if you hit Enter? No, it won't take you to the corresponding field, so that you could enter the target. It just switches to the display mode! What's the logic behind this? How can I enter the field now when it's greyed out?

P.S. In the same TOC release process if some objects are still locked in another transport (not unusual) a message pops up: "Not all objects could be locked. Do you want to proceed?" and the choices are... "Yes / Error / Cancel". Error button here shows a list of objects that couldn't be locked. Grammar-shmammar...

Message was edited by: Jelena Perfiljeva

former_member182550
Active Contributor
0 Kudos

<roflmao>

How many times have I done this myself!!!

Jelena
Active Contributor
0 Kudos

I'm wondering if anything has changed in this area since 7.31 and, if not, this goes right on my wish list.

It's not unusual (especially in DEV/QA) to go to SM37, check the job that's been completed and then have a sudden desire to schedule the same job but with a different variant or some other minor change.

What happens right now is I go to SM37 and am presented with this default screen:

Of course, here I just hit Enter because I want to check if my job ran successfully.

On the next screen, I see that the job is finished, so now I want to schedule it again and just put a different variant in the step. AFAIK this can be done only using the menu Job->Copy .

That's cool, but this menu only prompts me to enter the new job name:

After clicking Copy, it just takes you to the previous job list where you can only see the same, already finished job. Hey, what the heck happened? Well, it's because the Copy command only creates new job definition with "Scheduled" status and silly me did not check the "Sched." checkbox on the first screen (see above). So now I can't see the copied job unless I go back and check the checkbox.

The thing I don't understand: why can't the Copy command just open the job definition (in SM36) and let me make changes at once? Wouldn't it be the natural next step? Why would I just create a copy and leave it out there? Is there some trick around this that I'm not aware of? This whole  "screen dance" is rather annoying.

Also am I the only one who feels that calling it "Scheduled" status make no sense? When someone says "the fireworks are scheduled to occur on July 4th" everyone knows that, unless something happens, the fireworks will occur! No one would understand this as "the fireworks will not occur on July 4th if not released before that". But the "scheduled" status for the SAP jobs actually means that only a job definition was created. And the job is not going to run until it's released. The status should be Defined / Planned / Pending or something like that. In any case, don't call "scheduled" the job that ain't gonna happen. Pretty please.

Matt_Fraser
Active Contributor
0 Kudos

I have always thought the same thing about the use of the word "Scheduled" here!

hardyp180
Active Contributor
0 Kudos

Here is another stupid one.

In SU21 I am creating an authorisation object.

Not surprisingly I want to add in field ACTVT. It's not much use without it, but this field is not compulsory.

Anyway, I add the field, and then try to maintain the settings and then get "you cannot maintain those s settings till you have saved the object"

I then save the object and get the warning message "you have not maintained the settings!"

ThomasZloch
Active Contributor
0 Kudos

Isn't this like in any serious relationship, no matter what you're doing, you'll be yelled at anyway.

Thomas

Jelena
Active Contributor
0 Kudos

NUM and CHAR types are very much different, but I can move value 123 between the two without getting any short dumps. Of course, if I try to put ABC in a numeric field that will cause a short dump. At the same time 'C:\Temp' cannot be passed to the method unless it's declared as STRING. Rather strange logic.

The differences between STRING and CHAR are not relevant in the context where this method can be used. What values could we possibly pass to it? It can only take a pathname. I believe Matthew got it right - the parameter actually should not have been declared as STRING. We should be able to call it with both CHAR and STRING and not get a short dump unless the value cannot possibly be converted (like in case of ABC going into a numeric field).

In this particular case the design wasn't done by me, I was just trying to remove an old FM call that we should no longer use. Yes, I should've checked what's the declaration of the procedure parameter, but it wouldn't hurt either if there was a warning by syntax check. It totally could see that I was calling a method that required STRING and variable wasn't declared as STRING, so this could never work. It would've been nice if there was a message "hey, you might take a look at it". But again - even better, not using such finicky types when possible seems an even better option.

@Volker - you're exactly right. I'm also agreeing with most points but it does seem that the tool could've worked better here.

Thanks so much for all the replies on this - I learned quite a bit as well!

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos

Doesn't the extended program check Ctrl+F4 report the error?

Jelena
Active Contributor
0 Kudos

But you have to run the extended check to see it and who has time for that?

This might not be a great example because I was just adjusting some old program from another system with the management breathing down my neck. I chose to replace the FM because it seemed like a simple small change. (Obviously it's all Paul's and Matthew's fault for constantly nagging ABAPers here about "leaving the place better than you found it" and stuff. ) If I ran the extended check on that program I'd either have a heart attack or get an itch to make more changes. Which, as we all see now, doesn't end well. Excuses, excuses, I know...

vwegert
Active Participant
0 Kudos

Jelena Perfiljeva wrote:

The differences between STRING and CHAR are not relevant in the context where this method can be used. What values could we possibly pass to it? It can only take a pathname.

Let me linger on this point a bit - because, well, you don't want that. You don't want any kind of programming language that leaves the decision over what might or might not be relevant in any kind of context to the system, because the system can not infer "relevance". You don't want to maintain and debug programs where the system's like "Well I could clearly see that what you wrote was nonsense, so I went ahead and changed stuff a bit to spare you the short dump. Oh, that shreded some material data? Sorry, Dave."

Getting something syntactically correct is hard enough for most people. Forcing developers to specify a complete context with an unambiguous definition of relevance in its various scopes - no. Humans may be good, but not that good.

Jelena
Active Contributor
0 Kudos

Volker - not sure I'm following... It's not the system, it's the person who created that method who decided to use STRING type. But such choice just doesn't seem like a good idea here, given the limited purpose of this specific method.

Since more neutral CSEQUENCE type exists, wouldn't it make more sense to use it instead?

Jelena
Active Contributor
0 Kudos

OK, this one has been building up for a while.

For the life of me I cannot understand why CHAR and STRING types are somehow incompatible in ABAP?! They both are alphanumeric types, the only difference is that CHAR has pre-defined length while for STRING length is not specified in the program (naturally, some limit exists there but it is not relevant to my point).

So why the heck is it causing a short dump if we do this, for example:


  cl_gui_frontend_services=>file_open_dialog(

    EXPORTING

      initial_directory = p_path

    CHANGING

               [stuff] )

and forget that p_path is CHAR type and not STRING? Why does it matter?

It's not even caught by syntax check, you get it as a surprise short dump at runtime! WTF? I'd understand if it was the other way around and I was trying to push longer STRING into shorter CHAR (and even then - truncation, hellooo?). But the other way around - what's the problem?

Moving p_path into a temporary STRING type variable and using it instead in the method call solves this issue, of course, but it just seems incredibly stupid. Why does it matter if I use CHAR variable instead of STRING? It makes no difference whatsoever in the end result - "C:\temp" obviously is perfectly compatible with both types.

Please someone tell me this is fixed in 7.4 or 7.5 or at least S/4HANA.

Former Member
0 Kudos

Unfortunately, the length is not the only difference. You can't have trailing spaces in C types, for example, they are automatically stripped (which is handy for everyday use!) - whereas STRINGs keep trailing whitespace (which is also desirable in some cases). But you're right in that the type conversion sometimes performs less-than-optimal. I ran into some issues there as well:

Juwin
Active Contributor
0 Kudos

Jelena Perfiljeva wrote:

......

It's not even caught by syntax check, you get it as a surprise short dump at runtime!

......

Please someone tell me this is fixed in 7.4 or 7.5 or at least S/4HANA.

We are on 7.4, SP10. This is a syntax error in our system.

So, if I try to use cast, that also gives syntax error... why is that?

Thanks,

Juwin

Message was edited by: Juwin Pallipat Thomas

Jelena
Active Contributor
0 Kudos

"Never allow the facts to get in the way of a good rant". I checked a bit further on this and syntax error does not occur if the variable definition is ambiguous. In this case I was just trying to replace a WS... FM in an old program and it happened to be part of the routine where the parameter (p_path) was not specifically typed. My bad. Thanks for pointing this out.

But still I just don't understand in general why these are so incompatible that SAP doesn't even try. E.g. one can move longer CHAR into shorter CHAR and it doesn't cause a short dump. Some content could be lost, but in majority of cases it actually works out perfectly fine.

hardyp180
Active Contributor
0 Kudos

The first problem is that the normal syntax check does not warn you of the incompatibility and the first you know is a short dump.

I am told (by Horst Keller) this is impossible, as the name of the function module is in quotes and so the normal syntax check cannot tell what function module it is dealing with, whereas a method call does not have the quotes so the syntax check knows what method it is dealing with and thus the signature. This also prevents you creating data using the new DATA construct when getting back parameters from a function module, whereas it works for a method.

I think that is a silly argument, as if the extended check can determine the exact function module then surely the normal syntax check can be enhanced to look in the same place, especially as we are talking about something which will 100% cause a short dump. My sneaky suspicion is that this is a way to try and stop us using function modules, despite the fact that sometimes there is no alternative (RFC, variant configuration etc.)

I have found that sometimes even passing in a variable with the same type and length as the expected parameter can cause a short dump, if the underlying data elements are different. Not always, but sometimes. No pattern that I can see.

In ABAP 7.40 and above you can wrap your parameter in the CONV construct and thus the CHAR value is converted into a string or vice versa and so no short dump. I use this very example in my good old book, as I recall, with a bit of a similar moan about the need for doing this in the first place.

Cheersy Cheers

Paul

matt
Active Contributor
0 Kudos

Impossible is the halting problem. Type checking of function modules isn't impossible.

To me, what's broken about method FILE_OPEN_DIALOG (and others in the same class), is that the parameters should be CSEQUENCE. I cannot see any reason why they have to be string.

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos
  1. Type c and type string are different. Flat vs. deep, static length vs. dynamic length, different handling of trailing spaces -> as a programmer you must take care of the type you are dealing with.
  2. When you design a procedure interface you must decide consciously the typing of your parameters. If you want to rely on c properties of a formal parameter in the coding of the procedure, you use c. If you want to rely on string properties, you use string. If you want and can code for both you use csequence.
  3. When a parameter is typed with c or string, you have to pass c or string (with literals as an exception). Why? Because we have "pass by reference" and "pass by value". An implicit conversion can take place only for "pass by value". But since both kinds of parameters passing must behave in the same way and since an implicit conversion is not possible for "pass by reference" it is not possible for "pass by value" too (changing the way of passing a parameter must be compatible for the user).
  4. The type check for methods and function modules is different, as already discussed here.
  5. From release 7.40 on you can easily use the CONV operator to adjust the actual parameters to the demanded type.
vwegert
Active Participant
0 Kudos

Thus spoke Zarathustra 🙂

I completely agree with points 1 and 2 and for me, points 3 and 4 are a satisfactory explanation, as far as the language is concerned. However: Where the programming language causes its users difficulties - justified though they might be - it's the job of the tools to step in and support. Java does have similar issues in different areas, but almost any modern IDE does have built-in checks that will warn you if you're trying to do something really stupid that is probably going to cause an error. "Yes, yadda yadda technically impossible, halting problem and so on - but we know with a sufficient degree of confidence that this variable hasn't been initialized properly, so please do so or silence this warning explicitly". That's an area that unfortunately has been neglected for a long time - I believe it's getting better, though!

(As for point 2 - it would be great if everyone within SAP providing APIs that we have to work with had that knowledge, see

As for all of us complaining about missing static checks - no worries, JavaScript is just around the corner, and everything will be better there. No static types, no worries - right?

raghug
Active Contributor
0 Kudos

Love this discussion... made my day!

Juwin - try CONV instead of CAST

Juwin
Active Contributor
0 Kudos

Yes, got that from the post above.

Thanks, Juwin

Jelena
Active Contributor
0 Kudos

I have found that sometimes even passing in a variable with the same type and length as the expected parameter can cause a short dump, if the underlying data elements are different. Not always, but sometimes. No pattern that I can see.

I believe I've seen some cases like that too: even though the types are exactly the same, unless you use a specific dictionary definition it's a "no go". Was quite puzzled by that. Don't have an example handy but will post here if I run into this again.

hardyp180
Active Contributor
0 Kudos

Hello Horst,

I apologise for putting you on the spot, but since you are a representative of SAP I am going to do it anyway.

I understand that SAP is a monolithic organisation and you don't actually work for the development department and change the SAP code base, but I would like your opinion on something.

The topic at hand is quite complicated and no doubt would take a lot of fixing at the SAP end (i.e. to make the normal syntax check give a similar warning to the extended check about type mismatch in functions).

However there are a lot of points raised in the comments to this blog about obvious faults in standard SAP which could in fact be fixed by any of us developers in about five minutes flat, had we the magical power to change the SAP standard code. as you will have seen , some have done just that for their own installations.

Do you think any of those five second fixes will ever get made in the standard system? Or with the Business Suite in it's sunset days no-one will bother? And then the same problems will get copied over to S/4 HANA?

Cheersy Cheers

Paul

OttoGold
Active Contributor
0 Kudos

Gotcha!

Jelena
Active Contributor
0 Kudos

SAP being a public company, not sure how much Horst would be at liberty to say (or maybe feels we're just trolling ). But some day from someone I would love to hear a clarification on the following.

1. To Paul's point - if SAP just doesn't want to touch these small things in ECC that's fine, but will the same stuff go into S/4HANA and beyond?

2. One might claim that no one is opening incidents for these items, so SAP can't just make a change on their own, without a ticket, so to say. But then who is entering tickets for the utterly ridiculous text changes that Paul mentioned ("respect my active version")? I'm quite confused here.

Thank you.

hardyp180
Active Contributor
0 Kudos

Ladies and Gentlemen of the jury, I put it to you:-

Getting an actual bug in standard SAP code fixed via the service marketplace, OSS, whatever you want to call it, is unbearable agony, with a slim chance of success.

What hope then, have we of achieving anything if I logged a call saying (for example) the message about setting structures as "cannot be enhanced" is annoying/misleading/pops up at the wrong time. It's not as if it affects the business users.

If an SAP employee read the comments to this blog, would they actually be allowed to spend the five minutes cleaning up such nonsense, or would they be too busy having to change all the circular icons to squares because it is "clearer" and then in the next release turning them all into triangles because it is "clearer" and then in the next release turning them all back into circles because it is "clearer"?

At my company we spotted some horribly inefficient database access in standard SAP code, all nested SELECTS and geometric nested loops on internal tables, and sent in a detailed proposal for improving the performance.

From the response we got back you'd thing we had called the persons grandmother a dirty old cow who works for Cynthia Payne for free.

Nonetheless as we have seen if everyone keeps the pressure on for about ten years SAP sometimes caves in. Two examples are the return f bug fixes and enhancements to SAP business workflow (which was mothballed about 2002 in the hope everyone would buy a separate software system with an extra licence from SAP to handle this) and the good old "purchase orders with multiple account assignment" chestnut where if you have a PO with two cost centres on one line the accounting postings are not quite illegal, but false accounting by any definition I learned at university. For a dozen years fixing that was "impossible" until they caved in and gave the task to an intern on their first day on the job, who forged ahead and mixed up BUKRS and WERKS and used them interchangeably . The fix worked but caused so many side effects it took over 50 (honestly) OSS notes to stabilise the whole MM module.

They must have wanted to through the guy out on the street after that, but instead I think they got him to design the 740 GUI. It would explain a lot given how that behaved on it's first release.

Cheersy Cheers

Paul

hardyp180
Active Contributor
0 Kudos

For example in 750 the icon in SE24 for doing an F4 search help is now a magnifying glass rather than a white square with a grey square behind it like you get in 702.

Neither of those ICONS screams out "search" to me, the magnifying glass denotes "detail" of an already selected object, so why bother replacing one misleading icon with another misleading icon when there are actual broken things that could be fixed?

matt
Active Contributor
0 Kudos

Back in 2000, I did get a bug fix. There was a problem with uom conversion accuracy. I found the function module that was causing the problem. OSS said "yeah - that's just the way it works, live with it", which was totally unacceptable for the business. So I spent 30 seconds or so thinking about how the FM worked and what could be done to safely change it so it didn't affect any other use (a couple of optional parameters), and sent that.

Lo and behold a sap note appeared with exactly my fix.

matt
Active Contributor
0 Kudos

Every time is see that I read "Respect my authoritah!" (Eric Cartman, South Park).

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos
you are a representative of SAP

I am a documentation writer at SAP's ABAP language department and that's that ...

If you ask me if

any of those five second fixes will ever get made

in the contents of the ABAP Keyword Documentation or anything related to packages SABAPDOCU or SABAPDEMOS I say YES (happened often enough, e.g. the tree synchronization in the offline (aka portal) version of the keyword documentation was suggested in SCN by Sandra Rossi - took a bit more than 5 seconds).


But I'm not entitled to speak for the remaining 99.999 %  of SAP ...


Horst

Matt_Fraser
Active Contributor
0 Kudos

To be fair, we have had problems we raised in Customer Incidents that later resulted in Notes with the appropriate fix. We've also had some where we got the "works as designed" brush-off, to which we generally push back, and sometimes we get our way, sometimes we don't.

Also, to be fair, while I haven't yet seen the new 750 magnifying glass search icon, a magnifying glass is a fairly ubiquitous icon for search across many software packages these days, so I would say that's pretty close to standard.

hardyp180
Active Contributor
0 Kudos

Google uses a magnifying glass for search, so do the vast majority of websites, so having the same in SAP does seem logical.

This does mean that the same icon is now used for different purposes in different contexts i.e. it means "choose detail" in the ALV and "search for possible entries" in SE38.

However not all the searches in 750 have a magnifying glass as the icon. The little white box at the top still has the drop down arrow, as does SE80, as do all the fields in ME21N. VA01 still has the two overlapping squares as the search icon, the mirror image of the "create with reference" icon just above it. I always liked the drop down arrow myself, but that is just personal choice as to what is more meaningful.

In FB01 the "document date" field has the two rectangles for search whereas the field to it's right "document type" has the magnifying glass for search.

Anyway, having three different symbols for the search in three different places cannot be the optimal solution, and increasing the number of different symbols for the same thing in each release cannot be justified as a top priority when there are actually equally minor changes that could be made to fix broken or annoying things.

I also noticed in 750 the replacement of the word "also" with "too", and in some places "too" was replaced with "also".

On the positive side SE24 was improved such that the length of the fields are no long enough to see the full names of methods. That's good, but why not be consistent and make the same change to SE11 where the names are still truncated until you drag the field to be bigger?

Whinge, whinge, whinge, moan, moan, moan, no-one is more pedantic than I, I love it.

Matt_Fraser
Active Contributor
0 Kudos

You do raise an excellent point about not being standard in icon usage in the same software.

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos

Once upon a time in good ol' ABAP and SAP GUI there was a report SHOWICON. When you needed an icon, say for searching, you ran the report and searched the list for "search" and used the respective icon (in fact, it is still binoculars). Only if no fitting description was found, you began to search for an icon that might express your purpose.

former_member182550
Active Contributor
0 Kudos

rstxicon.....

horst_keller
Product and Topic Expert
Product and Topic Expert
0 Kudos

Yep, both from SAP Basis, but different packages.I know SHOWICON closer, cause it comes from list processing (that I've documented).

vwegert
Active Participant
0 Kudos

...or transaction ICON...

petr_solberg
Active Contributor
0 Kudos

ok my turn,

it has always slowed me down, that to order a new license for an existing system on the SAP Market Place, I needed to know the system's Installation Number, and I've always been at Customers who have lots of Installation Numbers

but the good news is, there is a work around, you could go into SAP Market Place, go into existing systems data and search for your SID and then go to the Licenses tab and then click get a new license

well the bad news is that the work around has stopped working today, because we now can only order a new license for an existing system using the SAP Support Launchpad, which looks really nice and shiny but demands as the search criteria for the License the Installation Number grrrrr

Why can't the License renewal app search on SID ? Or is that too.... easy 🙂   I've actually commented this in this thread before, but left it because there was a work around

Ok that's one thing, and now another connected thing...

Ok so now I have to use the License Key app in the  new shiny SAP Support Launchpad, and the Launchpad doesn't use the same authentication mechanism as the SAP Support Portal, and is not taking my S User as the logon and is taking my SCN User which doesn't have authorization to get Licenses and if I logout and login as the S User then the SCN access doesn't work 😞

Oh well, I guess it's all in the name of progress

Have fun all

Andy.

Jelena
Active Contributor
0 Kudos

Why can't the License renewal app search on SID?

As someone who has the SIDs with their installation numbers on a sticky note pinned to the cubicle wall I might not be able to relate . But for me the shiny new Launchpad does search by the system ID quite well.

I just typed a system ID in the big Search box on top. It did offer me to search for it specifically in Systems and when I picked that option it showed full info on that system, including installation # in two places:

If you have two different user IDs for SCN and S-user the wouldn't you get prompted for which certificate you want to use when sign-on kicks in? I have only one S-user and one certificate, so I even disabled the prompt in the browser settings and it works perfectly. Perhaps you'll find comfort in knowing that, unlike me, at least you won't lose your SCN profile if you change jobs.

hardyp180
Active Contributor
0 Kudos

I did not change jobs but my company changed the SAP installation number, so my S number changed, so I lost my SCN account.

I have a "P" number now, and am on an imaginary list of people who want their old accounts merged with their new accounts. I was put on this list almost exactly a year ago. I am hoping (not with much confidence) that when the new SCN is launched in a few months time something might happen.

Currently when I try to log onto the new launch pad I get asked for a certificate - which has the S number - I choose the S number, get the false "you have now been authenticated. You are being forwarded" message which does not been you have been authenticated at all, it means you are being redirected to another web page which will then try to authenticate you.

After a five minute pause up comes the new launch pad saying you tried to log in using your P number (even though I didn't, the certificate uses the S number) please log out and try again. If I do log out and then don't use the certificate but manually enter the S number I'm told the account has been locked. The S number still works for the old support portal for getting object keys and the like for modifying standard SAP objects (not that I would ever do that) so it has not actually been locked.

petr_solberg
Active Contributor
0 Kudos

Hi Jelena,

you are correct, if you search for System -> SID then you can see the Installation Number, and you can click on License and see the _existing_ licenses for that SID, but you cannot create a _new_ license from there.

To request a _new_ license for an existing system you need go to the New License Key Renewal application in the Support Launchpad. When you get to the new License key request app, try to search for a SAP System by SID in there.

The License Key Application does not accept search by SID, only Installation Number.

This is the frustration. In the past, I mean, until Monday this week, I could search by SID and request a license, now I need to search by SID, then find the respective installation number, then go to the License app and search by Installation Number and then drill down to the sid and then request the license. Seems a little long winded no ?

Regarding installation numbers and SIDs, since 2005 I have only been at SAP customers who have more than 200 SAP systems (SIDs), one had 500 (SIDs) !!!   So, it's not possible to remember every installation number.

I've solved the User problem, I now use Internet Explorer for SCN (logged in with SCN User) and Chrome for SAP Support Portal

Best regards,

Andy.

Jelena
Active Contributor
0 Kudos

I don't have access to the licenses, so can't really comment on that part. Did you submit this feedback in the Launchpad itself? If not then I'd suggest to do that. There was a blog in the private Mentor space on the early adopter program and the comments said to submit any feedback using designated button in the Launchpad.

@Paul - this does sound messed up. If the usual "have you tried turning it off and on again" or any items in the SCN FAQ don't help then I'd also just go ahead and put it in the Launchpad feedback.

I wish we had a Feedback button in ECC.

Lukas_Weigelt
Active Contributor
0 Kudos

Dear Santa SAP,

I hereby wish for the UWL in SAP EP to stop lying to me when configs aren't registered correctly. Bugger got me again today and it hasn't been the first time.

At least the stealthy error from 7.02 graduated to an even more cryptic warning message in 7.31 so it was even easier to overlook.

Please teach the UWL message manager some manners before ze angry German developer arrives.

XOXOX, Lukas

Steffi_Warnecke
Active Contributor
0 Kudos

You opened an old wound... I had the same issue some years ago when we built up the new EP and I had to upload the configuration files after some small changes. I didn't even remember how I solved it (after a lot of blood(y) swea(t)ring and some tears, because the whole thing made no sense), until I read your thread and went like "Oh... yeah... right. Still makes no sense!"

Former Member
0 Kudos

I know it's funny more for Russian-speaking, but I wonder for many years whether these will ever be corrected.

1. SE16, request releasing, Russian version: "щапрос" instead of "запрос" ("request"), I saw it from R/3 4.0 and BW 3.0 versions.

2. Programm RAIMEWMS,

- German description "Eierlegende Wollmilchsau", German idiom for all-in-one person/device

- Russian description "пушномолочная свинья-несушка (тест)", translated word by word and received "fur-milk-egg laying pig (test)".

vwegert
Active Participant
0 Kudos

Ekaterina Bondarenko wrote:

2. Programm RAIMEWMS,

- German description "Eierlegende Wollmilchsau", German idiom for all-in-one person/device

That totally made my day. Also, its first line contains REPORT zaimewms MESSAGE-ID ap - now how did that make its way into the standard delivery, I wonder...

Steffi_Warnecke
Active Contributor
0 Kudos

At least they are consistent, because "Eierlegende Wollmilchsau" = "egg-laying furr milk pig". ^^

So now we know, what the EWMS in RAIMEWMS stands for, but what does the rest mean?

Former Member
0 Kudos

Program ZAIMEWMS does not exist. I think it is an enhancement point for the developers.

matt
Active Contributor
0 Kudos

No. It was developed in the ZAIMEWMS then renamed to RAIMEWMS. The autogenerated comment isn't modified.

vwegert
Active Participant
0 Kudos

Matthew Billingham wrote:

No. It was developed in the ZAIMEWMS then renamed to RAIMEWMS. The autogenerated comment isn't modified.

I was about to remark that the name occurs in the REPORT statement, but then, you're right in a way - the name specified after REPORT does not matter, so you might as well call it a comment.

matt
Active Contributor
0 Kudos

REPORT. or PROGRAM. is all that's needed IIRC.

Jelena
Active Contributor
0 Kudos

Ekaterina Bondarenko wrote:

Russian description "пушномолочная свинья-несушка (тест)", translated word by word and received "fur-milk-egg laying pig (test)".

ManBearPig!

The translation errors totally can be reported using Incidents though. I imagine it would be rather difficult to claim "it's The Design" on those.

matt
Active Contributor
0 Kudos

First bit of code in it isn't so funny. In the validation

SELECT COUNT(*) FROM imtp

      WHERE prnam = program

      AND   gjahr = app_year.

    IF sy-dbcnt = 0.

       MESSAGE e003 WITH program app_year.

    ENDIF.


Shame if there's a substantial number of records.Select single would have been a little better I think.


Btw - English title: Internal Use - (Does Everything)

Former Member
0 Kudos

I need a facepalm smile.