PowerTools ActiveReports for .NET 9.0J > ActiveReportsユーザーガイド > 概念 > ページレポート/RDLレポートの概念 > スクリプトの使用 |
ページレポートまたはRDLレポートでは、式を利用してカスタムコードを使用できます。複雑な関数やレポートで何回も使用したい関数の場合には、レポートへコードを組み込むことも可能です。また、コードを含めるカスタムアセンブリを作成し、複数のレポートから使用することもできます。
プロジェクトにページレポート/RDLレポートのテンプレートを追加し、スクリプトタブに以下のようなコードを追加します。
コントロールのプロパティから関数を呼び出す
単一のメソッドのコードブロックの簡単な例です。
Public Function GetDueDate() as Date
Return DateTime.Now.AddDays(30)
End Function
コントロールのプロパティからコードブロック内のメソッドを呼び出します。例として、この関数を Textbox コントロールのValueプロパティで呼び出せます。
=Code.GetDueDate()
コントロールのプロパティからカスタム定数と変数を使用する
コードブロックでカスタム定数および変数を定義します。
Public Dim MyVersion As String = "123.456"
Public Dim MyDoubleVersion As Double = 123.456
Public Const MyConst As String = "444"
コードブロックでカスタム定数および変数を使用します。例として、Textbox コントロールのValueプロパティに変数または定数の値を設定できます。
=Code.MyVersion
=Code.MyDoubleVersion
=Code.MyConst
コントロールのプロパティからグローバルコレクションを呼び出す
レポートパラメータ値を取得します。
Public Function ReturnParam() As String
Return "param value = " + Report.Parameters!ReportParameter1.value.ToString()
End Function
コントロールのプロパティからコードブロック内でグローバルコレクションを呼び出します。例として、 Textbox コントロールのValue プロパティでグローバルコレクションを呼び出します。
=Code.ReturnParam()
コードブロックの形にインスタンスベースのVisual Basic .NETコードを使用します。コードブロックに複数のメソッドを含めて、コントロールのプロパティで式からそのメソッドをアクセスできます。
メモ: ページレポート/RDLレポートでは、 Visual Basic .NET をスクリプト言語として使用します。一方、セクションレポートでは、Visual Basic .NetおよびC#コード両方をスクリプトで使用できます。 |
C#またはVisual Basic .NETでカスタムアセンブリを作成して、複数のレポートでコードを使用可能にします。
注意: 上記の両方のケースで使用する場合、両方の場所にカスタムアセンブリコピーする必要があります。なお、カスタムアセンブリをグローバルアセンブリキャッシュに登録することでも使用できます。 (C:\Windows\assembly) |
public static
と記載されているメンバ、 Visual BasicアセンブリでPublic Shared
と記載されているメンバ)にアクセスする方法:=Namespace.Class.Member
=Code.InstanceName