JSONデータプロバイダは、動的に作成したデータソースをサポートしています。JSONデータ用の接続文字列を式として入力し、パラメータを使用して値を渡すことで動的にデータソースを設定することができます。
動的に作成したデータソースを設定する手順は以下のとおりです。
ページレポートの新規作成
- ActiveReports for .NET 18.0J デザイナアプリケーションを開きます。
- [ファイル]メニューから[新規作成]を選択し、表示される[新規レポートの作成]ウィンドウで、[ページレポート]テンプレートを選択します。
- [OK]をクリックします。
パラメータの追加
- [レポートエクスプローラ]で、[パラメータ]ノードを右クリックして[パラメータの追加]オプションを選択します。
- 表示される[レポート-パラメータ]ダイアログの[全般]タブで、パラメータの[名前]を「UserId」に変更し、[OK]をクリックします。
データソースの追加
- [レポートエクスプローラ]の[データソース]ノードを右クリックして[データソースの追加]オプションを選択するか、[追加](+)ボタンから[データソース]を選択します。
- 表示される[レポートデータソース]ダイアログの[全般]ページでデータソースの名前(デフォルトでは「DataSource1」)を入力します。この名前は、[データソース]の子ノードとして[レポートエクスプローラ]に表示されます。
- [種類]セクションで、ドロップダウンから「Json Provider」を選択します。
- [接続]セクションの[コンテンツ]タブで、ラジオボタンから「式」を選択します。
-
[式の入力]フィールドに次のような式を入力します。
="jsondoc=http://jsonplaceholder.typicode.com/comments/" & Parameters!UserId.Value & ";schemadata=
{ ""$schema"": ""http://json-schema.org/draft-04/schema#"", ""type"": ""object"",
""properties"": { ""postId"": { ""type"": ""integer"" },
""id"": { ""type"": ""integer"" },
""name"": { ""type"": ""string"" },
""email"": { ""type"": ""string"" },
""body"": { ""type"": ""string"" } },
""required"": [ ""postId"", ""id"", ""name"", ""email"", ""body"" ] }}"
データセットの追加
- [レポートエクスプローラ]で、上記で追加したデータソースの名前(デフォルトでは「DataSource1」)を右クリックして、[データセットの追加]オプションを選択するか、[追加](+)ボタンから[データセット]を選択します。
- 表示される[データセット]ダイアログの[全般]ページで、データセットの名前(デフォルトでは「DataSet1」)を入力します。
- [クエリ]ページで、[指定方法]に[Text]を選択し、[クエリ]ボックスに「$」と入力します。
- [フィールド]ページで、[追加](+)ボタンを使用してフィールドを4つ作成し、次のような[名前]と[値]をそれぞれ入力します。
名前: postId; 値: postId
名前: email; 値: email
名前: name; 値: name
名前: body; 値: body
- [OK]をクリックします。
レポートレイアウトの作成
- ツールボックスから各コントロールをレポートのデザイナ面上にドラッグします。
- 各コントロールの値をデータセットフィールドの値に設定します。
レポートの表示
- [プレビュー]タブをクリックします。
- いずれかのUserIdパラメータ(例: "1")を[ReportParameter1]の下のボックスに入力し、[レポートを表示]をクリックします。