Oracle Application Express 5.0での動的アクションの構築


オプション



開始する前に

目的

このチュートリアルでは、Oracle Application Express 5.0を使用してアプリケーション内のページ上で様々なタイプの動的アクションを作成する方法について説明します。

所要時間

約60分。

概要

Oracle Application Express (Oracle APEX)は、Oracle Database用の迅速なWebアプリケーション開発ツールです。Webブラウザと限られたプログラミングの経験のみを使用して、高速かつセキュアなプロフェッショナル用のアプリケーションを開発およびデプロイできます。Oracle Application Expressは、オンプレミスであってもOracle Database Cloud Service内にあってもOracle Databaseで使用できます。

Oracle Application Express 5.0を使用すると、開発者は、動的アクションを定義することにより、JavaScriptに関する知識がなくてもクライアント側の動作を宣言で定義できます。開発者は、ページ・デザイナ上のプロパティ・エディタで動的アクションのイベント、条件、影響を受ける要素、アクションおよび他のプロパティを定義するだけで、ページのアイテム、ボタンまたはリージョンに対する動的アクションを作成できます。以前は、これにはJavaScriptやAJAXの自作が含まれていましたが、現在、多くの動的アクションでは、Oracle Application Express 5.0でページ・デザイナをすることにより、コーディングの必要はほとんどなくなりました。

このチュートリアルでは、アプリケーション内で作成されたフォーム上で様々なタイプの動的アクションを作成およびテストします。動的アクションの詳細は、『Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド』の動的アクションの管理に関する項を参照してください。

このチュートリアルの実行時には、次の各事項に注意してください。

  • Oracle Application Expressワークスペースへのログイン: Oracle Application Expressワークスペースは、オンプレミスのOracle Database内またはOracle Database Cloud Services内にある場合があります。ログイン資格証明は、ワークスペースが格納されている場所によって異なります。
    • Oracle Database Cloud Service内のOracle Application Expressへのログイン: Oracle Database Cloud Service用のOracleヘルプ・センターを参照してください。これを行うには、クラウド用のOracleヘルプ・センターに移動し、「パフォーマンスおよびインフラストラクチャ」を選択します。ここから、Database Cloud Serviceを選択すると、「スタート・ガイド」ページが開きます。
    • オンプレミスのOracle Application Expressへのログイン: ブラウザで、ワークスペース管理者から提供されたOracle Application Expressワークスペースのオンプレミス・インストールの場所に移動します。
  • アプリケーションID: このチュートリアルのスクリーンショットでは、ぼやけたアプリケーションIDが表示されます。自分のアプリケーションIDは、アプリケーションの作成時に自動的に割り当てられる任意の値です。
  • スキーマ: Database Schema Service内のOracle Application Expressワークスペースにアクセスしている場合、変更できないスキーマ名を持つスキーマが1つ割り当てられています。オンプレミスのOracle Database内のワークスペースにアクセスしている場合、Oracle Application Expressインスタンス管理者からワークスペースに複数のスキーマが割り当てられている場合があります。

必要なもの

このチュートリアルを始める前に次の用意をする必要があります。

  • オンプレミスまたはDatabase Cloud Service内のOracle Database 11g以上のリリースにアクセスできること。
  • Oracle DatabaseにOracle Application Expressリリース5.0がインストールされていること(オンプレミスの場合のみ)。
  • files.zipファイルがダウンロードされて作業ディレクトリに解凍されていること。
  • 少なくとも1つのOracle Application Expressユーザーがプロビジョニングされていること。『Oracle Application Express管理ガイド』の新規ユーザー・アカウントの作成に関する項を参照してください。

データベース・アプリケーションの作成

