Intercompany master planning links individual company specific master scheduling master plans. It’s used in a variety of scenarios, for instance, you might have a single manufacturing company that manufactures products which are sold through subsidiary ‘sales’ companies. Here in New Zealand we often see this pattern and most typically the sales company is located overseas. Another common pattern is a head office that performs a consolidated purchasing function for a group – perhaps each branch or subsidiary is setup as a separate Dynamics AX company.
To make this work we need master scheduling setup in each company – and we link the companies by setting up an Intercompany vendor in the downstream ‘selling’ company. The intercompany vendor in the downstream selling company refers to an intercompany customer in the upstream supply company. (At this point, it doesn’t matter whether the upstream supply company is buying or making the products for the downstream company).
An aside: ‘Upstream’ and ‘Downstream’ is APICS terminology that was introduced into intercompany master planning in AX 2012. Moving upstream you’re moving away from the ultimate end customer towards producers and vendors – downstream you’re moving towards your customers.
In the demo data Hyper-V we have a selling company DEMF (Contoso Entertainment Systems Germany) and a supply company USMF (Contoso Entertainment Systems USA). The Intercompany vendor in DEMF is US-001, and the Intercompany setup links this to customer DE-001 in USMF. Procurement and sourcing > Common > Vendors > All vendors > General > Set up > Intercompany:
Let’s just step through the Intercompany setup – the first thing to note is that on the Trading relationship tab (above) the relationship is flagged as ‘Active’ – forgetting to do that is very frustrating.
The Purchase order policies tab lets you define whether you can edit the prices on the intercompany purchase order – mostly I see this being disabled, because the purchase price is set by the upstream selling company (but you have the option of setting the purchase price from the buying trading partner):
The Purchase value mapping tab lets you define whether you’re using the actual values or External codes for some fields that are copied from the intercompany purchase order to the intercompany sales order (or vice versa):
The default value when you create an intercompany trading relationship for these fields (and the Sales value mapping fields) is ‘Not specified’ – but if you leave that set, you’ll get an error when you try to create intercompany sales/purchase orders.
The purchase agreement tab is pretty self-explanatory:
I haven’t come across an intercompany purchasing relationship that uses purchase agreements yet, but I’m sure they’re out there somewhere.
The sales order policies tab is almost the mirror image of the Purchase order policies tab:
But I’d just like to notice a couple of options. The first option is ‘Sales order numbering’. Here, you can specify the numbering of an intercompany sales order created when you create intercompany purchase orders. Next, you have a ‘Unit price equal to cost price’ flag – that sets the sales price to the inventory cost when the sales order is delivered. If you’re running with standard costs, that means that there’s no intercompany sales margin – but if you’re using FIFO or Weighted average you might see some margins generated by inventory cost revaluations.
The other important options here are the ‘Lines > Batch number’, and ‘Lines > Serial number’ flags. With these set the batch numbers (or serial numbers) issued to the intercompany sales order are transferred automatically to the intercompany purchase order. But note that in the case of the batch numbers, the information on the selling company’s Inventory batch master (like manufacturing and expiry dates) isn’t copied into the buying company.
Moving on, we have a Sales value mapping tab:
And a Sales agreement polices tab:
And one final note about the intercompany trading relationship setup – in AX2012 you can perform this setup from either side of the relationship – that is you can be logged into the downstream sales company and setup from the intercompany vendor, or you can be logged into the upstream supply company and do the setup from the intercompany customer.
Let’s check that this setup is working – we need a product which has been released into both companies, in the demo data D0001 fits the bill:
So in the DEMF company let’s create a purchase order for our US-001 vendor:
So far so good – when we create an intercompany purchase order the system creates an intercompany sales order.
Let’s add the item to the purchase order:
The ‘Manage’ tab shows a short-cut button that’ll take us directly to the intercompany sales order. (Incidentally the last two versions of the demo Hyper-V images seem to be a bit reluctant to open sales orders sometimes, so if you’re following this in a demo image and it crashes just re-start Dynamics AX and continue):
As we’d expect, (and shown above) the intercompany sales order demand is seen by master planning in the supply company – but that’s not really intercompany master planning.
Jump back into the buying company and setup a Demand forecast for that item. Product information management > Common > Released products > Plan > Forecast > Demand forecast:
We’ll check that master planning is going to generate planned purchase orders (on the Default order settings):
And set the intercompany vendor as the primary vendor for this item:
One final check – check that the forecast is processed by master planning by updating the item’s net requirements (I’m working in the CU9 demo Hyper-V image and at this point I had to define ‘Working times’ for the Standard calendar in the DEMF company):
Alles in ordnung. In the static master plan, master plan 10, we have our demand forecast generating planned purchase orders.
Two final bits of setup – first we need to check that in the USMF company the master plan we’re going to use is setup to inherit demand from the buying company. Master planning > Setup > Plans > Master plans:
Pretty obvious. We’ve switched on intercompany master planning and linked to the static plan in the DEMF company.
The final bit of setup is an Intercompany planning group. That tells the system which master plans to process, and in which sequence. In our simple example we need to process the master plan in the downstream selling company (to generate our intercompany demands) before we process the upstream supply company. Master planning > Setup > Intercompany planning groups:
Now we are ready to run Intercompany master scheduling (which of course, is normally setup up as a recurring batch job, just like single company master scheduling). Master planning > Periodic > Intercompany master scheduling:
So we’re selecting an Intercompany planning group – no surprise there, but we’re also asked to enter a ‘Number of iterations’. In our current simple example we only need to process each master plan once, so one iteration is sufficient – but I worked with a company which had two factories, and each supplied both finished goods and intermediates to the other factory, so a complete generation of the master plans required two iterations. For the second and subsequent iterations of the plans you’re able to use Net change or Regenerative processing. Net change will be much faster, but if you use Net change, your planners might need to group planned orders before firming them.
After the intercompany master scheduling has run, Net requirements shows the planned intercompany demand in the USMF company – reflecting the planned purchase orders in the DEMF company:
But of course, it’s not just Net requirements that shows the intercompany demands. There’s an inquiry at Master planning > Common > Intercompany supply and demand:
And more specific inquires at Master planning > Inquires > Incoming planned intercompany demand, and Master planning > Inquires > Outbound planned intercompany demand. Finally Multi-level pegging (available from various forms) shows intercompany demands – in a format very similar to Inquires > Explosion: