---
id: object/codeunit/5895
type: object
title: Codeunit 5895 "Inventory Adjustment"
summary: Codeunit 5895 "Inventory Adjustment" in Base Application (Microsoft.Inventory.Costing). 21 public procedures, 88 events. Present since at least BC23, still in BC30, changed in BC24-30.
tier: official
language: en
tags:
  - codeunit
  - base application
versions:
  introduced: null
  last_changed: "30"
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: 0bae8348205725fd58426c4158fa7a7bf04dbdb8f6bbec4f58d12f8992f9ef36
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Inventory/Costing/InventoryAdjustment.Codeunit.al
    title: src/Layers/W1/BaseApp/Inventory/Costing/InventoryAdjustment.Codeunit.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn: []
  objects: []
  features: []
  topics: []
  localizations:
    - localization/ru
  videos: []
  posts: []
  guidelines: []
  changes:
    - change/bcapps/12066
object_type: codeunit
object_id: 5895
name: Inventory Adjustment
namespace: Microsoft.Inventory.Costing
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
source_major: "29"
obsolete: null
countries:
  - ru
ms_search_form_ids: []
counts:
  fields: 0
  procedures: 223
  events: 88
  subscribers: 0
relations:
  out: 0
  referenced_by: 0
  pages: 0
  extended_by: 0
  event_subscribers: 17
  calls: 6
  called_by: 0
  implements: 1
---

# Codeunit 5895 "Inventory Adjustment"

> Codeunit 5895 "Inventory Adjustment" in Base Application (Microsoft.Inventory.Costing). 21 public procedures, 88 events. Present since at least BC23, still in BC30, changed in BC24-30.

Base Application · Microsoft.Inventory.Costing · BC23-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Inventory/Costing/InventoryAdjustment.Codeunit.al) · facts from BC29

## Properties

| Property | Value |
|---|---|
| Permissions | TableData Item = rm, TableData "Item Ledger Entry" = rm, TableData "Item Application Entry" = rimd, TableData "Value Entry" = rim, TableData "Avg. Cost Adjmt. Entry Point" = rimd, TableData "Inventory Adjmt. Entry (Order)" = rm |

## Events published

