Codeunit 99000793 "Calculate Low-Level Code"
Base Application · Microsoft.Manufacturing.ProductionBOM
Across versions
- BC23present
- BC241 events added
- BC251 procedures added
- BC26-28unchanged
- BC291 procedures added
- BC30unchanged
Neighbourhood 2 connected objects and pages
Base Application · Microsoft.Manufacturing.ProductionBOM · BC23-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| TableNo | Item |
| Permissions | TableData Item = rm, TableData “Manufacturing Setup” = r, TableData “Stockkeeping Unit” = r |
Events published
OnAfterCalcLevels(Type: Option " ",Item,"Production BOM",Assembly; No: Code[20]; var TotalLevels: Integer; Level: Integer; LevelDepth: Integer)(integration)OnBeforeCalcLevels(Type: Option; No: Code[20]; Level: Integer; LevelDepth: Integer; var Result: Integer; var IsHandled: Boolean)(integration)OnBeforeItemModify(var Item: Record Item)(integration)OnBeforeSetRecursiveLevelsOnBOM(var ProductionBOMHeader: Record "Production BOM Header"; LowLevelCode: Integer; IgnoreMissingItemsOrBOMs: Boolean; var IsHandled: Boolean)(integration)OnCalcLevelsForProdBOM(var Item: Record Item; No: Code[20]; Level: Integer; LevelDepth: Integer; var TotalLevels: Integer)(integration)OnSetRecursiveLevelsOnItemOnBeforeCompItemModify(var CompItem: Record Item; IgnoreMissingItemsOrBOMs: Boolean)(integration)OnBeforeSetRecursiveLevelsOnItem(var CompItem: Record Item; LowLevelCode: Integer; IgnoreMissingItemsOrBOMs: Boolean; var IsHandled: Boolean)+ BC24 (integration)
Procedures
CalcLevels(Type: Option " ",Item,"Production BOM",Assembly; No: Code[20]; Level: Integer; LevelDepth: Integer): IntegerRecalcLowerLevels(ProdBOMNo: Code[20]; LowLevelCode: Integer; IgnoreMissingItemsOrBOMs: Boolean)RecalcAsmLowerLevels(ParentItemNo: Code[20]; LowLevelCode: Integer; IgnoreMissingItemsOrBOMs: Boolean)SetRecursiveLevelsOnItem(var CompItem: Record Item; LowLevelCode: Integer; IgnoreMissingItemsOrBOMs: Boolean)SetRecursiveLevelsOnBOM(var CompBOM: Record "Production BOM Header"; LowLevelCode: Integer; IgnoreMissingItemsOrBOMs: Boolean)GetMax(Level1: Integer; Level2: Integer): IntegerSetActualProdBOM(ActualProdBOM2: Record "Production BOM Header")
Plus 2 local procedures.
Triggers
OnRun
Relations
- runs on Table 27 “Item”
Called by
From the extracted call graph of BC29 (graphify-al on the snapshot checkout): calls whose target is known from a declared type or an Object::"Name" argument. Interface dispatch and calls through events are not counted, so the list is not complete.
- Codeunit 99000769 “Production BOM-Check” (4 calls:
Code → CalcLevels,Code → RecalcLowerLevels,Code → SetActualProdBOM, …)
Recent changes
- 2026-08-27 #10030 [main]planning worksheet requires second runof calculate regenerative plan (main, BC30, fix)
Ask your agent
Procedure bodies are not stored here (D10). The call sections above are our own, per object, from the BC29 call graph. For a procedure body or the calls of one procedure, ask bc-code-atlas (external, by Stefan Maron, MIT; default corpus w1-28), which the bc-observatory plugin connects: bcatlas_resolve_node(object_type: "codeunit", object_name: "Calculate Low-Level Code"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.