How to Do Column Placement in FRx
Well, I’ve been focused on the future of FRx for so long that it’s been a while since I posted a How To. By special request from the Wednesday presentation at Convergence (sorry again for the dreadful visual capabilities of the room we were in!), here’s how to do column placement.
Quite often in FRx you simply need to put the value in one column into a different column. This is easy in excel with by just entering an ‘=’ with the cell reference. It’s not quite as easy in FRx but it’s still fairly straightforward.
It’s easier if you think of the intersection of each row and column as having a cell reference, just as in Excel. So the reference for FRx column B and row code 1410 would be simply B1410.
But let’s look at an example. This is from the cashflow example in the FRxDemo spec set. In it, Column E calculates the YTD change in all accounts (because that’s what you need for cashflow). Yet for Cash at the Beginning of Period, we don’t want the change, we want the actual Beginning Balance. The YTD Beginning Balance is contained in column C. So we’ll use column placement to set the value in column E equal to the value in column C:

Row 1360 contains the link to the GL.
Row 1390 is the column placement row:
- Use a CAL format code.
- FRx column B is set equal to its own value for row 1360, in this case the beginning balance (due to the row modifier /BB) for GL accounts 1100 to 1110 +1600. The formula is B=B1360.
- You’d get the same value in column B for row 1360 if it weren’t a nonprint.
- FRx columns C and D are nonprinting so we don’t need to assign values in this particular case.
- FRx column E is set equal to column C’s beginning balance for the GL accounts in row 1360. The formula is E=C1360, meaning put column C’s balance into column E.

One last item: for column placement to work, you must set the calculation priority in the catalog to Calculate Columns First. What this means is that columns are calculated first, then the rows are calculated, so row calculations are dominant.
BTW I don’t do cashflows like this, but this was the simplest example I could dig up quickly.
This is a simple example but it can get complex quickly. This last screenshot shows a LOT going on in this column placement and it’s waaay too complex to boot (there are several ways to simplify this), but it does show that calculations can be done with column placement. Don’t try this at home!

Don’t forget the catalog setting: Report Options tab, Advanced, Calculation Priority: Calculate Columns First.
[...] Placement in FRx Jan Harrigan over at FRx Buzz has a nice new post up on Column Placement in FRx. Keep it Jan! We need more FRx stuff! Published: Tuesday, April 21, 2009, 05:04 [...]
Hi Jan,
Good post. I just wanted to clarify one thing …
You only need to change the calculation priority to columns first if there’s an intersection of row and column calculations. In the example above, if you were setting column D=C1360, you would not need to change the calculation priority because there’s only one calculation. However, because you’re setting column E’s value and column E is a CALC column, FRx needs to know which of the conflicting calculations should take priority (i.e., which should happen first). It’s a little strange, but that’s the way it works.
Hope that helps.
Jeff
Excellent point, thanks Jeff! You’re exactly right (of course!): the calculation priority is only necessary in reports where a CAL in the row intersects with a CALC in the column.
FRx has to know which calculation should prevail, and defaults to the CALC in the column (meaning calculation priority is set to ‘calculate rows first’).
Makes sense that if D=C1360 was the only calculation in this example, you wouldn’t have to change the default priority. Thanks for pointing that out…Jan