---
title: "Codeunit 5777 Whse. Validate Source Line"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/5777-whse-validate-source-line/
type: codeunit
id: 5777
name: "Whse. Validate Source Line"
app: "Base Application"
namespace: Microsoft.Warehouse.Request
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/5777-whse-validate-source-line/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 5777 Whse. Validate Source Line

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/5777-whse-validate-source-line/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Warehouse.Request |
| Versions | 17-28 |
| Source file | Warehouse/Request/WhseValidateSourceLine.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| SalesLineVerifyChange | (var Record Sales Line, var Record Sales Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Sales Warehouse Mgt. |
| SalesLineDelete | (var Record Sales Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Sales Warehouse Mgt. |
| ServiceLineVerifyChange | (var Record Service Line, var Record Service Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Service Warehouse Mgt. |
| ServiceLineDelete | (var Record Service Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Service Warehouse Mgt. |
| VerifyFieldNotChanged | (RecordRef, RecordRef, Integer) | - | public | 17-28 | - | - |
| VerifyFieldNotChanged | (RecordRef, RecordRef, Integer, Text) | - | public | 17-28 | - | - |
| PurchaseLineVerifyChange | (var Record Purchase Line, var Record Purchase Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Purchases Warehouse Mgt. |
| PurchaseLineDelete | (var Record Purchase Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Purchases Warehouse Mgt. |
| TransLineVerifyChange | (var Record Transfer Line, var Record Transfer Line) | - | public | 17-28 | - | - |
| TransLineDelete | (var Record Transfer Line) | - | public | 17-28 | - | - |
| WhseLinesExist | (Integer, Option, Code[20], Integer, Integer, Decimal) | Boolean | public | 17-28 | - | - |
| WhseLinesExistWithTableCaptionOut | (Integer, Option, Code[20], Integer, Integer, Decimal, var Text[100]) | Boolean | public | 17-28 | - | - |
| ProdComponentVerifyChange | (var Record Prod. Order Component, var Record Prod. Order Component) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Prod. Order Warehouse Mgt. |
| ProdComponentDelete | (var Record Prod. Order Component) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Prod. Order Warehouse Mgt. |
| ItemLineVerifyChange | (var Record Item Journal Line, var Record Item Journal Line) | - | public | 17-28 | - | - |
| ProdOrderLineVerifyChange | (var Record Prod. Order Line, var Record Prod. Order Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Prod. Order Warehouse Mgt. |
| ProdOrderLineDelete | (var Record Prod. Order Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Prod. Order Warehouse Mgt. |
| AssemblyLineVerifyChange | (var Record Assembly Line, var Record Assembly Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Assembly Warehouse Mgt. |
| AssemblyLineDelete | (var Record Assembly Line) | - | public | 17-25 | Pending 23.0 | Replaced by same procedure in codeunit Assembly Warehouse Mgt. |
| CalcNextLevelProdOutput | (Record Prod. Order Component) | Decimal | public | 17-28 | Pending 26.0 | Replaced by same procedure in codeunit ProdOrder Warehouse Mgt. |
| JobPlanningLineVerifyChange | (var Record Job Planning Line, var Record Job Planning Line, Integer) | - | public | 20-25 | Pending 23.0 | Replaced by same procedure in codeunit Job Warehouse Mgt. |
| JobPlanningLineDelete | (var Record Job Planning Line) | - | public | 20-25 | Pending 23.0 | Replaced by same procedure in codeunit Job Warehouse Mgt. |
| JobJnlLineVerifyChangeForWhsePick | (var Record Job Journal Line, var Record Job Journal Line) | - | internal | 20-28 | - | - |
| IsWhsePickRequiredForJobJnlLine | (var Record Job Journal Line) | Boolean | internal | 20-28 | - | - |
| IsInventoryPickRequiredForJobJnlLine | (var Record Job Journal Line) | Boolean | internal | 20-28 | - | - |
| WhseWorkSheetLinesExistForJobOrProdOrderComponent | (Integer, Option, Code[20], Integer, Integer, Decimal) | Boolean | public | 21-28 | - | - |
| FieldValueIsChanged | (RecordRef, RecordRef, Integer) | Boolean | internal | 23-28 | - | - |
| WhseWorkSheetLinesExist | (Integer, Option, Code[20], Integer, Integer, Decimal) | Boolean | internal | 23-28 | - | - |
| RunOnAfterSalesLineVerifyChange | (var RecordRef, var RecordRef) | - | internal | 23-25 | - | - |
| RunOnAfterServiceLineVerifyChange | (var RecordRef, var RecordRef) | - | internal | 23-25 | - | - |
| RunOnAfterPurchaseLineVerifyChange | (var Record Purchase Line, var Record Purchase Line, var RecordRef, var RecordRef) | - | internal | 23-25 | - | - |
| RunOnAfterProdComponentVerifyChange | (var RecordRef, var RecordRef) | - | internal | 23-25 | - | - |
| RunOnAfterProdOrderLineVerifyChange | (var Record Prod. Order Line, var Record Prod. Order Line, var RecordRef, var RecordRef) | - | internal | 23-25 | - | - |
| RunOnAfterAssemblyLineVerifyChange | (var RecordRef, var RecordRef) | - | internal | 23-25 | - | - |
| RunOnAfterSalesLineDelete | (var Record Sales Line) | - | internal | 23-25 | - | - |
| RunOnAfterServiceLineDelete | (var Record Service Line) | - | internal | 23-25 | - | - |
| RunOnAfterPurchaseLineDelete | (var Record Purchase Line) | - | internal | 23-25 | - | - |
| RunOnAfterProdComponentDelete | (var Record Prod. Order Component) | - | internal | 23-25 | - | - |
| RunOnAfterProdOrderLineDelete | (var Record Prod. Order Line) | - | internal | 23-25 | - | - |
| RunOnAfterAssemblyLineDelete | (var Record Assembly Line) | - | internal | 23-25 | - | - |
| RunOnBeforePurchaseLineVerifyChange | (var Record Purchase Line, var Record Purchase Line, var Boolean) | - | internal | 23-25 | - | - |
| RunOnBeforeSalesLineVerifyChange | (var Record Sales Line, var Record Sales Line, var Boolean) | - | internal | 23-25 | - | - |
| RunOnBeforeServiceLineVerifyChange | (var Record Service Line, var Record Service Line, var Boolean) | - | internal | 23-25 | - | - |
| RunOnBeforeProdComponentVerifyChange | (var Record Prod. Order Component, var Record Prod. Order Component, var Boolean) | - | internal | 23-25 | - | - |
| RaiseCannotBeDeletedErr | (Text) | - | internal | 23-28 | - | - |
| RunOnBeforeCheckQtyRemainingToBePickedForAssemblyConsumption | (var Record Item Journal Line, var Record Item Journal Line, var Boolean, var Decimal) | - | internal | 26-28 | Pending 26.0 | Replaced by same event in codeunit Assembly Warehouse Mgt. |
| RunOnBeforeCheckQtyRemainingToBePickedForConsumption | (var Record Item Journal Line, var Record Item Journal Line, var Boolean, Record Prod. Order Component, Decimal) | - | internal | 26-28 | - | - |
| RunOnItemLineVerifyChangeOnBeforeCheckConsumptionQty | (Record Item Journal Line, Record Location, var Boolean, var Boolean) | - | internal | 26-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnAfterSalesLineVerifyChange | (var RecordRef, var RecordRef) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Sales Warehouse Mgt. |
| Integration event | OnAfterServiceLineVerifyChange | (var RecordRef, var RecordRef) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Service Warehouse Mgt. |
| Integration event | OnAfterPurchaseLineVerifyChange | (var Record Purchase Line, var Record Purchase Line, var RecordRef, var RecordRef) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Purchases Warehouse Mgt. |
| Integration event | OnAfterProdComponentVerifyChange | (var RecordRef, var RecordRef) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Prod. Order Warehouse Mgt. |
| Integration event | OnAfterProdOrderLineVerifyChange | (var Record Prod. Order Line, var Record Prod. Order Line, var RecordRef, var RecordRef) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Prod. Order Warehouse Mgt. |
| Integration event | OnAfterItemLineVerifyChange | (var Record Item Journal Line, var Record Item Journal Line) | 17-28 | - | - |
| Integration event | OnAfterTransLineVerifyChange | (var Record Transfer Line, var Record Transfer Line) | 17-28 | - | - |
| Integration event | OnAfterAssemblyLineVerifyChange | (var RecordRef, var RecordRef) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Assembly Warehouse Mgt. |
| Integration event | OnAfterSalesLineDelete | (var Record Sales Line) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Sales Warehouse Mgt. |
| Integration event | OnAfterServiceLineDelete | (var Record Service Line) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Service Warehouse Mgt. |
| Integration event | OnAfterPurchaseLineDelete | (var Record Purchase Line) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Purchase Warehouse Mgt. |
| Integration event | OnAfterTransLineDelete | (var Record Transfer Line) | 17-28 | - | - |
| Integration event | OnAfterProdComponentDelete | (var Record Prod. Order Component) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Prod. Order Warehouse Mgt. |
| Integration event | OnAfterProdOrderLineDelete | (var Record Prod. Order Line) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Prod. Order Warehouse Mgt. |
| Integration event | OnAfterAssemblyLineDelete | (var Record Assembly Line) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Assembly Warehouse Mgt. |
| Integration event | OnBeforeCheckQtyRemainingToBePickedForAssemblyConsumption | (var Record Item Journal Line, var Record Item Journal Line, var Boolean, var Decimal) | 17-28 | Pending 26.0 | Replaced by same event in codeunit Assembly Warehouse Mgt. |
| Integration event | OnBeforeCheckQtyRemainingToBePickedForConsumption | (var Record Item Journal Line, var Record Item Journal Line, var Boolean, Record Prod. Order Component) | 17-21 | - | - |
| Integration event | OnBeforePurchaseLineVerifyChange | (var Record Purchase Line, var Record Purchase Line, var Boolean) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Purchases Warehouse Mgt. |
| Integration event | OnBeforeSalesLineVerifyChange | (var Record Sales Line, var Record Sales Line, var Boolean) | 17-25 | Pending 23.0 | Replaced by same event in codeunit Sales Warehouse Mgt. |
| Integration event | OnBeforeTransLineVerifyChange | (var Record Transfer Line, var Record Transfer Line, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeVerifyFieldNotChanged | (RecordRef, RecordRef, Integer, var Boolean) | 17-28 | - | - |
| Integration event | OnTransLineCommonVerificationOnBeforeQuantityCheck | (var Record Transfer Line, var Record Transfer Line, var Boolean) | 17-28 | - | - |
| Integration event | OnWhseLinesExistOnAfterWhseRcptLineSetFilters | (var Record Warehouse Receipt Line, Integer, Option, Code[20], Integer, Decimal) | 17-28 | - | - |
| Integration event | OnWhseLinesExistOnAfterWhseShptLineSetFilters | (var Record Warehouse Shipment Line, Integer, Option, Code[20], Integer, Decimal) | 17-21 | - | - |
| Integration event | OnBeforeServiceLineVerifyChange | (var Record Service Line, var Record Service Line, var Boolean) | 18-25 | Pending 23.0 | Replaced by same event in codeunit Service Warehouse Mgt. |
| Integration event | OnBeforeWhseLinesExist | (Integer, Option, Code[20], Integer, Integer, Decimal, var Text[100], var Boolean, var Boolean) | 18-28 | - | - |
| Integration event | OnItemLineVerifyChangeOnBeforeCheckConsumptionQty | (Record Item Journal Line, Record Location, var Boolean, var Boolean) | 18-28 | Pending 26.0 | Replaced by same event in codeunit ProdOrderWarehouseMgt |
| Integration event | OnBeforeProdComponentVerifyChange | (var Record Prod. Order Component, var Record Prod. Order Component, var Boolean) | 18-25 | Pending 23.0 | Replaced by same event in codeunit Prod. Order Warehouse Mgt. |
| Integration event | OnBeforeCheckQtyRemainingToBePickedForJob | (Record Job Journal Line, Decimal, var Boolean) | 21-28 | - | - |
| Integration event | OnBeforeWhseWorkSheetLinesExist | (Integer, Option, Code[20], Integer, Integer, Decimal, var Text[100], var Boolean, var Boolean) | 21-28 | - | - |
| Integration event | OnBeforeCheckQtyRemainingToBePickedForConsumption | (var Record Item Journal Line, var Record Item Journal Line, var Boolean, Record Prod. Order Component, Decimal) | 22-28 | Pending 26.0 | Replaced by same event in codeunit ProdOrder Warehouse Mgt. |
| Integration event | OnWhseLinesExistOnAfterWhseShptLineSetFilters | (var Record Warehouse Shipment Line, Integer, Option, Code[20], Integer, Decimal, var Boolean) | 22-28 | - | - |
| Integration event | OnWhseLineExistOnBeforeCheckReceipt | (Integer, Option, Decimal, var Boolean) | 23-28 | - | - |
| Integration event | OnWhseLineExistOnBeforeCheckShipment | (Integer, Option, Decimal, var Boolean) | 23-28 | - | - |
| Integration event | OnWhseLinesExistOnAfterWhseActivLineSetFilters | (var Record Warehouse Activity Line, Integer, Option, Code[20], Integer, Decimal, var Boolean) | 25-28 | - | - |
| Integration event | OnItemLineVerifyChangeOnCheckEntryType | (Record Item Journal Line, Record Item Journal Line, var Boolean, var Boolean) | 26-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.
