Sample 13: Creating Asymmetric Columns

Asymmetric columns make up this report. Typically, a report contains symmetric columns. That is, when multiple dimensions are displayed across the page as column groups, each level of nested columns has the same number of members nested below. Because Actual has only one nested column, Jan, and Budget has three nested columns, this report is considered asymmetric.

Some rows in the report use names other than the member names from the database. In addition to allowing aliases, as in Sample 7: Using Aliases, you can rename a row name in the reporter.

                                 Product Market

                        Actual   Budget   Budget   Budget 
                           Jan      Jan      Feb      Mar 
                      ======== ======== ======== ======== 

Revenue                 49,896   49,950   45,770   45,770 
Cost of Goods           20,827   19,755   18,058   18,047 
  Gross Margin          29,069   30,196   27,712   27,723 

Marketing                3,560    3,515    3,525    3,515 
Payroll                 14,599   14,402   14,416   14,416 
Miscellaneous              249        0        0        0 
  Total Expenses        18,408   17,917   17,941   17,931 

    Profit              10,661   12,279    9,771    9,792 

Use the following script to create Sample 13:

<PAGE (Product, Market)

      <COLUMN (Scenario, Year)
      Actual   Budget Budget Budget
         Jan      Jan    Feb    Mar

<ROW (Accounts)

{ RENAME "Revenue" } Sales
{ RENAME "Cost of Goods" } Cost_of_Goods_Sold
{ RENAME "Gross Margin" } Margin

{ SKIP UNDERSCORECHAR " " }
<ICHILDREN Total_Expenses

{ SKIP }
Profit
! 

To create an asymmetric report, you must specify the member name of each column. Because the report output has two column groupings, Scenario and Year, you must specify a member from each dimension for each column. If you do not specify each column member, the resulting report format is symmetric.

The RENAME command redefines a member name when the report is output. Use the RENAME command when you do not want to use an alias table.

This report script, ASYMM.REP, is available in the \ARBORPATH\App\Demo\Basic directory.