Dienstag, 1. Mai 2012

PowerPivot: Verknüpfte Tabelle und boolsche Daten

PowerPivot ist schlau, sehr schlau. Manchmal zu schlau für mich.

In diesem Fall hatte ich eine importierte Tabelle, zum Beispiel die SalesOrderHeader Tabelle aus der AdventureWorks Datenbank. Diese Tabelle enthält eine Spalte OnlineOrderFlag, die anzeigt, ob eine Bestellung über den Internet-Shop stammt oder nicht. Entsprechend enthält sie den Wert 1 oder 0.
Originaldaten in der Datenquelle

Nach dem Import stellt sich das in der PowerPivot Tabelle so dar:
Daten nach dem Import in PowerPivot

Die Werte 1 hat das Programm automatisch durch TRUE ersetzt und 0 durch FALSE.

So weit, so gut.

Etwas später wollte ich das Modell um eine verknüpfte Tabelle erweitern. In diesem Fall eine Lookup-Tabelle für den Wert von OnlineOrderFlag, um einen sprechenden Text (zum Beispiel "Online Order" oder "Reseller Order") anstelle von TRUE oder FALSE anzuzeigen.
Excel-Tabelle, die als verknüpfte Tabelle im PowerPivot Modell verwendet werden soll.

Das Problem

Nach dem Herstellen einer Beziehung zwischen OnlineOrderFlag in Tabelle SalesOrderDetail und OnlineOrderFlag in der Lookup-Tabelle sieht erst einmal alles gut aus.
Beziehung zwischen SalesOrderHeader und der verknüpften Lookup-Tabelle
Aber beim Auswerten der Tabelleninhalte in einer Pivot-Tabelle stellen sich Zweifel an der Richtigkeit des Ergebnisses ein: die Beziehung zwischen den beiden Tabellen funktioniert einfach nicht.

Die Lösung

Bei einer deutschsprachigen Version von Excel ist es erforderlich, in der verknüpften Lookup-Tabelle die Werte 1 und 0 einzutragen - so, wie sie auch in der Datenbank-Quelltabelle SalesOrderHeader stehen. Dann funktioniert die Beziehung zwischen SalesOrderHeader und der Lookup-Tabelle OnlineOrderFlag.

Mit den Werten TRUE und FALSE oder WAHR und FALSCH funktioniert die Beziehung nicht.

Die größte Merkwürdigkeit

Wenn Sie dasselbe mit einer englischsprachigen Version von Excel ausprobieren, dann klappt es sowohl mit den Werten 1 und 0 als auch mit TRUE und FALSE!
Ganz offensichtlich verhält sich die deutsche Version in diesem Punkt anders als die englischsprachige. Das muss man wirklich wissen...

Die Umgebung

Die beschriebenen Erfahrungen habe ich mit dem PowerPivot Add-In 11.0.2100.60 für Excel 2010 gemacht. Ich hoffe, dass Microsoft in künftigen Versionen diesen verwirrenden kleinen Unterschied beseitigen wird.