ヘッダーをスキップ
Oracle® Application Expressアドバンスト・チュートリアル
リリース3.2
B53796-03
  目次へ移動
目次

前
 
次
 

4 拡張レポートの手法の使用

このチュートリアルでは、対話モード・レポートの高度な手法を特に活用したアプリケーションを作成します。

この項で説明する手順は次のとおりです。

このチュートリアルの内容は次のとおりです。

基本アプリケーションの作成

この項では、データベース・オブジェクトの作成、オブジェクトへのサンプル・データのロードおよび基本アプリケーションの作成を行います。「アプリケーションの作成」ウィザードを使用して、「Home」ページおよび「Issues」レポート・ページを含むアプリケーションを構築します。「Issues」レポート・ページを使用すると、IT_ISSUES表に格納されている問題を表示できます。

この項の内容は次のとおりです。

データベース・オブジェクトの作成および移入

アプリケーションの作成を開始する前に、該当するサンプル・オブジェクトをワークスペース内に作成し、作成したオブジェクトにデモンストレーション・データをロードする必要があります。

Issue Trackerサンプル・オブジェクトをインストールするには、次のステップを実行します。

  1. Issue Trackerデータ・オブジェクトを作成します。「データベース・オブジェクトを作成するためのスクリプトの作成および実行」の手順に従ってください。

  2. オブジェクトにデモンストレーション・データをロードします。「デモンストレーション・データのロード」の手順に従ってください。

    これらのサンプル・オブジェクトは、Issue Trackerアプリケーション・オブジェクトのコピーです。Issue Trackerアプリケーションの詳細は、第14章「問題追跡アプリケーションの設計方法」および第15章「問題追跡アプリケーションの作成およびデプロイ方法」を参照してください。

アプリケーションの作成

ここで、「アプリケーションの作成」ウィザードを使用してアプリケーションを作成します。

「Home」ページおよび「Issues」レポート・ページを含むアプリケーションを作成するには、次のステップを実行します。

  1. 「ワークスペース」ホームページで、「アプリケーション・ビルダー」アイコンをクリックします。

  2. 作成」をクリックします。

  3. 「方法」で、「アプリケーションの作成」を選択して「次へ」をクリックします。

  4. 「名前」で、次の変更を行います。

    1. 「名前」に、Advanced Reportsと入力します。

    2. 「アプリケーションの作成」で、「最初から」を選択します。

    3. 「スキーマ」で、ロードしたITデータ・オブジェクトが含まれているスキーマを選択します。

    4. 次へ」をクリックします。

  5. 「ページの追加」で、次の変更を行います。

    1. 「ページ・タイプの選択」で、「空白」を選択します。

    2. 「ページ名」に、Homeと入力します。

    3. ページの追加」をクリックします。

  6. 「ページの追加」で、次の変更を行います。

    1. 「ページ・タイプの選択」で、「レポート」を選択します。

    2. 「ページに従属」で、「ホーム (1)」を選択します。

    3. 「ページ・ソース」で、「」を選択します。

    4. 「表名」で、「IT_ISSUES」を選択します。

    5. 「実装」で、「対話モード」を選択します。

    6. ページの追加」をクリックします。

  7. 「アプリケーションの作成」で、「It_Issues」リンクをクリックします。

    「新しいページ定義」ウィンドウが表示されます。

  8. 「ページ定義」で、「ページ名」にIssuesと入力します。

  9. 「レポート列」の下で、次の各列の「表示」について「いいえ」を選択し、「変更の適用」をクリックします。

    • ISSUE_DESCRIPTION

    • TARGET_RESOLUTION_DATE

    • PROGRESS

    • ACTUAL_RESOLUTION_DATE

    • RESOLUTION_SUMMARY

    • CRETATED_ON

    • CREATED_BY

    • MODIFIED_ON

    • MODIFIED_BY

  10. 次へ」をクリックします。

  11. 「タブ」で、「タブなし」を選択して「次へ」をクリックします。

  12. 「共有コンポーネント」で、デフォルトの「いいえ」を受け入れて「次へ」をクリックします。

  13. 「属性」で、すべてのデフォルト値を受け入れて「次へ」をクリックします。

  14. 「ユーザー・インタフェース」で、「テーマ20」を選択して「次へ」をクリックします。

  15. アプリケーションの属性を確認して、「作成」をクリックします。

