tableInventoryofficial - Microsoftderived - from the source, no model text

Table 5870 "BOM Buffer"

Base Application · Microsoft.Inventory.BOM

Across versions

  1. BC23present
  2. BC242 events added, 2 events removed
  3. BC25unchanged
  4. BC262 fields added, 1 procedures added
  5. BC2753 fields changed, 13 events removed
  6. BC2847 fields changed, 1 procedures added
  7. BC29-30unchanged

Neighbourhood 15 connected objects and pages

Table 205 "Resource Unit of Measure" (relates to, 2 links)Resource Unit of MeasureTable 5404 "Item Unit of Measure" (relates to, 2 links)Item Unit of MeasureTable 14 "Location" (relates to)LocationTable 156 "Resource" (relates to)ResourceTable 27 "Item" (relates to)ItemTable 5401 "Item Variant" (relates to)Item VariantPage 5870 "BOM Structure" (pages and codeunits on it)BOM StructurePage 5871 "Item Availability by BOM Level" (pages and codeunits on it)Item Availability by BOM LevelPage 5872 "BOM Cost Shares" (pages and codeunits on it)BOM Cost SharesTable extension 958 "Asm. BOM Buffer" (extended by)Asm. BOM BufferTable extension 99000820 "Mfg. BOM Buffer" (extended by)Mfg. BOM BufferCodeunit 99000820 "Mfg. Bom Buffer" (event subscribers, 9 links)Mfg. Bom BufferCodeunit 5402 "Unit of Measure Management" (calls, 7 links)Unit of Measure ManagementGet an availability overview (Learn pages)Get an availability overviewWork with assembly BOMs (Learn pages)

Open in the neighbourhood explorer

One hop out, from the extracted relations and call graph. Up to 40 shown; the sections below list them all.

Base Application · Microsoft.Inventory.BOM · BC23-30 · source at ea08af5e · facts from BC29

Learn documents this table through its pages: Page 5870 “BOM Structure” (1 Learn page), Page 5871 “Item Availability by BOM Level” (1), Page 5872 “BOM Cost Shares” (1).

Properties

Property Value
Caption BOM Buffer
DataClassification SystemMetadata

Fields

Explanation: the field’s ToolTip in the code; without one, the ToolTip of a page control bound to the field (marked via the page); without that, its Caption (marked caption) when that differs from the name.

