Das neue Feature hört auf den Namen „Verknüpfte Kreuztabellen“. Damit sind Kreuztabellen gemeint, die in der Zeilenebene nach wie vor ggf. auch mehrstufig gruppiert sind. In der Spaltenebene können jetzt aber mehrere, komplett unterschiedliche Gruppierungen verwendet werden, die hintereinander ausgegeben werden. Ein einfaches Beispiel wäre die Gruppierung der Umsätze verschiedener Produkte – zunächst im zeitlichen Verlauf, z.B. über die Jahre. Und dann – zusätzlich – im Vergleich der Länder oder Regionen. In etwa so:
Dabei können natürlich auch Zwischensummierungen ausgeblendet werden. Zudem können die beiden Teile der Kreuztabelle auch über unterschiedliche Werte aggregieren, wenn dies gewünscht wird.
Eine solche Kreuztabelle zu erstellen, ist ab Version 29 sehr einfach. Auf dem Reiter für die Achsendefinitionen gibt es eine neue Combobox, die bestimmt, welche Kreuztabelle bearbeitet wird. Standardmäßig steht hier nur die „Basis“ zur Verfügung, dies entspricht einer einfachen Kreuztabelle wie bisher.
Über die Schaltfläche hinter der Combobox kann ein Editor geöffnet werden, mit dem weitere verknüpfte Kreuztabellen angelegt werden können:
Diese können nun in der Achsendefinition bearbeitet werden. Um z.B. die gewünschte Auswertung nach Ländern zu erhalten, wird die entsprechende Auswahl unter „Spalten“ getroffen:
Es ist zu beachten, dass die Zeilengruppierung für alle Kreuztabellen gleich ist. Daher ist diese auch nur für die Basisebene zu bearbeiten. Das Ergebnis sieht dann aus wie oben gezeigt.
Mit diesem neuen Feature ist die Kreuztabelle wieder ein ganzes Stück flexibler und leistungsfähiger geworden. Und wo wir gerade dabei waren, haben wir noch ein weiteres Feature umgesetzt. Für die Eigenschaften der Zellen (z.B. die Einfärbung) kann jetzt in Formeln ganz einfach auf die Felder der Datenquelle Bezug genommen werden. Musste man bisher z.B. mit den etwas unhandlichen Funktionen Crosstab.Row$() oder Crosstab.Column$() und ihren Artverwandten arbeiten, so kann man jetzt im Beispiel oben ganz intuitiv und direkt z.B. mit „Customers.Country“ arbeiten. Für eine blaue Einfärbung der Spalte „Germany“, verwendet man also statt der Funktion
Cond(Crosstab.Row$()=“Germany“, LL.Color.Blue, LL.Color.White)
die nun besser lesbare Funktion
Cond(Customer.Country=“Germany“, LL.Color.Blue, LL.Color.White)
Kleine Änderung – große Wirkung. Daneben wurde auch an Performance und Speicherverbrauch der Kreuztabelle gearbeitet.