- `OnAfterCalcInbndEntryAdjustedCost(var AdjustedCostElementBuf: Record "Cost Element Buffer"; var InbndValueEntry: Record "Value Entry"; InbndItemLedgEntry: Record "Item Ledger Entry"; ItemApplnEntry: Record "Item Application Entry"; OutbndItemLedgEntryNo: Integer; var CompletelyInvoiced: Boolean)` (integration)
- `OnAdjustOutbndAvgEntryOnBeforeForwardAvgCostToInbndEntries(var OutbndItemLedgEntry: Record "Item Ledger Entry")` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnAdjustOutbndAvgEntryOnBeforeForwardAvgCostToInbndEntries
- `OnAdjustItemAvgCostOnAfterLastTempAvgCostAdjmtEntryPoint(var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary; var Restart: Boolean; var IsHandled: Boolean)` (integration)
- `OnAdjustItemAvgCostOnAfterCalcRestart(var TempExcludedValueEntry: Record "Value Entry" temporary; var Restart: Boolean)` (integration)
- `OnAvgValueEntriesToAdjustExistOnAfterSetAvgValueEntryFilters(var ValueEntry: Record "Value Entry")` (integration)
- `OnAvgValueEntriesToAdjustExistOnAfterSetChildValueEntryFilters(var ValueEntry: Record "Value Entry")` (integration)
- `OnAvgValueEntriesToAdjustExistOnFindNextRangeOnBeforeAvgValueEntriesToAdjustExist(var OutbndValueEntry: Record "Value Entry"; var ExcludedValueEntry: Record "Value Entry"; var AvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point")` (integration)
- `OnAfterGetValuationPeriod(var CalendarPeriod: Record Date; Item: record Item)` (integration)
- `OnAfterIsAvgCostItem(var Item: Record Item; var AvgCostItem: Boolean)` (integration)
- `OnAfterMakeMultiLevelAdjmt(var Item: Record Item; IsOnlineAdjmt: Boolean; PostToGL: Boolean; var FilterItem: Record Item)` (integration)
- `OnBeforeCalcInbndEntryAdjustedCost(var AdjustedCostElementBuf: Record "Cost Element Buffer"; ItemApplnEntry: Record "Item Application Entry"; OutbndItemLedgEntryNo: Integer; InbndItemLedgEntryNo: Integer; ExactCostReversing: Boolean; Recursion: Boolean; var CompletelyInvoiced: Boolean; var IsHandled: Boolean)` (integration)
- `OnBeforeCopyILEToILE(var Item: Record Item; ItemLedgEntry: Record "Item Ledger Entry")` (integration)
- `OnBeforeCopyItemToItem(var FromItem: Record Item; var ToItem: Record Item; var IsHandled: Boolean)` (integration)
- `OnBeforeIsUpdateCompletelyInvoiced(ItemLedgEntry: Record "Item Ledger Entry"; CompletelyInvoiced: Boolean; var Result: Boolean; var IsHandled: Boolean)` (integration)
- `OnBeforeMakeMultiLevelAdjmt(var Item: Record Item; IsOnlineAdjmt: Boolean; var PostToGL: Boolean; var IsHandled: Boolean)` (integration)
- `OnBeforeMakeMultiLevejAdjmtOnAfterGetParameters(var CostAdjustmentParamsMgt: Codeunit "Cost Adjustment Params Mgt.")` (integration)
- `OnBeforePostItemJnlLine(var ItemJournalLine: Record "Item Journal Line"; OrigValueEntry: Record "Value Entry"; NewAdjustedCost: Decimal; NewAdjustedCostACY: Decimal; SkipUpdateJobItemCost: Boolean; var IsHandled: Boolean)` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnBeforePostItemJnlLine
- `OnBeforeOpenWindow(var IsHandled: Boolean; var WindowDialog: Dialog; var WindowIsOpen: Boolean)` (integration)
- `OnBeforeUpdateAdjmtBuf(OrigValueEntry: Record "Value Entry"; NewAdjustedCost: Decimal; NewAdjustedCostACY: Decimal; ItemLedgEntryPostingDate: Date; EntryType: Enum "Cost Entry Type"; var Result: Boolean; var IsHandled: Boolean; var Item: Record Item)` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnBeforeUpdateAdjmtBuf
- `OnBeforeUpdateWindow(var IsHandled: Boolean)` (integration)
- `OnBeforeUpdateItemUnitCost2(var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary; var IsHandled: Boolean; var Item: Record Item; var ItemLedgEntryToAdjust: Dictionary of [Code[20], List of [Integer]])` (integration)
- `OnBeforeUpdateConsumpAvgEntry(ValueEntry: Record "Value Entry"; var IsHandled: Boolean)` (integration)
- `OnCopyAvgCostAdjmtToAvgCostAdjmtOnAfterInsert(var AvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point")` (integration)
- `OnCopyCostElementBufToValueEntryBufOnBeforeValueEntryBufInsert(var ValueEntryBuf: Record "Value Entry"; CostElementBuffer: Record "Cost Element Buffer")` (integration)
- `OnCopyValueEntryBufToCostElementBufOnBeforeCostElementBufferInsert(var CostElementBuffer: Record "Cost Element Buffer"; ValueEntryBuf: Record "Value Entry")` (integration)
- `OnForwardAppliedCostOnAfterSetAppliedQty(ItemLedgerEntry: Record "Item Ledger Entry"; var AppliedQty: Decimal)` (integration)
- `OnGetOrigValueEntryOnAfterOrigValueEntryFound(var OrigValueEntry: Record "Value Entry"; ValueEntry: Record "Value Entry")` (integration)
- `OnIsOutputWithSelfConsumptionOnAfterSetConsumpValueEntryFilters(var ConsumpValueEntry: Record "Value Entry")` (integration)
- `OnOpenOutbndItemLedgEntriesExistOnAfterSetOpenItemLedgEntryFilters(var OpenItemLedgerEntry: Record "Item Ledger Entry")` (integration)
- `OnPostItemJnlLineCopyFromValueEntry(var ItemJournalLine: Record "Item Journal Line"; ValueEntry: Record "Value Entry")` (integration)
- `OnPostItemJnlLineOnAfterItemJnlPostLineRunWithCheck(var ItemJournalLine: Record "Item Journal Line"; ValueEntry: Record "Value Entry")` (integration)
- `OnPostItemJnlLineOnAfterSetPostingDate(var ItemJournalLine: Record "Item Journal Line"; ValueEntry: Record "Value Entry"; PostingDateForClosedPeriod: Date; var Item: Record Item)` (integration)
- `OnMakeMultiLevelAdjmtOnAfterMakeAdjmt(var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary; var FilterItem: Record Item; var RndgResidualBuf: Record "Rounding Residual Buffer"; IsOnlineAdjmt: Boolean; PostToGL: Boolean; var ItemJnlPostLine: Codeunit "Item Jnl.-Post Line")` (integration)
- `OnMakeSingleLevelAdjmtOnAfterUpdateItemUnitCost(var TheItem: Record Item; var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary; var LevelExceeded: Boolean; IsOnlineAdjmt: Boolean; var ItemJnlPostLine: Codeunit "Item Jnl.-Post Line")` (integration)
- `OnInvtToAdjustExistOnBeforeCopyItemToItem(var Item: Record Item)` (integration)
- `OnBeforeRunUpdateJobItemCost(var JobsToAdjust: List of [Code[20]])` (integration)
- `OnUpdateItemUnitCostOnAfterItemGet(var Item: Record Item)` (integration)
- `OnUpdateItemUnitCostOnAfterModifyItemNotStandardCostingMethod(var Item: Record Item)` (integration)
- `OnUpdateItemUnitCostOnBeforeModifyItemNotStandardCostingMethod(var Item: Record Item)` (integration)
- `OnUpdateConsumpAvgEntryOnAfterSetItemLedgEntryFilters(var ItemLedgerEntry: Record "Item Ledger Entry")` (integration)
- `OnPostOutputOnBeforePostItemJnlLine(var ItemJnlLine: Record "Item Journal Line"; OrigValueEntry: Record "Value Entry"; var InvtAdjmtBuf: Record "Inventory Adjustment Buffer"; var GLSetup: Record "General Ledger Setup"; var IsHandled: Boolean)` (integration)
- `OnAfterInitAdjmtJnlLine(var ItemJnlLine: Record "Item Journal Line"; OrigValueEntry: Record "Value Entry"; EntryType: Enum "Cost Entry Type"; VarianceType: Enum "Cost Variance Type"; InvoicedQty: Decimal)` (integration)
  - subscribers: [Codeunit 99000776 "Mfg. InventoryAdjmtEntryOrder"](../codeunit/99000776.md) OnAfterInitAdjmtJnlLine
