---
id: object/table/846
type: object
title: Table 846 "Cash Flow Worksheet Line"
summary: Table 846 "Cash Flow Worksheet Line" in Base Application (Microsoft.CashFlow.Worksheet). 22 fields, 8 public procedures, 6 events. Present since at least BC23, still in BC30, changed in BC24-27, BC29.
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: afd77bf747e8adee758c2646630091534795aeafd8059da64dd5c7b49fab364b
evidence:
  - kind: code
    url: https://github.com/microsoft/BCApps/blob/ea08af5ef2d6a9b5c5af4a029288abbe2c883220/src/Layers/W1/BaseApp/CashFlow/Worksheet/CashFlowWorksheetLine.Table.al
    title: src/Layers/W1/BaseApp/CashFlow/Worksheet/CashFlowWorksheetLine.Table.al (releases/29.x)
    date: null
    commit: ea08af5ef2d6a9b5c5af4a029288abbe2c883220
    t: null
    quote: null
links:
  learn:
    - https://learn.microsoft.com/dynamics365/business-central/finance-analyze-cash-flow
    - https://learn.microsoft.com/dynamics365/business-central/finance-cash-flow-overview
  objects: []
  features: []
  topics:
    - topic/business-central/business-functionality/finance/financial-analytics/built-in-finance-analysis-tools
    - topic/business-central/business-functionality/finance/manage-cash-flow
  localizations:
    - localization/be
    - localization/it
  videos: []
  posts: []
  guidelines: []
object_type: table
object_id: 846
name: Cash Flow Worksheet Line
namespace: Microsoft.CashFlow.Worksheet
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"
  - "26"
  - "27"
  - "29"
source_major: "29"
obsolete: null
countries:
  - be
  - it
ms_search_form_ids: []
counts:
  fields: 22
  procedures: 14
  events: 6
  subscribers: 0
relations:
  out: 11
  referenced_by: 0
  pages: 1
  extended_by: 1
  event_subscribers: 1
  calls: 2
  called_by: 0
  implements: 0
---

# Table 846 "Cash Flow Worksheet Line"

> Table 846 "Cash Flow Worksheet Line" in Base Application (Microsoft.CashFlow.Worksheet). 22 fields, 8 public procedures, 6 events. Present since at least BC23, still in BC30, changed in BC24-27, BC29.

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

Learn documents this table through its pages: [Page 841 "Cash Flow Worksheet"](../page/841.md) (2 Learn pages).

## Properties