No. Name Type Explanation Notes
1 Entry No. Δ BC27 Integer — AutoIncrement
2 Type Δ BC27 Δ BC28 Enum “BOM Type” Specifies the item’s position in the BOM structure. Lower-level items are indented under their parents. enum Enum 5870 “BOM Type”
3 No. Δ BC27 Δ BC28 Code[20] Specifies the number of the involved entry or record, according to the specified number series. TableRelation Table 156 “Resource”, Table 27 “Item” (if (Type = const(Item)) Item else if (Type = const(Resource)) Resource)
5 Description Δ BC27 Δ BC28 Text[100] Specifies the item’s description.
6 Unit of Measure Code Δ BC27 Δ BC28 Code[10] Specifies how each unit of the item or resource is measured, such as in pieces or hours. By default, the value in the Base Unit of Measure field on the item or resource card is inserted. TableRelation Table 205 “Resource Unit of Measure”, Table 5404 “Item Unit of Measure” (if (Type = const(Item)) “Item Unit of Measure”.Code where(“Item No.” = field(“No.”)) else if (Type = const(Resource)) “Resource Unit of Measure”.Code where(“Resource No.” = field(“No.”)))
7 Variant Code Δ BC27 Δ BC28 Code[10] Specifies the variant code that you entered in the Variant Filter field in the Item Availability by BOM Level window. TableRelation Table 5401 “Item Variant” (if (Type = const(Item)) “Item Variant”.Code where(“Item No.” = field(“No.”)))
8 Location Code Δ BC27 Code[10] — TableRelation Table 14 “Location”
9 Replenishment System Δ BC27 Δ BC28 Enum “Replenishment System” Specifies the item’s replenishment system. enum Enum 5419 “Replenishment System”
10 Indentation Δ BC27 Integer —
11 Is Leaf Δ BC27 Boolean —
13 Bottleneck Δ BC27 Δ BC28 Boolean Specifies which item in the BOM structure restricts you from making a larger quantity than what is shown in the Able to Make Top Item field.
20 Lot Size Δ BC27 Δ BC28 Decimal Specifies the item’s lot size. The value is copied from the Lot Size field on the item card.
21 Low-Level Code Δ BC27 Δ BC28 Integer Specifies the item’s level in the BOM structure. not editable
22 Rounding Precision Δ BC27 Δ BC28 Decimal —
30 Qty. per Parent Δ BC27 Δ BC28 Decimal Specifies how many units of the component are required to assemble or produce one unit of the parent.
31 Qty. per Top Item Δ BC27 Δ BC28 Decimal Specifies how many units of the component are required to assemble or produce one unit of the top item.
32 Able to Make Top Item Δ BC27 Δ BC28 Decimal Specifies how many units of the BOM item on the top line can be assembled or produced.
33 Able to Make Parent Δ BC27 Δ BC28 Decimal Specifies how many units of the BOM item on the collapsible line above it can be assembled or produced.
35 Available Quantity Δ BC27 Δ BC28 Decimal Specifies how many units of the item on the line are available, regardless of how many parents you can make with the item.
36 Gross Requirement Δ BC27 Δ BC28 Decimal Specifies the total demand for the item.
37 Scheduled Receipts Δ BC27 Δ BC28 Decimal Specifies how many units of the item are inbound on orders.
38 Unused Quantity Δ BC27 Δ BC28 Decimal Specifies the part of the item’s total availability that is not required to make the quantities that are shown in the fields.
40 Lead Time Calculation Δ BC27 Δ BC28 DateFormula Specifies how long it takes to replenish the item, by purchase, assembly, or production.
41 Lead-Time Offset Δ BC27 Δ BC28 DateFormula Specifies the total number of days that are required to assemble or produce the item.
42 Rolled-up Lead-Time Offset Δ BC27 Δ BC28 Integer Specifies the cumulative lead time of components under a parent item.
43 Needed by Date Δ BC27 Δ BC28 Date Specifies when the item must be available to make the parent or top item.
45 Safety Lead Time Δ BC27 Δ BC28 DateFormula Specifies any safety lead time that is defined for the item.
50 Unit Cost Δ BC27 Δ BC28 Decimal Specifies the cost of one unit of the item or resource on the line.
52 Indirect Cost % Δ BC27 Δ BC28 Decimal Specifies the percentage of the item’s last purchase cost that includes indirect costs, such as freight that is associated with the purchase of the item.
54 Overhead Rate Δ BC27 Δ BC28 Decimal Specifies the item’s overhead rate.
55 Scrap % Δ BC27 Δ BC28 Decimal Specifies the percentage of the item that you expect to be scrapped in the production process.
56 Scrap Qty. per Parent Δ BC27 Δ BC28 Decimal Specifies how many units of the item are scrapped to output the top item quantity.
57 Scrap Qty. per Top Item Δ BC27 Δ BC28 Decimal Specifies how many units of the item are scrapped to output the parent item quantity.
59 Resource Usage Type Δ BC27 Δ BC28 Option Specifies how the cost of the resource on the assembly BOM is allocated during assembly. OptionCaption: Direct,Fixed
61 Single-Level Material Cost Δ BC27 Δ BC28 Decimal Specifies the total material cost of all components on the parent item’s BOM.
62 Single-Level Capacity Cost Δ BC27 Δ BC28 Decimal Specifies the capacity costs related to the item’s parent item only.
64 Single-Level Cap. Ovhd Cost Δ BC27 Δ BC28 Decimal Specifies the single-level capacity overhead cost.
63 Single-Level Subcontrd. Cost Δ BC27 Δ BC28 Decimal Specifies the single-level cost of outsourcing operations to a subcontractor.
65 Single-Level Mfg. Ovhd Cost Δ BC27 Δ BC28 Decimal Specifies the single-level manufacturing overhead cost.
66 Single-Level Scrap Cost Δ BC27 Δ BC28 Decimal Specifies the cost of material at this BOM level that will eventually be scrapped in order to produce the parent item.
71 Rolled-up Material Cost Δ BC27 Δ BC28 Decimal Specifies the material cost of all items at all levels of the parent item’s BOM, added to the material cost of the item itself. not editable
72 Rolled-up Capacity Cost Δ BC27 Δ BC28 Decimal Specifies the capacity costs related to the item’s parent item and other items in the parent item’s BOM. not editable
74 Rolled-up Capacity Ovhd. Cost Δ BC27 Δ BC28 Decimal Specifies the rolled-up manufacturing overhead cost of the item. not editable
73 Rolled-up Subcontracted Cost Δ BC27 Δ BC28 Decimal Specifies the single-level cost of outsourcing operations to a subcontractor. not editable
75 Rolled-up Mfg. Ovhd Cost Δ BC27 Δ BC28 Decimal Specifies the item’s overhead capacity cost rolled up from underlying item levels. not editable
76 Rolled-up Scrap Cost Δ BC27 Δ BC28 Decimal Specifies the cost of all component material that will eventually be scrapped to produce the parent item.
77 Single-Lvl Mat. Non-Invt. Cost + BC26 Δ BC27 Δ BC28 Decimal Specifies the total non inventory material cost of all components on the parent item’s BOM.
78 Rolled-up Mat. Non-Invt. Cost + BC26 Δ BC27 Δ BC28 Decimal Specifies the non inventory material cost of all items at all levels of the parent item’s BOM, added to the non inventory material cost of the item itself. not editable
81 Total Cost Δ BC27 Δ BC28 Decimal Specifies the sum of all cost at this BOM level.
82 BOM Unit of Measure Code Δ BC27 Δ BC28 Code[10] Specifies the unit of measure of the BOM item. TableRelation Table 205 “Resource Unit of Measure”, Table 5404 “Item Unit of Measure” (if (Type = const(Item)) “Item Unit of Measure”.Code where(“Item No.” = field(“No.”)) else if (Type = const(Resource)) “Resource Unit of Measure”.Code where(“Resource No.” = field(“No.”)))
83 Qty. per BOM Line Δ BC27 Δ BC28 Decimal Specifies how many units of the component are required to assemble or produce one unit of the item on the BOM line.
84 Inventoriable Δ BC27 Boolean —
85 Calculation Formula Δ BC27 Enum “Quantity Calculation Formula” — enum Enum 5444 “Quantity Calculation Formula”