アプリケーションの実行

ここで、Advanced Reportsアプリケーションを実行して、「Home」ページ、「Issues」レポート・ページおよび「単一行ビュー」を表示します。

アプリケーションを実行するには、次のステップを実行します。

  1. 「アプリケーションの実行」アイコンをクリックします。

  2. プロンプトが表示されたら、ワークスペースのユーザー名およびパスワードを入力して、「ログイン」をクリックします。

    この認証は、新しく作成したアプリケーションのデフォルトのセキュリティの一部です。詳細は、「アプリケーション認証の概要」を参照してください。

    図4-1に示すように、「Home」ページが表示されます。

    図4-1 初期「Home」ページ

    図4-1の説明は次にあります。
    「図4-1 初期「Home」ページ」の説明

  3. Issues」リンクをクリックします。

    図4-2「初期「Issues」レポート」に示すように、「Issues」レポート・ページが表示されます。

    図4-2 初期「Issues」レポート

    図4-2の説明が続く
    「図4-2 初期「Issues」レポート」の説明

  4. 図4-3「「単一行ビュー」アイコン」に示すように、Issue Id 1の「リンク列」アイコンを特定します。

    図4-3 「単一行ビュー」アイコン

    図4-3の説明が続きます
    「図4-3 「単一行ビュー」アイコン」の説明

  5. Issue Id 1の「リンク列」アイコンをクリックします。

    図4-4「1つ目の問題の「単一行ビュー」」に示すように、1つ目の問題の「単一行ビュー」が表示されます。

    図4-4 1つ目の問題の「単一行ビュー」

    図4-4の説明が続きます
    「1つ目の問題の「単一行ビュー」」の説明

    「アプリケーションの作成」ウィザードによって、「単一行ビュー」を表示する「Issues」対話モード・レポートの「リンク列」が構成されました。これは、ウィザードで「レポート」ページ・タイプを作成する場合のデフォルトです。


    ヒント:

    「リンク列」は、「レポート属性」ページに移動して「リンク列」設定を変更すると再構成されます。「対話モード・レポート・コンポーネントの概要」を参照してください。

  6. ページ下部にある「開発者」ツールバーで「アプリケーションID」リンクをクリックして、「アプリケーション」ホームページに戻ります。

    「アプリケーションの作成」ウィザードによって「ログイン」ページも作成されていることに注意してください。

ユーザー名およびプロジェクト名の表示

この項では、ユーザーIDおよびプロジェクトIDを含む列を、実際の名前値を含む列で置き換えます。IT_ISSUES表にはユーザー名またはプロジェクト名が含まれないため、その情報を含む表に結合されるよう問合せが変更されます。問合せを変更したら、ページを実行し、「列の選択」アクションを使用して表示する名前値列を追加します。

この項の内容は次のとおりです。

他の表から値を取得する目的での問合せの変更

「Issues」レポートでは、4つの列で、ユーザー名およびプロジェクト名ではなくIDが表示されています。この項では、「Issues Id」列を除く3つの列を、実際のユーザー名およびプロジェクト名を含む列に置き換えます。

これを実行するには、IT_PEOPLE表とIT_PROJECTS表の結合を含むよう問合せを編集します。IDの列は、次に示す名前値列で置き換えます。

  • Identified By Person Idは、Identified Byで置き換えます。

  • Related Project Idは、Project Nameで置き換えます。

  • Assigned to Person Idは、Assigned Toで置き換えます。