- `OnWIPToAdjustExistOnAfterInventoryAdjmtEntryOrderSetFilters(var InventoryAdjmtEntryOrder: Record "Inventory Adjmt. Entry (Order)")` (integration)
- `OnBeforeMakeSingleLevelAdjmt(var TheItem: Record Item; var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary; var IsHandled: Boolean)` (integration)
- `OnAdjustItemAvgCostOnBeforeAdjustValueEntries()` (integration)
- `OnAvgValueEntriesToAdjustExistOnBeforeIsNotAdjustment(var ValueEntry: Record "Value Entry"; var OutbndValueEntry: Record "Value Entry")` (integration)
- `OnMakeSingleLevelAdjmtOnBeforeCollectAvgCostAdjmtEntryPointToUpdate(var TheItem: Record Item)` (integration)
- `OnInitializeAdjmtOnAfterGetPostingDate(var PostingDateForClosedPeriod: Date)` (integration)
- `OnAdjustAppliedInbndEntriesOnAfterSetFilter(var InbndValueEntry: Record "Value Entry")` (integration)
- `OnCreateIndirectCostAdjmtOnAfterPostItemJnlLine(ValueEntry: Record "Value Entry"; NewAdjustedCost: Decimal; NewAdjustedCostACY: Decimal)` (integration)
- `OnPostAdjmtBufOnAfterPostExpectedCost(ValueEntry: Record "Value Entry"; TempInventoryAdjustmentBuffer: Record "Inventory Adjustment Buffer" temporary)` (integration)
- `OnPostAdjmtBufOnBeforePostNewCost(var ItemJournalLine: Record "Item Journal Line"; OrigValueEntry: Record "Value Entry"; TempInventoryAdjustmentBuffer: Record "Inventory Adjustment Buffer" temporary)` (integration)
- `OnPostAdjmtBufOnAfterPostNewCost(ValueEntry: Record "Value Entry"; TempInventoryAdjustmentBuffer: Record "Inventory Adjustment Buffer" temporary)` (integration)
- `OnMakeSingleLevelAdjmtOnAfterLevelExceeded(var Item: Record Item)` (integration)
- `OnMakeSingleLevelAdjmtOnBeforePostAdjmtBuf2(var Item: Record Item; var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary; var TempInventoryAdjustmentBuffer: Record "Inventory Adjustment Buffer" temporary; var TempRoundingResidualBuffer: Record "Rounding Residual Buffer" temporary; PostingDateForClosedPeriod: Date; Currency: Record Currency; SkipUpdateJobItemCost: Boolean; var JobsToAdjust: List of [Code[20]]; ItemJnlPostLine: Codeunit "Item Jnl.-Post Line"; var IsHandled: Boolean)` (integration)
- `OnForwardAppliedCostOnBeforeUpdateWindow(var ItemLedgerEntry: Record "Item Ledger Entry"; var Item: Record Item)` (integration)
- `OnAdjustAppliedOutbndEntriesOnBeforeCheckExpectedCost(var Item: Record Item; var OutbndValueEntry: Record "Value Entry")` (integration)
- `OnCalcInbndEntryAdjustedCostOnBeforeAddCost(var Item: Record Item; var InbndValueEntry: Record "Value Entry")` (integration)
- `OnAdjustItemAvgCostOnBeforeUpdateWindow(var Item: Record Item)` (integration)
- `OnUpdateAdjmtBufOnBeforeHasNewCost(OrigValueEntry: Record "Value Entry"; NewAdjustedCost: Decimal; NewAdjustedCostACY: Decimal; ItemLedgEntryPostingDate: Date; EntryType: Enum "Cost Entry Type"; var IsHandled: Boolean; var TempInvtAdjmtBuf: Record "Inventory Adjustment Buffer" temporary; var Item: Record Item)` (integration)
- `OnUpdateWindowOnAfterOpenWindow(var IsHandled: Boolean)` (integration)
- `OnCalcAvgCostOnAfterAssignRoundingError(var RoundingError: Decimal; var RoundingErrorACY: Decimal; var CostElementBuffer: Record "Cost Element Buffer")` (integration)
- `OnAdjustOutbndAvgEntryOnNewCostElementBuf(var OutbndValueEntry: Record "Value Entry")` (integration)
- `OnUpdateAdjmtBufOnAfterAddActualCostBuf(OrigValueEntry: Record "Value Entry"; NewAdjustedCost: Decimal; NewAdjustedCostACY: Decimal; ItemLedgEntryPostingDate: Date; TempInventoryAdjustmentBuffer: Record "Inventory Adjustment Buffer" temporary)` (integration)
- `OnEliminateRndgResidualOnBeforeCheckHasNewCost(InbndItemLedgerEntry: Record "Item Ledger Entry"; ValueEntry: Record "Value Entry"; RndgCost: Decimal; RndgCostACY: Decimal; var IsHandled: Boolean)` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnEliminateRndgResidualOnBeforeCheckHasNewCost
- `OnBeforeAdjustItem(var TheItem: Record Item)` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) PushItemBeforeAdjustment
- `OnAfterAdjustItem(var TheItem: Record Item)` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) PopItemAfterAdjustment
- `OnEliminateRndgResidualOnAfterCalcInboundCost(var ValueEntry: Record "Value Entry"; InbndItemLedgEntryNo: Integer)` (integration)
- `OnBeforeCollectItemLedgerEntryTypesUsed(var Item: Record Item; var IsHandled: Boolean)` (integration)
- `OnAdjustItemAppliedCostForItemLedgerEntry(var ItemLedgEntry: Record "Item Ledger Entry"; var NeedsAdjustment: Boolean)` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnAdjustItemAppliedCostForItemLedgerEntry
- `OnCalcCostPerUnitOnBeforeCalcCostPerUnit(var OutbndValueEntry: Record "Value Entry"; OutbndCostElementBuffer: Record "Cost Element Buffer"; var CalcCostPerUnit: Boolean; var CalcCostPerUnitACY: Boolean)` (integration)
- `OnCalcTransEntryOldCostOnBeforeProcessTransValueEntry(var TransValueEntry: Record "Value Entry"; var ProcessTransValueEntry: Boolean)` (integration)
- `OnAdjustAppliedOutbndEntry(var OutbndItemLedgEntry: Record "Item Ledger Entry")` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnAdjustAppliedOutbndEntry
- `OnAdjustAppliedOutbndEntriesOnBeforeAdjustEntry(var OutbndItemLedgEntry: Record "Item Ledger Entry"; var OutbndValueEntry: Record "Value Entry"; var NeedsAdjustment: Boolean)` (integration)
- `OnAdjustAppliedInbndEntry(var InbndItemLedgEntry: Record "Item Ledger Entry")` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnAdjustAppliedInbndEntry
- `OnAdjustAppliedInbndTransEntry(var TransItemLedgEntry: Record "Item Ledger Entry")` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnAdjustAppliedInbndTransEntry
- `OnBeforeAvgCostAdjmtEntryPoint(var AvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point")` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnBeforeAvgCostAdjmtEntryPoint
- `OnBeforeIteratingOverOutbndAvgEntries(var OutbndValueEntry: Record "Value Entry"; var AvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point"; RemainingOutbnd: Integer)` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnBeforeIteratingOverOutbndAvgEntries
- `OnAdjustOutbndAvgEntry(var OutbndValueEntry: Record "Value Entry")` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnAdjustOutbndAvgEntry
- `OnExcludeAvgCostOnValuationDate(var ExcludedValueEntry: Record "Value Entry")` (integration)
- `OnBeforeIsExcludeFromAvgCostForRevalPoint(var RevaluationPoint: Record "Integer"; var RevaluationCheckValueEntry: Record "Value Entry"; var OutbndValueEntry: Record "Value Entry")` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnBeforeIsExcludeFromAvgCostForRevalPoint
- `OnMakeWIPAdjmt(var SourceInvtAdjmtEntryOrder: Record "Inventory Adjmt. Entry (Order)")` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnMakeWIPAdjmt
- `OnMakeAssemblyAdjmt(var SourceInvtAdjmtEntryOrder: Record "Inventory Adjmt. Entry (Order)")` (integration)
  - subscribers: [Codeunit 5821 "Cost Adjustment Subscribers"](../codeunit/5821.md) OnMakeAssemblyAdjmt