Keys

  • Key1: Entry No. (clustered)
  • Key2: Low-Level Code
  • Key3: Type, No., Indentation
  • Key4: Total Cost

Events published

  • OnAfterCalcUnitCost(var BOMBuffer: Record "BOM Buffer") (integration)
  • OnAfterGetItemCosts(var BOMBuffer: Record "BOM Buffer"; Item: Record Item) (integration)
  • OnAfterInitFromItem(var BOMBuffer: Record "BOM Buffer"; Item: Record Item; StockkeepingUnit: Record "Stockkeeping Unit") (integration)
  • OnAfterInitFromRes(var BOMBuffer: Record "BOM Buffer"; Resource: Record Resource) (integration)
  • OnAfterIsLineOk(var BOMBuffer: Record "BOM Buffer"; LogWarning: Boolean; var BOMWarningLog: Record "BOM Warning Log"; var Result: Boolean) (integration)
  • OnAfterRoundCosts(var BOMBuffer: Record "BOM Buffer"; ShareOfTotalCost: Decimal) (integration)
  • OnBeforeCalcOvhdCost(var BOMBuffer: Record "BOM Buffer"; var IsHandled: Boolean) (integration)
  • OnBeforeInitFromItem(var BOMBuffer: Record "BOM Buffer"; Item: Record Item; var IsHandled: Boolean) (integration)
  • OnBeforeIsBOMOk(var BOMBuffer: Record "BOM Buffer"; var Result: Boolean; var IsHandled: Boolean; var LogWarning: Boolean; var BOMWarningLog: Record "BOM Warning Log") + BC24 − BC24 (integration)
  • OnBeforeIsLowLevelOk(var BOMBuffer: Record "BOM Buffer"; var Result: Boolean; var IsHandled: Boolean; var LogWarning: Boolean; var BOMWarningLog: Record "BOM Warning Log") + BC24 − BC24 (integration)
  • OnBeforeInitFromRes(var BOMBuffer: Record "BOM Buffer"; Resource: Record Resource; var IsHandled: Boolean) (integration)
  • OnBeforeUpdateAbleToMake(var BOMBuffer: Record "BOM Buffer"; var AvailQty: Decimal; var IsHandled: Boolean) (integration)
  • OnGetItemCostsOnBeforeRoundCosts(var BOMBuffer: Record "BOM Buffer"; var Item: Record Item) + BC27 − BC27 (integration)
  • OnTransferFromItemCopyFields(var BOMBuffer: Record "BOM Buffer"; Item: Record Item) (integration)
  • OnTransferFromBOMCompCopyFields(var BOMBuffer: Record "BOM Buffer"; BOMComponent: Record "BOM Component") (integration)
  • OnBeforeIsQtyPerOk(var BOMBuffer: Record "BOM Buffer"; var BOMWarningLog: Record "BOM Warning Log"; LogWarning: Boolean; var Result: Boolean; var IsHandled: Boolean) (integration)
  • OnBeforeIsReplenishmentOk(var BOMBuffer: Record "BOM Buffer"; var BOMWarningLog: Record "BOM Warning Log"; LogWarning: Boolean; var Result: Boolean; var IsHandled: Boolean) (integration)
  • OnBeforeRoundUnitAmt(Amt: Decimal; ShareOfCost: Decimal; var IsHandled: Boolean; var ReturnValue: Decimal) (integration)
  • OnAfterCalcDirectCost(var BOMBuffer: Record "BOM Buffer"; var Cost: Decimal) + BC27 (integration)
  • OnAfterCalcIndirectCost(var BOMBuffer: Record "BOM Buffer"; var Cost: Decimal) + BC27 (integration)
  • OnAfterCalcOvhdCost(var BOMBuffer: Record "BOM Buffer"; LotSize: Decimal) + BC27 (integration)
  • OnAfterGetUnitCost(var BOMBuffer: Record "BOM Buffer"; var Item: Record Item) + BC27 (integration)
  • OnIsQtyPerOKOnAfterCheckItemAssemblyBOM(Item: Record Item; var BOMWarningLog: Record "BOM Warning Log") + BC27 (integration)
  • OnInitFromItemOnAfterSetReplenishmentSystem(var BOMBuffer: Record "BOM Buffer"; Item: Record Item; StockkeepingUnit: Record "Stockkeeping Unit") + BC27 (integration)
  • OnAfterSetLocationVariantFiltersFrom(var BOMBuffer: Record "BOM Buffer"; var ItemFilter: Record Item) + BC27 (integration)

