初めてのPower BI
SharePoint Onlineリストを使ったPower BIレポートを作りました。Power BI Desktop(以降Desktop)をダウンロードしてPower QueryでデータをコネコネしてWeb Serviceに発行しました。(大事なことが抜けている!?)
DesktopとWeb serviceの値が違う
上司より数字がおかしいと連絡あり。確かに値が変わってます。ただDesktopで見たところ、特に問題なし。なので再度Webに発行。ただまたおかしくなります。発行直後は問題なし、スケジュールの更新で更新するとおかしくなることがわかりました。
いつも特定の値がおかしくなります。
Microsoftサポートに聞く
レポートを簡易化し要因を特定することをお勧めされました。項目を減らす、リレーションを取る、参照するデータベースを減らす、、
見つけました!フィルターに使ってるbooleanの項目を取ると値が変わりません。
原因
SharePoint Onlineリスト上のboolean項目True/Falseをフィルターに使っていましたが、Power Query上にはAny型に変換され誤った値が表示されました。
私の場合、DesktopではAny型であっても正しく処理されていましたが、Webではだめでした。
DesktopとWebで値が変わることがあるなんて思いもしませんでした。
解決まで2か月かかりました。。
MS Power Query Docs
SharePoint リスト コネクタを使用する場合、ブール値は、Power BI Desktop および Power BI サービス環境では TRUE/FALSE または 1/0 として一貫性を持たなくなります。 これにより、間違ったデータ、不適切なフィルター、空のビジュアルが発生する可能性があります。
型変更は必ず実施しましょう
やらないと正しい結果がでないことがあります。
私自身も正しく型を変更するよう何度も聞いていました。ただ項目が200以上あるようなテーブルでめんどくさい気持ちからやっていませんでした。
石川さんも書かれてました。
[Power BI Advent Calendar 20216日目 正しいデータの型を](
https://qiita.com/ishiayaya/items/5647c7b481603e9c5c14#%E6%AD%A3%E3%81%97%E3%81%84%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AE%E5%9E%8B%E3%82%92"Qiita Home")