You are on page 1of 9

Getting Started Newsletters Store

Hi, Guest Log On Join Us Search the Community

Products Services & Support About SCN Downloads


Activity Communications Actions
Industries Training & Education Partnership Developer Center

Lines of Business University Alliances Events & Webinars Innovation Browse

SAP ERP Financials - Controlling

Automatic account assignment OKB9 does not work


Posted by RAHEEM BAKSH in SAP ERP Financials - Controlling on 22 Apr, 2013 1:04:49 PM

Share 2 1 Tweet Like 5

Applies to:

All releases of SAP for Financial postings made from a various applications like SAP-Logistics, SAP-Financials, etc for
more information, visit the Enterprise Resource planning homepage

Summary

Automatic assignment occurs during postings in external accounting (with in the FI, MM, or SD
components) if you did not enter a CO account assignment object (cost center, order, or project) for a cost
accounting relevant posting. This is always the case if the R/3 System automatically created the posting row
in question.
This paper highlights an alternative approach where standard default account assignment (OKB9) based on
Valuation area or Profit Center is not sufficient and a default account assignment based on Valuation area
and Profit center is required.

Author:RaheemBaksh
Company:NovelERPSolutionPvt.Ltd.
CreatedOn:Apr2013

Standard SAP Default Account Assignment (OKB9)

ThestandardSAPofferstospecifyadefaultaccountassignment(CostCenter/InternalOrder)
1. Per company code
2. Per Business area
3. Per Profit Center
4. Per Valuation area
In cases, where a default account assignment is to be specified below the company code, then Account
Assignment Detail field in OKB9 is used to specify a default CO object per Business area or Profit center or
Valuation area.
But system does not determined Default cost object from OKB9 for automatically generated lines that
reference the entire document and not individual items.

For More Information Read SAP Notes 105024, and32654


Example: Key-
"DIF" (minor differences)
"UPF" (unplanned delivery costs)
"KDT"

(tax exchange rate difference)
OFF (GTA)
"KDR" (exchange rate rounding)

Default Account Assignment in OKB9

You can define automatic account assignments In OKB9 or defaults in the cost element masters data
record .The cost element master data record can determine these assignments per controlling area, and the
IMG per company code, business area, and/or valuation area.

TransactionCode-OKB9

Here it is mandatory to set Minimum One Combination to call Default Account Assigned Object
1. Valuation Area is mandatory
2. Business Area is mandatory
3. Profit center is mandatory

Here we have set as 1Valuation Area is mandatory

Here whenever Prerequisite met from your Transaction System will pickup default cost center as per
Valuation area.

Define Substitution OKC9

In substitution, the SAP System checks whether particular input values satisfy one or more user-defined
conditions. If the condition is fulfilled, the values are automatically replaced by other values.
Standardsettings
The following callup points are defined in the standard SAP System for Controlling:
0001 - Document row : Used for all CO-relevant postings in external accounting as well as for manual
postings in CO.
0010 Order: Used for order background processing and irrelevant for account assignment checks.
0100 - Document header: Used for manual postings in CO, such as reposting costs or activity
allocation.
Activities
1. 1. Determine in which controlling area you want to substitute values.
2. 2. Create a substitution.

Proceed as follows:
a) Choose the "New entries" function.
b) Enter the controlling area in which the substitution is to be executed.
c) Enter a callup point.
d) Save your entries
e) Choose "Environment -> Substitution".
f) Enter a name and a callup point for the substitution.

You can use an existing substitution as a reference.



g) Change the model data to meet your specifications, or copy them without changes.
h) Save your entries.
i) If you do not use a reference, proceed as follows:
j) Verify your entries by freeing the data for release.
k) Enter a description of the substitution.
l) To define the substitution steps, choose "Insert entry".
m) Choose the substitution fields in the dialog box that appears.

You can choose "Exit only" or database fields. "Exit only" ensures that all fields allowed for substitution are
available only in this USER-EXIT. Otherwise, you can replace one field only, using a value defined in the
USER-EXIT.
n) Transfer one or more of the displayed substitution fields.
o) Enter a description of the substitution step.
p) Enter one or more conditions under "Prerequisites".

Use the function "Fields for conditions" to do so. You may also maintain rules by choosing the
corresponding function.
q) Enter constant values for the fields to be substituted, or store a substitution exit.
r) Save the substitution steps.

s) Return to the initial screen.


t) Enter the substitution's name for your controlling area and set an activation level.
Activation level "1" ensures that the substitution is active in the correct controlling area.
u) Save the substitution.
Noteontransport
To transport substitutions, a separate function is available in the IMG for "General Controlling"

