Although SAP provides many functions as part of the ABC environments, there are times when the logic that you want to use in the application of ABC overhead requires additional data.   There is a great deal of data that can be accessed using functions that read fields from tables or structures, and you can create this type of function without programming.

Using transaction CTU6  (IMG > Controlling > Activity-Based Costing > Templates > Define Environments and Function Trees) we see that Environment 001 (Cost Estimate/Production Order) includes among others Sub-Environment 105, Routing.  Note that Sub-Environment 105 is also available to Environment 009, Process Order.


When we expand the Routing sub-environment, we see the following functions:


Selecting RoutingOpActivityType opens the right-hand pane, where we see that the Logical Function Name is AFVGD_LAR01.   


RoutingOpActyDefaultValue and RoutingOpConfirmedActy are likewise defined as AFVGD_VGW01 and AFVGD_ISM01, respectively, indicating that the logical function is actually reading the structure AFVGD.

From the sub-environment, we can either create a function from scratch, or copy and modify an existing function.   In order to utilize data relating to the second activity type in a routing, we could copy and modify the three functions referenced above.   

Select a function and right-click on it.  Select “Copy Function”.  Give your new function a name.


Change the description and the logical function to reflect the field you want to access.   A logical function can be based on a function module or a table field.


On the Implementation tab, change the field name to the one that you want to access.


 Make any desired changes on the Usage, Function Hierarchy, and Language tabs, and save.

The tables available for access in the various sub-environments can be viewed in table COTPLTABLE.