この項では、その後の各項で様々な動的アクションを作成するために使用する、いくつかの初期ページがあるデータベース・アプリケーションを作成します。次の手順を実行します。
  1. Oracle Application Expressのホーム・ページで、「Application Builder」の横の下矢印をクリックし、「Database Applications」を選択します。

    このイメージの説明
  2. 「Create」をクリックします。

    このイメージの説明
  3. デフォルトのままにして「Next >」をクリックします。

    このイメージの説明
  4. 「Name」として「Human Resources Application」を入力し、「Next >」をクリックします。

    このイメージの説明
  5. 「Next >」をクリックします。

    このイメージの説明
  6. デフォルトのままにして「Next >」をクリックします。

    このイメージの説明
  7. 「Authentication Scheme」として「Application Express Accounts」、「Date Format」として「DD-MON-YYYY」を選択し、「Next >」をクリックします。

    このイメージの説明
  8. 「Create Application」をクリックします。

    このイメージの説明
  9. 「Human Resources Application」が2つのデフォルトのページとともに作成されます。EMP表でフォーム・ページおよびレポート・ページを作成します。「Create Page >」をクリックします。

    このイメージの説明
  10. 「Form」アイコンをクリックします。

    このイメージの説明
  11. 「Form on a Table with Report」アイコンをクリックします。

    このイメージの説明
  12. 「Page Name」および「Region Title」として「Employee List」を入力します。「Breadcrumb」として「Breadcrumb」、「Parent Entry」として「Home (Page 1)」を選択し、「Next >」をクリックします。

    このイメージの説明
  13. 「Table/View Name」として「EMP (table)」を選択し、「Next >」をクリックします。

    このイメージの説明
  14. 「Navigation Preference」として「Identify an existing navigation menu entry for this page」、「Existing Navigation Menu Entry」として「Home」を選択し、「Next >」をクリックします。

    このイメージの説明
  15. すべての列が選択されていることを確認し、「Next >」をクリックします。

    このイメージの説明
  16. 「Next >」をクリックします。

    このイメージの説明
  17. 「Page Name」および「Region Title」として「Employee Details」を入力し、「Next >」をクリックします。

    このイメージの説明
  18. 「Primary Key Type」として「Select Primary Key Column(s)」、「Primary Key Column 1」として「EMPNO (Number)」を選択し、「Next >」をクリックします。

    このイメージの説明
  19. デフォルトのままにして「Next >」をクリックします。

    このイメージの説明
  20. すべての列を選択し、選択したボックスにこれらを移動し、「Next >」をクリックします。

    このイメージの説明
  21. デフォルトのままにして「Next >」をクリックします。

    このイメージの説明
  22. 「Create」をクリックします。

    このイメージの説明
  23. 「Save and Run Page」をクリックします。

    このイメージの説明
  24. 「Log In」画面が表示されたら、Oracle Application Expressの資格証明を入力し、「Log In」をクリックします。

    このイメージの説明
  25. 最初の行の前にある「Edit」アイコンをクリックします。

    このイメージの説明
  26. 次の項では、このフォーム上のアイテムに対していくつかの変更を加えます。開発者ツールバーの「Edit Page 3」をクリックします。

    このイメージの説明

フォーム・ページのアイテムの変更

