Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Wiki Markup
{anchor:top}
{toc: class=contents}

h2. 概要
{styleclass: Class=topLink}[ページトップ|#top]{styleclass}
フィルター値の初期値は「ユーザープロンプト」となっています。これを変更しなければユーザーはレポートを実行する際にパラメーターの入力を促されます。この機能は表示すべきデータが状況によって変化するような場合に有効です。下の図はこの指定とそれがユーザーに表示するプロンプトを示したものです。


!01userprompt.png!

# レポートビルダーのフィルター設定ページで、フィルターの種類に「ユーザープロンプト」を選択します。
# レポートが実行されると、ユーザーにプロンプトと入力欄が示されます。値が入力され「→」ボタンがクリックされるまでレポートは表示されません。
# ユーザーが「→」ボタンをクリックすると、フィルターによって絞り込まれたデータのみが読み出されレポートに表示されます。
# つまりユーザーはこのプロンプトによってレポートに表示されるデータの内容を変更できるわけです。





bq. 詳細については、[ユーザープロンプトレポート|User Prompt Reports]を参照してください。
h2. プロンプトアイコン
{styleclass: Class=topLink}[ページトップ|#top]{styleclass}
プロンプトアイコンをクリックすると、そのフィルターに対して指定可能なすべての値が表示されます。Yellowfinは指定された値にしたがってすべてのフィルターをクエリーに適用します。

!02promptvalues.png|thumbnail,border=1!

h3. プロンプトの種類:ドロップダウン、In List、日付、検索

プロンプトとして以下の図のように通常のテキスト入力フィールド、ドロップダウンメニュー、In Listグループ化メニュー、日付入力フィールドが使用可能です。

!03promptTypes.png!

# テキストフィールドには任意のフィルター値を入力できます。
# フィルターアイコンをクリックすると、使用可能なすべてのフィルター値が表示されます。使用するものを1つ選択してください。そのフィルターが集計フィルターである場合は、データベースを検索するためのプロンプトは表示されません。
# 日付フィルターを使用する場合は、フィールドに日付を手動で入力するか、カレンダーから日付を選択します。フィルターの「入力スタイル」メニューを使用して、日付一覧から日付を選べるプロンプトを表示することができます(ステップ2と同様)。
# 「between」オペランドに日付を設定し、定義済みの日付範囲を用いてその書式を設定する場合は、次のようなオプションが表示されます:
!04between.png!
# 日付を「equal to」オペランドに設定し、定義済みのフィルター範囲を用いてその書式を設定する場合は、次のようなオプションが表示されます:
{color:#c00000}{*}注意:*{color}ビューまたはExcelのスプレッドシートの最終更新日に基づいてこれらの日付を設定する場合は、フィルターアクションのメニューを開き、「フィルター日付参照(Filter Date Reference)」を「ビュー更新日」に設定します。
!05equalTo.png!
# 「性別」ドロップダウンにはデータベースからキャッシュされた値が使用され、このリストからユーザーは値を選択することができます。
# 「姓(Last Name)」リストにはデータベースからキャッシュされた値が使用され、ユーザーはこのリストから複数の値を選択することができます。

h3. 段階的フィルタリング

レポートにユーザープロンプトフィルターが複数存在する場合、Yellowfinはそれらを段階的フィルターとして扱います。これはあるフィルターのプロンプトアイコンによって表示される選択肢が、その前のフィルターに入力された値によって限定されるという意味です。ですから複数のフィルターを使ったレポートを作成する場合、それらはユーザーにとって意味のある順番でなくてはいけません。
たとえば地域と国名を指定するフィルターをレポートに使用する場合、地域のフィルターは国名のフィルターの前に置かれる必要があります。国名が選ばれれば地域はおのずと決まってしまうわけで、地域のフィルターは意味がなくなるからです。


h3. フィルターの従属性

1つのレポートに複数のフィルターが使用されている場合、親フィルターが値を持つまで子フィルターが表示されないように、フィルターの従属性を設定することができます。この機能はキャッシュされているフィルター群がある場合に便利です。ユーザーが親フィルターの値を選択すると、従属フィルターが表示されます。従属フィルターの値は前の選択によってフィルタリングされ、フィルターの階層と従属性が表示されます。
たとえば、「Camp Region」にIn Listフィルターを使用し、従属フィルターとして「Camp Name」を使用する場合、「Region」の値を選択する前には次のように表示されます:


!06mail.png!

メインフィルターに「Australia」を設定すると、次のように表示されます:


!07dependantFilter.png!





bq. 詳細については、[キャッシュされた依存フィルター|Cached Dependent Filtersキャッシュされた依存フィルター]を参照してください。
h2. 高度なフィルター
{styleclass: Class=topLink}[ページトップ|#top]{styleclass}
フィルターオプションを使用する際に知っておくべきいくつかの特別なフィルターがあり、それぞれに特別なルールが存在します。特別なフィルターは以下の通りです:

# 参照コードをフィルタリングする一覧に含む、In Listフィルター
# 日付フィルター
# 範囲フィルター

h3. 一覧に含む、In Listフィルター

オペランドに「一覧に含む、In List」あるいは「一覧に含まない、Not In List」を選択したものが「In Listフィルター」で、複数のフィルター値を設定できます。これらのオペランドは区分コードのような特別なタイプの値にしか適用されません。 


!08inList.png|thumbnail,border=1!

# レポートビルダーのフィルター設定ページで、フィルタープロンプトアイコンをクリックし、値を設定します。一覧に追加したいすべての変数を選択し、「送信・実行」をクリックして変更を保存してウインドウを閉じます。
!09inListSelected.png!
# 複数のフィルター値の設定を行うためには、「変更」をクリックします。上図のように表示されます。

h3. 範囲フィルター

オペランドに「の間(~)、Between」あるいは「の間でない、Not Between」を選択したものが「範囲フィルター」で、範囲を示す2つの値が必要となります。また、上のフィールドの値が下のフィールドよりも小さくなければなりません。逆の場合、フィルターは機能しません。

# 最小値、最大値を入力します。
# 「送信・実行」をクリックして変更を保存し、ウインドウを閉じます。
!10between.png|thumbnail,border=1!

h3. 日付フィルター

日付フィルターの設定では、挿入、固定、可変という3つのオプションが選択できます。 

# *固定{*}の場合、1つの日付を指定します。
# *可変{*}の場合、現在の日付を基準にして過去(-)、あるいは未来(+)とその日数を指定します。この場合の現在とはフィルターが実行された日付です。たとえば「現在の日付 - 10」という設定として、フィルターが2月11日に実行されると、フィルター値は2月1日となり、次にレポートが2月21日に実行されると、フィルター値は自動的に2月11日に変更されます。
# *定義済み日付期間{*}の場合、日付範囲の一覧から選択することができます。

!11dateFilter.png|thumbnail,border=1!\\
\\
{horizontalrule}
{styleclass: Class=topLink}[ページトップ|#top]{styleclass}