...
- public abstract String getDataSetName();
- public abstract List<ColumnMetaData> getColumns();
- public abstract List<FilterMetaData> getFilters();
- public abstract Object[][] execute(List<ColumnMetaData> columns, List<FilterData> filters);
- public abstract boolean getAllowsDuplicateColumns();
- public abstract boolean getAllowsAggregateColumns();
上書き可能な、その他の関数です。
データセット関数の定義
public abstract String getDataSetName();
DataSetNameをStringとして返します。これは国際化してはいけません。
public abstract List<ColumnMetaData> getColumns();
...
ColumnMetaDataオブジェクトは、以下のメタデータの定義が必要です。
属性 | 説明 |
---|---|
columnName | カラム(列)の名前です。これは一意であり、国際化してはいけません。ユーザーフレンドリーな名前や国際化は、Yellowfinのメタデータレベルで適用することができます。 |
columnType | カラム(列)のDataTypeです。 より詳細な情報は、付録のDataTypeを参照してください。 |
fieldType | カラム(列)のFieldTypeです。 より詳細な情報は、付録のFieldTypeを参照してください。 |
availableAggregations | AggregationTypeの配列です。このカラム(列)に適用可能な集約を定義します。 より詳細な情報は、付録のAggregationTypeを参照してください。 |
availableFilterOperators | FilterOperatorの配列です。このカラム(列)がフィルターとして使用される場合に、適用できる演算子を定義します。このカラム(列)をフィルターとして使用できない場合は、「null」に設定しなくてはいけません。 より詳細な情報は、付録のFilterOperatorを参照してください。 |
ColumnMetaDataには複数のconstructorがあり、このオブジェクトをJavaコードの一行で定義することができます。
public abstract List<FilterMetaData> getFilters();
...
FilterMetaDataオブジェクトは、以下のメタデータの定義が必要です。
属性 | 説明 |
---|---|
filterName | フィルターの名前です。 これは一意であり、国際化してはいけません。ユーザーフレンドリーな名前や国際化はYellowfinのメタデータレベルで適用することができます。 |
filterType | カラム(列)のFilterTypeです。 より詳細な情報は、付録のFilterTypeを参照してください。 |
Mandatory | このフィルターが必須かどうかを定義します。このフィルターを設定することなく、このデータセットからデータを返すことはできません。 |
availableAggregations | AggregationTypeの配列です。このフィルターに適用可能な集約を定義します。現状はサポートされていません。 より詳細な情報は、付録のAggregationTypeを参照してください。 |
availableOperators | FilterOperatorの配列です。このフォルターに適用可能な演算子を定義します。 より詳細な情報は、付録のFilterOperatorを参照してください。 |
FilterMetaDataには複数のconstructorがあり、このオブジェクトをJavaコードの一行で定義することができます。
Anchor | ||||
---|---|---|---|---|
|
public abstract Object[][] execute(List<ColumnMetaData> columns, List<FilterData> filters);
...
パラメーターフィルターの型は、FilterDataです。これは、選択されたフィルターに関する情報と、それらに割り当てられた値が含まれています。
FilterDataには以下の属性があります。
属性 | 説明 |
---|---|
filterName | このフィルターが表すフィルター、またはカラム(列)の名前です。 |
metaData | フィルターのFilterMetaDataです。これは、getFilters()、またはフィルター適用をサポートするカラム(列)をまとめるために自動的に作成されるFilterMetaDataオブジェクト内で定義されたFilterMetaDataオブジェクトとリンクします。 |
filterValue | フィルターの値です。これは、フィルターのデータ型のデータを保持するJavaオブジェクトです。複数の値を保持するフィルターは、Java一覧内に返されます。これは、の間(〜)、の間ではない、一覧に含む、一覧に含まないを演算子に使用するフィルターのためにあります。 |
filterOperator | FilterOperator型のインスタンスです。このフィルターに適用された演算子を定義します。 |
aggregationType | AggregationOperator型のインスタンスです。このフィルターに適用された集約を定義します。 |
ThirdPartyException()投入時にエラーが発生した場合に、カスタムエラーメッセージを表示させることができます。より詳細な情報は、カスタムエラーメッセージを参照してください。
public abstract boolean getAllowsDuplicateColumns();
...
falseに設定された場合は、各カラム(列)の単一のインスタンスのみが実行関数へ送信され、Yellowfinはデータ受領後に繰り返されるカラム(列)を複製します。
public abstract boolean getAllowsAggregateColumns();
...
trueの場合は、データセットはリクエストに応じて集約されたデータを返さなくてはいけません。カラム(列)は、レポート作成時にどの集約を適用することができるのかを定義することができます。これは、「getColumns()」で定義されます。
public boolean isFilterValueEnabled(String filter);
フィルター値が特定のフィルター(または、カラム(列)フィルター)へ返すことができるかどうかを定義します。trueの場合は、「getFilterValues()」を呼び出し、このフィルターの値の一覧を返します。
public List<Object> getFilterValues(String filter, HashMap<String, FilterData> appliedFilters);
「isFilterValueEnabled()」が、与えられたフィルター名にtrueを返す場合、この関数はユーザー選択で利用可能なフィルターオプションのJava一覧を返すために呼び出されます。パラメーター「appliedFilters」は、現在設定されている他のフィルターの値を保持するマップ(フィルター名によるキー)を保持します。この情報は、この関数により返される値をさらに制限するために使用することができます。
Section | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|