0
0

Microsoft Power BI との連携

Last updated at Posted at 2022-10-07

まとめページに戻る
まとめA~M

統合

エラー

2000件の壁

Salesforce Connector を使用して Salesforceで作成した活動レポートを
Googleスプレッドシートにインポート(貼り付け)しようとした所、
①Aレポートは2,000件以上でもインポート可能
②Bレポートは2,000件以上の場合インポートができず、ヘッダだけ出力された状態
③Bレポートは検索条件を絞り、1,000件程度であればインポート可能
となり、②の場合にインポートできない原因がわからないでおります。
※Lengthの長いテキストは出力対象にしていません。

以下の投稿によれば、この2000件という制限はSalesforce Report API の制限みたいです。

以下が回避策として述べられています。

As a workaround for the above issue, you can use Salesforce Object connector in Power BI Desktop to pull all the rows from individual tables and recreate reports you’d like. The Object connector doesn’t have the 2000 row limit.

https://community.fabric.microsoft.com/t5/Power-Query/salesforce-connectivity-2000-lines-restriction/td-p/205963

コネクターが2種類あるうようなことが回答されていますね。
From Salesforce Reportだと2000件の制限があると...

Using the "From Salesforce Object" connector to pull individual tables will let you pull more than 2000 rows. Then you can join (merge in Power Query terms) multiple tables to recreate the structure of the report. It works but isn't convenient or easy.

That being said, the 2000 row limit makes the "From Salesforce Report" connector completely useless, so I still think you should work on this request even though there's a somewhat reasonable workaround.

https://ideas.fabric.microsoft.com/ideas/idea/?ideaid=5d5c21de-52d7-404b-9b6d-b0ed0acb0a19&%3Bpage=2&page=3

Failed to execute 'postMessage' on 'Window' : # could not be cloned.

INVALID_QUERY_LOCATOR ' Error

INVALID_QUERY_LOCATOR ' Error

このエラーはクエリーで返ってくるレコードが多いから起きていると思われる。

SFのヘルプ : 「INVALID_QUERY_LOCATOR」エラー
INVALID_QUERY_LOCATOR エラーおよび関連する拡張エラー コードは、追加のクエリ結果の呼び出しに含まれるクエリ ロケーターが無効であるか存在しないことを示します。

MSのヘルプ:Salesforce レポート
MSのヘルプ:英語版

Salesforce レポートでアクセスできる行の数は、Salesforce によって 2,000 行に制限されています。 この問題の回避策として、Power BI Desktop の Salesforce オブジェクト コネクタを使用して、個々のテーブルからすべての行を取得し、必要なレポートを再作成できます。 オブジェクト コネクタには、2000 行の制限はありません。

さらに調べると
DataSource.Error: invalid query locator when expanding a column

各 Salesforce ユーザーは、一度に最大 10 個のクエリ カーソルを開くことができます。これはハード コードされた制限であり、増やすことはできません。クライアント アプリケーションが新しいクエリ ロケータ カーソルを開こうとしたときに 10 個のクエリ ロケータ カーソルが開かれると、最も古いカーソルが解放されます。期限切れまたは解放されたカーソルを呼び出そうとすると、salesforce.com は INVALID_QUERY_LOCATOR エラーを返します。このエラーを回避するには、クライアント コードが 10 を超えるクエリ ロケーター カーソルを開いたままにしないようにします。複数のプロセスが同じ salesforce.com ユーザーを使用して実行されている場合は、結合されたクエリ ロケーター カーソル数が 10 以下のままであることを確認してください。

これは本当に良い情報であり、単純な「もう一度リフレッシュしたら消えてしまった」など、何人かの人々が無関係に見える解決策を報告している理由をおそらく説明しています。これらの「解決策」のそれぞれが、何らかの方法でクエリ ロケーターのカーソル カウントを 10 未満に減らしたに違いありません。

このスレッドが続いている限り、私は断続的にこれに悩まされてきました。これは素晴らしいアドバイスです。
「このエラーを回避するには、クライアント コードが 10 個を超えるクエリ ロケーター カーソルを保持していないことを確認してください。」
しかし、どうすればそれを行うことができますか? わかりませんが、わかり次第追記します!

更新: これを解決する最も簡単な方法は、各クエリをステップ実行し、クエリの [プレビューを更新] を 1 つずつ実行することです ([すべて更新] ではありません)。

Teams連携

Salesforce と Excel コネクタ

I don't think it will be supported again.
However, there seem to be third-party products available.

Excel Add-In from Connect for Office End of Support
https://help.salesforce.com/s/articleView?id=000381942&type=1

SharePoint

解決策- Power Automate フローを作成する - SharePoint でファイルが作成または変更されるときに、Excel シートから行のリストを取得し、レコードの取得関数とレコードの更新関数を使用します (接続Power Automate の Salesforce Premium) に移動して、見積番号をアップロードします。

これは自動化されたクラウド フローであるため、いくつかの Power Automate 式を作成する必要があります。

制限なしにリアルタイムに接続する方法

Heroku ConnectのPostgresSQLを介してくらいしか思いつかん

Heroku Connect allows you to synchronize with PostgresSQL in real time.

I also think that if you can connect Power BI to Heroku PostgresSQL, you can process it in real time.

[Heroku Connect](Heroku Connect)

How to Connect Power BI to Heroku PostgresSQL?

Azure Blob storage

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0