| Property | Value |
|---|---|
| Caption | Cash Flow Worksheet Line |
| 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 |
|---|---|---|---|---|
| 2 | Line No. | Integer | — |  |
| 3 | Cash Flow Forecast No. | Code[20] | Specifies a number for the cash flow forecast. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> | TableRelation [Table 840 "Cash Flow Forecast"](../table/840.md) (Cash Flow Forecast) |
| 4 | Cash Flow Date | Date | Specifies the cash flow date that the entry is posted to. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> |  |
| 5 | Document No. | Code[20] | Specifies the document that represents the forecast entry. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> |  |
| 6 | Cash Flow Account No. | Code[20] | Specifies the number of the cash flow account. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> | TableRelation [Table 841 "Cash Flow Account"](../table/841.md) (Cash Flow Account) |
| 7 | Source Type | Enum "Cash Flow Source Type" | Specifies the source type that applies to the source number that is shown in the Source No. field. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> | enum [Enum 847 "Cash Flow Source Type"](../enum/847.md) |
| 8 | Description | Text[250] | Specifies a description of the worksheet. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> |  |
| 9 | Document Type | Enum "Gen. Journal Document Type" | — | enum [Enum 6 "Gen. Journal Document Type"](../enum/6.md) |
| 10 | Document Date | Date | — |  |
| 11 | Pmt. Discount Date | Date | — |  |
| 12 | Pmt. Disc. Tolerance Date | Date | — |  |
| 13 | Payment Terms Code | Code[10] | — | TableRelation [Table 3 "Payment Terms"](../table/3.md) (Payment Terms) |
| 14 | Payment Discount | Decimal | — |  |
| 15 | Associated Entry No. | Integer | — |  |
| 16 | Overdue | Boolean | Specifies if the entry is related to an overdue payment. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> | not editable |
| 17 | Shortcut Dimension 2 Code | Code[20] | Specifies the code for Shortcut Dimension 2, which is one of two global dimension codes that you set up in the General Ledger Setup window. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> | TableRelation [Table 349 "Dimension Value"](../table/349.md) ("Dimension Value".Code where("Global Dimension No." = const(2), Blocked = const(false))) |
| 18 | Shortcut Dimension 1 Code | Code[20] | Specifies the code for Shortcut Dimension 1, which is one of two global dimension codes that you set up in the General Ledger Setup window. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> | TableRelation [Table 349 "Dimension Value"](../table/349.md) ("Dimension Value".Code where("Global Dimension No." = const(1), Blocked = const(false))) |
| 30 | Amount (LCY) | Decimal | Specifies the amount of the worksheet line in LCY. Revenues are entered without a plus or minus sign. Expenses are entered with a minus sign. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> |  |
| 34 | Source No. | Code[20] | Specifies the number of the source document that the entry originates from. <small>via [Page 841 "Cash Flow Worksheet"](../page/841.md)</small> | TableRelation [Table 15 "G/L Account"](../table/15.md), [Table 21 "Cust. Ledger Entry"](../table/21.md), [Table 25 "Vendor Ledger Entry"](../table/25.md) (if ("Source Type" = const("Liquid Funds")) "G/L Account" else if ("Source Type" = const(Receivables)) "Cust. Ledger Entry"."Document No." else if ("Source Type" = const(Payables)) "Vendor Ledger Entry"."Document No." else if ("Source Type" = const("Fixed Assets Budget")) "Fixed Asset" else if ("Sour...) |
| 35 | G/L Budget Name | Code[10] | — | TableRelation [Table 95 "G/L Budget Name"](../table/95.md) (G/L Budget Name) |
| 36 | Source Line No. | Integer | — |  |
| 480 | Dimension Set ID | Integer | — | TableRelation [Table 480 "Dimension Set Entry"](../table/480.md) (Dimension Set Entry); not editable |

## Keys

- Key1: Line No. (clustered)
- Key2: Cash Flow Forecast No., Document No.

## Events published

- `OnAfterMoveDefualtDimToJnlLineDim(var CashFlowWorksheetLine: Record "Cash Flow Worksheet Line"; var DimensionSetID: Integer; DefaultDimSource: List of [Dictionary of [Integer, Code[20]]])` (integration)
- `OnAfterValidateShortcutDimCode(var CashFlowWorksheetLine: Record "Cash Flow Worksheet Line"; var xCashFlowWorksheetLine: Record "Cash Flow Worksheet Line"; FieldNumber: Integer; var ShortcutDimCode: Code[20])` (integration)
- `OnBeforeValidateShortcutDimCode(var CashFlowWorksheetLine: Record "Cash Flow Worksheet Line"; var xCashFlowWorksheetLine: Record "Cash Flow Worksheet Line"; FieldNumber: Integer; var ShortcutDimCode: Code[20])` (integration)
- `OnCalculateCFAmountAndCFDateOnAfterAssignApplyCFPaymentTerm(CashFlowWorksheetLine: Record "Cash Flow Worksheet Line"; var ApplyCFPaymentTerm: Boolean; var CheckCrMemo: Boolean; var IsHandled: Boolean)` (integration)
  - subscribers: [Codeunit 6493 "Serv. CashFlow Subscribers"](../codeunit/6493.md) OnCalculateCFAmountAndCFDateOnAfterAssignApplyCFPaymentTerm
- `OnCalculateCFAmountAndCFDateOnBeforeCalcPaymentDiscount(CFDiscountDate: Date; PaymentTerms: record "Payment Terms"; var IsHandled: boolean)` (integration)
- `OnBeforeOnValidateCashFlowAccountNo(var CashFlowWorksheetLine: Record "Cash Flow Worksheet Line"; var xCashFlowWorksheetLine: Record "Cash Flow Worksheet Line"; var IsHandled: Boolean)` (integration)

## Procedures

- `EmptyLine(): Boolean`
- `ValidateShortcutDimCode(FieldNumber: Integer; var ShortcutDimCode: Code[20])`
- `LookupShortcutDimCode(FieldNumber: Integer; var ShortcutDimCode: Code[20])`
- `ShowShortcutDimCode(var ShortcutDimCode: array[8] of Code[20])`
- `ShowDimensions()`
- `MoveDefualtDimToJnlLineDim(TableID: Integer; No: Code[20]; var DimensionSetID: Integer)`
- `CalculateCFAmountAndCFDate()`
- `ShowSource()`

## Triggers

OnInsert

## Relations

- Source No.: TableRelation [Table 15 "G/L Account"](../table/15.md) (conditional)
- Source No.: TableRelation [Table 21 "Cust. Ledger Entry"](../table/21.md) (conditional)
- Source No.: TableRelation [Table 25 "Vendor Ledger Entry"](../table/25.md) (conditional)
- Payment Terms Code: TableRelation [Table 3 "Payment Terms"](../table/3.md)
- Shortcut Dimension 1 Code: TableRelation [Table 349 "Dimension Value"](../table/349.md)
- Shortcut Dimension 2 Code: TableRelation [Table 349 "Dimension Value"](../table/349.md)
- Dimension Set ID: TableRelation [Table 480 "Dimension Set Entry"](../table/480.md)
- Source No.: TableRelation [Table 5600 "Fixed Asset"](../table/5600.md) (conditional)
- Cash Flow Forecast No.: TableRelation [Table 840 "Cash Flow Forecast"](../table/840.md)
- Cash Flow Account No.: TableRelation [Table 841 "Cash Flow Account"](../table/841.md)
- G/L Budget Name: TableRelation [Table 95 "G/L Budget Name"](../table/95.md)

## Pages and codeunits on this table

- [Page 841 "Cash Flow Worksheet"](../page/841.md) (source table)
- [Codeunit 843 "Cash Flow Wksh. - Register"](../codeunit/843.md) (codeunit runs on it)
- [Codeunit 844 "Cash Flow Wksh.-Register Batch"](../codeunit/844.md) (codeunit runs on it)
- [Codeunit 846 "Cash Flow Wksh. -Register Line"](../codeunit/846.md) (codeunit runs on it)

## Extended by

- [Table extension 6472 "Serv. Cash Flow Worksheet Line"](../tableextension/6472.md)

## 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) (7 calls: `LookupShortcutDimCode → LookupDimValueCode`, `LookupShortcutDimCode → ValidateShortcutDimValues`, `MoveDefualtDimToJnlLineDim → AddDimSource`, …)
- [Codeunit 841 "Cash Flow Management"](../codeunit/841.md) (1 call: `ShowSource → ShowSource`)

## Across versions

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

## Countries that replace it

[BE](../../localizations/be.md), [IT](../../localizations/it.md)

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