Procedures

  • TransferFromItem(var EntryNo: Integer; Item: Record Item; DemandDate: Date)
  • TransferFromBOMComp(var EntryNo: Integer; BOMComp: Record "BOM Component"; NewIndentation: Integer; ParentQtyPer: Decimal; ParentScrapQtyPer: Decimal; NeedByDate: Date; ParentLocationCode: Code[10])
  • InitFromItem(Item: Record Item)
  • InitFromRes(Resourse: Record Resource)
  • UpdateAbleToMake(AvailQty: Decimal)
  • AddMaterialCost(SingleLvlCostAmt: Decimal; RolledUpCostAmt: Decimal)
  • AddCapacityCost(SingleLvlCostAmt: Decimal; RolledUpCostAmt: Decimal)
  • AddCapOvhdCost(SingleLvlCostAmt: Decimal; RolledUpCostAmt: Decimal)
  • AddSubcontrdCost(SingleLvlCostAmt: Decimal; RolledUpCostAmt: Decimal)
  • AddMfgOvhdCost(SingleLvlCostAmt: Decimal; RolledUpCostAmt: Decimal)
  • AddScrapCost(SingleLvlCostAmt: Decimal; RolledUpCostAmt: Decimal)
  • AddNonInvMaterialCost(SingleLvlCostAmt: Decimal; RolledUpCostAmt: Decimal) + BC26
  • GetItemCosts()
  • GetItemUnitCost() + BC24
  • GetResCosts()
  • RoundCosts(ShareOfTotalCost: Decimal)
  • RoundUnitAmt(Amt: Decimal; ShareOfCost: Decimal): Decimal Δ BC27
  • CalcOvhdCost()
  • CalcDirectCost(): Decimal
  • CalcIndirectCost(): Decimal
  • CalcUnitCost()
  • IsLineOk(LogWarning: Boolean; var BOMWarningLog: Record "BOM Warning Log"): Boolean
  • AreAllLinesOk(var BOMWarningLog: Record "BOM Warning Log"): Boolean
  • SetLocationVariantFiltersFrom(var ItemFilter: Record Item)
  • SetItemWarningLog(var BOMWarningLog: Record "BOM Warning Log"; var Item: Record Item; WarningText: Text) + BC27

Plus 9 local procedures.

Relations

Pages and codeunits on this table

Extended by

Calls

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.

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: "table", object_name: "BOM Buffer"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.

Evidence 1 sources