A lot of times you see people in forums asking questions about OBYC, on why account X was determined when the system should be determining account Y. Instead of trying the forums, where it is extremely hard to get help because people don’t have access to your system, you can debug the call and see for yourself.
“Debug? But I’m a functional consultant!” – You’re a “consultant” and a consultant should understand a language as basic as ABAP. You don’t have to write it, you have to read parts of it, so don’t whine. Trust me, it will make your life much easier.
There are two transactions you should know about: ST05 and SE37, but first lets use MIGO to provide an example. Go to MIGO and create a document with a 201 movement (consumption to cost center) and stop before saving the document.
Go to ST05. Select “Buffer Trace” (SQL Trace should already be pre selected). Press “Activate Trace”. Go to MIGO, save the document, and then back in ST05 press “Deactivate Trace” and “Display Trace”. Execute.
In the object name column set a filter for T030. It depends if your hit is in the buffer or SQL, but you should see something like this (in this case it’s blue because it hit the buffer):
So my 201 movement is hitting BSX with valuation class 1100 and GBB with VBR 1100. That provides some valuable information about how SAP is reading OBYC, namely you see it is using VBR and 1100.
If you want more detail you have to go SE37 and debug (and I seriously recommend you at least learn to debug). Select function module MR_ACCOUNT_ASSIGNMENT and look for the following code (I knew I had to debug this FM because if you double click SAPLKONT on the previous picture, you navigate to the code where the SELECT is made):
The important one is the SELECT to T030. If you set a break point you will be able to see (when you post a new document) the various selections to your OBYC configuration, and can see in T030-KONTS and T030-KONTH which accounts were determined (this way you can see if your account determination is standard or if the account is being changed in a substitution further down the line).
Above the SELECT you can see the various configurations:
- XKOMO – Relevant for account modification
- XBWMO – Valuation modification relevant
- XBKLA – Relevant for evaluation class
I hope this helps you understand what is wrong with your account determination, and helps you understand how SAP works.