この項では、フォーム・ページのアイテムに対していくつかの変更を加え、フォームがロードされたときに分かりやすく使いやすい状態で表示されるようにします。次の手順を実行します。
  1. 「Rendering」タブで、「Items」の下の「P3_JOB」をクリックします。

    このイメージの説明
  2. プロパティ・エディタで、「Identification」の下の「Type」として「Select List」を選択します。「List of Values」の下で、「Type」として「SQL Query」を選択し、「Code Editor: SQL Query」アイコンをクリックします。

    このイメージの説明
  3. 「Code Editor - SQL Query」に次のSQL問合せを入力し、「Validate」アイコンをクリックします。

    select distinct job d, job r
    from emp
    order by 1

    このイメージの説明
  4. 「OK」をクリックします。

    このイメージの説明
  5. 「List of Values」の下で、「Display Extra Values」として「No」を選択し、「Save and Run Page」をクリックします。

    このイメージの説明
  6. フォーム上で「Job」が選択リストに変更されています。ページ上の他のアイテムを変更するには、開発者ツールバーの「Edit Page 3」をクリックします。

    このイメージの説明
  7. 「Rendering」タブで、「Items」の下の「P3_ENAME」を選択します。プロパティ・エディタで、「Label」の下の「Label」として「Name」を入力します。

    このイメージの説明
  8. 「Rendering」タブで、「Items」の下の「P3_MGR」を選択します。プロパティ・エディタで、「Label」の下の「Label」として「Manager」を入力します。

    このイメージの説明
  9. 「Rendering」タブで、「Items」の下の「P3_HIREDATE」を選択します。プロパティ・エディタで、「Label」の下の「Label」として「Hire Date」を入力します。

    このイメージの説明
  10. 「Rendering」タブで、「Items」の下の「P3_SAL」を選択します。プロパティ・エディタで、「Label」の下の「Label」として「Salary」を入力します。

    このイメージの説明
  11. 「Rendering」タブで、「Items」の下の「P3_COMM」を選択します。プロパティ・エディタで、「Label」の下の「Label」として「Commission」を入力します。

    このイメージの説明
  12. 「Rendering」タブで、「Items」の下の「P3_DEPTNO」を選択します。プロパティ・エディタで、「Label」の下の「Label」として「Department」を入力します。

    このイメージの説明
  13. 「Rendering」タブで、「Items」の下の「P3_MGR」を選択します。プロパティ・エディタで、「Identification」の下の「Type」として「Select List」を選択します。「List of Values」の下で、「Type」として「SQL Query」を選択し、「Code Editor: SQL Query」アイコンをクリックします。

    このイメージの説明
  14. 「Code Editor - SQL Query」に次のSQL問合せを入力し、「Validate」アイコンをクリックします。

    select ename d, empno r
    from emp
    where job in ('MANAGER','PRESIDENT')

    このイメージの説明
  15. 「OK」をクリックします。

    このイメージの説明
  16. 「List of Values」の下で、「Display Extra Values」として「No」、「Display Null Values」として「Yes」を選択し、「Null Display Value」として「--Select Manager--」を入力し、「Save」をクリックします。

    このイメージの説明
  17. 「Rendering」タブで、「Items」の下の「P3_DEPTNO」を選択します。プロパティ・エディタで、「Identification」の下の「Type」として「Select List」を選択します。「List of Values」の下で、「Type」として「SQL Query」を選択し、「Code Editor: SQL Query」アイコンをクリックします。

    このイメージの説明
  18. 「Code Editor - SQL Query」に次のSQL問合せを入力し、「Validate」アイコンをクリックします。

    select dname d, deptno r
    from dept

    このイメージの説明
  19. 「OK」をクリックします。

    このイメージの説明
  20. 「List of Values」の下で、「Display Extra Values」として「No」、「Display Null Values」として「Yes」を選択し、「Null Display Value」として「--Select Department--」を入力し、「Save and Run Page」をクリックします。

    このイメージの説明
  21. フォーム上のフィールド・ラベルがすべて変更されています。また、「Manager」および「Department」フィールドが選択リストに変更されています。次の項では、このページで動的アクションを作成し、開発者ツールバーの「Edit Page 3」をクリックします。

    このイメージの説明

有効化/無効化宣言動的アクションの作成