Transaction Code - OKC9

Substitution-

Prerequisite Company code =1000 and Controlling area =1000


If Prerequisite is met substitute by User exit UOKB0

Check Client specific user exit GCX2

Transaction code: GCX2

Here you need to check assigned program for the Application Area GBLS.

You need to some change in Program, First copy from Existing program RGGBS000.
Copy from Exiting program SE38

Copy from Existing program and change in Z Program, Ask technical guy if you are not familiar on Program,
for copy or change new program you need to developer ID.

Change in Z Program as below-

Note: see below changes are based on organization structure here you need to determine which field you
can enter to get Cost center, if you are using Business area so OKB9 can be determine by Business area .

We have made OKB9 account assignment as per Valuation Area, but here system does not determine profit
center and Valuation Area for auto generated line item,

Our Business Place and Section Code is equal to Plant (Valuation Area)

*&------------------------------------------------------------------------------------------------------------------------------------------------------------
----------------------*
*& Form UOKB9

*&------------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------*
* text
*--------------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------*
FORM UOKB9 .

if COBL-WERKS is INITIAL AND COBL-BWKEY is INITIAL.


COBL-WERKS = bseg-bupla.
COBL-BWKEY = bseg-bupla.
ENDIF.

DATA:
LD_KOSTL LIKE COBL-KOSTL,
LD_AUFNR LIKE COBL-AUFNR,
LD_PRCTR LIKE COBL-PRCTR,
LD_PAOBJNR LIKE COBL-PAOBJNR.

CHECK COBK-VRGNG = 'COIN'.

CHECK NOT COBL-HKONT IS INITIAL.

CALL FUNCTION 'RK_KSTAR_READ'


EXPORTING
DATUM = COBK-BUDAT
KOKRS = COBK-KOKRS
KSTAR = COBL-HKONT
IMPORTING
V_CSKB = CSKBV
EXCEPTIONS
KSTAR_NOT_FOUND = 1.
CHECK SY-SUBRC = 0.

CALL FUNCTION 'K_ACCOUNT_ASSIGNMENT_GET'


EXPORTING
BUKRS = COBL-BUKRS
WERKS = COBL-WERKS
BWKEY = COBL-BWKEY
GSBER = COBL-GSBER
KSTAR = COBL-HKONT
I_COBL = COBL
IMPORTING
KOSTL = LD_KOSTL
AUFNR = LD_AUFNR
PRCTR = LD_PRCTR
E_PAOBJNR = LD_PAOBJNR.

IF COBL-KOSTL IS INITIAL "*!


AND NOT LD_KOSTL IS INITIAL.
COBL-KOSTL = LD_KOSTL.
ENDIF.

IF COBL-AUFNR IS INITIAL "*!


AND NOT LD_AUFNR IS INITIAL.
COBL-AUFNR = LD_AUFNR.
ENDIF.

IF COBL-PRCTR IS INITIAL "*!


AND NOT LD_PRCTR IS INITIAL.
COBL-PRCTR = LD_PRCTR.
ENDIF.

IF COBL-PAOBJNR IS INITIAL "*!


AND NOT LD_PAOBJNR IS INITIAL.
COBL-PAOBJNR = LD_PAOBJNR.
ENDIF.

ENDFORM. "UOKB9
*&----------------------------------------------------------------
------------*

Assign Z program in to Client specific user exit GCX2

