---
id: object/table/1106
type: object
title: Table 1106 "Cost Allocation Source"
summary: Table 1106 "Cost Allocation Source" in Base Application (Microsoft.CostAccounting.Allocation). 15 fields, 2 events. Present since at least BC23, still in BC30, changed in BC24, BC27.
tier: official
language: en
tags:
  - table
  - base application
versions:
  introduced: null
  last_changed: "27"
  deprecated: null
review:
  state: derived
  by: null
  at: null
  flags: []
generated:
  at: "2026-10-11T00:31:51.816Z"
  pipeline: 0.2.0
  prompts: {}
  input_hash: eff987c0149cd18d62d8b8484ab6ffd8294c4b3102e193c69c8d239b3a4880bb
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/CostAccounting/Allocation/CostAllocationSource.Table.al
    title: src/Layers/W1/BaseApp/CostAccounting/Allocation/CostAllocationSource.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/finance-about-cost-accounting
    - https://learn.microsoft.com/dynamics365/business-central/finance-define-and-allocate-costs
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/finance/accounting-for-costs
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: table
object_id: 1106
name: Cost Allocation Source
namespace: Microsoft.CostAccounting.Allocation
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
  - "27"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 15
  procedures: 3
  events: 2
  subscribers: 0
relations:
  out: 6
  referenced_by: 3
  pages: 2
  extended_by: 0
  event_subscribers: 0
  calls: 0
  called_by: 0
  implements: 0
---

# Table 1106 "Cost Allocation Source"

> Table 1106 "Cost Allocation Source" in Base Application (Microsoft.CostAccounting.Allocation). 15 fields, 2 events. Present since at least BC23, still in BC30, changed in BC24, BC27.

Base Application · Microsoft.CostAccounting.Allocation · BC23-30 · [source at ea08af5e](https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/CostAccounting/Allocation/CostAllocationSource.Table.al) · facts from BC29

Learn documents this table through its pages: [Page 1105 "Cost Allocation"](../page/1105.md) (2 Learn pages), [Page 1102 "Cost Allocation Sources"](../page/1102.md) (1).

## Properties

| Property | Value |
|---|---|
| Caption | Cost Allocation Source |
| DataClassification | CustomerContent |

## 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 | ID | Code[10] | Specifies the ID that applies to the cost allocation. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> |  |
| 2 | Level | Integer | Specifies by which level the cost allocation posting is done. For example, this makes sure that costs are allocated at level 1 from the ADM cost center to the WORKSHOP and PROD cost centers, before they are allocated at level 2 from the PROD cost center to the FURNITURE, CHAIRS, and PAINT cost objec... <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> |  |
| 3 | Valid From | Date | Specifies the date when the cost allocation starts. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> |  |
| 4 | Valid To | Date | Specifies the date that the cost allocation ends. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> |  |
| 5 | Cost Type Range | Code[30] | Specifies a cost type range to define which cost types are allocated. If all costs that are incurred by the cost center are allocated, you do not have to set a cost type range. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> | TableRelation [Table 1103 "Cost Type"](../table/1103.md) (Cost Type) |
| 6 | Cost Center Code | Code[20] | Specifies the cost center code. The code serves as a default value for cost posting that is captured later in the cost journal. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> | TableRelation [Table 1112 "Cost Center"](../table/1112.md) (Cost Center) |
| 7 | Cost Object Code | Code[20] | Specifies the cost object code. The code serves as a default value for cost posting that is captured later in the cost journal. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> | TableRelation [Table 1113 "Cost Object"](../table/1113.md) (Cost Object) |
| 8 | Variant | Code[10] | Specifies the variant of the cost allocation. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> |  |
| 10 | Credit to Cost Type | Code[20] | Specifies the cost type to which the credit posting is posted. The costs that are allocated are credited to the source cost center. It is useful to set up a helping cost type to later identify the allocation postings in the statistics and reports. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> | TableRelation [Table 1103 "Cost Type"](../table/1103.md) (Cost Type) |
| 20 | Comment | Text[50] | Specifies a comment that applies to the cost allocation. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> |  |
| 22 | Total Share | Decimal | Specifies the sum of the shares allocated. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> | FlowField: sum("Cost Allocation Target".Share where(ID = field(ID))); not editable |
| 30 | Blocked | Boolean | Specifies that the related record is blocked from being posted in transactions, for example a customer that is declared insolvent or an item that is placed in quarantine. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> |  |
| 60 | Last Date Modified | Date | Specifies when the cost allocation was last modified. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> | not editable |
| 61 | User ID | Code[50] | Specifies the ID of the user who posted the entry, to be used, for example, in the change log. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> | TableRelation User."User Name"; not editable; DataClassification EndUserIdentifiableInformation |
| 100 | Allocation Source Type | Option | Specifies if the allocation comes from both budgeted and actual costs, only budgeted costs, or only actual costs. <small>via [Page 1105 "Cost Allocation"](../page/1105.md)</small> | OptionCaption: Both,Actual,Budget |

## Keys

- Key1: ID (clustered)
- Key2: Level, Valid From, Valid To, Cost Type Range

## Events published

- `OnBeforeValidateCostCenterCode(var CostAllocationSource: Record "Cost Allocation Source"; var IsHandled: Boolean)` (integration)
- `OnBeforeValidateCostObjectCode(var CostAllocationSource: Record "Cost Allocation Source"; var IsHandled: Boolean)` (integration)

## Procedures

1 local procedures, no public ones.

## Triggers

OnDelete, OnInsert, OnModify

## Relations

- lookup page [Page 1102 "Cost Allocation Sources"](../page/1102.md)
- Cost Type Range: TableRelation [Table 1103 "Cost Type"](../table/1103.md)
- Credit to Cost Type: TableRelation [Table 1103 "Cost Type"](../table/1103.md)
- Total Share: CalcFormula [Table 1107 "Cost Allocation Target"](../table/1107.md)
- Cost Center Code: TableRelation [Table 1112 "Cost Center"](../table/1112.md)
- Cost Object Code: TableRelation [Table 1113 "Cost Object"](../table/1113.md)

## Referenced by

3 fields in 3 objects relate to this table (TableRelation or CalcFormula).

- [Table 1104 "Cost Entry"](../table/1104.md): Allocation ID
- [Table 1107 "Cost Allocation Target"](../table/1107.md): ID
- [Table 1109 "Cost Budget Entry"](../table/1109.md): Allocation ID

## Pages and codeunits on this table

- [Page 1102 "Cost Allocation Sources"](../page/1102.md) (source table)
- [Page 1105 "Cost Allocation"](../page/1105.md) (source table)

## Across versions

- Present in: BC23-30
- Changed (declaration) in: BC24, BC27

Source: AL metadata extracted from the code (names, ids, signatures, properties); no code bodies (D10).

## Ask your agent

Procedure bodies are not stored here (D10). 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: "Cost Allocation Source")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