この項では、「Job」値が「SALESMAN」と等しい場合のみフォーム上の「Commission」フィールドを有効にする動的アクションを作成します。「Job」が他の値の場合はすべて、「Commission」フィールドは無効になります。次の手順を実行します。
  1. 「Rendering」タブで、「P3_JOB」を右クリックし、「Create Dynamic Action」を選択します。

    このイメージの説明
  2. 新しい動的アクションのプロパティ・エディタで、下記の表に定義されているとおり次のプロパティを設定します。

    プロパティ・グループ プロパティ名 プロパティ値 コメント
    Identification Name JOB EQUALS SALESMAN -
    When Event Change P3_JOB値が変更されるたびに、この動的アクションが実行されます。
    When Selection Type Item(s) 動的アクションは「Items」のP3_JOBから作成されるため、値はデフォルトで設定されています。
    When Item(s) P3_JOB 動的アクションは「Items」のP3_JOBから作成されるため、値はデフォルトで設定されています。
    When Condition equal to P3_JOBの値がSALESMANに変更された場合のみ動的アクションが実行されるようにします。
    When Value SALESMAN P3_JOBの値がSALESMANに変更された場合のみ動的アクションが実行されるようにします。
    このイメージの説明
  3. 動的アクションのプロパティを設定した後、「Event」(「Change」)が発生したときに「条件」(「SALESMAN」と「equal to」)がTrueである場合に実行されるアクションを定義します。「JOB EQUALS SALESMAN」の下の「True」の下で、「Show」をクリックします。

    このイメージの説明
  4. プロパティ・エディタで、「Identification」の下の「Action」として「Enable」を選択します。

    このイメージの説明
  5. 「Affected Elements」の下で、「Selection Type」が「Item(s)」に設定されていることを確認し、「Item(s)」の「List of Values: Item(s)」アイコンをクリックします。

    このイメージの説明
  6. P3_JOBがSALESMANと等しい場合にフォーム上で「Commission」フィールドを有効にします。このため、「Pick Item(s)」ダイアログで「P3_COMM」をクリックします。

    このイメージの説明
  7. また、P3_JOBがSALESMANと等しくない場合にフォーム上で「Commission」フィールドを無効にします。Falseアクションを作成するには、「FALSE」を右クリックし、「Create FALSE Action」を選択します。

    このイメージの説明
  8. プロパティ・エディタで、「Identification」の下の「Action」として「Disable」を選択します。

    このイメージの説明
  9. 「Affected Elements」の下で、「Selection Type」が「Item(s)」に設定されていることを確認し、「Item(s)」の「List of Values: Item(s)」アイコンをクリックします。

    このイメージの説明
  10. 「Pick Item(s)」ダイアログで「P3_COMM」をクリックします。

    このイメージの説明
  11. 「Execution Options」の下のプロパティはデフォルトで設定されています。「Fire On Page Load」が「Yes」に設定されていることを確認し、「Save and Run Page」をクリックします。

    このイメージの説明
  12. 「Job」として「ANALYST」を選択します。

    このイメージの説明
  13. 「Commission」フィールドが自動的に無効になっています。

    このイメージの説明
  14. ここで、「Job」として「SALESMAN」を選択します。

    このイメージの説明
  15. 今回は「Commission」フィールドが自動的に有効になっています。ページ上で別の動的アクションを作成するには、開発者ツールバーの「Edit Page 3」をクリックします。

    このイメージの説明

SQL文を使用した値設定動的アクションの作成

