SQL Server Data Tools を使用してレポートを新規作成する
SQL Server Data Toolsは、Visual Studio で SQL Server Reporting Services のレポートを作成または編集できる、レポート作成環境です。 結果として作成されるレポート定義 .rdl ファイルにはレポート定義が含まれており、これを公開することでレポートを表示することができます。
また、一般的なテキスト エディターを使用してレポートを作成することもできます。 カスタム レポート作成の手間を軽減するには、目的に最適な機能を持つ既存の .rdl ファイルを修正します。 .rdl ファイル内の XML 要素の形式に関する詳細は、「レポート定義言語リファレンス」を参照してください。 変更後のレポート XML は、指定の XML スキーマを使用して検証できます。 レポート サービスでもレポート定義が検証され、定義が無効な場合は、レポートをアップロードしようとすると拒否されます。
注意Note
.rdl ファイルに FetchXML クエリが含まれている場合、その RDL に含まれるクエリは Microsoft Dynamics CRM 2016 レポート作成拡張機能で検証され、その際は内部的に FetchXML スキーマに対して検証されます。
ユーザー定義のフェッチベース レポートの作成
フェッチベースのカスタム レポートを作成するには、次の操作を行います。
サポートされるバージョンの Visual Studio、SQL Server Data Tools、Microsoft Dynamics CRM 2016 レポート作成拡張機能があり、必要な特権があることを確認してください。 詳細については次を参照してください: SQL Server Data Toolsを使用したレポート作成環境
Visual Studio を開いてから、レポート サーバー プロジェクトを作成します。
ソリューション エクスプローラーで、レポート フォルダを右クリックし、新規レポートの追加 を選択します。
次へを選択します。
データソースの選択 ページで 新規データソース を選択し、以下の詳細を指定します:
名前: データ ソースの名前を入力します。
タイプ: Microsoft Dynamics 365 Fetch を選択します。
接続文字列 : 接続文字列を指定します。 接続文字列は次の形式で指定してください。
ServerURL;OrganizationName;HomeRealmURL
この接続文字列では、ServerURL のみが必須です。 OrganizationName を指定しない場合、このクエリを実行するユーザーが属している最初の組織が使用されます。 HomeRealmURL は、組織が使用する ID プロバイダーのホームレルム URL で、組織が ID 管理のためにフェデレーションを使用するときに必要です。 ホームレルム URL を判断するには、ネットワーク管理者に問い合わせてください。
資格情報 を選択して、Dynamics 365 for Customer Engagement アプリまたは Dynamics 365 for Customer Engagement アプリに接続するための資格情報を指定し、次へ を選択します。
クエリのデザイン ページでクエリ ボックスに FetchXML クエリを入力します。 このクエリを取得するには、次のいずれかの操作を実行します。
高度な検索のクエリから FetchXML を取得します。 これを行うには、Customer Engagement (on-premises) アプリを開き、高度な検索 を選択して必要なクエリを作成し、高度な検索 タブで フェッチ XML のダウンロード を選択します。 Visual Studio に含まれるデータセット プロパティのクエリ ボックスに、その FetchXML をコピーします。
FetchXML クエリを手動で入力します。 たとえば、従業員数が 5,000 人以上のすべてのアカウントを表示するレポートを作成する方法を示します。
<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false"> <entity name="account"> <attribute name="name" /> <attribute name="numberofemployees" /> <attribute name="accountnumber" /> <order attribute="name" descending="false" /> <filter type="and"> <condition attribute="numberofemployees" operator="gt" value="5000" /> </filter> </entity> </fetch>
次へを選択します。
レポートに含まれるフィールドを確認し、次へ を選択します。
- レポート作成拡張機能はデータ型に応じて追加のフィールドを追加します。 数値、日付、ルックアップ、オプションセットには、追加の fieldName値 フィールドがあります。 たとえば FetchXML に createdon 属性が含まれている場合、2 つのフィールドを利用できます: createdon と createdonValue。
- fieldName (例: createdon)
- このフィールドは、ユーザーのフォーマット設定に従ってフォーマットされた文字列です。 これは表示のみを意図しています。 値を元のデータ型に変換するとエラーになる場合があります。 たとえば、
=CDate(Fields!createdon.Value)
のような式は、日付形式がレポート サーバのロケール設定と一致しない場合、失敗したり、正しくない日付を与える可能性があります。 - オプションセット フィールドの場合、値はオプション セット値の表示テキストです。
- ルックアップ フィールドの場合、値はリンクされたレコードのプライマリ名フィールドです。
- このフィールドは、ユーザーのフォーマット設定に従ってフォーマットされた文字列です。 これは表示のみを意図しています。 値を元のデータ型に変換するとエラーになる場合があります。 たとえば、
- fieldName値 (例: createdonValue)
- このフィールドは、データ型に従ってフォーマットされていない生の値です。 フィールドは、非表示の CRM_format パラメーター を使用して、ユーザー固有の表示用に調整およびフォーマットすることができます。
- 日付フィールドの場合は、UTC 値です。
- 数値や通貨フィールドの場合は、フォーマットされていない数値です。
- オプションセット フィールドの場合は、オプション番号の値です。
- ルックアップ フィールドの場合は、ルックアップ フィールドの Guid です。
- fieldName (例: createdon)
- レポート作成拡張機能はデータ型に応じて追加のフィールドを追加します。 数値、日付、ルックアップ、オプションセットには、追加の fieldName値 フィールドがあります。 たとえば FetchXML に createdon 属性が含まれている場合、2 つのフィールドを利用できます: createdon と createdonValue。
レポートに適用するスタイルを選択し、次へ を選択します。
レポートに含まれるフィールドを確認し、従業員数が 5,000 人を超える取引先企業などの、レポートの名前を入力します。 完了を選択します。
レポートが実行されたときにどのように表示されるかを確認したい場合は、プレビュー タブを選択します。
これにより、指定したレポート名で .rdl ファイルが生成されます。 このファイルを使用して、レポート ウィザードでカスタム レポートを Dynamics 365 for Customer Engagement アプリに公開することができます。 詳細: レポートを公開する