---
id: object/table/2672
type: object
title: Table 2672 "Allocation Line"
summary: Table 2672 "Allocation Line" in Base Application (Microsoft.Finance.AllocationAccount). 14 fields, 7 public procedures, 2 events. Present since at least BC23, still in BC30, changed in BC24-25, BC27-29.
tier: official
language: en
tags:
  - table
  - base application
versions:
  introduced: null
  last_changed: "29"
  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: 3f78dac2af566e8f7da1532ddbd1a547290e214960749356ac479a8a38699c0f
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/Finance/AllocationAccount/AllocationLine.Table.al
    title: src/Layers/W1/BaseApp/Finance/AllocationAccount/AllocationLine.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/finance-allocate-revenue-costs
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/finance/work-with-the-chart-of-accounts-and-gene
  localizations: []
  videos: []
  posts: []
  guidelines: []
object_type: table
object_id: 2672
name: Allocation Line
namespace: Microsoft.Finance.AllocationAccount
app: Base Application
extends: null
first_version: "23"
last_version: "30"
present_in:
  - "23"
  - "24"
  - "25"
  - "26"
  - "27"
  - "28"
  - "29"
  - "30"
changed_in:
  - "24"
  - "25"
  - "27"
  - "28"
  - "29"
source_major: "29"
obsolete: null
countries: []
ms_search_form_ids: []
counts:
  fields: 14
  procedures: 10
  events: 2
  subscribers: 0
relations:
  out: 6
  referenced_by: 0
  pages: 2
  extended_by: 0
  event_subscribers: 0
  calls: 5
  called_by: 0
  implements: 0
---

# Table 2672 "Allocation Line"

> Table 2672 "Allocation Line" in Base Application (Microsoft.Finance.AllocationAccount). 14 fields, 7 public procedures, 2 events. Present since at least BC23, still in BC30, changed in BC24-25, BC27-29.

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

Learn documents this table through its pages: [Page 2674 "Allocation Account Preview"](../page/2674.md) (1 Learn page).

## Properties

| Property | Value |
|---|---|
| Caption | Allocation Line |
| TableType | Temporary |
| 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 | Allocation Account No. | Code[20] | — | TableRelation [Table 2670 "Allocation Account"](../table/2670.md) ("Allocation Account"."No.") |
| 2 | Line No. | Integer | Primary Key <small>caption</small> |  |
| 3 | Destination Account Type | Enum "Destination Account Type" | Specifies the type of the Destination Account. | enum [Enum 2670 "Destination Account Type"](../enum/2670.md) |
| 4 | Destination Account Number | Code[20] | Specifies the number of the Destination Account. | TableRelation [Table 15 "G/L Account"](../table/15.md), [Table 270 "Bank Account"](../table/270.md) (if ("Destination Account Type" = const("G/L Account")) "G/L Account" where("Account Type" = const(Posting), "Direct Posting" = const(true)) else if ("Destination Account Type" = const("Bank Account")) "Bank Account") |
| 5 | Destination Account Name | Text[2048] | Specifies the name of the Destination Account. |  |
| 6 | Amount | Decimal | Specifies the amount to be allocated to the Destination Account. |  |
| 10 | Breakdown Account Number | Code[20] | Specifies the number of the Breakdown Account that is used to calculate the amount to be distributed to the destination account. |  |
| 11 | Breakdown Account Balance | Decimal | Specifies the balance of the Breakdown Account that is used to calculate the amount to be distributed to the destination account. |  |
| 12 | Breakdown Account Name | Text[2048] | Specifies the name of the Breakdown Account that is used to calculate the amount to be distributed to the destination account. |  |
| 13 | Percentage | Decimal | Specifies the percentage that is used to calculate the amount to be assinged to the destination account. |  |
| 20 | Quantity | Decimal | Specifies the quantity to be allocated to the Destination Account. |  |
| 37 | Global Dimension 1 Code | Code[20] | — | TableRelation [Table 349 "Dimension Value"](../table/349.md) ("Dimension Value".Code where("Global Dimension No." = const(1), Blocked = const(false))) |
| 38 | Global Dimension 2 Code | Code[20] | — | TableRelation [Table 349 "Dimension Value"](../table/349.md) ("Dimension Value".Code where("Global Dimension No." = const(2), Blocked = const(false))) |
| 480 | Dimension Set ID | Integer | — | TableRelation [Table 480 "Dimension Set Entry"](../table/480.md) (Dimension Set Entry); not editable |