この項では、「Department」フィールドで選択した値に基づいてフォーム内の「Location」および「Number of Employees」フィールドの値を自動的に設定する動的アクションを作成します。次の手順を実行します。
  1. 最初に、フォーム内に「Location」および「Number of Employees」値を表示するために2つの新しいアイテムを作成します。「Rendering」タブで、「Items」を右クリックし、「Create Page Item」をクリックします。

    このイメージの説明
  2. プロパティ・エディタで、次の表のとおりに新しいアイテムのプロパティを設定し、「Save」をクリックします。

    プロパティ・グループ プロパティ名 プロパティ値
    Identification Name P3_LOCATION
    Identification Type Display Only
    Label Label Location
    Settings Save Session State No
    Settings Show Line Breaks No
    Source Type Item
    Source Item P3_LOCATION
    このイメージの説明
  3. 別の表示専用アイテムを作成するには、「Rendering」タブで、「Items」を右クリックし、「Create Page Item」をクリックします。

    このイメージの説明
  4. プロパティ・エディタで、次の表のとおりに新しいアイテムのプロパティを設定し、「Save」をクリックします。

    プロパティ・グループ プロパティ名 プロパティ値
    Identification Name P3_NUM_EMPLOYEES
    Identification Type Display Only
    Label Label Total Employees
    Settings Save Session State No
    Settings Show Line Breaks No
    Source Type Item
    Source Item P3_NUM_EMPLOYEES
    このイメージの説明
  5. 「Dynamic Actions」タブから動的アクションを作成することもできます。「Dynamic Actions」タブをクリックします。

    このイメージの説明
  6. 「Events」を右クリックし、「Create Dynamic Action」を選択します。

    このイメージの説明
  7. 新しい動的アクションのプロパティ・エディタで、下記の表に定義されているとおり次のプロパティを設定し、「Item(s)」の「List of Values: Item(s)」をクリックします。

    プロパティ・グループ プロパティ名 プロパティ値 コメント
    Identification Name Get Department Details
    -
    When Event Change 変更イベントに対して動的アクションが実行されるようにします。
    When Selection Type Item(s) アイテムに対する変更イベントが発生したときに動的アクションが実行されるようにします。

    このイメージの説明
  8. 「Department」フィールドの値が変更されたときにこの動的アクションが実行されるようにします。このため、「Pick Item(s)」ダイアログで「P3_DEPTNO」を選択します。

    このイメージの説明
  9. 動的アクションのプロパティを設定した後、「Event」(Change)が発生した場合に実行されるアクションを定義します。「Get Department Details」の下の「True」の下で、「Show」をクリックします。

    このイメージの説明
  10. プロパティ・エディタで、「Identification」の下の「Action」として「Set Value」を選択します。

    このイメージの説明
  11. 「Settings」の下で、「Set Type」として「SQL Statement」を選択し、「Code Editor: SQL Statement」アイコンをクリックします。

    このイメージの説明
  12. 「Code Editor - SQL Statement」に次のSQL問合せを入力し、「Validate」アイコンをクリックします。

    select d.loc location,count(e.empno) num_employees
    from dept d, emp e
    where d.deptno = e.deptno(+)
    and d.deptno = :P3_DEPTNO
    group by d.loc

    このイメージの説明
  13. 「OK」をクリックします。

    このイメージの説明
  14. 上記で入力したSQL文が正常に実行されるようにするには、上記の問合せでホスト変数として使用されるP3_DEPTNOアイテムを発行する必要があります。「List of Values: Page Items to Submit」アイコンをクリックします。

    このイメージの説明
  15. 「P3_DEPTNO」を選択します。

    このイメージの説明
  16. この動的アクションが実行される際のフォーム内の「Location」フィールドの値を設定します。「Affected Elements」の下で、「Selection Type」が「Item(s)」に設定されていることを確認し、「Item(s)」の「List of Values: Item(s)」アイコンをクリックします。

    このイメージの説明
  17. 「P3_LOCATION」を選択します。

    このイメージの説明
  18. この動的アクションが実行される際のフォーム内の「Total Employees」フィールドの値も設定します。「Item(s)」の「List of Values: Item(s)」アイコンを再度クリックします。

    このイメージの説明
  19. 「P3_NUM_EMPLOYEES」を選択します。

    このイメージの説明
  20. 「Save and Run Page」をクリックします。

    このイメージの説明
  21. 「Cancel」をクリックし、「Employee List」を開きます。

    このイメージの説明
  22. 「Employee List」の最初の行の横にある「Edit」アイコンをクリックします。

    このイメージの説明
  23. 「Employee Details」フォームが開き、編集できます。「Location」および「Total Employees」の値はフォーム上の「Department」フィールドの値に基づいて自動的に設定されています。

    このイメージの説明
  24. 「Department」として「RESEARCH」を選択すると、「Location」および「Total Employees」の値が自動的に変更されます。次の項では、PL/SQLを使用して同様の動的アクションを作成します。開発者ツールバーの「Edit Page 3」をクリックします。

    このイメージの説明

