2

これがどのように機能するかと現実についての私の理解は異なっているように見えます。

ゴール

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以降の別のバグですか?
  • これが「うまくいく」ことを可能にするかもしれない私は何を試していませんか?
4

1 に答える 1

1

Microsoft がこの動作が仕様によるものであることを確認したことを報告しても、まったく驚かない。ソリューションを介してアップロードされた SSRS レポートの動作を考えると、論理的だとは言えません。また、DEV 環境に対するレポートの作成に時間を費やすことはあるかもしれませんが、その投資をソリューションを介して別のテナントにネイティブにインポートすることはできないため、開発エクスペリエンスが良いとは言えません。しかし、それが理解できることは譲らなければなりません。

私の現在の回避策に興味がある場合は、次の手順に従ってください。また、サポートされている CRM ベースのソリューションを開発しようと考えています。この投稿が気に入ったら、必要なコードが完成したら更新します。

回避策:

  1. スプレッドシートを XML ワークシートとして保存
  2. お気に入りの XML エディターで XML ファイルを開きます。
  3. 検索と置換を使用して、元のテナント URL を新しいテナント URL に変更します
  4. 保存して閉じます

かなり簡単ですが、私の好みには少し実践的すぎます...

于 2013-02-15T15:19:44.980 に答える