---
title: "Codeunit 414 Release Sales Document"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/414-release-sales-document/
type: codeunit
id: 414
name: "Release Sales Document"
app: "Base Application"
namespace: Microsoft.Sales.Document
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/414-release-sales-document/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 414 Release Sales Document

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/414-release-sales-document/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Sales.Document |
| Versions | 17-28 |
| Source file | Sales/Document/ReleaseSalesDocument.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| Reopen | (var Record Sales Header) | - | public | 17-28 | - | - |
| PerformManualRelease | (var Record Sales Header) | - | public | 17-28 | - | - |
| PerformManualCheckAndRelease | (var Record Sales Header) | - | public | 17-28 | - | - |
| PerformManualReopen | (var Record Sales Header) | - | public | 17-28 | - | - |
| ReleaseSalesHeader | (var Record Sales Header, Boolean) | Boolean | public | 17-28 | - | - |
| SetSkipCheckReleaseRestrictions | () | - | public | 17-28 | - | - |
| CalcAndUpdateVATOnLines | (var Record Sales Header, var Record Sales Line) | Boolean | public | 17-28 | - | - |
| SetSkipWhseRequestOperations | (Boolean) | - | public | 21-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnBeforeCalcInvDiscount | (var Record Sales Header, Boolean) | 17-19 | - | - |
| Integration event | OnBeforeManualReleaseSalesDoc | (var Record Sales Header, Boolean) | 17-28 | - | - |
| Integration event | OnBeforeReleaseSalesDoc | (var Record Sales Header, Boolean, var Boolean) | 17-18 | - | - |
| Integration event | OnAfterReleaseSalesDoc | (var Record Sales Header, Boolean, var Boolean) | 17-21 | - | - |
| Integration event | OnAfterManualReleaseSalesDoc | (var Record Sales Header, Boolean) | 17-28 | - | - |
| Integration event | OnBeforeManualReOpenSalesDoc | (var Record Sales Header, Boolean) | 17-28 | - | - |
| Integration event | OnBeforeReopenSalesDoc | (var Record Sales Header, Boolean, var Boolean) | 17-21 | - | - |
| Integration event | OnBeforeModifySalesDoc | (var Record Sales Header, Boolean, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforePerformManualRelease | (var Record Sales Header, Boolean, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeSalesLineFind | (var Record Sales Line, var Record Sales Header) | 17-19 | - | - |
| Integration event | OnAfterReopenSalesDoc | (var Record Sales Header, Boolean) | 17-21 | - | - |
| Integration event | OnAfterManualReOpenSalesDoc | (var Record Sales Header, Boolean) | 17-28 | - | - |
| Integration event | OnAfterPerformManualCheckAndRelease | (var Record Sales Header, Boolean) | 17-28 | - | - |
| Integration event | OnAfterReleaseATOs | (var Record Sales Header, var Record Sales Line, Boolean) | 17-28 | - | - |
| Integration event | OnAfterUpdateSalesDocLines | (var Record Sales Header, var Boolean, Boolean) | 17-28 | - | - |
| Integration event | OnCodeOnAfterCheck | (Record Sales Header, var Record Sales Line, var Boolean) | 17-28 | - | - |
| Integration event | OnCodeOnAfterSalesLineCheck | (var Record Sales Line) | 17-22 | - | - |
| Integration event | OnBeforeCheckCustomerCreated | (var Record Sales Header, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforePerformManualCheckAndRelease | (var Record Sales Header, Boolean) | 17 | - | - |
| Integration event | OnReopenOnBeforeSalesHeaderModify | (var Record Sales Header) | 17-28 | - | - |
| Integration event | OnPerformManualReleaseOnBeforeTestSalesPrepayment | (var Record Sales Header, Boolean) | 17-18 | - | - |
| Integration event | OnCodeOnAfterCheckCustomerCreated | (var Record Sales Header, Boolean, var Boolean) | 17-19 | - | - |
| Integration event | OnBeforeCheckSalesHeaderPendingApproval | (var Record Sales Header, var Boolean) | 18-28 | - | - |
| Integration event | OnCodeOnCheckTracking | (Record Sales Header, var Record Sales Line) | 18-28 | - | - |
| Integration event | OnBeforePerformManualCheckAndRelease | (var Record Sales Header, Boolean, var Boolean) | 18-28 | - | - |
| Integration event | OnBeforeTestSellToCustomerNo | (var Record Sales Header, var Boolean) | 19-28 | - | - |
| Integration event | OnBeforeReleaseSalesDoc | (var Record Sales Header, Boolean, var Boolean, Boolean) | 19-21 | - | - |
| Integration event | OnBeforePerformManualReleaseProcedure | (var Record Sales Header, Boolean, var Boolean) | 19-28 | - | - |
| Integration event | OnCodeOnAfterCalcShouldSetStatusPrepayment | (var Record Sales Header, Boolean, var Boolean) | 19-28 | - | - |
| Integration event | OnBeforeCheckReopenStatus | (Record Sales Header, var Boolean) | 19-28 | - | - |
| Integration event | OnPerformManualReleaseOnBeforeTestSalesPrepayment | (var Record Sales Header, Boolean, var Boolean) | 19-28 | - | - |
| Integration event | OnPerformManualCheckAndReleaseOnBeforeSalesHeaderModify | (var Record Sales Header, Boolean) | 19-28 | - | - |
| Integration event | OnBeforeCalcInvDiscount | (var Record Sales Header, Boolean, var Boolean) | 20 | - | - |
| Integration event | OnBeforeCheckSalesLines | (var Record Sales Header, var Record Sales Line, var Boolean) | 20-21 | - | - |
| Integration event | OnBeforeSalesLineFind | (var Record Sales Line, var Record Sales Header, var Boolean, var Boolean) | 20-28 | - | - |
| Integration event | OnCodeOnBeforeSalesLineCheck | (var Record Sales Line, var Boolean) | 20-28 | - | - |
| Integration event | OnCodeOnAfterCheckCustomerCreated | (var Record Sales Header, Boolean, var Boolean, var Boolean) | 20-28 | - | - |
| Integration event | OnCodeOnAfterModifySalesDoc | (var Record Sales Header, var Boolean) | 20-28 | - | - |
| Integration event | OnBeforeCheckMandatoryFields | (Record Sales Header, var Boolean) | 20 | - | - |
| Integration event | OnBeforeCalcInvDiscount | (var Record Sales Header, Boolean, var Boolean, var Record Sales Line) | 21 | - | - |
| Integration event | OnBeforeOnRun | (var Record Sales Header) | 21-28 | - | - |
| Integration event | OnBeforeCheckMandatoryFields | (var Record Sales Header, var Boolean) | 21-28 | - | - |
| Integration event | OnCodeOnBeforeSetStatusReleased | (var Record Sales Header) | 21-28 | - | - |
| Integration event | OnBeforeCalcInvDiscount | (var Record Sales Header, Boolean, var Boolean, var Record Sales Line, var Boolean) | 22-28 | - | - |
| Integration event | OnBeforeReleaseSalesDoc | (var Record Sales Header, Boolean, var Boolean, var Boolean, Boolean) | 22-28 | - | - |
| Integration event | OnAfterReleaseSalesDoc | (var Record Sales Header, Boolean, var Boolean, Boolean) | 22-28 | - | - |
| Integration event | OnBeforeCheckSalesLines | (var Record Sales Header, var Record Sales Line, var Boolean, var Boolean) | 22-28 | - | - |
| Integration event | OnBeforeReopenSalesDoc | (var Record Sales Header, Boolean, var Boolean, Boolean) | 22-28 | - | - |
| Integration event | OnAfterReopenSalesDoc | (var Record Sales Header, Boolean, Boolean) | 22-28 | - | - |
| Integration event | OnBeforeReleaseATOs | (var Record Sales Header, var Boolean) | 22-28 | - | - |
| Integration event | OnRunOnAfterCopy | (var Record Sales Header, var Record Sales Header) | 22-28 | - | - |
| Integration event | OnCodeOnAfterSalesLineCheck | (var Record Sales Line, var Record Sales Header) | 23 | - | - |
| Integration event | OnCodeOnAfterSalesLineCheck | (var Record Sales Line, var Record Sales Header, var Record Item) | 24-28 | - | - |
| Integration event | OnReleaseSalesHeaderOnAfterCopySalesHeader | (var Record Sales Header, var Record Sales Header) | 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.