Please also refer Next related post Automatic account assignment OKB9 ( Set Acc. Assignment "3 Profite center is
mandatory")

17614 Views
Products: sap_erp_financials Topics: enterprise_resource_planning Tags: account, automatic, assignment, okb9

Average User Rating

(18 ratings)

Share 2 1 Tweet Like 5

27 Comments

Godavari SAP 23 Apr, 2013 7:22 AM

Hello Raheem,

Good article.

Thanks

Like (1)

RAHEEM BAKSH 23 Apr, 2013 8:19 AM (in response to Godavari SAP)

Thanks Dear ...........

Like (0)

Srinivasa Velupula 25 Apr, 2013 7:27 PM

Dear Raheem,

Very good article. Good work !!!!

Thanks,
Srini

Like (1)

RAHEEM BAKSH 27 Apr, 2013 10:36 AM (in response to Srinivasa Velupula)

Dear Srinivasa,

Thanks!!!!!

Rate the article if u like it

Regards
Raheem

Like (0)

Jason Shao 29 Apr, 2013 8:40 AM

this is very useful

Like (1)
RAHEEM BAKSH 29 Apr, 2013 10:23 AM (in response to Jason Shao)

Dear Jason,

Thanks!!!!!

Like (0)

Sean Xiao 18 Jul, 2013 9:33 AM

detailed and systematic, great work!

Like (1)

RAHEEM BAKSH 18 Jul, 2013 1:21 PM (in response to Sean Xiao)

Thanks Sean Xiao

Regards
Raheem

Like (0)

sachin djadhav 18 Jul, 2013 2:36 PM

Good Job Raheem

Sachin j

Like (1)

RAHEEM BAKSH 5 Sep, 2013 2:13 PM (in response to sachin djadhav)

Thanks sachin,

Like (0)

Naresh Krishnamoorthy 5 Sep, 2013 2:18 PM

Very Informative...Many Thanks.

Best Regards,
Naresh K.

Like (1)

RAHEEM BAKSH 5 Sep, 2013 2:23 PM (in response to Naresh Krishnamoorthy)

Thanks Naresh,

Like (0)

niran orkkatteri kariyadan 10 Oct, 2013 11:30 AM

Really Good work Yaar!!

.Many Thanks.

Best Regards,
Niran.OK.

Like (1)

RAHEEM BAKSH 10 Oct, 2013 2:02 PM (in response to niran orkkatteri kariyadan)

Thanks Niran

Like (0)

Satendra Singh Sikarwar 10 Oct, 2013 12:05 PM

Hello Raheem,

Very useful and informative article.


Thnx 4 ur fabulous article.

Regards,

Satendra

Like (1)

RAHEEM BAKSH 10 Oct, 2013 2:02 PM (in response to Satendra Singh Sikarwar)

Thanks Satendra

Like (0)

Sada Bandla 4 Feb, 2014 10:21 AM

Hi Raheem

Its very good and useful info...

Like (1)

RAHEEM BAKSH 4 Feb, 2014 10:36 AM (in response to Sada Bandla)


Thanks

Like (0)

Lakshmi Sama 4 Feb, 2014 1:31 PM

Hello Raheem,

Its a very good article. Thanks for sharing your knowledge and keep sharing.

Regards,
Lakshmi S

Like (1)

RAHEEM BAKSH 4 Feb, 2014 1:37 PM (in response to Lakshmi Sama)

Thanks Lakshmi,

Like (0)

JS 55 6 Feb, 2014 6:25 AM

Good one.....

Like (1)

RAHEEM BAKSH 7 Feb, 2014 6:07 AM (in response to JS 55)

Thanks

Like (0)

Pavan Kumar Arvapally 1 Jul, 2014 1:14 PM

Hi Ramesh,

Nice document.....

Regards,

Pavan Kumar Arvapally

Like (1)

RAHEEM BAKSH 1 Jul, 2014 1:43 PM

Thanks Pavan,

Its Raheem

Regards
Raheem

Like (0)

Akash Dhakulkar 9 Oct, 2015 8:04 AM

Hi, Raheem Bhai

Thanks for the Documentation provided by you, My requirement is to update the Center Field & I have
done with every thing , But I have an issue in the code while substituting the values of BSEG in
COBL..... the BSEG is not Returning values of WERKS & BWKEY..... Its empty while cheking in
debugging

Can u help with this??

*& Form UOKB9


*&-------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------*
* text
*---------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------*
FORM UOKB9 .

if COBL-WERKS is INITIAL AND COBL-BWKEY is INITIAL.


COBL-WERKS = bseg-bupla. """""""""""" over here
COBL-BWKEY = bseg-bupla. """""""" over here
ENDIF.

Like (0)

RAHEEM BAKSH 12 Oct, 2015 9:11 AM (in response to Akash Dhakulkar)

Hi Akash,

if COBL-WERKS is INITIAL AND COBL-BWKEY is INITIAL.


COBL-WERKS = xxxxxx """""""""""" {identify the value on particular line item (where object is
missing ) that can be used to identify the Valuation area. In case nothing is matching with
valuation area / Business area / Profit center keep Valuation area in memory id from first line
item and import that ID here
COBL-BWKEY = xxxxxxx """""""" Same as above
Like (1)

Akash Dhakulkar 9 Oct, 2015 8:10 AM

Nice Blog Shared Bro.... Really Descriptive & Helpful

Like (1)

Site Index Contact Us SAP Help Portal


Follow SCN
Privacy Terms of Use Legal Disclosure Copyright

You might also like