Codeunit 5836 "Cost Calculation Management"
Base Application · Microsoft.Inventory.Costing
Across versions
- BC23present
- BC244 events added, 2 procedures changed
- BC255 procedures removed, 3 procedures added
- BC2644 procedures added, 26 events removed
- BC271 procedures added, 1 events added
- BC283 procedures removed
- BC2946 procedures removed, 26 events removed
- BC30unchanged
Neighbourhood 22 connected objects and pages
Base Application · Microsoft.Inventory.Costing · BC23-30 · source at ea08af5e · facts from BC29
Properties
| Property | Value |
|---|---|
| SingleInstance | true |
| Permissions | TableData “Item Ledger Entry” = r, TableData “Value Entry” = r |
Events published
OnBeforeCalcSalesLineCostLCY(SalesLine: Record "Sales Line"; QtyType: Option General,Invoicing; var IsHandled: Boolean; var TotalAdjCostLCY: Decimal)+ BC24 (integration)OnCalcSalesLineShptAdjCostLCYBeforeSalesShptLineFind(var SalesShptLine: Record "Sales Shipment Line"; var SalesLine: Record "Sales Line")+ BC24 (integration)OnCalcCustActualCostLCYOnAfterFilterValueEntry(var Customer: Record Customer; var ValueEntry: Record "Value Entry")+ BC24 (integration)OnCalcCustActualCostLCYOnAfterFilterResLedgerEntry(var Customer: Record Customer; var ResLedgerEntry: Record "Res. Ledger Entry")+ BC24 (integration)OnBeforeRelatedReturnReceiptExists(var SalesShptLine: Record "Sales Shipment Line"; var ReturnRcptLine: Record "Return Receipt Line"; var IsHandled: Boolean)+ BC25 (integration)OnBeforeSetFiltersRelatedReturnReceiptExists(var SalesShptLine: Record "Sales Shipment Line"; var ReturnRcptLine: Record "Return Receipt Line"; var ReturnValue: Boolean; var IsHandled: Boolean)+ BC25 (integration)OnCanIncNonInvCostIntoProductionItem(var Result: Boolean)+ BC27 (integration)- subscribers: Codeunit 99000758 “Mfg. Cost Calculation Mgt.” OnCanIncNonInvCostIntoProductionItem
Procedures
ResourceCostPerUnit(No: Code[20]; var DirUnitCost: Decimal; var IndirCostPct: Decimal; var OvhdRate: Decimal; var UnitCost: Decimal)CalcDirCost(Cost: Decimal; OvhdCost: Decimal; VarPurchCost: Decimal): DecimalCalcDirUnitCost(UnitCost: Decimal; OvhdRate: Decimal; IndirCostPct: Decimal): DecimalCalcOvhdCost(DirCost: Decimal; IndirCostPct: Decimal; OvhdRate: Decimal; QtyBase: Decimal): DecimalCalcUnitCost(DirCost: Decimal; IndirCostPct: Decimal; OvhdRate: Decimal; RndgPrec: Decimal): DecimalGetRndgSetup(var GLSetup: Record "General Ledger Setup"; var Currency: Record Currency; var RndgSetupRead: Boolean)TransferCost(var Cost: Decimal; var UnitCost: Decimal; SrcCost: Decimal; Qty: Decimal; UnitAmtRndgPrec: Decimal)SplitItemLedgerEntriesExist(var TempItemLedgEntry: Record "Item Ledger Entry" temporary; QtyBase: Decimal; ItemLedgEntryNo: Integer): BooleanCalcSalesLineCostLCY(SalesLine: Record "Sales Line"; QtyType: Option General,Invoicing): DecimalCalcSalesLineShptAdjCostLCY(SalesLine: Record "Sales Line"; QtyType: Option General,Invoicing; var TotalAdjCostLCY: Decimal; var PostedQtyBase: Decimal; var RemQtyToCalcBase: Decimal)Δ BC24CalcSalesLineRcptAdjCostLCY(SalesLine: Record "Sales Line"; QtyType: Option General,Invoicing; var TotalAdjCostLCY: Decimal; var PostedQtyBase: Decimal; var RemQtyToCalcBase: Decimal)Δ BC24CalcPostedDocLineCostLCY(var ItemLedgEntry: Record "Item Ledger Entry"; QtyType: Option General,Invoicing,Shipping,Consuming): DecimalΔ BC25CalcSalesInvLineCostLCY(SalesInvLine: Record "Sales Invoice Line"): DecimalCalcSalesInvLineNonInvtblCostAmt(SalesInvoiceLine: Record "Sales Invoice Line"): DecimalCalcSalesCrMemoLineCostLCY(SalesCrMemoLine: Record "Sales Cr.Memo Line"): DecimalCalcSalesCrMemoLineNonInvtblCostAmt(SalesCrMemoLine: Record "Sales Cr.Memo Line"): DecimalCalcCustLedgAdjmtCostLCY(CustLedgEntry: Record "Cust. Ledger Entry"): DecimalCalcCustAdjmtCostLCY(var Customer: Record Customer): DecimalCalcCustLedgActualCostLCY(CustLedgEntry: Record "Cust. Ledger Entry"): DecimalCalcCustActualCostLCY(var Customer: Record Customer): DecimalNonInvtblCostAmt(var Customer: Record Customer): DecimalSumValueEntriesCostAmt(var ValueEntry: Record "Value Entry"): DecimalGetDocType(TableNo: Integer): IntegerAdjustForRevNegCon(var ActMatCost: Decimal; var ActMatCostCostACY: Decimal; var ItemLedgEntry: Record "Item Ledger Entry")CanIncNonInvCostIntoProductionItem(): Boolean+ BC27
Plus 4 local procedures.
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.
- Codeunit 5402 “Unit of Measure Management” (2 calls:
CalcSalesLineRcptAdjCostLCY → QtyRndPrecision,CalcSalesLineShptAdjCostLCY → QtyRndPrecision)
Called by
- Codeunit 5812 “Calculate Standard Cost” (6 calls:
CalcMfgItem → CalcOvhdCost,CalcMfgSKU → CalcOvhdCost,CalcRtngLineCostSKU → CalcOvhdCost, …) - Codeunit 90 “Purch.-Post” (4 calls:
PostItemChargePerRcpt → SplitItemLedgerEntriesExist,PostItemChargePerRetRcpt → SplitItemLedgerEntriesExist,PostItemChargePerRetShpt → SplitItemLedgerEntriesExist, …) - Codeunit 5896 “Calc. Inventory Adjmt. - Order” (3 calls:
CalcActualMaterialCosts → CanIncNonInvCostIntoProductionItem,CalcActualOutputCosts → CanIncNonInvCostIntoProductionItem,UpdateOutputAdjmtBuf → CanIncNonInvCostIntoProductionItem) - Codeunit 6476 “Serv. Cost Calculation Mgt.” (3 calls:
CalcServCrMemoLineCostLCY → SumValueEntriesCostAmt,CalcServInvLineCostLCY → SumValueEntriesCostAmt,CalcServShptLineCostLCY → CalcPostedDocLineCostLCY) - Codeunit 1302 “Customer Mgt.” (2 calls:
CalculateStatisticsWithCurrentCustomerValues → CalcCustActualCostLCY,CalculateStatisticsWithCurrentCustomerValues → NonInvtblCostAmt) - Codeunit 80 “Sales-Post” (2 calls:
PostItemChargePerRetRcpt → SplitItemLedgerEntriesExist,PostItemChargePerShpt → SplitItemLedgerEntriesExist) - Page 151 “Customer Statistics” (2 calls:
OnAfterGetRecord → CalcCustActualCostLCY,OnAfterGetRecord → NonInvtblCostAmt) - Page 397 “Sales Invoice Statistics” (2 calls:
CalculateTotals → CalcSalesInvLineCostLCY,CalculateTotals → CalcSalesInvLineNonInvtblCostAmt) - Page 398 “Sales Credit Memo Statistics” (2 calls:
CalculateTotals → CalcSalesCrMemoLineCostLCY,CalculateTotals → CalcSalesCrMemoLineNonInvtblCostAmt) - Codeunit 22 “Item Jnl.-Post Line” (1 call:
CalcPosShares → CalcOvhdCost) - Codeunit 361 “MoveEntries” (1 call:
MoveDocRelatedEntries → GetDocType) - Codeunit 5802 “Inventory Posting To G/L” (1 call:
BufferOutputPosting → CanIncNonInvCostIntoProductionItem) - Codeunit 5804 “ItemCostManagement” (1 call:
CalcUnitCostFromAverageCost → GetRndgSetup) - Codeunit 6225 “Sust. Purchase Subscriber” (1 call:
GetDistributeItemCharge → SplitItemLedgerEntriesExist) - Codeunit 912 “Calculate Assembly Cost” (1 call:
GetResCost → CalcDirUnitCost) - Codeunit 924 “Asm. Item Journal Mgt.” (1 call:
OnValidateCapUnitOfMeasureCodeOnCaseOrderTypeElse → ResourceCostPerUnit) - Codeunit 99000758 “Mfg. Cost Calculation Mgt.” (1 call:
CalcProdOrderLineExpCost → CalcOvhdCost) - Report 5872 “BOM Cost Share Distribution” (1 call:
DeleteThisLine → CanIncNonInvCostIntoProductionItem) - Table 83 “Item Journal Line” (1 call:
CalcUnitCost → CanIncNonInvCostIntoProductionItem) - Table extension 99000751 “Mfg. Purchase Line” (1 call:
TransferFromReqLineToPurchLine → GetRndgSetup)
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: "Cost Calculation Management"), then bcatlas_get_procedure_body or bcatlas_get_neighbors on the returned id.