Jeff,
Currently, I'm working for a Finance Team and have created Income Statements and P&L reports, they are usually one of the most complex reports and tricky to create too.
Some sample images what I created look like below:
- For Total Company (including all Divisions and Regions) created using a Cross Tab
- By Division: (Division show on Top in the Cross Tab)
- By Region: (Region show on Top in the Cross Tab)
The report can be created using Multiple tables or just one table, each method has pros and cons.
Multiple tables (or Cross tabs):
Create different tables for a set of Revenue Streams grouped together and one for each Sub Total. They help us to reduce the number of variables, but the filters on each tables differ on each of those tables which is not bad. But, if you look at the By Division tab snap I have here, we may see some of those tables shrink and show less Divisions if you don't have data for all possible combinations (Revenues &/or Expense for Streams 1,2,3 don't have data for Division 1 or Region 2, then the table will be shrunk and wont shoe Division 1 or Region 2 in the report).
Multiple variables:
We can do this by creating many variables, may end up creating as many variables as the number of cells in a table, each cell may be a different formula similar to excel.
What I did is:
I created multiple queries:
- Query 1 for Current Year's Data (using 2 combined queries)
- Combined Query 1: for Revenue data
- Combined Query 2: for Expense data
- Query 2 for Current Year's Data (using 2 combined queries)
- Combined Query 1: for Revenue data
- Combined Query 2: for Expense data
And used Cross tabs in the report, but had table shrinking problem, in that case, I created one variable each for all the cells in a block. Ex: Suppose there is no data for Expense for Stream 10 for Regions 2 and 3, the table would shrink and show nothing for Regions 2 and 3, so, what I did is created below variables and put them in a cross tab with as many columns and formatted to look just like the other tables.
Expense for Stream 10_MTD_Region 1
Expense for Stream 10_YTD_Region 1
Expense for Stream 10_Prior Yr MTD_Region 1
Expense for Stream 10_Prior Yr YTD_Region 1
Expense for Stream 10_MTD_Region 2
Expense for Stream 10_YTD_Region 2
Expense for Stream 10_Prior Yr MTD_Region 2
Expense for Stream 10_Prior Yr YTD_Region 2
Expense for Stream 10_MTD_Region 3
Expense for Stream 10_YTD_Region 3
Expense for Stream 10_Prior Yr MTD_Region 3
Expense for Stream 10_Prior Yr YTD_Region 3
Makes sense?
How many queries do you currently have without even thinking about those 20 queries (which you'll never add)? What are the different queries used for?
Thanks,
Mahboob Mohammed