どのように:レポートパラメータの検索をフィルタリングする方法:スクリーニングレポートパラメータを探します

あなたのレポートがある場合、レポートパラメータの永続タイプのを、パラメータ値は、ルックアップエディタを使用して指定されています。ルックアップのオブジェクトが大量にある場合は、それはスクロールに不便で、所望のパラメータ値を選択することができます。この例では、使用可能な値の数を減らすために、パラメータの検索をフィルタリングする方法について説明します。

レポートは、レポートパラメータの永続的なタイプであるときは、パラメータ値を指定するには、検索エディタを使用します。見つけるために多数のオブジェクトが存在する場合は、所望のパラメータ値は不便かもしれスクロール及び選択。この例では、使用可能な値の数を減らすために、スクリーニングのパラメータを検索する方法について説明します。

 

FilterReportParameterLookup

 

Note 注意
  • この例は、WindowsフォームとASP.NETアプリケーションに適用されます。しかし、WinFormsのアプリケーションでは、ルックアップエディタは、すでに組み込みサポートをフィルタリングしています。だから、ここを実証カスタマイズがASP.NETアプリケーションでのみ意味をなします。このトピックで説明するアプローチは、モバイルプラットフォームに実装することができないので、モバイルアプリケーションでは、レポートのプレビューメカニズムをサポートしていません。
  • このトピックでは、あなたが使用していますXAFアプリケーション持っていると仮定されるレポートV2モジュール、および1つまたは複数のレポートを(参照作成したレポートV2モジュールの概要を)。
  • この例は、WindowsフォームとASP.NETアプリケーションに適用されます。しかし、WinFormsのアプリケーションでは、エディタがすでに組み込まれているフィルタのサポートを見つけます。したがって、ここで示されたカスタムはASP.NETアプリケーションで意味をなします。モバイルアプリケーションは、それゆえ、このトピックに記載されている方法は、モバイルプラットフォームで実現することができない、レポートプレビューメカニズムをサポートしていません。
  • このトピックでは、あなたがXAFアプリケーションV2モジュールを使用してレポートを持っている、とあなたが一つ以上のレポート(レポートの概要V2モジュールを参照)を作成するとします。
 
ヒントヒント
完全なサンプルプロジェクトは、DevExpress社のコード例のデータベースで利用可能でhttp://www.devexpress.com/example=T319024
完全なサンプルプロジェクトは、コードサンプルデータベースDevExpress社で見つけることができますhttp://www.devexpress.com/example=T319024

追加のデータソースを使用した検索パラメータをフィルタします

他のデータソースフィルタパラメータを探します

余分な追加CollectionDataSourceのツールボックスからレポートにデータソースを。[プロパティ]ウィンドウで、設定DataSourceBase.ObjectTypeNameのパラメータの型にプロパティをフィルタリングします。使用して所望のフィルタを指定しCollectionSourceBase.Criteriaのプロパティを。

ツールボックスからレポートにデータソースを収集するために追加のデータソースを追加します。「プロパティ」ウィンドウで、プロパティのDataSourceBase.ObjectTypeNameタイプは、パラメーターをスクリーニングします。使用は、属性、必要なフィルタを指定し、「Base.Criteriaがコンパイルされました」。

FilterReportParameterLookup1

 

Determine the key type used in the parameter's type (passed to ObjectTypeName in the previous step). Create a parameter of the same key type (e.g., Guid or int). Enable "Support the collection of standard values". Specify the DataSource, created in the previous step. Set DisplayMember to the name of the property storing the human-readable identifier of the parameter (e.g., Name). Set ValueMember to the name of the parameter's key property (e.g., Oid).

确定参数类型中使用的键类型(在上一步中传递给 ObjectTypeName)。创建相同键类型的参数(例如,Guid 或 int)。启用"支持收集标准值"。指定在上一步中创建的数据源。将 DisplayMember 设置为属性的名称,该属性存储参数的可读标识符(例如,Name)。将 ValueMEMBER 设置为参数的键属性(例如 Oid)的名称。

FilterReportParameterLookup2

As the result, the parameter's lookup will be filtered according to the specified criteria.

因此,参数的查找将根据指定的条件进行筛选。

Use Cascading Parameters

使用级联参数

The previous section described how to specify a static filter at design time. However, the filtering expression can include other parameter values, so you can use Cascading Parameters to change the filter an runtime when previewing the report. Note that the filtering is performed on the client side in this instance.

上一节介绍了如何在设计时指定静态筛选器。但是,筛选表达式可以包含其他参数值,因此可以使用级联参数在预览报表时更改运行时筛选器。请注意,在此实例中,筛选在客户端上执行。

 

Add the Filter parameter of a string type. Pass the criteria that included a reference to the Filter parameter to the FilterString property of the parameter to be filtered (e.g., "Contains([Name], ?filter)").

添加字符串类型的筛选器参数。将包含对 Filter 参数的引用的条件传递到要筛选的参数的 FilterString 属性(例如,"包含([名称],?筛选器)")。

FilterReportParameterLookup3

その結果、パラメータのルックアップはフィルター入力フィールドを伴うことになります。検索は指定されたフィルタテキストに基づいてフィルタリングされます。

そのため、パラメータのための外観は一緒に「フィルター」入力フィールドに応じて変動します。指定したフィルタテキスト検索に応じて上映されます。

おすすめ

転載: www.cnblogs.com/foreachlife/p/How-to-Filter-a-Report-Parameter-s-Lookup.html