Outline cross tabs as in Pan6

That’s correct, Panorama X does not have that ability. Still, I think the new crosstab feature is much nicer than the old crosstab feature (and I use crosstabs a lot).

I would suggest an alternative technique. Rather than try to cram all this into a single table, I would embed either two crosstab tables or a crosstab table and a summary table into a form. One would be the master, and the other would recalculate based on whatever row was clicked in the master table. I’ve been meaning to pull together a demo of this idea … ok, that took about 10 minutes, and it came out even better than I hoped! Here’s this idea in action. As I click each row in the top crosstab, the bottom crosstab updates to show the corresponding detail. Pretty cool, eh?

Multilevel%20Crosstab%20Raw%20002gif

(If this movie looks a bit fuzzy, click to expand it and it will be sharp.)

Both of these crosstabs were created using the summary workshop, then pasted into a single form. I replaced the standard code in the top crosstab with:

fileglobal vendorSelectFormula
local targetDatabase
let clickedRow = info("matrixrow")
crosstabselectoriginalformula crosstabInfo, clickedRow, 1, vendorSelectFormula, targetDatabase
showvariables vendorSelectFormula

Then in the bottom crosstab, the standard formula was replaced with this:

crosstab("Side","PayTo","Top","Date (by Quarter)","Value","Debit",
    "Query",catcherror("«Debit» > 0",vendorSelectFormula),
    "WindowGlobal","vendorCrosstabInfo","Sync",vendorSync,"Format","textlist")

The key is the second line, the Query option. This uses the vendorSelectFormula calculated by the click code in the top crosstab. As each row on top is clicked, the formula changes. (I used the catcherror( function to provide a default before anything is clicked, but you could leave that out, or make sure the vendorSelectFormula is set up in your .Initialize procedure.

That’s all it took to set up this two level crosstab! Five lines of code and a slight change to a formula.

Of course, you could also set up a chart corresponding to the top crosstab, or the bottom one, or both. Or you could use a summary table for one or both of these tables. You could also set up a text list or matrix object to display the raw data associated with the clicked row right inside this form window, without even needing the data sheet.


One last point, as an aside. The Summary Workshop and Crosstab Workshop are just Panorama databases with a Panorama form. There were no secret tools used to create this. Anything done in those workshops can also be done in your forms. For example, you could add a pop-up menu to my multi-level crosstab to select months, quarters or years. For now I’ll leave that as an exercise for the reader.