How to Troubleshoot Inventory Valuation Issues in Business Central (v27)
Introduction
Inventory valuation errors in Microsoft Dynamics 365 Business Central can lead to serious financial misstatements, compliance issues, and operational confusion. This guide provides a detailed framework for investigating, diagnosing, and resolving these issues. It’s designed for finance managers, controllers, IT administrators, and power users who need a deep technical understanding of how inventory valuation works in Business Central.
1. Typical Causes of Wrong Inventory Values
Misaligned inventory values often arise from a combination of configuration gaps, timing delays, and posting logic issues. Here's a breakdown of the most common causes:
1.1 Timing Differences in Posting
-
Issue: Value Entries may not be immediately posted to G/L due to asynchronous processes.
-
Mechanism: If the “Automatic Cost Posting” or “Automatic Cost Adjustment” settings are disabled or set to delay, discrepancies between inventory subledger and G/L can appear.
-
Prevention: Use the “Inventory - G/L Reconciliation” report regularly and automate cost posting where possible.
1.2 Incorrect Costing Method Configuration
-
Issue: Mismatched costing methods (FIFO, Average, Standard) lead to wrong cost evaluations.
-
Mechanism: Business Central applies different valuation logic per method. Average cost relies on periodic adjustments; FIFO depends on chronological issue handling.
-
Prevention: Ensure each item’s costing method aligns with business process, especially for kits or assemblies.
1.3 Missing or Incomplete Cost Adjustments
-
Issue: Value Entries exist, but no cost adjustments have occurred.
-
Mechanism: The Adjust Cost – Item Entries job updates Value Entries based on actual transaction timing and costing method. Missing this leads to inaccurate costs.
-
Prevention: Schedule
Adjust Cost - Item Entriesto run regularly, particularly before month-end close.
1.4 Negative Inventory
-
Issue: Posting sales or transfers when no quantity is available creates distorted valuation.
-
Mechanism: The system uses estimated cost until incoming inventory retroactively adjusts it.
-
Prevention: Use
Inventory Availabilitywarnings and disable negative inventory if possible.
1.5 Configuration Issues in Item Cards or Posting Groups
-
Issue: Incorrect General Product/Business Posting Groups cause wrong G/L account selection.
-
Mechanism: The
General Posting SetupandInventory Posting Setupdefine accounts for inventory, COGS, purchase, and adjustments. -
Prevention: Review posting group assignments periodically and reconcile with G/L account setups.
1.6 Currency and Exchange Rate Impacts
-
Issue: Fluctuations in currency rates between transaction date and posting date lead to valuation gaps.
-
Mechanism: Business Central calculates cost based on local currency. Misalignment in exchange rate application impacts Value Entries.
-
Prevention: Use the Currency Exchange Rate table and periodically revalue entries.
1.7 Dimension Posting Errors
-
Issue: Dimensions missing in Value Entries or G/L entries break segment-based reporting.
-
Mechanism: Dimensions must flow through item ledger, value entry, and G/L posting processes.
-
Prevention: Enable dimension requirements in General Ledger Setup and validate default dimensions.
2. How to Trace Value Entries and Item Ledger Entries
Understanding how transactions flow through Business Central’s data model is key to diagnosis.
2.1 Core Tables and Relationships
| Table Name | Description |
|---|---|
| Item Ledger Entry (32) | Records all inventory movements (receipts, issues, transfers). |
| Value Entry (5802) | Stores the cost and G/L link to item ledger entries. |
| G/L - Item Ledger Relation (5803) | Links Value Entries to their G/L postings. |
2.2 Navigation Steps
-
Item Ledger Entries: Go to Item > Ledger Entries > Item Ledger Entries
-
Value Entries: Use Navigate > Value Entries from an Item Ledger Entry
-
G/L Impact: Search for “G/L - Item Ledger Relation” in dev environment or use queries to cross-reference
Entry No.withG/L Entry No.
2.3 Key Fields
-
Item Ledger Entry No.: Links back to the physical inventory move. -
Entry Type: Differentiates Sale, Purchase, Adjustment, etc. -
Cost Posted to G/L: Boolean flag confirming cost post completion. -
Cost Amount (Actual): Realized cost of the transaction.
2.4 Troubleshooting Techniques
-
Filter Value Entries by
Cost Posted to G/L = falseto find pending costs. -
Use
Entry TypeandDocument No.to trace patterns by transaction class. -
Compare expected vs. actual cost using Adjust Cost logic and history of cost changes.
3. Reconciliation Steps: Inventory to General Ledger
Use the Inventory to G/L Reconciliation process to align subledger values with general ledger totals.
3.1 Running the Report
-
Navigate to Inventory Valuation – G/L Reconciliation
-
Key filters:
-
Date Range
-
Item/Location/Dimension filters
-
Include WIP (if manufacturing is enabled)
-
3.2 Interpreting the Output
| Column | Meaning |
|---|---|
| Inventory Value | Total item value from Value Entries. |
| Inventory (G/L) | Posted G/L balance for inventory accounts. |
| Variance | Difference = Inventory Value – Inventory (G/L) |
3.3 Investigating Variances
-
Drill into variance lines.
-
Compare
Cost Amount (Actual)againstAmountin G/L Entry. -
Verify posting group logic via
Inventory Posting SetupandGen. Posting Setup.
3.4 Corrective Actions
| Scenario | Action |
|---|---|
| Cost not posted to G/L | Run Adjust Cost - Item Entries then Post Inv. Cost to G/L |
| Wrong G/L account | Fix posting group mapping and post adjusting G/L entries |
| Transaction posted late | Use posting date filter corrections and memo entries |
4. Cost Adjustment: When and Why It Matters
Cost adjustment is critical to accurate inventory valuation in BC. It's responsible for distributing actual costs after indirect effects (like inbound invoices or returns) arrive.
4.1 Core Logic
-
Applies FIFO, Average, or Standard cost principles.
-
Retroactively adjusts outbound transactions to reflect true cost.
-
Can impact COGS, Inventory, or WIP depending on scenario.
4.2 Adjustment Modes
-
Automatic Cost Adjustment: Triggered on posting; limited to selected entry types.
-
Manual Run: Use
Adjust Cost - Item Entriesfrom search or batch job.
4.3 Parameter Options
| Option | Effect |
|---|---|
| Item Filter | Adjust only selected SKUs |
| Posting Date | Cut-off for cost flow adjustments |
| Calculate per Entry | Enables transaction-level granularity |
4.4 Posting to G/L
-
Use
Post Inventory Cost to G/Lbatch job after adjustment. -
Check the
Cost Posted to G/Lflag for completion.
5. Common Mistakes in Manufacturing Costing
Manufacturing introduces added complexity with work-in-progress (WIP), routings, and capacity costs.
5.1 Cost Rollup Misconfigurations
-
Issue: Production BOMs or Routings are missing cost components.
-
Fix: Run
Calc. Standard Costand roll up new costs before posting production orders.
5.2 Output and Consumption Timing
-
Issue: Output posted without consumption or vice versa.
-
Fix: Use
Expected Costposting setup to bridge temporary valuation.
5.3 Incorrect Capacity Cost Allocation
-
Issue: Routing work centers don’t carry expected overhead.
-
Fix: Check Work Center and Machine Center cost settings.
5.4 WIP Valuation Gaps
-
Issue: WIP is not transferred to Finished Goods correctly.
-
Fix: Close production orders and post all related output and consumption.
5.5 Period-End Finalization
-
Always:
-
Post final cost adjustments
-
Recalculate and roll-up standard costs
-
Reconcile WIP and post final outputs
-
Appendix: G/L Audit Automation Utility
As part of this guide, a downloadable Business Central AL extension is provided to automate the validation process of inventory valuation postings. This utility includes:
-
A detailed audit report that compares each Value Entry’s expected G/L accounts against the actual G/L accounts posted.
-
A list page for interactive review and filtering of mismatches.
-
A page extension on Value Entries with an action to trigger the audit.
-
Export to Excel functionality for documentation and review.
Download
You can download or contribute to the open-source project here:
Comments
Post a Comment