SQL問合せを変更するには、次のステップを実行します。

  1. 2 - Issues」ページを選択します。

  2. 「リージョン」で、「Issues」を選択します。

  3. 「ソース」までスクロールして、「リージョン・ソース」を次のSQLで置き換えます。

    SELECT "IT_ISSUES"."ISSUE_SUMMARY" as "ISSUE_SUMMARY",
        "IT_PEOPLE"."PERSON_NAME" as "IDENTIFIED_BY",
        "IT_ISSUES"."IDENTIFIED_DATE" as "IDENTIFIED_DATE",
        "IT_PROJECTS"."PROJECT_NAME" as "PROJECT_NAME",
        decode("IT_PEOPLE_1"."PERSON_NAME",NULL,'Unassigned',
            "IT_PEOPLE_1"."PERSON_NAME") 
            as "ASSIGNED_TO",
        "IT_ISSUES"."STATUS" as "STATUS",
        "IT_ISSUES"."PRIORITY" as "PRIORITY",
        "IT_ISSUES"."TARGET_RESOLUTION_DATE" as "TARGET_RESOLUTION_DATE",
        "IT_ISSUES"."PROGRESS" as "PROGRESS",
        "IT_ISSUES"."ACTUAL_RESOLUTION_DATE" as "ACTUAL_RESOLUTION_DATE",
        "IT_ISSUES"."ISSUE_ID" as "ISSUE_ID",
        "IT_ISSUES"."RELATED_PROJECT_ID" as "PROJECT_ID"
    FROM "IT_PEOPLE" "IT_PEOPLE_1",
        "IT_PROJECTS" "IT_PROJECTS",
        "IT_PEOPLE" "IT_PEOPLE",
        "IT_ISSUES" "IT_ISSUES"
    WHERE "IT_ISSUES"."IDENTIFIED_BY_PERSON_ID"="IT_PEOPLE"."PERSON_ID"
    AND "IT_ISSUES"."ASSIGNED_TO_PERSON_ID"="IT_PEOPLE_1"."PERSON_ID"(+)
    AND "IT_ISSUES"."RELATED_PROJECT_ID"="IT_PROJECTS"."PROJECT_ID"
    
  4. 変更の適用」をクリックします。

  5. 変更の適用」をクリックして、確定します。

表示する名前値列の追加

次に、「Issues」対話モード・レポート・ページを実行し、「列の選択」アクションを使用して表示する3つの名前値列を追加します。

表示する列を追加するには、次のステップを実行します。

  1. ページの右上の角にあるページの実行2アイコンをクリックします。

  2. 図4-5に示すように、「実行」ボタンの右にある「アクション」メニューをクリックします。

    図4-5 「アクション」アイコン

    図4-5の説明は次にあります。
    「図4-5 「アクション」アイコン」の説明

  3. 列の選択」アクションを選択します。

    図4-6のようにページが表示されます。

    図4-6 「列の選択」アクションのオプション・ページ

    図4-6の説明は次にあります。
    「図4-6 「列の選択」アクションのオプション・ページ」の説明

  4. 「表示しない」ボックスで「Identified By」を強調表示して、「移動」アイコン(>)をクリックします。

  5. Project Name」および「Assigned To」に対して、前述のステップを繰り返します。

    「表示しない」ボックスには、「Project Id」列のみが残ります。他のすべての列は、「レポートに表示」リストに表示されます。

  6. 「列の選択」領域の右下にある「適用」をクリックします。

    「Issues」ページが図4-7のように表示されます。

    図4-7 ユーザー名およびプロジェクト名を含む「Issues」レポート

    図4-7の説明は次にあります。
    「図4-7 ユーザー名およびプロジェクト名を含む「Issues」レポート」の説明

「Dashboard」ページの追加

「Dashboard」では、重要な問題追跡の統計の簡単なスナップショットが提供されます。「Dashboard」に表示されるリージョンは、次のとおりです。

この項のステップを完了すると、図4-8「Dashboard」のような「Dashboard」ページがアプリケーションに含まれます。

この項の内容は次のとおりです。

「Dashboard」ページの作成

