Subcontracting in SAP Business ByDesign – Part II
You might be familiar with the blog post of my colleague about Subcontracting in Business ByDesign, that mainly focuses on how the logistics material flow in a subcontracting process can be modelled using two different sites in SAP Business ByDesign.
In this blog post I want to have a deeper look into how one could set up the system to better align the production process with the service purchasing process.
Let me start with an overview of the subcontracting process using two sites: (Subcon1.PNG)
The following steps need to be executed to run the process (more details can be found in the blog mentioned above):
- Create a sales order for the finished product (Painted Sheet).
- Run the MRP in site P1100 to create a stock transfer proposal to cover the sales demand.
- Run the multi-level MRP in subcontractor site SR1100 to create a production order for the painted sheet and a stock transfer proposal for the sheet and paint to cover the production component demand.
- Run the MRP in P1100 to create a purchase proposal for the sheet and paint, order the components, and post the goods receipt.
- Create a purchase order for the subcontracting service.
- Release the stock transfer proposal for the sheet and paint, and post the goods issue and goods receipt to move the sheet and paint from site P1100 to site SR1100.
- Release the production proposal and release the production order.
- Confirm the purchase order of the subcontracting service and confirm the production order in site SR1100 to create the painted sheet.
- Release the stock transfer proposal for the painted sheet and post the goods issue and goods receipt to move the painted sheet from site SR1100 to site P1100.
- Post invoice for the subcontracting service.
- Ship the painted sheet to the customer.
In this modelling approach the subcontracting process is mainly divided into two separate processes:
- The logistics process to model the flow of materials.
- The service purchasing and invoicing process
When running the subcontracting process, the company must ensure that the logistics process and the purchasing process are as much in sync as possible:
- The purchasing costs and the production order service costs should be in sync, to have a proper material cost estimate and production lot costing.
- The quantity of the painted sheet delivered by the subcontractor should be in sync with the quantity of the service invoiced.
In the following I want to propose some modelling approaches that could help to simplify this synchronization.
Let me start with the service master data. In subcontracting it is a common practice that a price is defined based on the unit of measure of the good received by the subcontractor. In my example, a subcontractor might invoice for the number of sheets that got painted. As a consequence the service UoM could be defined in ‚Each (EA)‘.
Next the service purchasing costs normally need to be assigned directly to the production lot. However, the production lot is not supported as an account assignment object in purchasing documents. As a workaround, you could use the same cost center in the production resource master data and the purchasing documents.
When the service valuation is kept in sync with the purchasing price, the costs would then be implicitly moved from the purchasing document via the cost center onto the production lot. In addition, by defining the production resource consumption being proportional to the operation quantity, I create a direct link between the quantities produced by the subcontractor and the production service costs.
In the following I will guide you through all master data and an end-to-end process with the above modelling approaches.
I have set up a service ‘SR_PAINTING’ with a base UoM = EA and a cost rate, that should reflect the purchasing price of the service.
In the service list price, I have maintained an amount identical to the service valuation costs.
Next, let’s look at the production model.
Since the painting operation is executed at the subcontracting side, I have assigned the production model to my subcontracting site SR1100. The Bill-of-Operations (BoO) is defined for a quantity of 1 EA for the output product SR_SC_FG_01.
Next, let me have a look at the production activity, specifically at the services. Here, I use the same service, for which I have defined the list price. Since I want to calculate the service costs in EA, I set the ‘Calculation Method’ to ‘Proportional to Operation Quantity’, and the ‘Variable Quantity’ to 1 EA.
Now we need to understand the relationship between the bill of operation activity and the resource master data. In my bill of operation activity, I have used a new activity type ‘Painting’.
These activity types can be defined in the business option ‘Activity Types for Bills of Operations’, which you can find in the ‘Fine Tuning’ section of business configuration.
Now let’s check the resource master data. Since the resource is used in Site SR1100, it must be assigned to that site and a corresponding logistics area.
On the ‘Valuation’ tab, I however use the cost center P1100, and please keep in mind that I will use the same cost center as an account assignment object in my purchasing documents. It might be a good practice to use at least one cost center per subcontractor. Normally, resource costs can directly be defined on the same ‘Valuation’ tab. However, since I want to use the service cost rate instead, I first must delimit the cost rates to a date in the past (see action ‘Delimit’). All production activities executed after that date will use a service cost rate instead.
On the ‘Services’ tab I added a row for my ‘SR_PAINTING’ service for the ‘Activity Type’ Painting and the calculation method ‘Proportional to Operation Quantity’. With this entry I establish the connection between the Bill-of-Operation data and the resource valuation, which means that by producing 1 ea of the painted sheet, exactly 1 ea of the SR_PAINTING service will be added to the production lot as resource costs.
The main reason for creating a new activity type is to use the same resource for various subcontracting services.
Let me now execute the end-to-end process. I will only focus on the specific aspects on production lot costing and purchasing, since the full logistics end-to-end process is already part of the other blog post.
As a starting point, I have already created a sales order for site P1100, and already transferred stock for the sheet and paint from site P1100 to stie SR1100 and released the production proposal for the painted sheet in site SR1100.
When executing the production confirmation, the system now automatically uses the service SR_PAINTING in the production task activity with a quantity of 5 EA, based on my previous master data settings in the BoO and resource master data.
The corresponding journal entry shows that a cost of 20 USD / EA is used, as per the service valuation data. Also, cost center P1100 is credited, and the production lot is debited.
Next, I create a purchase order for the same service for the subcontractor, again using the same cost center P1100 as account assignment.
After posting the goods receipt, performing the supplier invoicing, and executing the GR/IR run, the Cost center line-item report (Work Center Cost and Revenue) shows the following result:
With that report you can now identify if your production lot costing and the external subcontracting service expenses are in sync. In my example, I find a difference of 7,75 USD, which is the additional tax amount that I missed in the service valuation. Also, the ‘Valuation Quantity’ could be used to identify cases, where the production order quantity and invoiced service quantity are not in sync.
To further automate the subcontracting process, one could think of automating some of the manual steps via a potential partner add-on:
- Create a service purchase order for each subcontracting production order automatically, e.g. during production order release.
- Creating a production order confirmation for the goods and services receipt of the service purchase order (or vice versa).
I hope you find the above approaches helpful when setting up your subcontracting process.
Great blog Stefan. This closes the loop on valuation and invoicing and completes the sub-contacting process in ByDesign.