Re: Statements - Opening balance closing balance question.
- From: Paul H <google@xxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Thu, 8 May 2008 00:54:22 -0700 (PDT)
On 7 May, 14:07, "Fred Zuckerman" <Zuckerm...@xxxxxxxxxxxxx> wrote:
"Paul H" <goo...@xxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
news:e503283f-1c7c-424a-a138-78206e880189@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
I have a transactions table and a balance table that look something
like this:
tblTransactions
TransactionID (PK Autonumber)
ClientID
TransactionDate
TransactionAmount (currency field, values must be >0)
CRDR (indicates whether the transaction is a (credit or debit)
StatementDate (Date stamp applied when the “Statement” report is run)
tblAccountBalance (no PK in this table)
ClientID
AccountBalance (currency field can be >0 or <0)
BalanceDate (Date stamp applied when the “Statement” report is run)
My goal is to have a report that shows the following:
Opening balance
Transactions for this period
Closing balance
When I run the report, I apply a date stamp to the “StatementDate”
field of each row in tblTransactions where the StatementDate is either
null or within the statement period. That works fine.
But I am getting mixed up with when to apply the date stamp to the
“BalanceDate” field in tblAccountBalance. Rather than go into detail
about all of the permutations that are sloshing around in my head, can
someone reassure me that my approach thus far is correct (or at least
workable) and give me a nudge in the right direction.
Thanks
Paul
Paul,
I think your tblAccountBalance may be redundant and a poor design idea. It
appears to be 100% build-able from tblTransactions. Thus, it should not be
needed. If you really want to use such a table then it shoulde be used
temporarily for a process or report and then deleted afterwards. The
AccountBalance field is merely the sum of TransactionAmount from
tblTransactions for records <= to the desired StatementDate.
You can create your desired statement report using just the tblTransaction
table. The report would have a filter set to the desired ClientID and
TransactionDate between the desired OpeningDate and the desired ClosingDate.
The report header would include a control for the OpeningBalance as:
= DSum("TransactionAmount","tblTransactions","ClientID=" & ClientID & " And
TransactionDate<#" & dtOpeningDate & "#")
The detail section of the report would list all of the transactions for the
client during the period.
Finally, the report footer will show the ClosingBalance with a control of:
= OpeningBalance + Sum(TransactionAmount)
Fred Zuckerman
Thank you for your post Fred.
Two years from now I will have to sum two years worth of data to
arrive at the opening balance if I omit tblBalances. Surely
tblBalances is required to reduce overhead when I run the report?
Paul
.
- References:
- Statements - Opening balance closing balance question.
- From: Paul H
- Re: Statements - Opening balance closing balance question.
- From: Fred Zuckerman
- Statements - Opening balance closing balance question.
- Prev by Date: Re: Adding to a 2003 custom toolbar in 2007
- Next by Date: Re: Adding to a 2003 custom toolbar in 2007
- Previous by thread: Re: Statements - Opening balance closing balance question.
- Next by thread: Re: Statements - Opening balance closing balance question.
- Index(es):
Relevant Pages
|