最初に、アプリケーションに空白ページを追加して、「Dashboard」という名前を付けます。

「Dashboard」ページを追加するには、次のステップを実行します。

  1. 「開発者」ツールバーで「アプリケーションID」リンクをクリックします。

  2. ページの作成」をクリックします。

  3. 空白ページ」を選択して「次へ」をクリックします。

  4. 「ページ番号」に3と入力して、「次へ」をクリックします。

  5. 「ページの作成」で、次の変更を行います。

    1. 「名前」に、Dashboardと入力します。

    2. 「タイトル」に、Dashboardと入力します。

    3. 「ブレッドクラム」で、「ブレッドクラム」を選択します。

    4. 「エントリ名」に、Dashboardと入力します。

    5. 「親エントリ」で、「Home」リンクを選択します。

    6. 次へ」をクリックします。

  6. 「タブ」で、「いいえ」を選択して「次へ」をクリックします。

  7. 選択内容を確認して、「終了」をクリックします。

「Home」ページにおける「Dashboard」へのリンクの追加

次に、「Home」ページで、「Dashboard」に移動するためのリンクを追加します。このリンクは、「ホーム」ページの左側の「ナビゲーション」リージョンに表示されます。

「Home」ページに「Dashboard」へのリンクを追加するには、次のステップを実行します。

  1. 「ホーム」ページ(ページ1)のページ定義にナビゲートします。

    1. アプリケーション」ホーム・ブレッドクラムをクリックします。

    2. 「アプリケーション」ホームページで、「1 - ホーム」をクリックします。

  2. 「リージョン」で、「ナビゲーション」の横にある「リスト」リンクをクリックします。

  3. 「リスト・エントリ」ページで、ページの右側の「リスト・エントリの作成」ボタンをクリックします。

  4. 「リスト・エントリの作成/編集」ページで、次の項目を編集します。

    1. 「順序」に、20と入力します。

    2. 「リスト・エントリ・ラベル」に、Dashboardと入力します。

    3. 「ページ」に、3と入力します。

  5. 作成」をクリックします。

  6. アプリケーション」ブレッドクラムをクリックします。

  7. アプリケーションの実行」をクリックします。

    図4-9 ナビゲーション・リンク

    図4-9の説明が続きます
    「図4-9 ナビゲーション・リンク」の説明

    「Home」ページに「Dashboard」へのリンクが作成されたことに注意してください。

  8. Dashboard」をクリックしてリンクをテストします。

    空の「Dashboard」ページが表示されます。

「Dashboard」への「Overdue Issues」レポート・リージョンの追加

次に、期限切れの問題を表示するレポート・リージョンを「Dashboard」ページに追加して、そのレポートから「Issues」対話モード・レポートへのリンクを追加します。

「Overdue Issues」レポート・リージョンの作成

このレポートの問合せによって、未解決のすべての問題と、過ぎてしまった解決目標日が取得されます。

レポート・リージョンを追加するには、次のステップを実行します。

  1. 「開発者」ツールバーで、「ページの編集3」をクリックします。

  2. 「リージョン」で、「作成」アイコンをクリックします。

  3. 「レポート」を選択し、「次へ」をクリックします。

  4. 「レポート実装」で、「SQLレポート」を選択して「次へ」をクリックします。

  5. 「表示属性」で、次のステップを実行します。

    • 「タイトル」に、Overdue Issuesと入力します。

    • 「リージョン・テンプレート」で、「レポート・リージョン、代替1」を選択します。

    • 「順序」に、5と入力します。

    • 次へ」をクリックします。

  6. 「ソース」で、「SQL問合せの入力」に、次の文を入力します。

    SELECT i.issue_id, i.priority, i.issue_summary, 
        p.person_name assignee, i.target_resolution_date, r.project_name
    FROM it_issues i, it_people p, it_projects r
    WHERE i.assigned_to_person_id = p.person_id (+)
        AND i.related_project_id = r.project_id
        AND i.target_resolution_date < sysdate
        AND i.status != 'Closed'
    

    割当てはオプションであるため、外部結合が必要です。

  7. リージョンの作成」をクリックします。