## Keys

- Key1: Allocation Account No., Line No. (clustered)

## Events published

- `OnGetOrGenerateAllocationLines(ParentTableId: Integer; ParentSystemId: Guid; var AllocationLine: Record "Allocation Line"; var AmountToAllocate: Decimal; var PostingDate: Date)` (integration): Integration event raised to retrieve or generate allocation lines for processing.
- `OnSaveChangesToAllocationLinesOnBeforeAllocAccManualOverrideInsert(var AllocAccManualOverride: Record "Alloc. Acc. Manual Override"; var AllocationLine: Record "Allocation Line")` (integration)

## Procedures

- `GetQuantityVisible(var AllocationLine: Record "Allocation Line"): Boolean` (internal)
- `GetQuantityDataForRedistributePage(var AllocationLine: Record "Allocation Line"; ParentSystemId: Guid; ParentTableId: Integer; var AmountPerQuantity: Decimal; var QuantityToDistribute: Decimal)` (internal)
- `GetOrGenerateAllocationLines(var AllocationLine: Record "Allocation Line"; ParentSystemId: Guid; ParentTableId: Integer; var AmountToAllocate: Decimal; var PostingDate: Date)` (internal)
- `SaveChangesToAllocationLines(var AllocationLine: Record "Allocation Line"; ParentSystemId: Guid; ParentTableId: Integer; AmountToAllocate: Decimal)` (internal)
- `ResetToDefault(var AllocationLine: Record "Allocation Line"; ParentSystemId: Guid; ParentTableId: Integer)` (internal)
- `ShowDimensions()` (internal)
- `GetQuantityPrecision(): Decimal` (internal)

Plus 1 local procedures.

## Relations

- Destination Account Number: TableRelation [Table 15 "G/L Account"](../table/15.md) (conditional)
- Allocation Account No.: TableRelation [Table 2670 "Allocation Account"](../table/2670.md)
- Destination Account Number: TableRelation [Table 270 "Bank Account"](../table/270.md) (conditional)
- Global Dimension 1 Code: TableRelation [Table 349 "Dimension Value"](../table/349.md)
- Global Dimension 2 Code: TableRelation [Table 349 "Dimension Value"](../table/349.md)
- Dimension Set ID: TableRelation [Table 480 "Dimension Set Entry"](../table/480.md)

## Pages and codeunits on this table

- [Page 2674 "Allocation Account Preview"](../page/2674.md) (source table)
- [Page 2678 "Redistribute Acc. Allocations"](../page/2678.md) (source table)

## 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 408 "DimensionManagement"](../codeunit/408.md) (2 calls: `ShowDimensions → EditDimensionSet`, `ShowDimensions → UpdateGlobalDimFromDimSetID`)
- [Codeunit 2676 "Alloc. Acc. Telemetry"](../codeunit/2676.md) (1 call: `SaveChangesToAllocationLines → LogDefinedOverride`)
- [Codeunit 2677 "Gen. Journal Alloc. Acc. Mgt."](../codeunit/2677.md) (1 call: `GetOrGenerateAllocationLines → GetOrGenerateAllocationLines`)
- [Codeunit 2678 "Sales Alloc. Acc. Mgt."](../codeunit/2678.md) (1 call: `GetOrGenerateAllocationLines → GetOrGenerateAllocationLines`)
- [Codeunit 2679 "Purchase Alloc. Acc. Mgt."](../codeunit/2679.md) (1 call: `GetOrGenerateAllocationLines → GetOrGenerateAllocationLines`)

## Across versions

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

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). 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: "Allocation Line")`, then `bcatlas_get_procedure_body` or `bcatlas_get_neighbors` on the returned id.
