トピックス |
[データ] タブには、データ操作およびデータ表示のオプションが表示され、これらは [演算]、[JOIN]、[フィルタ]、[表示]、[データソース] グループに分類されています。下図は、その画面を示しています。
[演算] グループには、一時項目 (DEFINE) および一時項目 (COMPUTE) フィールドを定義するコマンドが表示されます。
一時項目 (DEFINE) および一時項目 (COMPUTE) は、それぞれ異なるタイプの一時フィールドです。一時項目とは、その値自体はデータソースに保存されていないが、既存のデータから計算を行ったり、絶対値を割り当てたりできるフィールドです。一時項目には保存場所は不要です。保存場所は必要に応じて作成されます。
一時項目を作成する場合、式を記述してその値を生成します。1 つの値を生成するために、式にはフィールド、定数、演算子を組み合わせて使用することができます。
ユーザが独自に式を指定することもできますが、特定の計算や操作を行うために用意されたさまざまな関数の中から必要なものを選択することもできます。さらに、単純な式および関数を構成要素としてさらに複雑な式を作成したり、特定の一時項目を使用してその他の一時項目の評価を行ったりすることも可能です。
一時項目 (DEFINE) は、選択条件に一致するレコードをデータソースから取得する際に評価されます。式の結果は、データソースに実際に保存されている実フィールドのように扱われます。
一時項目 (COMPUTE) は、選択条件に一致するすべてのデータが検索、ソート、集計された後で評価されます。その結果、この計算はフィールドの集計値を使用して実行されます。
[一時項目 (DEFINE)] または [一時項目 (COMPUTE)] をクリックして開くダイアログボックスでは、フィールドをツリー表示、ディメンション表示、リスト表示するオプションなど、両方のダイアログボックスで同様の機能を使用できます。また、[関数] ボタンを選択すると、データソースフィールドではなく、関数一式を表示することができます。下図は、[SUM フィールド (COMPUTE)] ダイアログボックスを示しています。
[JOIN] グループの [JOIN] ボタンをクリックして [JOIN] ダイアログボックスを開き、新しい JOIN の作成、既存の JOIN の編集や削除、データソースの JOIN への追加を行えます。
注意:レポートオブジェクト、または SAP Business Information Warehouse (SAP BW)、Oracle Essbase、Microsoft SQL Server Analysis Services のキューブで作業している場合、[JOIN] グループは無効になります。
下図の [JOIN] ダイアログボックスでは、2 つのデータソースが共通の ID_AGE インデックスフィールドで結合されています。
条件付き JOIN を使用すると、フィールド間の等価性とは別の条件に基づいて JOIN を設定することができます。さらに、ホストおよびクロスリファレンス JOIN フィールドに同一フォーマットを含めたり、クロスリファレンスフィールドにインデックスを付ける必要がなくなります。
注意:[JOIN] ダイアログボックスの [編集] をクリックし、[説明] セクションに入力することで、JOIN の説明を編集することができます。この説明には、文字、数字、アンダースコア (_) のみを使用できます。特殊文字を使用することはできません。
条件付き JOIN は、FOCUS およびすべてのリレーショナルデータアダプタでサポートされます。各データソースは複雑な条件の処理能力において異なるため、WHERE 構文の最適化は JOIN に関わる特定データソースおよび条件の複雑さにより異なります。
FOCUS データソースでは、 データソースによっては、ホスト JOIN フィールドとクロスリファレンス JOIN フィールドに共通するフォーマットがない場合、次のメッセージが表示されます。
注意:[はい] をクリックすると、[フィルタの作成] ダイアログボックスが開いて、WHERE ベースの JOIN を作成することができます。
クロスリファレンス JOIN フィールドにインデックスがない場合、次のメッセージが表示されます。
注意:[はい] をクリックすると、[フィルタの作成] ダイアログボックスが開いて、WHERE ベースの JOIN を作成することができます。
WHERE ベースの JOIN を作成するには、下図のようなフィルタ条件を作成します。
[フィルタ] グループの [高度な設定] ボタンをクリックして [フィルタの作成] ダイアログボックスを開き、高度なフィルタオプションを設定します。高度なフィルタオプションには、単一式の WHERE、WEHRE TOTAL、AND 論理積、OR 論理積があります。
レポートを作成する際に、リクエストのさまざまな箇所でフィールドを参照します。たとえば、表示コマンド (PRINT、SUM)、ソート句 (BY、ACROSS)、選択条件 (WHERE、WHERE TOTAL、IF) でフィールドを参照します。
WHERE 句を使用して、レポートに表示するレコードをデータソースから選択します。選択条件に基づいてデータが評価され、データがデータソースから取得されます。選択条件の定義には、必要な数の WHERE 句を任意に使用することができます。
逆に、WHERE TOTAL テストでは、すべてのデータが取得、処理された後でそのデータが選択されます。
単純なフィルタ条件内では、条件と式をグループ化することができます。また、条件内で関数や演算を適用することもできます。このオプションでは、[フィルタ] ダイアログボックスよりも多くの機能を選択することができます。単純なフィルタについての詳細は、フィールドタブを参照してください。
下図のように、[フィルタの作成] ダイアログボックスで [WHERE] をクリックすると、WHERE 条件および WHERE TOTAL 条件によるフィルタを作成することができます。
下図のように、[ダブルクリックするか、F2 キーを押して編集してください。] をダブルクリックすると、2 番目の図のように、[フィールド] または [サブクエリ]、および <演算子>、<値> のドロップダウンリストが開きます。
フィールドと値は、マスターファイルおよびデータソース、サブクエリは HOLD ファイルから取得することができます。
[フィールド] ドロップダウンリストには、マスターファイルのフィールドリストが表示されます。フィールドリストには、次の表示方法があります。
[既存] をクリックすると、[開く] ダイアログボックスが開き、別のマスターファイルからサブクエリを選択することができます。
[演算子] (デフォルト設定) ドロップダウンリストには、次の演算子が表示されます。
下図のように、[値] ドロップダウンリストで、複数のオプションを提供するダイアログボックスを開くことができます。
[タイプ] ドロップダウンリストには、次のオプションがあります。
[値] エリアには、テキストボックスがあり、値を手動で入力することができます。また、[値の取得] ドロップダウンリストには、次のオプションがあります。
注意:[値の取得] ドロップダウンリストにアクセスするには、フィールドを選択する必要があります。
目的の値を選択後、左右の矢印を使用して、その値を [複数値] エリアに追加したり、[複数値] エリアから削除したりできます。上下の矢印で値の順序を変更することや、削除アイコンで値を削除することもできます。
条件の作成後、[フィルタの作成] のダイアログボックス上部の [前に挿入] ボタンと [後に挿入] ボタンを使用して、作成した条件の前後に条件を追加することができます。[AND] または [OR] 接続詞を使用して条件を結合することや、[グループ] ボタンおよび [グループ解除] ボタンを使用して条件をネスト、整理することができます。
[フィルタの作成] のダイアログボックス上部の [新規フィルタ] ボタンをクリックして、新しいフィルタを作成することもできます。
フィルタの作成後、[OK] をクリックしてフィルタを保存、適用します。これらにアクセスするには、リソースパネルの [フィルタ] パネルを使用します。
[表示] グループの [ミッシングデータ] メニューには、グラフにミッシングデータ値を表示するかどうかを制御するオプションが表示されます。
[ミッシングデータ] オプションには、次のものがあります。
[データソース] グループには、データソースの追加および切り替えを行うための [追加] コマンドおよび [切り替え] ドロップダウンメニューが表示されます。[データソース] グループは、レイアウトモードでのみ使用可能になります。
注意:レポートオブジェクトで作業している場合、[データソース] グループは無効になります。
次のコマンドを使用します。
データソースを切り替えるには、現在アクティブなデータソースとは異なるデータソースを使用するレポートを選択することもできます。
WebFOCUS |