From 7970ce743463802b6de949e49e210e445cf065ed Mon Sep 17 00:00:00 2001 From: Simon Michael Date: Thu, 19 Oct 2023 09:50:50 +0100 Subject: [PATCH] ;doc:areg,ui: note how separately-dated postings get combined --- hledger-ui/hledger-ui.m4.md | 6 ++++++ hledger/Hledger/Cli/Commands/Aregister.md | 23 +++++++++++++---------- 2 files changed, 19 insertions(+), 10 deletions(-) diff --git a/hledger-ui/hledger-ui.m4.md b/hledger-ui/hledger-ui.m4.md index 72c15f44a..5c6d55f4c 100644 --- a/hledger-ui/hledger-ui.m4.md +++ b/hledger-ui/hledger-ui.m4.md @@ -266,6 +266,12 @@ Each line represents one transaction, and shows: - or the historical total, which includes any undisplayed transactions before the start of the report period (and matching the filter query if any). This will be the running historical balance (what you would see on a bank's website, eg) if not disturbed by a query. +Note, this screen combines each transaction's in-period postings to a +single line item, dated with the earliest in-period transaction or +posting date (like hledger's `aregister`). So custom posting dates can +cause the running balance to be temporarily inaccurate. +(See [hledger manual > aregister and posting dates](hledger.md#aregister-and-posting-dates).) + Transactions affecting this account's subaccounts will be included in the register if the accounts screen is in tree mode, or if it's in list mode but this account has subaccounts which are not shown due to a depth limit. diff --git a/hledger/Hledger/Cli/Commands/Aregister.md b/hledger/Hledger/Cli/Commands/Aregister.md index b14883bb1..bc7abaf3f 100644 --- a/hledger/Hledger/Cli/Commands/Aregister.md +++ b/hledger/Hledger/Cli/Commands/Aregister.md @@ -64,16 +64,19 @@ This command also supports the [output format](hledger.html#output-format) options. The output formats supported are `txt`, `csv`, and `json`. -### aregister and custom posting dates +### aregister and posting dates -Transactions whose date is outside the report period can still be -shown, if they have a posting to this account dated inside the report -period. (And in this case it's the posting date that is shown.) -This ensures that `aregister` can show an accurate historical running -balance, matching the one shown by `register -H` with the same -arguments. +aregister always shows one line (and date and amount) per transaction. +But sometimes transactions have postings with different dates. Also, +not all of a transaction's postings may be within the report period. +To resolve this, aregister shows the earliest of the transaction's +date and posting dates that is in-period, and the sum of the in-period +postings. In other words it will show a combined line item with just +the earliest date, and the running balance will (temporarily, until +the transaction's last posting) be inaccurate. Use `register -H` if +you need to see the individual postings. -To filter strictly by transaction date instead, add the `--txn-dates` -flag. If you use this flag and some of your postings have custom -dates, it's probably best to assume the running balance is wrong. +There is also a `--txn-dates` flag, which filters strictly by +transaction date, ignoring posting dates. This too can cause an +inaccurate running balance.