PL/SQLを使用した値設定動的アクションの作成

この項では、ページがロードされるたびにフォーム内の「Bonus」フィールドの値を自動的に計算および設定する動的アクションを作成します。次の手順を実行します。
  1. 最初に、フォーム内に「Bonus」を表示するために新しいアイテムを作成します。「Rendering」タブで、「Items」を右クリックし、「Create Page Item」をクリックします。

    このイメージの説明
  2. プロパティ・エディタで、「Identification」の下の「Name」として「P3_BONUS」を入力し、「Type」として「Number Field」を選択します。「Appearance」の下で、「Format Mask」の「List of Values: Format Mask」アイコンをクリックします。

    このイメージの説明
  3. 「$5,234.10」を選択します。

    このイメージの説明
  4. 「Save」をクリックします。

    このイメージの説明
  5. 「Source」の下で、「Type」として「Item」、「Item」として「P3_BONUS」、および「Used」として「Only when current value in session state is null」を選択します。

    このイメージの説明
  6. 動的アクションを作成するには、「Dynamic Actions」タブをクリックします。

    このイメージの説明
  7. ページがロードされるたびに実行される動的アクションを作成します。したがって、「Page Load」を右クリックし、「Create Dynamic Action」を選択します。

    このイメージの説明
  8. プロパティ・エディタで、「Identification」の下の「Name」として「Calculate Bonus」を入力します。「Event」はすでに「Page Load」として選択されています。

    このイメージの説明
  9. 動的アクションのプロパティを設定した後、「Event」(Page Load)が発生した場合に実行されるアクションを定義します。「Calculate Bonus」の下の「True」の下で、「Show」をクリックします。

    このイメージの説明
  10. プロパティ・エディタで、「Identification」の下の「Action」として「Set Value」を選択します。「Settings」の下で、「Set Type」として「PL/SQL Function Body」を選択し、「Code Editor: PL/SQL Function Body」アイコンをクリックします。

    このイメージの説明
  11. 「Code Editor - PL/SQL Function Body」に次のSQLを入力し、「Validate」アイコンをクリックします。

    declare
    l_multiplier number;
    begin
    -- determine multiplier based on job
    case :P3_JOB
    When 'CLERK' then
    l_multiplier := .1;
    When 'ANALYST' then l_multiplier := .2;
    When 'SALESMAN' then
    l_multiplier := .3;
    When 'MANAGER' then
    l_multiplier := .4;
    When 'PRESIDENT' then
    l_multiplier := .5;
    else l_multiplier := 0;
    end case;
    -- return bonus which is calculated by multiplying salary by multiplier
    return :P3_SAL * l_multiplier;
    END;

    このイメージの説明
  12. 「OK」をクリックします。

    このイメージの説明
  13. 上記で入力したPL/SQLコードが正常に実行されるようにするには、上記のコードでホスト変数として使用されるP3_SALおよびP3_JOBアイテムを発行する必要があります。「List of Values: Page Items to Submit」アイコンをクリックし、「P3_SAL」を選択します。「List of Values: Page Items to Submit」アイコンを再度クリックし、「P3_JOB」も選択します。

    このイメージの説明
  14. この動的アクションが実行される際のフォーム内の「Bonus」フィールドの値を設定します。「Affected Elements」の下で、「Selection Type」が「Item(s)」に設定されていることを確認し、「Item(s)」の「List of Values: Item(s)」アイコンをクリックし、「P3_BONUS」を選択します。「Execution Options」の下で、「Fire On Page Load」として「No」を選択し、「Save and Run Page」をクリックします。

    このイメージの説明
  15. ページがロードされると同時にボーナスの値が計算されて「Bonus」フィールドに表示されます。次の項では、プラグインを使用する動的アクションを作成し、開発者ツールバーの「Edit Page 3」をクリックします。

    このイメージの説明

動的アクションでのプラグインの使用

