Dynamics NAV \ Business Central – Thoughts on the Direct Costs Applied and Purchases Accounts


One thing I’ve noticed when posting Purchase Invoices with Inventory items in Dynamics NAV \ Business Central are the additional distributions to the Direct Cost Applied and Purchases accounts?

I’ve never been quite sure what the Direct Cost Applied account is, and when I’ve looked into it, I can’t find much information out there either. While researching for a previous post (here) a theory struck me for why the system might be posting to this account. Therefore, in this post I’ll detail my thoughts as to why Dynamics NAV \ Business Central posts to the Direct Costs Applied and Purchases accounts when posting Purchase Invoices using Inventory Transactions.

Purchase Invoicing in Dynamics GP

Firstly, I’ll go back to my roots – let’s see what distributions Dynamics GP creates when posting a Purchase Invoice with an Inventory Item. In this example we are receiving the Item and posting the invoice at the same time. Dynamics GP calls this a Shipment \ Invoice.

Dynamics GP – Shipment\Invoice Distributions

As you can see the distributions created are as follows:

Debit: Inventory

Credit: Accounts Payables

Debit: VAT

This would also create one General Ledger Journal in Dynamics GP (G/L Register is the NAV\BC equivalent) with one Source Document (Source Code is the NAV\BC equivalent).

I’m not an accountant but this makes sense to me. We bought something for £6 so we have a Credit postings to Accounts Payables. We have increased our Inventory so we have a £5 Debit to Inventory, and finally a Debit to VAT.

As this is not an expense invoice there are no P&L implications at this point. We will have Cost of Goods Sold postings when we sell the item.

Purchase Invoicing in Dynamics NAV \ Business Central

When I post a Purchase Invoice for an Inventory Item in Dynamics NAV \ Business Central the distributions created are below. (*Please note I have Automatic Cost Posting switched ON in Inventory Setup)

General Ledger Entries – Purchase Invoice – Automatic Post to GL switched OFF

There’s a couple of things to note here. Firstly, there are two more distributions when compared to Dynamics GP. We have distributions to the Direct Cost Applied account (7191) and the Purchases account (7110). Secondly, some GL Entries have a Source Code of PURCHASES and others have a Source Code of INVTPCOST.

Why the extra distributions?

If we dig deeper and go to the G/L Registers for this Purchase Invoice we can see the system has created two separate G/L Registers.

This G/L Register for the PURCHASES portion of the transaction:

G/L Register for PURCHASES

And this G/L Register for the INVPTCOST portion of the transaction

G/L Register for INVPTCOST

The system has created two G/L registers because in Dynamics NAV \ Business Central you can defer the INVPTCOST portion of the GL postings via the “Automatic Cost Posting” option in the Inventory Setup.

Because of this each of these separate G/L Registers needs a balancing entry in order for the debits and credits to balance and the posting to work. In the case of the PURCHASES G/L Register of the transaction the 7110 Purch, Retail account is used and for the INVPTCOST G/L Register the 7191 Direct Cost Applied account is used.

One Possible Conclusion

Based on these findings one theory I have for the postings to the Purchases and Direct Costs Applied accounts when dealing with Inventory Items is to accommodate the Automatic Cost Posting option in the Inventory Setup. (the ability to defer the posting of the Inventory portion of the transaction). It could also be because for other aspects of the costing engine that I haven’t delved into yet.

If this option didn’t exist, and Inventory postings were always posted in real time, I can’t see why there would be a need to post to these additional accounts.

This is just an observation. I have no clear evidence to back this up. I’m just a Dynamics NAV \ Business Central newbie wondering why this works differently to Dynamics GP.

Above all I’m here to learn so if there are other reasons for the additional distributions I’d love to hear them.

Thanks for reading

Dynamics NAV \ Business Central – Postings Group

Quick Introduction

All ERP systems aim to make data entry simple, fast and accurate. One way to achieve this is to default as much data as possible when the user is entering transactions, including the General Ledger distributions.  In this post I aim to show how Dynamics NAV \ Business Central defaults the General Ledger codes when entering a Sales Invoice using inventory Items. Also, as I come from a Dynamics GP background, I’ll start off by providing a quick overview of how Dynamics GP achieves this, to offer a comparison between the two Dynamics systems.

The Dynamics GP way

In Dynamics GP you enter default General Ledger codes on entities like customers, vendors, items, fixed assets and then the “catch all” which is the Posting Accounts Setup window.

