3 Steps to Find the Standard Cost for a Configurable Product

download 3 Steps to Find the Standard Cost for a Configurable Product

of 2

Transcript of 3 Steps to Find the Standard Cost for a Configurable Product

  • Dit is de html-versie van het bestandftp://24.145.161.230/My_Book/Cyber%20Backup%208_7_13/Capgemini%2007_30_13/Training%20Material/SAP%20Financials%20Expert%20Articles/Volume%2005%20(2006)/Issue%2010%20(November%20&%20December)/3%20Steps%20to%20Find%20the%20Standard%20Cost%20for%20a%20Configurable%20Product.docG o o g l e maakt automatisch een html-versie van documenten bij het indexeren van het web.

    3 Steps to Find the Standard Cost for a Configurable Productby Akhilesh Mittal, Consultant, Infosys Technologies Ltd. Costing, CO-PA

    Variant configuration functionality in SAP allow s you to have one material master, product bill of material, routing, and sales pricing w hen customers configure a product from several options. How ever, standard SAP

    allow s you to maintain only one standard cost in the accounting view of the material master. Use this method to dynamically produce a standard cost w hen configurable materials result in multiple standard costs.

    Key Concept

    A standard cost is a cost you use to measure production eff iciency for manufactured products. It is signif icant for organizations as it helps them in valuating the f inished and semi-f inished products (inventory

    valuation). Inventory valuation forms a part of the current assets in the balance sheet. You also can use standard cost for margin analysis using the Profitability Analysis (CO-PA) module in SAP. A product can have

    only one standard cost at a given time for correct valuation of inventory and margin analysis. SAP recommends the use of standard cost for f inished and semi-f inished products. Alternatively, you can use moving

    average price, but it leads to unrealistic inventory valuations and you cant conduct margin analysis in the absence of standard cost.

    Variant configuration functionality allow s customers to select product features according to their requirements. An example of a configure-to-order (CTO) product is a laptop w ith options such as RAM, a hard disk, a

    processing unit, and a mouse.

    Determining the standard cost for such a configurable product (material type KMAT) is a challenge. The product configuration is dynamic; the customer configures the product w hen it places the sales order. In the case

    of a static product, you can easily upload the standard cost for a f inished good product (material type FERT) to the material master. R/3 provides the costing run functionality through transaction code CK40N, w hich you

    can use to upload the standard cost to the material master for correct material valuation. Although my example refers to R/3, the functionality also w orks in mySAP ERP Central Component (ECC).

    Since R/3 provides calculation of standard cost only for those materials w hose composition (product BOM) is know n, it cannot calculate the cost for a configurable material using Costing Run functionality (transaction

    CK40N). How ever, you can use a w orkaround to dynamically calculate the standard cost for a configurable product at the time of the creation of a sales order. This three-step approach is not documented elsew here; I

    developed it through experience and research.

    Note

    A sub-optimal solution w ould be to create a separate material master for each possible product configuration and store the standard cost in the material masters. How ever, this w ould imply that you cant leverage the

    variant configuration functionality provided by SAP for configurable products by maintaining only one material master, one routing, and one bill of material (BOM). With my approach you can use the variant configuration

    functionality for material maintenance and w ork around the restriction of one standard cost per material.

    Define Configurable Products

    You can use material type KMAT to define configurable products in R/3. To do this, use transaction code MM01 and material type KMAT to manually define the material master. You can make material configurable by

    going to the material master basic data view . Check the Material is configurable check box. You need to do this only once initially w hile creating the material master. This is a prerequisite for using variant configuration

    functionality in an SAP system.

    Figure 1 show s an example of a configurable laptop, defined using material type KMAT, w hich demonstrates the problem of standard cost calculation.

    Figure 1 Configurable material check box in material master basic data view

    The illustration of a configurable laptop in Table 1 show s that the customer can choose among three types of hard disk, tw o types of RAM, tw o types of processor, and tw o variants of keyboard and mouse. The

    possible number of product combinations for one KMAT material here is 24 [3*2*2*2]. The standard cost of any one of these product combinations is the sum of the standard costs of its parts that constitute the product.

    The R/3 material master provides the f lexibility to store only one standard cost, but the problem here is the need to maintain multiple standard costs for one KMAT material. Now Ill guide you through all the SAP

    configuration steps to cost configurable products.

    Configuration 1 Amount Configuration 2 Amount

    Hard disk (20 GB) $100 Hard disk (80 GB) $200

    RAM (64 MB) $200 RAM (128 MB) $350

    Processor (1 GHz) $400 Processor (1 GHz) $400

    Keyboard/mouse (KB) $25 Keyboard/mouse (KB) $25

    Standard cost $725 Standard cost $975

    Total standard cost = the sum of the standard cost of components

    Possible standard cost = multiplication of the number of characteristic values

    Table 1 Illustration of dynamic cost calculation

    SAP Configuration

    You use three pieces of configuration to calculate the product cost dynamically from its parts during the sales order creation. Once the system has calculated the standard cost in the sales order, you can use the same

    standard cost to book inventory cost at the correct standard cost in the accounting documents. Later on, you can use this for margin analysis. The three pieces of R/3 configuration are independent of each other and

    they w ork together to make the costing of configurable products w ork in R/3:

    Step 1. Set up the variant configuration relevant for standard costing

    Step 2. Modify the Sales and Distribution (SD) pricing procedure

    Step 3. Put user exit changes in place for a third-party procurement scenario

    Step 1. Set Up the Variant Configuration Relevant for Standard Costing

    Create a material master for the KMAT material in my example in Table 1, a laptop by using transaction code MM01. Create a material master for all the characteristic values. Characteristic values are the

    components of the laptop, such as 20 GB hard disk, 40 GB hard disk, and 80 GB hard disk (Table 1). This example has nine characteristic values: 3+2+2+2=9.

    Enter 0.01 in the Standard Price f ield (Figure 2) in the accounting view of the KMAT material as the dummy standard cost. I use a dummy standard cost in the material master because standard R/3 tries to pick the

    standard cost of the material from this f ield (MBEW-STPRS) in the material master for valuating the inventory in the subsequent accounting documents. If you leave this f ield blank, R/3 show s an error at the time of

    accounting document creation because of the failure of initial R/3 checks. The process I am describing does not remove the SAP data validation checks as these are done automatically by the standard SAP core code

    logic. Rather, it alters the logic for picking the standard cost.

    Figure 2 Dummy standard cost

    Use the variant configuration functionality to define the product characteristics. Follow this process to capture the dynamic standard cost for the configurable product in the sales order through pricing reference

    characteristic:

    Create a pricing reference characteristic via transaction code CT04

    Add a procedure to characteristic values via transaction code CT04

    Include the pricing reference characteristic w hen you define the class for the KMAT material via transaction code CL01

    You determine the product configuration at the time of sales order creation. At a technical level, this implies the selection of characteristic values that constitute the configurable product. The system requires the

    characteristic values of the product during the sales order pricing for calculation of standard cost. The pricing reference characteristic acts as a medium to make the characteristic values available at the time of sales

    order pricing.

    Create a pricing reference characteristic via transaction code CT04. Create a reference characteristic w ith a characteristic group REF using transaction code CT04 (Figure 3). Enter REF in the Chars Group f ield.

    Enter ZPRREFCHAR in the Characteristic f ield. Then enter the start date, in my example 10/05/2006, to provide the validity start date of the characteristic. Press Enter and click on the Yes button to create a new

    characteristic. Fill in the Basic data tab to define the pricing reference characteristic.

    Figure 3 Pricing reference characteristic

  • Connect the pricing reference characteristic w ith the sales procedure by manually entering the communication structure SDCOM in the Table name f ield in the Addnl data (additional data) tab (Figure 4). You must do

    this to make the variant configuration values available to the SD module through the SDCOM communication structure. Once the setup is complete, the system automatically transfers the product configuration (selected

    characteristic values of the product) to sales order pricing for dynamic computation of the standard cost.

    Figure 4 Reference table in pricing reference characteristic

    Add a procedure to characteristic values via transaction code CT04. Write $self.='' in the procedure (Figure 5), replacing w ith the name of the reference characteristic

    and w ith the name of the characteristic value. In my example, these refer to ZPRREFCHAR and ZRAM-VAR1, respectively. Do this w hen you define the characteristics using transaction code CT04. Go to

    the Values tab and from the menu path select Extras>Object dependencies>Editor. Select Procedure as the relationship type to input the illustrated code, w hich you must do for all the characteristics other than the

    pricing reference characteristic. This enables the reference characteristic to hold the values of selected characteristic values.

    Include the pricing reference characteristic when you define the class for the KMAT material via transaction code CL01. Use transaction code CL01 and enter 300 in the Class type f ield to enable use of the

    characteristics to configure a material. Include the pricing reference characteristic as defined in the Class definition (Figure 6).

    Figure 5 Define the procedure

    Figure 6 Pricing reference characteristic in class definition

    The configurable product (the laptop) and the product characteristics have just one link, w hich you can create manually through transaction code CU41 by defining a profile for the configurable material and then

    associating it w ith the Class. It is essential to include the pricing reference characteristic in the definition of Class to link it w ith the configurable product so you can use it during sales order pricing.

    Step 2. Modify the SD Pricing Procedure

    Follow three procedures to produce SD pricing procedure changes:

    Create a new pricing condition for recording the standard cost in SD documents via transaction code V/06

    Create condition records for the new pricing condition via transaction code VK11 to maintain the standard cost of all the characteristic values

    Modify the SD pricing procedure to add the new cost condition

    Create a new pricing condition for recording the standard cost in SD documents via transaction code V/06. In transaction code V/06 (Figure 7) set Cond.category (condition category) to O. Condition category O

    enables it to interact w ith the communication structure SDCOM and fetches the product configuration characteristic values as stored in the pricing reference characteristic.

    Figure 7 Define cost condition

    Create condition records for the new pricing condition via transaction code VK11 to maintain the standard cost of all the characteristic values. Use transaction code VK11 to create condition records for all the

    characteristic values to store the standard cost associated w ith each part (Figure 8). You can access these condition records from the sales order pricing procedure to populate the new cost condition (standard cost

    condition ZCOS in my example), w hich later on adds up in the sales order pricing procedure to form the standard cost of the configured product.

    Figure 8 Condition records

    Modify the SD pricing procedure to add the new cost condition. Use transaction code V/08 to select your pricing procedure. Go to Control in the left side panel and add the requirement to the new cost condition so it is

    selected only for KMAT materials (Figure 9). Enter B in the SubT (Subtotal Type) column to add the standard costs of all the characteristics. Use the opposite requirement logic to limit the SAP standard cost condition

    VPRS in the pricing procedure (Figure 10).

    Figure 9 Pricing procedure

    Figure

    10VPRS requirement

    In the sales order, the reference pricing procedure passes on the characteristic values to SD pricing through the SDCOM structure. The new standard cost pricing condition picks up the standard cost condition value for

    the characteristic from the condition table, w hich is maintained on the basis of the characteristic value VARCOND-KOMP f ield (Figure 11). The subtotal adds up the standard cost condition values and w rites it to VBAP-

    WAVWR.

    Figure 11 Illustration of a sales order

    You use the VBAP-WAVWR f ield to post the goods issue at standard cost if the KMAT material is not a sales order stock. For sales order stock, make a modif ication in user exit MV50AFZ1

    (USEREXIT_SAVE_DOCUMENT_PREPARE or USEREXIT_SAVE_DOCUMENT) to reference the standard cost from VBAP-WAVWR instead of EBEW-STPRS, w hich is the sales order stock valuation table. If the

    production order is created w ith reference to the sales order line item, then it makes the stock a sales order stock. Under such a scenario, standard SAP references the EBEW-STPRS f ield for standard cost. Therefore,

    you must modify the user exit so the system can pick up the standard cost from VBAP-WAVWR and not from EBEW-STRPS.

    The system passes on the cost condition to billing through a copy routine. Map the new pricing condition to a value f ield in Profitability Analysis (CO-PA) so you can use the standard cost in CO-PA for profitability analysis.

    Step 3. Put User Exit Changes in Place for a Third-Party Procurement Scenario

    Third-party procurement implies creation of a purchase order (PO) from the sales order. In this case the KMAT material needs to be sales order stock. A sales order stock implies that the sales order itself must trigger the

    purchase order. The schedule lines of the sales order line item capture the purchase order information so that the vendor can supply directly to the customer against the specif ic sales order material configuration.

    R/3 automatically triggers user exit ZXCKAU04 at the time of goods receipt on the PO. For sales order stock, the system automatically picks up the standard cost from EBEW-STPRS for creating the accounting

    documents. Use the VBAP-WAVWR value through the user exit to book the inventory at standard cost at the time of goods receipt (movement type 101E). Use the user exit ZXCKAU04 to record this value in the EBEW-

    STPRS f ield. Per standard SAP logic, post goods issue (PGI) against the sales order (movement type 601E) happens at the standard cost in the EBEW-STPRS f ield. I already stored the standard cost value through the

    user exit in this f ield; the system automatically makes the bookings at the standard cost at the time of PGI.

    R/3 automatically triggers user exits ZXEPFF02 and ZXEDFU02 at the time of creation of an inter-company A/P IDoc through billing output condition RD04 from the inter-company billing document. RD04 is an SAP

    predefined billing output that you need to associate w ith the output determination procedure that the inter-company billing document uses. RD04 automatically generates the inter-company A/P IDoc.

    You need to create inter-company A/P and A/R documents w ithin the company codes to reflect the purchase of the product from the vendor plants company code by the company code attached to the sales

    organization. Use these to capture the standard cost from the EBEW-STPRS f ield. This change is required in specif ic scenarios in case the company code of the sales organization and the vendor plant are different.

    Note

    In the case of a multi-company code scenario (using different currencies), youll have to adjust the standard cost value stored in the EBEW-STPRS f ield for the appropriate foreign exchange rate. This is required

    because the VBAP-WAVWR f ield stores the value in the document currency of the company code to w hich you assign the sales organization. You need to store the value in the EBEW-STPRS f ield in the currency of

    the valuation area (company code to w hich you assign the plant), and in case of a multi-company code scenario, the tw o currencies might be different. You can calculate the exchange rate using the SAP standard

    function READ_EXCHANGE_RATE, w hich you can view using transaction code SE37. When multiplied by the value in VBAP-WAVWR it gives the exchange rate adjusted value for EBEW-STPRS.

    User exit ZXF06U06 is for the processing program of the inter-company A/P IDoc. This user exit is required only w hen you need to w rite additional processing logic for processing the inter-company A/P IDoc.

    An example of the use of this user exit w ould be to pass reference values to an inter-company A/P document. The inter-company A/P document doesnt contain the link w ith the customer sales order. If you need this link

    to conduct reconciliation of A/P documents w ith reference to the sales order, you can code the logic to populate the sales order reference in the inter-company A/P document in this user exit. For the solution discussed in

    this article, you dont need to make modif ications to this user exit.

    Akhilesh Mittal is an SAP consultant at Infosys Technologies Ltd. w ith four years of consulting experience. He has experience in the SAP FI module along w ith exposure to the Sales and Distribution module. Akhilesh is

    currently a consultant in the SAP space for a leading organization in the high technology domain. He has a degree in electronics and communication engineering from IIT Guw ahati and an MBA in f inance and systems from

    IIM Lucknow . You may contact him by email at [email protected] or [email protected].