---
title: "Codeunit 99000774 Calculate Routing Line"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/99000774-calculate-routing-line/
type: codeunit
id: 99000774
name: "Calculate Routing Line"
app: "Base Application"
namespace: Microsoft.Manufacturing.Routing
versions: "17-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/99000774-calculate-routing-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 99000774 Calculate Routing Line

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/99000774-calculate-routing-line/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Manufacturing.Routing |
| Versions | 17-28 |
| Source file | Manufacturing/Routing/CalculateRoutingLine.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| CalculateRoutingLine | (var Record Prod. Order Routing Line, Option, Boolean) | - | public | 17-28 | - | - |
| ReturnNextCalendarEntry | (var Record Calendar Entry, Record Calendar Entry, Option) | - | public | 17-28 | - | - |
| CalcAvailCapBaseAndDampTime | (Record Capacity Constrained Resource, var Decimal, var Decimal, Decimal, Decimal, Decimal, Decimal) | - | public | 17-28 | - | - |
| CalcAvailQtyBase | (var Record Calendar Entry, Date, Time, Enum Routing Time Type, Decimal, Boolean, Decimal, Decimal) | Decimal | public | 17-28 | - | - |
| LoadCapForward | (Enum Capacity Type, Code[20], Enum Routing Time Type, Boolean) | - | public | 21-28 | - | - |
| CalcRoutingLineBack | (Boolean) | - | public | 25-28 | - | - |
| CalcRoutingLineForward | (Boolean) | - | public | 25-28 | - | - |
| ReplanRoutingLine | (var Record Prod. Order Routing Line, Option, Boolean) | - | public | 26-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnAfterCalcCostInclSetup | (Record Prod. Order Routing Line, var Decimal) | 17-28 | - | - |
| Integration event | OnAfterCalculateRoutingLine | (var Record Prod. Order Routing Line, Enum Transfer Direction) | 17-28 | - | - |
| Integration event | OnAfterInitProdOrderCapNeed | (Record Production Order, var Record Prod. Order Routing Line, var Record Prod. Order Capacity Need, var Decimal) | 17-24 | - | - |
| Integration event | OnBeforeAdjustEndingTime | (var Boolean) | 17-18 | - | - |
| Integration event | OnBeforeAdjustStartingTime | (var Boolean) | 17-18 | - | - |
| Integration event | OnBeforeCalcCostInclSetup | (Record Prod. Order Routing Line, var Decimal) | 17-28 | - | - |
| Integration event | OnBeforeCalcExpectedCost | (var Record Prod. Order Routing Line, var Decimal, var Decimal, var Decimal) | 17-22 | - | - |
| Integration event | OnAfterCalcRoutingLineBack | (var Record Prod. Order Routing Line, Record Prod. Order Line) | 17-28 | - | - |
| Integration event | OnAfterCalcRoutingLineForward | (var Record Prod. Order Routing Line, Record Prod. Order Line) | 17-28 | - | - |
| Integration event | OnAfterCreateCapNeeded | (Record Prod. Order Routing Line, Date, Decimal, Decimal, Record Calendar Entry, Time, Time, Integer, var Integer, Decimal, Decimal, Boolean, Integer) | 17-28 | - | - |
| Integration event | OnBeforeCalcLoadBackAvailQtyBase | (var Record Prod. Order Routing Line, Enum Routing Time Type, Decimal, Decimal, var Decimal, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeCalcLoadForwardAvailQtyBase | (var Record Prod. Order Routing Line, Enum Routing Time Type, Decimal, Decimal, var Decimal, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeCalcRoutingLineBack | (var Record Prod. Order Routing Line, Boolean, var Boolean) | 17 | - | - |
| Integration event | OnBeforeLoadCapBack | (var Record Prod. Order Routing Line, Enum Routing Time Type, Decimal, var Date, var Time) | 17-28 | - | - |
| Integration event | OnBeforeLoadCapForward | (var Record Prod. Order Routing Line, Enum Capacity Type, Code[20], Enum Routing Time Type, var Date, var Time, var Boolean, Decimal) | 17-28 | - | - |
| Integration event | OnBeforeProdOrderCapNeedInsert | (var Record Prod. Order Capacity Need, Record Prod. Order Routing Line, Record Production Order) | 17-24 | - | - |
| Integration event | OnBeforeScheduleRoutingLine | (var Record Prod. Order Routing Line, var Boolean, var Boolean) | 17-27 | - | - |
| Integration event | OnBeforeCalcMove | (var Record Prod. Order Routing Line, Record Work Center, var Date, var Time, var Boolean, var Boolean) | 17-28 | - | - |
| Integration event | OnBeforeCalcRoutingLineForward | (var Record Prod. Order Routing Line, Boolean, var Boolean) | 17 | - | - |
| Integration event | OnBeforeCalcWaitBack | (var Record Prod. Order Routing Line, Record Work Center, var Date, var Time, var Boolean, var Boolean) | 17-28 | - | - |
| Integration event | OnCalculateRoutingLineOnAfterProdOrderLineSetFilters | (var Record Prod. Order Line, Record Production Order, Record Prod. Order Routing Line) | 17-28 | - | - |
| Integration event | OnCalculateRoutingLineOnBeforeCalcExpectedOperOutput | (var Record Prod. Order Line, var Decimal, var Boolean) | 17-28 | - | - |
| Integration event | OnCalculateRoutingLineOnBeforeProdOrderCapNeedReset | (var Record Prod. Order Routing Line, Record Prod. Order Routing Line) | 17-28 | - | - |
| Integration event | OnCreateLoadBackOnAfterCalcRelevantEfficiency | (Record Prod. Order Routing Line, Enum Routing Time Type, var Decimal) | 17-28 | - | - |
| Integration event | OnCreateLoadBackOnBeforeEndStopLoop | (Record Prod. Order Routing Line, Enum Routing Time Type, var Boolean) | 17-28 | - | - |
| Integration event | OnCreateLoadForwardOnBeforeCalcEndingTime | (var Time, Record Calendar Entry, Decimal, Decimal, Decimal, var Boolean, Record Prod. Order Routing Line) | 17 | - | - |
| Integration event | OnCreateLoadForwardOnBeforeEndStopLoop | (Record Prod. Order Routing Line, Enum Routing Time Type, var Boolean) | 17-26 | - | - |
| Integration event | OnCalcRoutingLineBackOnBeforeGetQueueTime | (var Record Prod. Order Routing Line, var Record Prod. Order Routing Line, var Record Prod. Order Routing Line) | 17-28 | - | - |
| Integration event | OnBeforeGetConstrainedSetup | (Record Prod. Order Routing Line, var Record Capacity Constrained Resource, var Boolean, var Record Capacity Constrained Resource, var Boolean, var Boolean) | 18-28 | - | - |
| Integration event | OnBeforeCalcRoutingLineBack | (var Record Prod. Order Routing Line, var Boolean, var Boolean) | 18-28 | - | - |
| Integration event | OnBeforeCalcRoutingLineForward | (var Record Prod. Order Routing Line, var Boolean, var Boolean) | 18-20 | - | - |
| Integration event | OnCreateLoadForwardOnBeforeCalcEndingTime | (var Time, Record Calendar Entry, Decimal, Decimal, Decimal, var Boolean, Record Prod. Order Routing Line, Enum Routing Time Type) | 18-28 | - | - |
| Integration event | OnCalculateRoutingLineOnAfterCalcCostInclSetup | (Record Prod. Order Routing Line, var Decimal, var Decimal) | 18-28 | - | - |
| Integration event | OnCalculateRoutingLineOnBeforeCalcCostInclSetup | (Record Prod. Order Routing Line, var Decimal, var Decimal) | 18-28 | - | - |
| Integration event | OnCalculateRoutingLineBackOnAfterCalcRemainNeedQtyForLotSize | (Record Prod. Order Routing Line, var Decimal) | 18-28 | - | - |
| Integration event | OnCalculateRoutingLineForwardOnAfterCalcRemainNeedQtyForLotSize | (Record Prod. Order Routing Line, var Decimal) | 18-28 | - | - |
| Integration event | OnBeforeAdjustEndingTime | (var Boolean, Record Calendar Entry, var Time) | 19-28 | - | - |
| Integration event | OnBeforeAdjustStartingTime | (var Boolean, Record Calendar Entry, var Time) | 19-28 | - | - |
| Integration event | OnCalculateRoutingLineFixedOnBeforeCalcRoutingLineBack | (Record Prod. Order Routing Line, var Boolean) | 19-28 | - | - |
| Integration event | OnCalculateRoutingLineFixedOnBeforeCalcRoutingLineForward | (Record Prod. Order Routing Line, var Boolean) | 19-28 | - | - |
| Integration event | OnFinitelyLoadCapBackOnAfterCalcShouldProcessLastProdOrderCapNeed | (var Record Prod. Order Routing Line, Decimal, Record Calendar Entry, Time, Date, Enum Routing Time Type, var Boolean, var Boolean, var Boolean, var Decimal, var Record Prod. Order Capacity Need, Record Production Order, var Integer, Record Work Center, Decimal, var Boolean) | 19-28 | - | - |
| Integration event | OnBeforeSetLotSizesToMax | (var Decimal, var Decimal, Decimal, Record Prod. Order Routing Line, var Boolean) | 20-28 | - | - |
| Integration event | OnCalcRoutingLineBackOnAfterCalcShouldCalcNextOperation | (var Record Prod. Order Routing Line, var Boolean) | 20-28 | - | - |
| Integration event | OnBeforeCalcRoutingLineForward | (var Record Prod. Order Routing Line, var Boolean, var Boolean, var Record Prod. Order Routing Line, var Decimal, Decimal, var Decimal, var Decimal, var Boolean) | 21-28 | - | - |
| Integration event | OnCreateLoadForwardOnBeforeCheckWrite | (Record Prod. Order Routing Line, Enum Routing Time Type, var Decimal, var Decimal, var Decimal, Decimal, Boolean) | 21-28 | - | - |
| Integration event | OnCreateLoadBackOnBeforeCheckWrite | (Record Prod. Order Routing Line, Enum Routing Time Type, var Decimal, var Decimal, var Decimal, Decimal, Boolean) | 21-24 | - | - |
| Integration event | OnBeforeCalcExpectedCost | (var Record Prod. Order Routing Line, var Decimal, var Decimal, var Decimal, var Decimal, var Decimal) | 23-28 | - | - |
| Integration event | OnCreateLoadForwardOnAfterScheduleProdOrderRoutingLineManually | (var Record Prod. Order Routing Line, Enum Routing Time Type, var DateTime, var Date, var Time, var Decimal) | 23-28 | - | - |
| Integration event | OnBeforeCalculateRoutingLine | (var Record Prod. Order Routing Line, Option, Boolean, var Boolean) | 24-28 | - | - |
| Integration event | OnLoadCapForwardOnScheduleManuallyOnBeforeCheckDateTimes | (var Record Prod. Order Routing Line, Enum Capacity Type, Code[20], Enum Routing Time Type, var Date, var Time, Decimal, var DateTime, var DateTime) | 24-28 | - | - |
| Integration event | OnBeforeUpdateTimesBack | (Record Calendar Entry, Record Prod. Order Routing Line, var Decimal, var Decimal, var Decimal, var Time, Time, Decimal, Record Work Center, var Decimal, var Boolean) | 24-28 | - | - |
| Integration event | OnBeforeUpdateTimesForward | (Record Calendar Entry, Record Prod. Order Routing Line, var Decimal, var Decimal, var Decimal, var Time, Time, Decimal, Record Work Center, var Decimal, var Boolean) | 24-28 | - | - |
| Integration event | OnReturnNextCalendarEntryOnAfterSetCalendarEntryDateFilter | (var Record Calendar Entry) | 24-28 | - | - |
| Integration event | OnFinitelyLoadCapBackOnAfterSetCalendarEntryFilters | (var Record Calendar Entry) | 24-28 | - | - |
| Integration event | OnLoadCapBackOnAfterSetCalendarEntryFilters | (var Record Calendar Entry) | 24-28 | - | - |
| Integration event | OnAfterInitProdOrderCapNeed | (Record Production Order, var Record Prod. Order Routing Line, var Record Prod. Order Capacity Need, var Decimal, Enum Routing Time Type, var Decimal, var Decimal) | 25-28 | - | - |
| Integration event | OnBeforeProdOrderCapNeedInsert | (var Record Prod. Order Capacity Need, Record Prod. Order Routing Line, Record Production Order, var Record Calendar Entry) | 25-28 | - | - |
| Integration event | OnCreateLoadBackOnBeforeCheckWrite | (Record Prod. Order Routing Line, Enum Routing Time Type, var Decimal, var Decimal, var Decimal, Decimal, Boolean, var Time, Decimal, var Record Calendar Entry) | 25-28 | - | - |
| Integration event | OnCalculateRoutingLineOnAfterCalcMaxLotSize | (Decimal, var Record Prod. Order Routing Line, Decimal, var Decimal) | 25-28 | - | - |
| Integration event | OnBeforeInitProdOrderCapNeed | (Record Production Order, var Record Prod. Order Routing Line, var Record Prod. Order Capacity Need, Enum Routing Time Type, Date, Time, Time, var Decimal, Decimal) | 25-28 | - | - |
| Integration event | OnLoadCapBackOnAfterCreateLoadBack | (Enum Capacity Type, Code[20], Enum Routing Time Type, Boolean) | 26-28 | - | - |
| Integration event | OnCalcRoutingLineForwardOnBeforeLoadCapForward | (Record Prod. Order Routing Line, Record Prod. Order Routing Line) | 26-28 | - | - |
| Integration event | OnCalcRoutingLineForwardOnBeforeLoadCapForward2 | (Record Prod. Order Routing Line, Record Prod. Order Routing Line) | 26-28 | - | - |
| Integration event | OnLoadCapForwardOnBeforeCreateLoadForward | (var Decimal, Enum Capacity Type, Code[20], Enum Routing Time Type, Boolean, Decimal) | 26-28 | - | - |
| Integration event | OnLoadCapForwardOnAfterCreateLoadForward | (var Decimal, Enum Capacity Type, Code[20], Enum Routing Time Type, Boolean, Decimal) | 26-28 | - | - |
| Integration event | OnGetSendAheadEndingTimeOnAfterCalcTimes | (Record Prod. Order Routing Line, Record Work Center, var Decimal, var Decimal, var Decimal, var Decimal) | 26-28 | - | - |
| Integration event | OnGetSendAheadEndingTimeOnAfterCalcSetupAndRunTime | (Record Prod. Order Routing Line, Record Work Center, var Decimal, var Decimal) | 26-28 | - | - |
| Integration event | OnCalcRoutingLineBackOnAfterCalcRemainNeedQty | (Record Prod. Order Routing Line, Record Work Center, var Decimal) | 26-28 | - | - |
| Integration event | OnFinitelyLoadCapBackOnAfterCalcSetupTime | (Record Prod. Order Routing Line, Record Work Center, var Decimal) | 26-28 | - | - |
| Integration event | OnCalcRoutingLineForwardOnAfterCalcRemainNeedQty | (Record Prod. Order Routing Line, Record Work Center, var Decimal) | 26-28 | - | - |
| Integration event | OnCreateLoadForwardOnBeforeEndStopLoop | (Record Prod. Order Routing Line, Enum Routing Time Type, var Boolean, Boolean, Boolean, Date, Time, Date, Time, var Decimal, var Decimal, Boolean, Decimal, Code[20], Decimal, Decimal, var Record Calendar Entry) | 27 | - | - |
| Integration event | OnBeforeCalcAvailQtyBase | (Record Calendar Entry, Enum Routing Time Type, var Decimal, var Boolean) | 27-28 | - | - |
| Integration event | OnBeforeCreateLoadBack | (var Decimal, Record Calendar Entry, Enum Routing Time Type, Boolean, Boolean, Boolean, Code[20], Date, Time, Date, Time, var Boolean) | 27 | - | - |
| Integration event | OnBeforeCreateLoadForward | (var Decimal, Record Calendar Entry, Enum Routing Time Type, Boolean, Decimal, Boolean, Boolean, Code[20], Date, Time, Date, Time, var Boolean) | 27 | - | - |
| Integration event | OnBeforeScheduleRoutingLine | (var Record Prod. Order Routing Line, var Boolean, var Boolean, var Option) | 28 | - | - |
| Integration event | OnCreateLoadForwardOnBeforeEndStopLoop | (Record Prod. Order Routing Line, var Enum Routing Time Type, var Boolean, Boolean, Boolean, Date, Time, Date, Time, var Decimal, var Decimal, var Boolean, var Decimal, var Code[20], var Decimal, var Decimal, var Record Calendar Entry) | 28 | - | - |
| Integration event | OnFinitelyLoadCapBackOnAfterCalcAvailTimeFromLastProdOrderCapNeed | (var Decimal, Time, Decimal, Record Prod. Order Capacity Need) | 28 | - | - |
| Integration event | OnFinitelyLoadCapBackOnAfterCalcAvailTimeFromCalendarEntry | (var Decimal, Time, Decimal, Record Calendar Entry) | 28 | - | - |
| Integration event | OnBeforeCreateLoadBack | (var Decimal, Record Calendar Entry, var Enum Routing Time Type, var Boolean, Boolean, Boolean, var Code[20], Date, Time, Date, Time, var Boolean, var Decimal, var Decimal) | 28 | - | - |
| Integration event | OnBeforeCreateLoadForward | (var Decimal, Record Calendar Entry, var Enum Routing Time Type, var Boolean, var Decimal, Boolean, Boolean, var Code[20], Date, Time, Date, Time, var Boolean, var Decimal, var Decimal) | 28 | - | - |
| Integration event | OnInitProdOrderCapNeedOnBeforeUpdateAllocatedTimeAndExpectedCapacityNeed | (var Record Prod. Order Capacity Need, var Boolean) | 28 | - | - |
| Integration event | OnUpdateTimesBackOnBeforeUpdateAvailCap | (var Record Prod. Order Routing Line, var Boolean) | 28 | - | - |
| Integration event | OnUpdateTimesForwardOnBeforeUpdateAvailCap | (var Record Prod. Order Routing Line, var Boolean) | 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.