Once this has been configured the General Ledger codes default automatically onto the transaction. For example, when creating a Sales Invoice for an inventory item usually the control account would default from the customer card and the revenue code would default from the inventory item (you can change this but usually it would be setup this way).
At this point the user can potentially edit and change the General Ledger codes on the transaction prior to posting thus overriding the system defaults. Being able to edit the General Ledger codes inside the transaction gives the user more flexibility however it can also introduce mistakes or errors. An example would be someone changing the control account, which would likely cause a reconciliation issue at month end.

Dynamics GP – Default SOP Distributions can be edited as per above

The Dynamics NAV \ Business Central way

From a Dynamics GP perspective things change quite dramatically when you look at how Dynamics NAV \ Business Central defaults the General Ledger codes. Instead of assigning specific General Ledger codes on customers, vendors, items, fixed assets, you assign Posting Groups to each of these entities. It’s the posting groups that have the General Ledger codes assigned and based on the combination of the posting groups used, general ledger postings are automatically performed when the transaction is posted. This means unlike Dynamics GP you can’t edit or change the default General Ledger codes prior to posting which gives less flexibility but there’s also less chance of mistakes being made.

So how do Dynamics NAV \ Business Central posting groups work?

There are two main types of posting groups – Specific and General.

Specific posting groups are used to default the control accounts. For example, I’ve assigned the specific Customer Posting Group “DOMESTIC” to the customer below:

Business Central – Customer Card

If we open the Customer Posting Group window and look at the setup, we can see when I post a transaction for this customer the General Ledger code 40400 will be used for the receivables control account.

Business Central – Customer Posting Groups

Moving on to the General Posting Groups things become a little more complex.

General posting groups can be split into two further groups – Business and Product. You assign “Business” posting groups to customers and vendors and “Product” postings groups to Items.

The combination of the General Business Posting group from the customer and the General Product Posting Group from the item determines the General Ledger codes that will be used. This is something that is best explained via an image, so I’ve included a screen shot below of the General Posting Setup window from my demo version of Business Central.

Business Central – General Posting Setup

As you can see the posting groups form a matrix and the combination of “Business” (labelled Gen. Bus. Posting Group in the window) and “Product” (labelled Gen. Prod. Posting Group in the window) determines the General Ledger codes used when you post a transaction.

Therefore, based on the General Posting Setup above, if a customer has been assigned a Gen. Bus Posting Group of DOMESTIC as per below:

Business Central – Customer Card

And the item they are buying has been assigned a Gen. Prod Posting Group of RETAIL as per below:

Business Central – Item Card

Then based on the General Posting Setup matrix defined in the General Posting Setup window the General Ledger sales account that will be used when the transaction is posted is 10200.

Defaulting the VAT Codes – VAT Posting Groups

A similar concept is used when Business Central is determining the VAT percentage and VAT General Ledger codes to be used. The matrix is defined in the VAT Posting Setup window as per below:

Business Central – VAT Posting Setup

So, in this example if the VAT Bus. Posting Group on the customer was “DOMESTIC” and the VAT Prod. Posting Group used on the Item is “STANDARD” the VAT percentage used would be 20 and the General Ledger code used would be 56100.

So there you have it. A very quick overview of how Dynamics NAV \ Business Central uses Posting Groups to create the General Ledger distributions when posting a Sales Invoice with inventory items.

Thanks for reading.

Warehouse Shipment – The record you tried to open is not available. The page will close or show the next record

While testing the process of creating warehouse shipments I stumbled across an interesting issue. After creating the warehouse shipment from the sales order, I was presented with the message below:

1 Warehouse Shipment Header has been created

Success! I’ve created the warehouse shipment. I clicked OK but was then presented with the message below:

The record that you tried to open is not available. The page will close or show the next record

Hmmm. Something isn’t right. I’ve created warehouse shipments before following the same steps and never had that message. To ensure the shipment had created correctly I clicked Navigate > Whse. Shipment Lines and was presented with the shipment lines as per below. Everything must be fine after all.

Whse. Shipment Lines

I made a note of the warehouse shipment number and hopped over to the Warehouse Shipments page to continue my task however SH000010 wasn’t listed.

Warehouse Shipments

I checked for filters and it was at this point the penny dropped. When I setup my user I didn’t add myself as a “Warehouse Employee” for all locations.

Therefore, to fix the issue I went to the “Warehouse Employees” page and added myself as a user of this location:

Warehouse Employees

Once I had done this I could see the warehouse shipment. This also explains the strange “The record you tried to open is not available. The page will close of show the next record” message when creating the warehouse shipment.

Thanks for reading