これがどのように機能するかと現実についての私の理解は異なっているように見えます。
ゴール
1つのCRMOnlineテナントから動的ワークシートをエクスポートします。ソリューションに「既存のレポート」としてアップロードします。ソリューションを別のテナントにエクスポートします。SSRSレポートと同様に、データソースが新しいテナントに更新されることを期待しています。次に、新しいテナントでレポートを介して動的ワークシートを開き、その2番目のテナントからのExcelのデータを確認します。
環境
CRM Online(現在はUR12を使用)とExcel2013を使用しています。これをExcel2007を使用して別のマシンに複製できます。
ウォークスルー
CRM Onlineテナント(「T1」)からエクスポートした動的ワークシートがあります。これを行うには、高度な検索を作成し、結果を表示して、[Excelにエクスポート]をクリックします。次に、「動的ワークシート」オプションを選択して、結果の.xml
ファイルを保存しました。ファイルをローカルで開くと(そして通常のセキュリティ警告をすべて受け入れると)、ワークシートにT1のデータが表示されます。
次に、T1で「マイレポート」という新しいソリューションを作成しました。ソリューションから、[レポート]、[新規追加]に移動し、新しく保存した.xml
ファイルを参照して「既存のレポート」を追加しました。
次に、ソリューションを管理対象外としてエクスポートしました(重要ではありません)。
次に、T1からサインアウトし、別のCRM Onlineテナント(「T2」)にサインインして、ソリューションをインポートしました。その後、T2のレポートの下に新しいレポートが表示されます。レポートをクリックすると、スプレッドシートをダウンロードするように求められます。ダウンロードしたスプレッドシートを開くと(そして以前と同じようにセキュリティ警告などに同意すると)、データが表示されません。クリックRefresh from CRM
しても何も起こらないようです。クリックするData > Connections > Refresh All
と、スプレッドシートの内容が次のように変わります。
Microsoft Online Servicesでは、サインインするためにJavaScriptが必要です。このWebブラウザーは、JavaScriptをサポートしていないか、スクリプトがブロックされています。
ブラウザがJavaScriptをサポートしているかどうか、またはスクリプトを許可するかどうかを確認するには、ブラウザのオンラインヘルプを参照してください。
私の理論
不当にではないが、ターゲットデータソースがワークシートに保存されているようです(XMLを表示すると、「T1」テナントのパスが表示されます)。これはソリューションのインポート段階で変更されると思っていましたが、そうではありません。XMLを手動で変更すると、T2環境が確認され、期待どおりに機能します。
次のオプションのいずれかによって、Excelが適切な場所を検索するようになることを期待していました。
- Outlookクライアントをインストールして構成しました。T1とT2はどちらも、接続できる組織として構成されています。これにより、Excelが2つの環境のいずれかに接続するように求めるプロンプトが表示されることを期待していました。
- T2にのみ接続するようにOutlookクライアントを再構成しました(構成からT1を削除しました)が、Excelが接続する場所に影響を与えたようです
- デフォルトのブラウザー(IE9)を介してT2にサインインし、ワークシートを開きましたが、これも変更には影響しませんでした。
この例がより複雑なケース(上記のようなリンクされたワークシートが多数あるワークブック)を単純化するのは当然のことです。このワークブックは、DEV環境とUAT環境の間に展開されているソリューションの一部です。ソリューションをエクスポートするたびにXMLを手動で操作することは、スケーラブルなオプションではありません。
質問
- この動作は予想されるものですか、それともUR12以降/ O365以降の別のバグですか?
- これが「うまくいく」ことを可能にするかもしれない私は何を試していませんか?