---
title: "Codeunit 23 Item Jnl.-Post Batch"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/23-item-jnl-post-batch/
type: codeunit
id: 23
name: "Item Jnl.-Post Batch"
app: "Base Application"
namespace: Microsoft.Inventory.Posting
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/23-item-jnl-post-batch/source/29/"
checked: 2026-09-20
subject: "Microsoft Dynamics 365 Business Central"
license: "Content © 2026 Jonas Paprotka. Quote freely with attribution and a link."
---

# Codeunit 23 Item Jnl.-Post Batch

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/23-item-jnl-post-batch/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Inventory.Posting |
| Versions | 17-28 |
| Source file | Inventory/Posting/ItemJnlPostBatch.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| PostWhseJnlLine | (Record Item Journal Line, Decimal, Decimal, var Record Tracking Specification) | - | public | 17-28 | - | - |
| GetWhseRegNo | () | Integer | public | 17-28 | - | - |
| GetItemRegNo | () | Integer | public | 17-28 | - | - |
| SetSuppressCommit | (Boolean) | - | public | 17-28 | - | - |
| RunOnBeforeSelfReservedQty | (Record Stockkeeping Unit, Record Item Journal Line, var Decimal, var Boolean) | - | internal | 27-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnAfterCheckLines | (var Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnAfterCheckJnlLine | (var Record Item Journal Line, Boolean) | 17-28 | - | - |
| Integration event | OnAfterConstructPostingNumber | (var Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnAfterCopyRegNos | (var Record Item Journal Line, var Integer, var Integer) | 17-28 | - | - |
| Integration event | OnAfterItemJnlPostSumLine | (var Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnAfterPostLines | (var Record Item Journal Line, var Integer) | 17-21 | - | - |
| Integration event | OnAfterPostJnlLines | (var Record Item Journal Batch, var Record Item Journal Line, Integer, Integer) | 17 | - | - |
| Integration event | OnAfterPostWhseJnlLine | (Record Item Journal Line, Boolean) | 17-28 | - | - |
| Integration event | OnAfterUpdateAnalysisViews | (var Record Item Register) | 17-28 | - | - |
| Integration event | OnBeforeCode | (var Record Item Journal Line) | 17-25 | - | - |
| Integration event | OnBeforeCheckItemAvailability | (var Record Item Journal Line, var Record Stockkeeping Unit) | 17-28 | - | - |
| Integration event | OnBeforeCheckItemAvailabilityHandled | (var Record Item Journal Line, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeCheckLines | (var Record Item Journal Line) | 17 | - | - |
| Integration event | OnBeforeOpenProgressDialog | (var Record Item Journal Line, var Dialog, var Boolean, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforePostWhseJnlLines | (Record Item Journal Line, var Record Tracking Specification, Enum Item Journal Template Type, Boolean, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeRaiseExceedLengthError | (var Record Item Journal Batch, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeWhseJnlPostLineRun | (Record Item Journal Line, var Record Warehouse Journal Line, var Boolean) | 17-28 | - | - |
| Integration event | OnPostLinesOnAfterPostWhseJnlLine | (var Record Item Journal Line, Boolean) | 17-28 | - | - |
| Integration event | OnPostLinesBeforePostWhseJnlLine | (var Record Item Journal Line, Boolean) | 17-28 | - | - |
| Integration event | OnBeforeHandleNonRecurringLine | (var Record Item Journal Line, var Boolean) | 17-20 | - | - |
| Integration event | OnBeforeHandleRecurringLine | (var Record Item Journal Line, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeIncrBatchName | (var Record Item Journal Line, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeItemJnlPostSumLine | (var Record Item Journal Line, Record Item Ledger Entry) | 17-28 | - | - |
| Integration event | OnBeforeUpdateDeleteLines | (var Record Item Journal Line, Integer) | 17-27 | - | - |
| Integration event | OnHandleRecurringLineOnBeforeModify | (var Record Item Journal Line) | 17-19 | Pending 17.0 | Event will be replaced by OnHandleRecurringLineOnBeforeItemJnlLineModify(ItemJnlLine2) |
| Integration event | OnHandleNonRecurringLineOnInsertNewLine | (var Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnItemJnlPostSumLineOnAfterGetItem | (var Record Item, Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnItemJnlPostSumLineOnBeforeIncludeEntry | (var Record Item Journal Line, Record Item Ledger Entry, var Boolean) | 17-28 | - | - |
| Integration event | OnItemJnlPostSumLineOnBeforeCalcAppliedAmount | (var Record Item Journal Line, Record Item Ledger Entry) | 17-28 | - | - |
| Integration event | OnPostLinesOnAfterPostLine | (var Record Item Journal Line, var Boolean) | 17-28 | - | - |
| Integration event | OnPostLinesOnBeforePostLine | (var Record Item Journal Line, var Boolean) | 17 | - | - |
| Integration event | OnPostWhseJnlLineOnBeforeCreateWhseJnlLines | (Record Item Journal Line, var Option, var Boolean) | 17-28 | - | - |
| Integration event | OnHandleRecurringLineOnBeforeItemJnlLineModify | (var Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnHandleRecurringLineOnBeforeItemJnlLine2Loop | (var Record Item Journal Line, var Record Item Journal Line) | 17 | - | - |
| Integration event | OnBeforeInsertTempSKU | (var Record Stockkeeping Unit, Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnHandleNonRecurringLineOnAfterItemJnlLineModify | (var Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnBeforeSelfReservedQty | (Record Stockkeeping Unit, Record Item Journal Line, var Decimal, var Boolean) | 17-28 | Pending 27.0 | Moved to codeunit MfgItemJnlPostBatch |
| Integration event | OnHandleNonRecurringLineOnBeforeSetItemJnlBatchName | (Record Item Journal Template, var Boolean) | 17-28 | - | - |
| Integration event | OnHandleNonRecurringLineOnAfterCopyItemJnlLine3 | (var Record Item Journal Line, var Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnAfterPostJnlLines | (var Record Item Journal Batch, var Record Item Journal Line, Integer, Integer, var Boolean) | 18-28 | - | - |
| Integration event | OnBeforeCheckLines | (var Record Item Journal Line, var Boolean) | 18-28 | - | - |
| Integration event | OnPostLinesOnBeforePostLine | (var Record Item Journal Line, var Boolean, var Boolean) | 18-28 | - | - |
| Integration event | OnHandleRecurringLineOnBeforeItemJnlLine2Loop | (var Record Item Journal Line, var Record Item Journal Line, var Boolean) | 18-28 | - | - |
| Integration event | OnAfterGetLocation | (var Record Location, var Record Item Journal Line) | 19-28 | - | - |
| Integration event | OnCodeOnBeforePostLines | (var Record Item Journal Line, var Integer) | 19-28 | - | - |
| Integration event | OnAfterCode | (var Record Item Journal Line, Record Item Journal Batch, Integer, Integer) | 20-28 | - | - |
| Integration event | OnBeforeCheckWMSBin | (Record Item Journal Line, var Boolean) | 20-28 | - | - |
| Integration event | OnBeforeHandleNonRecurringLine | (var Record Item Journal Line, var Boolean, var Enum Item Ledger Entry Type) | 21-28 | - | - |
| Integration event | OnItemJnlPostSumLineOnAfterCalcThrowPostingsExistError | (var Record Item Journal Line, Decimal, var Boolean) | 21-28 | - | - |
| Integration event | OnBeforeCheckJnlLine | (var Record Item Journal Line, Boolean, var Boolean) | 21-28 | - | - |
| Integration event | OnBeforePostJnlLine | (var Record Item Journal Line, Boolean, var Boolean) | 21-28 | - | - |
| Integration event | OnBeforeConstructPostingNumber | (var Record Item Journal Line, Record Item Journal Batch, var Code[20], var Code[20], var Boolean) | 21-28 | - | - |
| Integration event | OnBeforePostLines | (var Record Item Journal Line, var Integer, var Integer) | 22-28 | - | - |
| Integration event | OnAfterPostLines | (var Record Item Journal Line, var Integer, var Integer) | 22-28 | - | - |
| Integration event | OnBeforeUpdateItemTracking | (var Record Item Journal Line, var Boolean) | 22-28 | - | - |
| Integration event | OnBeforeItemJournalPostSumLine | (var Record Item Journal Line, var Record Item Journal Line, var Integer, Boolean, var Dialog, Integer, var Codeunit Item Jnl.-Post Line, var Boolean) | 22-28 | - | - |
| Integration event | OnBeforeOnRun | (var Record Item Journal Line) | 23-28 | - | - |
| Integration event | OnAfterOnRun | (var Record Item Journal Line) | 23-28 | - | - |
| Integration event | OnBeforeOnPostLinesOnBeforePostLineUpdateItemTracking | (var Record Item Journal Line, var Boolean) | 25-28 | - | - |
| Integration event | OnAfterUpdateStdCostSKUValidate | (var Record Item Journal Line, var Record Stockkeeping Unit) | 25-28 | - | - |
| Integration event | OnBeforeCheckRemainingQty | (var Record Item Journal Line, var Boolean) | 25-28 | - | - |
| Integration event | OnBeforeCode | (var Record Item Journal Line, var Record Item Ledger Entry) | 26-28 | - | - |
| Internal event | OnHandleWhsePutAwayForProdOutput | (var Record Item Journal Line) | 27-28 | - | - |
| Internal event | OnCheckItemAvailabilityOnAfterSetAvailableQty | (var Record Stockkeeping Unit, var Record Item Journal Line, var Decimal) | 27-28 | - | - |
| Integration event | OnAfterIncludeEntryInCalc | (Record Item Ledger Entry, Date, Boolean, var Boolean) | 27-28 | - | - |
| Integration event | OnBeforeValidateDocumentNo | (var Record Item Journal Line, var Record Item Journal Batch, Code[20], var Boolean) | 28 | - | - |
| Integration event | OnBeforeUpdateDeleteLines | (var Record Item Journal Line, var Integer, var Integer) | 28 | - | - |

## Source

Symbols: Microsoft.BaseApplication.symbols.437dbf0e-84ff-417a-965d-ed2bb9650972, https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json, highest build per major on 2026-09-20.
AL source 29: https://github.com/microsoft/BCApps, MIT, releases/29.x at a66254c3b8b5bb1cea290dc8f9d097aec4381153.

Jonas Paprotka, 2026-09-20.