この項では、プラグインを使用して、フィールドのスタイルを値に基づいて設定する動的アクションを作成します。次の手順を実行します。
  1. プラグインを共有コンポーネントとしてインストールするには、「Shared Components」アイコンをクリックします。

    このイメージの説明
  2. 「Other Components」の下で、「Plug-ins」をクリックします。

    このイメージの説明
  3. このチュートリアルの前提条件に関する項で説明したfiles.zipとともにプラグイン・インポート・ファイルが提供されます。「Import」をクリックします。

    このイメージの説明
  4. 「Choose File」をクリックします。「File Type」が「Plug-in」であることを確認します。

    このイメージの説明
  5. files.zipがダウンロードされている作業ディレクトリに移動し、「item_type_plugin_com_oracle_slider.sql」ファイルを選択します。「Next >」をクリックします。

    このイメージの説明
  6. 「Next >」をクリックします。

    このイメージの説明
  7. 「Install Plug-in」をクリックします。

    このイメージの説明
  8. 「Slider」プラグインがインストールされます。「Edit Page 3」アイコンをクリックします。

    このイメージの説明
  9. 「Rendering」タブで、「Items」の下の「P3_SAL」を選択します。プロパティ・エディタで、「Identification」の下の「Type」として「Slider [Plug-In]」を選択します。

    このイメージの説明
  10. 「Settings」の下で、「Maximum Value」として「50000」、「Step」として「100」を入力し、「Save」をクリックします。

    このイメージの説明
  11. 「Rendering」タブで、「Items」の下の「P3_SAL」を右クリックし、「Create Dynamic Action」を選択します。

    このイメージの説明
  12. プロパティ・エディタで、「Identification」の下の「Name」として「Salary High」を入力します。「When」の下で、「Event」として「Change [Slider]」、「Selection Type」として「Item(s)」を選択します。「List of Values: Item(s)」アイコンをクリックし、「P3_SAL」を選択します。「Condition」として「greater than」を選択し、「Value」として「25000」を入力します。

    このイメージの説明
  13. 動的アクションのプロパティを設定した後、「Event」(Change [Slider])が発生した場合に実行されるアクションを定義します。「Salary High」の下の「True」の下で、「Show」をクリックします。

    このイメージの説明
  14. プロパティ・エディタで、「Identification」の下の「Action」として「Set Style」を選択します。

    このイメージの説明
  15. 「Settings」の下で、「Style Name」として「color」、「Value」として「red」を入力します。「Affected Elements」の下で、「Selection Type」として「JavaScript Expression」を選択します。

    このイメージの説明
  16. 「JavaScript Expression」として「P3_SAL_display」を入力します。P3_SAL_displayは、大文字と小文字が区別されるDOMオブジェクトです。したがって、次のスクリーンショットで指定されているとおり正確に入力するようにしてください。

    注意: スライダの表示値の外観を変更するには、スライダ・プラグインによって生成されるDOMオブジェクト・ツリー内のそのオブジェクトのIDであるP3_SAL_displayを使用してアクセスする必要があります。この命名規則は、スライダ・プラグインに固有のものであり、別のプラグインの場合はまったく異なる場合があります。

    このイメージの説明
  17. イベント条件が満たされたときに実行されるアクションも選択する必要があります。「Salary High」の下で、「False」を右クリックし、「Create FALSE Action」を選択します。

    このイメージの説明
  18. プロパティ・エディタで、「Identification」の下の「Action」として「Set Style」を選択します。「Settings」の下で、「Style Name」として「color」、「Value」として「black」を入力します。「Affected Elements」の下で、「Selection Type」として「JavaScript Expression」を選択し、「JavaScript Expression」として「P3_SAL_display」を入力します。「Execution Options」の下で、「Fire on Page Load」として「No」を選択し、「Save and Run Page」をクリックします。

    このイメージの説明
  19. 「Salary」フィールドがスライダに変更されています。スライダを移動することにより、「Salary」の値が変更されます。

    このイメージの説明
  20. スライダを移動して「Salary」の値を25000より大きくすると、値が自動的に赤色に変更されます。

    このイメージの説明
  21. スライダを再度移動して「Salary」の値を25000より小さくすると、給与値が黒に赤色に戻ります。

    このイメージの説明