- `OnAfterSetParameters(var CostAdjustmentParameter: Record "Cost Adjustment Parameter")` (integration, obsolete 27.0)
- `OnExcludeAvgCostOnValuationDateOnAfterGetItemApplicationTrace(var OutbndValueEntry: Record "Value Entry"; var OutbndEntryItemApplicationTrace: Record "Item Application Trace")` (integration)
- `OnIsOutputWithSelfConsumptionOnAfterGetItemApplicationTrace(var ItemApplicationTrace: Record "Item Application Trace")` (integration)
- `OnCalcInbndEntryAdjustedCostOnBeforeCalcNewAdjustedCost(var CostElementBuffer: Record "Cost Element Buffer"; ItemApplicationEntry: Record "Item Application Entry"; ItemLedgerEntry: Record "Item Ledger Entry"; var IsHandled: Boolean)` (integration)
- `OnAfterInitRndgResidualItemJnlLine(var ItemJournalLine: Record "Item Journal Line"; ValueEntry: Record "Value Entry")` (integration)

## Procedures

- `SetProperties(NewIsOnlineAdjmt: Boolean; NewPostToGL: Boolean)`
- `SetFilterItem(var NewItem: Record Item)`
- `MakeMultiLevelAdjmt(var CostAdjustmentParamsMgt: Codeunit "Cost Adjustment Params Mgt.")`
- `MakeMultiLevelAdjmt()`
- `IncludedInCostCalculation(InbndValueEntry: Record "Value Entry"; OutbndItemLedgEntryNo: Integer): Boolean`
- `ExpCostIsCompletelyInvoiced(ItemLedgEntry: Record "Item Ledger Entry"; ValueEntry: Record "Value Entry"): Boolean`
- `SetJobUpdateProperties(SkipJobUpdate: Boolean)`
- `CallInitializeAdjmt()`
- `CallFinalizeAdjmt()`
- `CallInvtToAdjustExist(var ToItem: Record Item): Boolean`
- `CallMakeSingleLevelAdjmt(var TheItem: Record Item; var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary)`
- `CallWIPToAdjustExist(var ToInventoryAdjmtEntryOrder: Record "Inventory Adjmt. Entry (Order)"): Boolean`
- `CallMakeWIPAdjmt(var SourceInvtAdjmtEntryOrder: Record "Inventory Adjmt. Entry (Order)"; var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary)`
- `CallAssemblyToAdjustExists(var ToInventoryAdjmtEntryOrder: Record "Inventory Adjmt. Entry (Order)"): Boolean`
- `CallMakeAssemblyAdjmt(var SourceInvtAdjmtEntryOrder: Record "Inventory Adjmt. Entry (Order)"; var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary)`
- `CallUpdateAdjmtBuf(OrigValueEntry: Record "Value Entry"; NewAdjustedCost: Decimal; NewAdjustedCostACY: Decimal; ItemLedgEntryPostingDate: Date; EntryType: Enum "Cost Entry Type"): Boolean`
- `CallPostAdjmtBuf(var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary)`
- `CallPostOutputAdjmtBuf(var TempAvgCostAdjmtEntryPoint: Record "Avg. Cost Adjmt. Entry Point" temporary)`
- `CallSetAppliedEntryToAdjustFromBuf(ItemNo: Code[20])`
- `CallAppliedEntryToAdjustBufExists(ItemNo: Code[20]): Boolean`
- `CallUpdateJobItemCost()`

