---
title: "Codeunit 99000809 Planning Line Management"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/99000809-planning-line-management/
type: codeunit
id: 99000809
name: "Planning Line Management"
app: "Base Application"
namespace: Microsoft.Inventory.Planning
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/99000809-planning-line-management/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 99000809 Planning Line Management

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/99000809-planning-line-management/

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

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| CalculateRoutingFromActual | (Record Planning Routing Line, Option, Boolean) | - | public | 17-28 | Pending 27.0 | Moved to codeunit Planning Routing Management |
| CalculatePlanningLineDates | (var Record Requisition Line) | - | public | 17-28 | Pending 27.0 | Moved to codeunit Planning Routing Management |
| Calculate | (var Record Requisition Line, Option, Boolean, Boolean, Integer) | - | public | 17-28 | - | - |
| Recalculate | (var Record Requisition Line, Option) | - | public | 17-28 | - | - |
| RecalculateWithOptionalModify | (var Record Requisition Line, Option, Boolean) | - | public | 17-28 | - | - |
| CheckMultiLevelStructure | (Record Requisition Line, Boolean, Boolean, Integer) | - | public | 17-28 | - | - |
| BlockDynamicTracking | (Boolean) | - | public | 17-28 | - | - |
| GetPlanningCompList | (var Record Planning Component) | - | public | 17-28 | - | - |
| SetResiliencyOn | (Code[10], Code[10], Code[20]) | - | public | 17-28 | - | - |
| GetResiliencyError | (var Record Planning Error Log) | Boolean | public | 17-28 | - | - |
| RunOnAfterIsPlannedCompFound | (var Record Planning Component, var Record Production BOM Line, var Boolean, var Record Stockkeeping Unit) | - | internal | 27-28 | - | - |
| RunOnAfterTransferBOM | (Record Requisition Line, Code[20], Integer, Decimal, Decimal) | - | internal | 27-28 | - | - |
| RunOnAfterTransferRouting | (var Record Requisition Line) | - | internal | 27-28 | - | - |
| RunOnAfterTransferRtngLine | (var Record Requisition Line, var Record Routing Line, var Record Planning Routing Line) | - | internal | 27-28 | - | - |
| RunOnTransferBOMOnAfterProdBOMLineSetFilters | (var Record Production BOM Line, Record Requisition Line) | - | internal | 27-28 | - | - |
| RunOnTransferBOMOnBeforeGetDefaultBin | (var Record Planning Component, var Record Production BOM Line, Record Requisition Line, var Record Stockkeeping Unit) | - | internal | 27-28 | - | - |
| RunOnTransferRoutingLineOnBeforeValidateDirectUnitCost | (var Record Requisition Line, var Record Routing Line, var Record Planning Routing Line) | - | internal | 27-28 | - | - |
| RunOnTransferRoutingLineOnBeforeCalcRoutingCostPerUnit | (var Record Planning Routing Line, Record Requisition Line, Record Routing Line) | - | internal | 27-28 | - | - |
| RunOnBeforeInsertPlanningComponent | (var Record Requisition Line, var Record Production BOM Line, var Record Planning Component, Decimal, Decimal) | - | internal | 27-28 | - | - |
| RunOnBeforeModifyPlanningComponent | (var Record Requisition Line, var Record Production BOM Line, var Record Planning Component, Decimal, Decimal) | - | internal | 27-28 | - | - |
| RunOnBeforeTransferBOM | (Code[20], Integer, Decimal, Decimal, var Record Requisition Line, Boolean, var Boolean) | - | internal | 27-28 | - | - |
| RunOnBeforeTransferRouting | (var Record Requisition Line, Boolean, var Boolean) | - | internal | 27-28 | - | - |
| RunOnCalculateRoutingOnAfterUpdateReqLine | (var Record Requisition Line, Option) | - | internal | 27-28 | - | - |
| RunOnTransferBOMOnBeforeTransferPlanningComponent | (var Record Requisition Line, var Record Production BOM Line, Boolean, var Boolean, Integer) | - | internal | 27-28 | - | - |
| RunOnTransferBOMOnBeforeTransferProductionBOM | (var Decimal, Record Production BOM Line, Decimal, Decimal, Record Requisition Line) | - | internal | 27-28 | - | - |
| RunOnTransferBOMOnBeforeUpdatePlanningComp | (var Record Production BOM Line, var Boolean, var Boolean) | - | internal | 27-28 | - | - |
| RunOnTransferBOMOnAfterCalculateReqQty | (var Decimal, Record Production BOM Line, Record Planning Routing Line, Decimal, Decimal) | - | internal | 27-28 | - | - |
| RunOnAfterSetPlanningLevelCode | (var Record Planning Component, var Record Production BOM Line, var Record Stockkeeping Unit, var Record Stockkeeping Unit, var Boolean) | - | internal | 27-28 | - | - |
| RunOnBeforeTransferRoutingLine | (var Record Planning Routing Line, Record Requisition Line, Record Routing Line, var Boolean) | - | internal | 27-28 | - | - |
| RunOnTransferBOMOnBeforePlanningRtngLineFind | (var Record Planning Routing Line, Record Production BOM Line, Record Requisition Line) | - | internal | 27-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnAfterInsertPlanningLine | (var Record Requisition Line) | 17-28 | - | - |
| Integration event | OnAfterIsPlannedCompFound | (Record Planning Component, Record Production BOM Line, var Boolean) | 17-19 | - | - |
| Integration event | OnAfterIsPlannedAsmCompFound | (Record Planning Component, Record BOM Component, var Boolean) | 17-28 | - | - |
| Integration event | OnAfterRecalculateWithOptionalModify | (var Record Requisition Line, Option) | 17-28 | - | - |
| Integration event | OnAfterTransferRouting | (var Record Requisition Line) | 17-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnAfterTransferRtngLine | (var Record Requisition Line, var Record Routing Line, var Record Planning Routing Line) | 17-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnTransferBOMOnAfterProdBOMLineSetFilters | (var Record Production BOM Line, Record Requisition Line) | 17-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnTransferBOMOnBeforeGetDefaultBin | (var Record Planning Component, var Record Production BOM Line, Record Requisition Line) | 17-22 | - | - |
| Integration event | OnTransferRoutingLineOnBeforeValidateDirectUnitCost | (var Record Requisition Line, var Record Routing Line, var Record Planning Routing Line) | 17-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnBeforeCalculate | (var Record Requisition Line, Option, Boolean, Boolean, Integer, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeInsertPlanningComponent | (var Record Requisition Line, var Record Production BOM Line, var Record Planning Component, Decimal, Decimal) | 17-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnBeforeModifyPlanningComponent | (var Record Requisition Line, var Record Production BOM Line, var Record Planning Component, Decimal, Decimal) | 17-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnBeforeInsertAsmPlanningComponent | (var Record Requisition Line, var Record BOM Component, var Record Planning Component) | 17-28 | - | - |
| Integration event | OnBeforeRecalculateWithOptionalModify | (var Record Requisition Line, Option) | 17-28 | - | - |
| Integration event | OnBeforeTransferRouting | (var Record Requisition Line, Boolean, var Boolean) | 17-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnCalculateOnBeforeTransferBOM | (var Record Requisition Line, var Record Stockkeeping Unit, Boolean, var Boolean) | 17-28 | - | - |
| Integration event | OnCalculateRoutingOnAfterUpdateReqLine | (var Record Requisition Line) | 17-24 | - | - |
| Integration event | OnCheckMultiLevelStructureOnBeforeInsertPlanningLine | (var Record Requisition Line, var Record Planning Component) | 17-28 | - | - |
| Integration event | OnTransferBOMOnBeforeTransferPlanningComponent | (var Record Requisition Line, var Record Production BOM Line, Boolean, var Boolean) | 17-24 | - | - |
| Integration event | OnTransferBOMOnBeforeTransferProductionBOM | (var Decimal, Record Production BOM Line, Decimal, Decimal) | 17-20 | - | - |
| Integration event | OnTransferBOMOnBeforeUpdatePlanningComp | (var Record Production BOM Line, var Boolean, var Boolean) | 17-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnTransferAsmBOMOnBeforeGetDefaultBin | (var Record Planning Component, var Record BOM Component, Record Requisition Line) | 17-28 | - | - |
| Integration event | OnCheckMultiLevelStructureOnBeforeValidateQuantity | (var Record Requisition Line, var Record Planning Component) | 17-28 | - | - |
| Integration event | OnTransferBOMOnAfterCalculateReqQty | (var Decimal, Record Production BOM Line) | 18-23 | - | - |
| Integration event | OnInsertPlanningLineOnAfterReqLine2SetFilters | (var Record Requisition Line, var Record Requisition Line) | 18-28 | - | - |
| Integration event | OnTransferRoutingLineOnBeforeCalcRoutingCostPerUnit | (var Record Planning Routing Line, Record Requisition Line, Record Routing Line) | 19-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnAfterIsPlannedCompFound | (var Record Planning Component, var Record Production BOM Line, var Boolean, var Record Stockkeeping Unit) | 20-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnCheckMultiLevelStructureOnAfterCalcShouldExitManufacturingPolicy | (var Record Requisition Line, var Boolean) | 20-25 | - | - |
| Integration event | OnAfterCalculate | (var Boolean, var Record Stockkeeping Unit, var Record Requisition Line) | 20-28 | - | - |
| Integration event | OnAfterTransferBOM | (Record Requisition Line, Code[20], Integer, Decimal, Decimal) | 21-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnBeforeTransferBOM | (Code[20], Integer, Decimal, Decimal, var Record Requisition Line, Boolean, var Boolean) | 21-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnCheckMultiLevelStructureOnAfterPlanningCompSetFilters | (var Record Planning Component, Record Requisition Line) | 21-28 | - | - |
| Integration event | OnCheckMultiLevelStructureOnAfterCalcThrowLineSpacingError | (Record Requisition Line, var Integer, var Integer, var Boolean) | 21-28 | - | - |
| Integration event | OnTransferBOMOnBeforeTransferProductionBOM | (var Decimal, Record Production BOM Line, Decimal, Decimal, Record Requisition Line) | 21-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnAfterSetPlanningLevelCode | (var Record Planning Component, var Record Production BOM Line, var Record Stockkeeping Unit, var Record Stockkeeping Unit, var Boolean) | 21-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnTransferBOMOnBeforeGetDefaultBin | (var Record Planning Component, var Record Production BOM Line, Record Requisition Line, var Record Stockkeeping Unit) | 23-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnTransferBOMOnAfterCalculateReqQty | (var Decimal, Record Production BOM Line, Record Planning Routing Line, Decimal, Decimal) | 24-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnBeforeTransferRoutingLine | (var Record Planning Routing Line, Record Requisition Line, Record Routing Line, var Boolean) | 24-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnCalculateRoutingOnAfterUpdateReqLine | (var Record Requisition Line, Option) | 25-28 | Pending 27.0 | Moved to codeunit PlanningRoutingManagement |
| Integration event | OnTransferBOMOnBeforeTransferPlanningComponent | (var Record Requisition Line, var Record Production BOM Line, Boolean, var Boolean, Integer) | 25-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnTransferBOMOnBeforePlanningRtngLineFind | (var Record Planning Routing Line, Record Production BOM Line, Record Requisition Line) | 25-28 | Pending 27.0 | Moved to codeunit MfgPlanningLineManagement |
| Integration event | OnCheckMultiLevelStructureOnAfterCalcShouldExitManufacturingPolicy | (var Record Requisition Line, var Boolean, Integer, var Integer, Boolean, Boolean, Boolean, Boolean, var Record Planning Error Log) | 26-28 | - | - |
| Integration event | OnGetResiliencyErrorOnRouting | (var Record Planning Error Log, var Boolean) | 27-28 | - | - |
| Integration event | OnCalculateRouting | (var Record Requisition Line, var Record Planning Error Log, Boolean) | 27-28 | - | - |
| Integration event | OnCalculateOnTransferBOM | (var Record Requisition Line, Record Item, var Record Planning Component, var Record Planning Error Log, var Record Planning Component, Record Stockkeeping Unit, Boolean, var Integer, Boolean) | 27-28 | - | - |
| Internal event | OnTransferASMBOMOnAfterSetAsmBOMComp | (var Record Planning Component) | 27-28 | - | - |
| Integration event | OnCalculateComponentsOnbeforePlanningComponentModify | (var Record Planning Component) | 27-28 | - | - |
| Integration event | OnCheckMultiLevelStructureOnBeforeReqLineModify | (var Record Requisition Line) | 27-28 | - | - |
| Integration event | OnTransferAsmBOMOnBeforePlanningComponentModify | (var Record Planning Component) | 27-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.