ボタンに対する動的アクションの作成

この項では、「Save」ボタンに対する動的アクションを作成することにより、「Save」ボタンをクリックしたときにページが発行され、ページがリフレッシュされるまで「Save」ボタンが無効になるようにします。次の手順を実行します。
  1. 動的アクションを作成する前に、「Apply Changes」ボタンがクリックされたときのフォームの現在の機能を確認します。「Apply Changes」をクリックします。

    このイメージの説明
  2. 変更はデータベースに保存され、従業員リストが再表示されます。編集した行の給与が新しい値で更新されています。また、従業員リストが再表示される前の数秒間は「Apply Changes」ボタンが有効のままになっています。このため、ユーザーが同じボタンを複数回クリックできてしまいます。

    このような状況を回避するために、「Apply Changes」ボタンに対する動的アクションを作成します。編集した従業員の「edit」アイコンをクリックします。

    このイメージの説明
  3. 開発者ツールバーの「Edit Page 3」をクリックします。

    このイメージの説明
  4. 「Rendering」タブで、「Region Buttons」の下の「Save」を右クリックし、「Create Dynamic Action」を選択します。

    このイメージの説明
  5. プロパティ・エディタで、「Identification」の下の「Name」として「Submit Page」を入力します。「Execution Options」の下で、「Event」、「Selection Type」および「Button」の値がすでに移入されています。

    このイメージの説明
  6. 動的アクションのプロパティを設定した後、「Save」ボタンがクリックされた場合に実行されるアクションを定義します。「Submit Page」の下の「True」の下で、「Show」をクリックします。

    このイメージの説明
  7. プロパティ・エディタで、「Identification」の下の「Action」として「Submit Page」を選択します。「Settings」の下で、「Request/Button Name」として「SAVE」を入力します。「Execution Options」の下で、「Fire On Page Load」として「No」を選択し、「Save」をクリックします。

    注意: 「Request/Button Name」に入力した値は、動的アクションを作成するボタンの名前と正確に同じである必要があります。

    このイメージの説明
  8. ページの発行に合せて、クリックされた後の「Apply Changes」ボタンを無効にします。これを実現するには、同じイベントに対して別のTrueアクションを作成する必要があります。「Submit Page」の下で、「True」を右クリックし、「Create TRUE Action」を選択します。

    このイメージの説明
  9. プロパティ・エディタで、「Identification」の下の「Action」として「Disable」を選択します。「Affected Elements」の下で、「Selection Type」として「Button」、「Button」として「SAVE」を選択します。「Execution Options」の下で、「Fire On Page Load」として「No」を選択し、「Save and Run Page」をクリックします。

    このイメージの説明
  10. 「Employee Details」フォームがロードされます。「Apply Changes」をクリックします。

    このイメージの説明
  11. ページが発行された後しばらくして、「Apply Changes」が無効になります。

    このイメージの説明
  12. ページが発行された後、「Employee List」レポートが表示されます。開発者ツールバーの「Application<n>」をクリックします。

    このイメージの説明

概要

このチュートリアルでは、次の操作方法を学びました。

  • フォームおよびレポート・ページとともにデータベース・アプリケーションを作成する
  • フォーム・ページ上のアイテムのプロパティを編集する
  • ページ・アイテム上の有効化/無効化動的アクションを作成する
  • SQL文を使用して値設定動的アクションを作成する
  • PL/SQLを使用して値設定動的アクションを作成する
  • プラグインを使用して動的アクションを作成する
  • ボタンに対する動的アクションを作成する

詳細

クレジット

  • カリキュラム開発者: Anjani Pothula

  • 他の貢献者:Drue Swadener