Plus 114 local procedures.

## Triggers

OnRun

## Calls

From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an `Object::"Name"` argument. Interface dispatch and calls through events are not counted, so the list is not complete.

- [Codeunit 5824 "Cost Adjustment Params Mgt."](../codeunit/5824.md) (4 calls: `MakeMultiLevelAdjmt → GetAvgCostAdjmtEntryPoint`, `MakeMultiLevelAdjmt → GetInventoryAdjmtEntryOrder`, `MakeMultiLevelAdjmt → GetItemsToAdjust`, …)
- [Codeunit 22 "Item Jnl.-Post Line"](../codeunit/22.md) (3 calls: `CheckAndCommit → ResetGLPostingState`, `InitializeAdjmt → SetCalledFromAdjustment`, `PostItemJnlLine → RunWithCheck`)
- [Codeunit 362 "PeriodPageManagement"](../codeunit/362.md) (2 calls: `FindLastDate → EndOfPeriod`, `SetDateFilterUntilLastDate → EndOfPeriod`)
- [Codeunit 5804 "ItemCostManagement"](../codeunit/5804.md) (2 calls: `InitializeAdjmt → SetProperties`, `UpdateItemUnitCost → UpdateUnitCost`)
- [Codeunit 5896 "Calc. Inventory Adjmt. - Order"](../codeunit/5896.md) (2 calls: `MakeAssemblyAdjmt → Calculate`, `MakeWIPAdjmt → Calculate`)
- [Codeunit 8703 "Feature Telemetry"](../codeunit/8703.md) (2 calls: `EmitCheckAndCommitTelemetry → LogUsage`, `InitializeAdjmt → LogUsage`)

## Implements

- [Interface "Cost Adjustment With Params"](../interface/cost-adjustment-with-params.md)

## Implemented by

- [Enum 5895 "Inventory Adjustment Impl."](../enum/5895.md)

## Recent changes

- 2026-10-02 [#12066 Bugs/remove asm inv mfg clean27 tags for wave2 2026](../../changes/bcapps/12066.md) (main, BC30, obsoletion)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: BC24-30

## Countries that replace it

[RU](../../localizations/ru.md)

## Deprecations

- procedure OnAfterSetParameters: Pending 27.0 (#if not CLEAN27), "This event is never raised."

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: `bcatlas_resolve_node(object_type: "codeunit", object_name: "Inventory Adjustment")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
