---
title: "Codeunit 99000781 Mfg. Calculate BOM Tree"
author: "Jonas Paprotka"
url: https://jonas-paprotka.de/ref/codeunit/99000781-mfg-calculate-bom-tree/
type: codeunit
id: 99000781
name: "Mfg. Calculate BOM Tree"
app: "Base Application"
namespace: Microsoft.Inventory.BOM.Tree
versions: "27-28"
build: 28.5.54151.54365
source: "https://jonas-paprotka.de/ref/codeunit/99000781-mfg-calculate-bom-tree/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 99000781 Mfg. Calculate BOM Tree

Jonas Paprotka, https://jonas-paprotka.de/ref/codeunit/99000781-mfg-calculate-bom-tree/

| | |
| --- | --- |
| App | Base Application |
| Namespace | Microsoft.Inventory.BOM.Tree |
| Versions | 27-28 |
| Source file | Manufacturing/Inventory/BOM/MfgCalculateBOMTree.Codeunit.al |

## Procedures

| Name | Parameters | Returns | Access | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- | --- |
| GenerateTreeForProdOrderLine | (Record Prod. Order Line, var Record BOM Buffer, Enum BOM Tree Type, var Record Item, var Integer, var Codeunit Calculate BOM Tree) | - | public | 27-28 | - | - |

## Events

| Kind | Name | Parameters | Versions | Obsolete | Reason |
| --- | --- | --- | --- | --- | --- |
| Integration event | OnBeforeFilterByQuantityPer | (var Record Production BOM Line, var Boolean, Record BOM Buffer) | 27-28 | - | - |
| Integration event | OnGenerateProdCompSubTreeOnBeforeExitForNonProdOrder | (Record Item, var Record BOM Buffer, var Boolean) | 27-28 | - | - |
| Integration event | OnAfterTransferFromProdItem | (var Record BOM Buffer, Record Production BOM Line, var Integer) | 27-28 | - | - |
| Integration event | OnGenerateProdCompSubTreeOnAfterGenerateItemSubTree | (var Record BOM Buffer, var Record BOM Buffer) | 27-28 | - | - |
| Integration event | OnBeforeTransferFromProdBOM | (var Record BOM Buffer, var Record Production BOM Line, var Record Item, var Record BOM Buffer, var Integer, Enum BOM Tree Type) | 27-28 | - | - |
| Integration event | OnAfterTransferFromProdBOM | (var Record BOM Buffer, Record Production BOM Line) | 27-28 | - | - |
| Integration event | OnAfterGenerateProdCompSubTree | (var Record Item, var Record BOM Buffer, var Record BOM Buffer) | 27-28 | - | - |
| Integration event | OnGenerateProdCompSubTreeOnAfterProdBOMLineLoop | (var Record BOM Buffer, var Record BOM Buffer) | 27-28 | - | - |
| Integration event | OnGenerateProdCompSubTreeOnBeforeBOMBufferModify | (var Record BOM Buffer, var Record BOM Buffer, Record Item) | 27-28 | - | - |
| Integration event | OnGenerateProdCompSubTreeOnAfterBOMBufferModify | (var Record BOM Buffer, Record Routing Line, Decimal, Record Item, Record BOM Buffer, Enum BOM Tree Type) | 27-28 | - | - |
| Integration event | OnBeforeGenerateProdOrderLineSubTree | (Record Prod. Order Line, var Record BOM Buffer, var Record BOM Buffer, var Boolean, var Boolean) | 27-28 | - | - |
| Integration event | OnBeforeCalcRoutingLineCosts | (var Record Routing Line, var Decimal, var Decimal, Record Item) | 27-28 | - | - |
| Integration event | OnCalcRoutingLineCostsOnBeforeBOMBufferAdd | (Record Routing Line, Decimal, Decimal, var Decimal, var Decimal, var Decimal, var Record BOM Buffer) | 27-28 | - | - |
| Integration event | OnBeforeTransferProdBOMLine | (var Record BOM Buffer, var Record Production BOM Line, var Record Item, var Record BOM Buffer, var Integer, Option, var Boolean) | 27-28 | - | - |
| Integration event | OnGenerateProdCompSubTreeOnBeforeRoutingLineLoop | (var Record Routing Line, var Record BOM Buffer, var Boolean) | 27 | - | - |
| Integration event | OnAfterTransferFromProdRouting | (var Record BOM Buffer, var Record Routing Line) | 27-28 | - | - |
| Integration event | OnAfterCalcRoutingLineCosts | (Record Routing Line, Decimal, Decimal, var Decimal, var Decimal, var Decimal, var Record BOM Buffer, var Record Item) | 28 | - | - |
| Integration event | OnGenerateProdCompSubTreeOnBeforeRoutingLineLoop | (var Record Routing Line, var Record BOM Buffer, var Boolean, Record Item) | 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.
