ページレポート/RDLレポートのレポートパラメータに複数の値を渡す方法は?

文書番号 : 40874     文書種別 : 使用方法     登録日 : 2017/08/21     最終更新日 : 2017/08/21
文書を印刷する
対象製品
ActiveReports for .NET 9.0J
詳細
ページレポート/RDLレポートでは、レポートパラメータに複数の値を設定可能になっています。
レポート側の設定は、[レポート-パラメータ]ダイアログで「複数の値を許可する」チェックボックスをONにします。



このパラメータにコードから値を渡す場合、以下のような記述になります。

◆サンプルコード(VB.NET)
Imports GrapeCity.ActiveReports.Expressions.ExpressionObjectModel
----------
' レポートオブジェクトを生成し、レポートファイルをロードします。

Dim pRep As New GrapeCity.ActiveReports.PageReport(New System.IO.FileInfo("PageReport1.rdlx"))
Dim pDoc As New GrapeCity.ActiveReports.Document.PageDocument(pRep)

' パラメータを初期化します。
pDoc.Parameters("ReportParameter1").Values.Clear()

' パラメータを追加します。
pDoc.Parameters("ReportParameter1").Values.Add(New ParameterValue())
pDoc.Parameters("ReportParameter1").Values(0).Value = 1
pDoc.Parameters("ReportParameter1").Values.Add(New ParameterValue())
pDoc.Parameters("ReportParameter1").Values(1).Value = 2

◆サンプルコード(C#)
using GrapeCity.ActiveReports.Expressions.ExpressionObjectModel;
----------
// レポートオブジェクトを生成し、レポートファイルをロードします。

var pRep = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo("PageReport1.rdlx"));
var pDoc = new GrapeCity.ActiveReports.Document.PageDocument(pRep);

// パラメータを初期化します。
pDoc.Parameters["ReportParameter1"].Values.Clear();

// パラメータを追加します。
pDoc.Parameters["ReportParameter1"].Values.Add(new ParameterValue());
pDoc.Parameters["ReportParameter1"].Values[0].Value = 1;
pDoc.Parameters["ReportParameter1"].Values.Add(new ParameterValue());
pDoc.Parameters["ReportParameter1"].Values[1].Value = 2;


また、HTML5ビューワを使用している場合は、JavaScriptで配列を渡すことができます。

◆サンプルコード(JavaScript)
var arrParam = [1, 2, 3];

var reportOption = {
  id: 'PageReport1.rdlx',
  parameters: [
  { // 単一の値
    name: 'ReportParameter1',
    value: 1
  },
  { // 複数の値
    name: 'ReportParameter2',
    values: arrParam,
    multivalue: true
  }]
};

viewer.option('report', reportOption);

関連情報
キーワード
HowTo データ