対話モード・レポートでのリンク列の追加および宣言フィルタの作成

次のステップは、「Overdue Issues」レポートから「Issues」対話モード・レポートへのリンク列の作成方法およびURL項目値を使用したフィルタ基準の受渡しによる宣言フィルタの定義方法を示しています。

「Project Name」列から「Issues」対話モード・レポートにリンクを追加するには、次のステップを実行します。

  1. 「リージョン」で、「レポート」リンクをクリックします。

  2. PROJECT_NAMEの左にある「編集」アイコンをクリックします。

  3. 「列リンク」までスクロールして、次のステップを実行します。

    1. 「リンク・テキスト」で、[PROJECT_NAME]を選択します。

    2. 「リンク属性」に、次のように入力します。

      title="Click to see all issues for this project."

      この設定は、リンク列の項目のヘルプ・テキストを定義します。

    3. 「ページ」で、「2」を選択します。

    4. 「キャッシュのクリア」で、次を入力します。

      CIR,2
      

      このリンク列には、任意のフィルタの「Issues」対話モード・レポートを消去するCIR (Clear Interactive Report)コマンド、コントロール・ブレーク、強調表示、集計、計算した列、チャート設定およびフラッシュバック設定が含まれます。2によって、「Issues」レポート(ページ2)のキャッシュが消去されます。


      注意:

      対話モード・レポートをリセットするには、CIRRIR (Reset Interactive Report)で置き換えます。RIRコマンドを使用すると、デフォルトとして保存された最新の設定にレポートがリセットされます。

    5. 「アイテム1」に、次の名前を入力します。

      IR_PROJECT_NAME
      
    6. 「アイテム1」に、次の値を入力します。

      #PROJECT_NAME#
      

      「名前」および「値」の設定では、「Issues」対話モード・レポートの宣言フィルタが作成されます。プロジェクト名のリンクを使用すると、「Project Name」列の値が「Issues」レポートに渡されます。リンクをクリックすると、そのプロジェクトのすべての問題が、期限切れかどうかにかかわらず「Issues」レポートに表示されます。

  4. 変更の適用」をクリックします。

アプリケーションの実行

アプリケーションを実行するには、次のステップを実行します。

  1. 「アプリケーション」ホームページにナビゲートして、「アプリケーションの実行」アイコンをクリックします。

    「アプリケーション」ホームページが表示されます。

  2. Dashboard」リンクをクリックします。

    「Overdue Issues」リージョンが追加された「Dashboard」ページが、図4-10 「「Overdue Issues」リージョンが追加された「Dashboard」」のように表示されます。プロジェクト名がリンクとして表示されていることに注意してください。

    図4-10 「Overdue Issues」リージョンが追加された「Dashboard」

    図4-10の説明が続きます
    「図4-10 「Overdue Issues」リージョンが追加された「Dashboard」」の説明

  3. New Payroll Rollout」プロジェクト名をクリックします。

    「New Payroll Rollout」プロジェクト名の下にすべての問題が分類された「Issues」対話モード・レポートが表示されます。

    図4-11 「New Payroll Rollout」の「Issues」

    図4-11の説明が続きます
    「図4-11 「New Payroll Rollout」の「Issues」」の説明

    レポートの上部に「New Payroll Rollout」フィルタが作成されたことに注意してください。このフィルタは、プロジェクト名リンク列をクリックした際に作成されました。

「Open Issues by Project」円グラフの追加

次に、「Open Issues by Project」を表示する円グラフを追加し、「Issues」レポートへのリンクを作成します。円グラフの問合せでは、「Issues」対話モード・レポートから各プロジェクト名の未解決の問題数が取得されます。円グラフに表示されるプロジェクト名は、選択したプロジェクトのすべての問題を表示する「Issues」レポートにリンクします。

