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

Wrong portions of code being executed in standard transactions

Former Member
0 Kudos
125

Hi guys,

I've recently come accross some weird errors in a standard transaction in a system and thought you might have a clue. I was getting an ugly dump in F110 in a fresh system that it can't do a READ TABLE with index 0. After investigating it and debugging it for a while, I got in the PAI of a screen, where two procedures were important:

1) WERTE_PRUEFEN was being executed in a loop...endloop (that's where the error supposedly occurred). The thing is in the debugger it didn't go into this module inside the loop, as it should if there are no entries.

2) After that, WERTE_LOESCHEN. When I got here and pressed F5 to see what's going wrong in it, guess where the debugger redirected me: you're right, to the WERTE_PRUEFEN thingy. So a statement like MODULE WERTE_LOESCHEN. gets me to a completely different procedure. This is crazy!

I'm not at my first experience with this. BEx applications would do this if you'd change the ABAP source code and the people wouldn't reconnect again. Even if in the debugger I'd see the new code, the system would execute the old one, probably some caching issues. Always worked when people disconnected / reconnected.

However, in the actual situation, no matter how many times I log on/off, the dump is there.

This is not the only example of this kind, there are more module statements gone crazy in F110 in this system, but only this one dumps instantly.

What do you think it could be the cause of that/ what is a good solution for this?

I was thinking it has something to do with the program's generation and I asked the Basis guys to run an SGEN, hopefully that would help.

Thanks in advance,

George

12 REPLIES 12

Former Member
0 Kudos
82

Sorry to tell you but one has to conclude that your DEBUG was not thorough or complete enough. Since the index value would be there at the time of the READ TABLE, I have to believe the program is executing the code, and that there is an error, whether introduced by SAP or perhaps by an enhancement, that does not do some proper verification before issuing the read table command....

0 Kudos
82

Hi Breakpoint,

My debugging was thorough enough. It can't be more thorough than as it was.

I am absolutely convinced of my conclusion and I just want an explanation/ a solution for it.

I'll reiterate the problem.

I have an instruction MODULE whatever. When I press F5 (when I step into it), I immediately get into another module with another name and everything.

This is basically it. I want to know why this creepy thing happens and how to solve it. I think SGEN would do it.

Regards,

George

0 Kudos
82

Come on guys, no idea? And I thought this was pretty easy for you. Basically, my question is what's the reason that makes the thing that I experience happen: I am on a MODULE whatever statement, I press F5 and I get to a completely unrelated module in the same include (it's not like I don't have system debugging activated or something, everything is fine).

Regards,

George

0 Kudos
82

George,

There seems to be an indexing problem in the program. May I know if there are any enhancements done to the program earlier ?? In that case, you can try deactivating the enhancements and try debugging your code again. Also, as you said, running SGEN can help with the indexing issues. Please try the above and let us know if the issue still exists.

Best,

Chaitanya.

0 Kudos
82

Hi Chaitanya,

Thanks for your answer. I don't think there are any enhancements because it's a fresh system. However, I'll have a look at those, have the Basis admins run SGEN and close the topic as soon as possible.

Best regards,

George

0 Kudos
82

Dear George,

Now that it is a fresh system, just in case the SGEN was not run already, such issues could arise. I found out from our Basis admins that it could be the indexing/regeneration issues and that, running SGEN should solve the issue. Should it not solve the issue, please let us know. ( I would want to let you know that such issues can occur even after upgrades too)

Best Regards,

Chaitanya

0 Kudos
82

Hi Chaitanya,

Unfortunately, running SGEN for all SAP_APPL didn't provide any improvement, the same error persists. Any new ideas? I'm wondering if transporting the related F110 from another system where they're working might do the trick....

Regards,

George

Former Member
0 Kudos
82

I was able to navigate correctly to the respective modules at the statements MODULE WERTE_PRUEFEN and MODULE WERTE_LOESCHEN through the debugger. I couldnt replicate your scenario. Is there anything specific you are doing here?

Vikranth

0 Kudos
82

Hi Vikranth,

Nope, just pressing F5 trying to get into WERTE_LOESCHEN and being redirected to that module inside the LOOP...ENDLOOP, WERTE_PRUEFEN. Well, I didn't say this happens in every system, only in that specific one. Of course, if I logon in another system, everything looks fine.

Another person suggested that it's the GUI to blame and that I should get the newest version. Still, the error was reported by a person that has the latest version of the GUI. I still think it's a generation/ installation issue but got no reply from the Basis admin so far.

Regards,

George

0 Kudos
82

Hello George,

As you rightly found, the GUI version has nothing to do with the program flow control. Anyways do let us know if the issue is solved through regeneration.

Vikranth

Former Member
0 Kudos
82

Solved once the Basis admin imported a new SP. Thanks for your help.

0 Kudos
82

Dear Geroge,

Good to know that the issue got solved, Congrats. Could you please let us know, which was the SP your Basis Consultant imported? As you said previously, I suppose it even works if you can get it transported into the system. What do you say?..Now that the issue is solved, there is no need for the transport but just for the 'know how'; also, would want to say Thank you George.

Best Regards,

Chaitanya