Dynamics NAV – Item Charges – Non Inventoriable Costs

In a previous post of Dynamics NAV Essentials, we have shed a light on the item charges functionality in Dynamics NAV, it was precisely about the landed costs associated with the purchase order receiving, such as but not limited to: customs, freight, insurance, physical handling …etc.

On the other hand, the item charges functionality provides further enhanced capabilities in order to track and record any associated costs to the “outbound transactions” such as sales shipments, return shipment, return receipt and transfer receipt. These functions illustrated below are allowed on the “Item Charge Assignment” form in Dynamics NAV.

Item Charges – Non Inventoriable Costs

It’s important to distinguish between the two types of item charges, which are illustrated below:

  1. Inventoriable Cost, which affect the actual cost amount of the item. This post to the inventory GL account.
  2. Non Inventoriable Cost, which doesn’t affect the actual cost amount of the item, it doesn’t post tot the inventory GL account.

In this essence, it is important to take into consideration that the “non Inventoriable cost” represent additional expenses to the item which is not associated with the “purchase order” or Landed Cost as commonly known

In the following example, we will illustrate how we may use the item charges in order to automate the “expenses” associated with the sales order delivery to be included as a value entry on the item level, but doesn’t directly affect the inventory item actual cost.

The following form shows the item charges, we have created a new item for the External Works” to be associated with the sales shipments.

Item Charges – Non Inventoriable Costs

The next step is to record the Purchase Order and invoice the vendor which provides external works services. Although, this expense will be associated with a specific sales order.

On the purchase order line, pick the “Item Charge” as a line type. quantity and direct unit cost are to be filled out before assigning the item charge to the sales shipments,

Item Charges – Non Inventoriable Costs

Click on Line > Item Charge Assignment

Item Charges – Non Inventoriable Costs

On the item charge assignment form, you will have to click on “Actions” tab and then choose “Get Sales Shipment Lines”, then highlight the specific columns which needs to be associated with Non Inventoriable costs.

Item Charges – Non Inventoriable Costs

The next step is to do the “suggest Item Charge Assignment” in order to allocate the total costs over sales shipments lines, there are basically four options for the item charge assignment which are:

  • Equally
  • By Amount
  • By Weight
  • By Volume

Item Costs | Actual versus Non Inventoriable Costs

Posting the above purchase order with item charges assigned to sales shipments lines will affect the non Inventoriable cost of the item, it will record a value entry record on the item ledger entries. Although, inventory accounts will not be revalued.

Item Charges – Non Inventoriable Costs

Best Regards,
Mahmoud M. AlSaadi

Dynamics GP – Year End Closing – Query Timeout Expired Error | “The Stored Procedure glYearEndCloseMain”

If you are performing the year end closing procedure and encountering the error ” Query Timeout Expired” specifically at step 3 out 7, then an error message popped up ” The stored procedure glYearEndCloseMain returned the following results DBMS … “, you need to know that the GL year end closing procedure has failed as it partially closed the year.

Year End Closing - Query Timeout Expired Error | "The Stored Procedure glYearEndCloseMain"

Issue Diagnosis:

When closing the year, Dynamics GP goes through seven steps precisely in order to reconcile GL balances, check returned accounts, account types … etc and close the year.

Step 3 calls stored procedure “glYearEndCloseMain” which primarily moves records from GL20000 to GL30000, create BBF records. Here is the SQL statement which is causing the system to hang:

    DECLARE @stored_proc_name CHAR(26);
    DECLARE @retstat INT;
    DECLARE @param23 NUMERIC(19, 5);
    DECLARE @param24 INT;
    DECLARE @param25 INT;
    SELECT @stored_proc_name = ‘TWO.dbo.glYearEndCloseMain’;
    EXEC @retstat = @stored_proc_name 2017,
                                      @param23 OUT,
                                      @param24 OUT,
                                      @param25 OUT;
    SELECT @retstat,

The very initial step to ensure that you restore Dynamics GP databases since in such case the GL tables would be partially corrupted due to having “partial year end closing”

The next step is to check the “Auto Growth – Maximum Size ” property on the database server for the GP database. The case occurred due to having insufficient database size restricted by the maximum size.


Dynamics 365 Business Central

Count On SIROCo For Expert Dynamics 365 Business Central Support

Microsoft Dynamics 365 Business Central is a cloud-based software as a service (SaaS) business management solution that can be paired with Office 365 and other Dynamics 365 applications for an integrated experience. SIROCo offers a wide variety of Dynamics 365 Business Central Support Services.