「Issues」レポートにリンクする円グラフ・リージョンの作成

円グラフを含むリージョンを作成するには、次のステップを実行します。

  1. 「開発者」ツールバーで「アプリケーションID」リンクをクリックします。

  2. 3 - Dashboard」をクリックします。

  3. 「リージョン」で、「作成」アイコンをクリックします。

  4. 「チャート」を選択して、「次へ」をクリックします。

  5. 「Flashチャート」を選択し、「次へ」をクリックします。

  6. 「表示属性」で、次の変更を行います。

    • 「タイトル」に、Open Issues by Projectと入力します。

    • 「リージョン・テンプレート」で、「チャート・リージョン」を選択します。

    • 「順序」に、10と入力します。

    • 「列」で、「2」を選択します。

    • 次へ」をクリックします。

  7. 「チャート・プレビュー」で、次の編集を行います。

    • 「チャート・タイプ」で、「3D円」を選択します。

    • 次へ」をクリックします。

  8. 「ソース」で、「SQL」に次の文を入力します。

    SELECT 
        'f?p=&APP_ID.:2:&SESSION.:::CIR:IREQ_STATUS,IREQ_PROJECT_ID:Open,'||r.project_id LINK,
        NVL(r.project_name,'No Project') label,
        COUNT(r.project_name) value
    FROM it_issues i, it_projects r
    WHERE i.status = 'Open' AND i.related_project_id = r.project_id
        GROUP BY NULL, r.project_name, r.project_id
        ORDER BY r.project_name, r.project_id
    

    SELECT文は、「Issues」対話モード・レポート(ページ2)にリクエストを送信し、特定のプロジェクト名に属する問題のうち、ステータスがOpenのものを問い合せていることに注意してください。CIRコマンドは対話モード・レポートの消去に使用され、リクエストされたすべての値が問合せに含まれ、除外されたり表示対象外の列に設定されないようにします。

  9. 「データが見つからなかった場合のメッセージ」に、No open issuesと入力します。

  10. リージョンの作成」をクリックします。

「Dashboard」の実行および「Issues」レポートへのリンク

次に、「Dashboard」ページを実行して追加された円グラフ・リージョンを表示し、「Issues」レポートにリンクするプロジェクト名を1つ選択します。

更新された「Dashboard」ページを表示するには、次のステップを実行します。

  1. ページ3の実行」アイコンをクリックします。

    円グラフ・リージョンが追加された「Dashboard」が表示されます。

    図4-12 両方のリージョンが追加された最終的な「Dashboard」

    図4-12の説明が続きます
    「図4-12 両方のリージョンが追加された最終的な「Dashboard」」の説明

  2. 図4-13に示すように、円グラフで「Employee Satisfaction Survey」プロジェクト・リンクを特定します。

    図4-13 「Dashboard」の「Open Issues by Project」円グラフ

    図4-13の説明が続きます
    「図4-13 「Dashboard」の「Open Issues by Project」円グラフ」の説明

  3. Employee Satisfaction Survey」プロジェクト・リンクをクリックします。

    図4-14に示すように、ステータスがOpenであるすべての「Employee Satisfaction Survey」問題を含む「Issues」レポートが表示されます。

    図4-14 Openステータスの「Employee Satisfaction Survey」問題の「Issues」レポート

    図4-14の説明が続きます
    「図4-14 Openステータスの「Employee Satisfaction Survey」問題の「Issues」レポート」の説明

    レポート設定セクションのフィルタに注意してください。「Issues」レポートは、プロジェクトおよびステータスによってフィルタ処理されています。

関連ドキュメント

このトピックおよび関連トピックに関するその他の情報は、次を参照してください。

その他のアプリケーションの例については、Learning Libraryを参照してください。Oracle by Example(OBE)、デモ、チュートリアルなどの無料オンライン・トレーニング・コンテンツを検索します。Oracle Learning Libraryには、次のURLでアクセスできます。

http://www.oracle.com/technetwork/tutorials/index.html