Oracle Application Express 3.2を使用した、アプリケーションの作成と実行

 

<このテキストを削除しないでください。これは、ブラウザ実行時に生成される"主要"なトピック一覧のプレースホルダです。>

目的

このチュートリアルでは、Oracle Application Expressを使用して迅速にアプリケーションを開発する方法を示します。

所要時間

約2時間

前提条件

このチュートリアルを始める前に、以下を確認してください。

.

Oracle Application Express 3.2を使用した、データベース・オブジェクトの操作チュートリアルを実行していること

アプリケーションの作成

アプリケーション・フレームワークを作成し、いくつかの初期ページのデフォルト値を設定するには、以下の手順に従います。

.

Oracle Application Expressのホームページで、Application Builderの横にある矢印をクリックし、「Create Application」を選択します。

 

.

Create Application」を選択し、「Next」をクリックします。


.

NameにProject Tasks Applicationと入力します。 Create Applicationはデフォルト値のFrom Scratchのまま「Next >」をクリックします。

 

.

Page NameにHomeと入力して、「Add Page」をクリックします。

 

.

マスター・ディテール・ページ・タイプが表示されます。 マスター・ディテールでは、レポートとフォームを組み合わせた2つのページが作成されます。 Page Typeとして「Master Detail」を選択します。 Subordinate to Pageとして「Home(1)」を、Master Table Nameとして「OBE_PROJECTS」を、Detail Table Nameとして「OBE_TASKS」をそれぞれ選択します。 「Add Page」をクリックします。

 

.

マスター・ディテール・ページが作成されました。「Next >」をクリックします。

 

.

デフォルト値を受け入れて、「Next」をクリックします。

 

.

デフォルト値を受け入れて、「Next」をクリックします。

 

.

アプリケーション全体で使用する日付書式を定義できます。 この日付書式は、アプリケーション内のページを表示または送信する前に、NLS_DATE_FORMATデータベース・セッション設定を変更する際に使用されます。 この書式は、日付を表示するすべてのレポートで使用されます。また、'日付ピッカー(アプリケーションの日付書式を使用)'タイプのフォーム・アイテムでも使用されます。 以下を使用して設定できます。

  1. Application Builder」→「Application Builder Defaults」(Tasksの下)を選択します。 これらは開発者別ではなく作業領域別になっており、アプリケーションの作成ウィザード使用時にデフォルトで使用されます。
  2. Application Builder」→「Create Application Wizard」→「Attributes」ページを選択します。
  3. Application Builder」→「使用するアプリケーション」→「Shared Components」→「Edit Globalization Attributes」を選択します。

使用するアプリケーション用にアプリケーション日付書式を選択し、「Next >」をクリックします。

 

.

Theme 20」を選択し、「Next >」をクリックします。

 

.

Create」をクリックします。

 

.

アプリケーションが正しく作成されました。 「Run Application」をクリックします。

 

.

デフォルトであるApplication Express Authenticationを選択したため、新しいアプリケーションにログインするときは、開発時と同じログイン名を使用する必要があります。 User Nameにobe、Passwordにoracleと入力します。 次に、「Login」をクリックします。

 

.

OBE Projects」を選択します。

 

.

プロジェクト一覧を含むレポートが自動的に作成されます。 いずれかのプロジェクトの左横のEdit「」アイコンを選択して、マスター・ディテール・フォームを表示します。

 

.

マスター・ディテール・フォームが表示されます。 このページで、プロジェクトの詳細、およびプロジェクトに関連付けられたタスクの詳細を編集できます。 また、現在のプロジェクトに新しいタスクを追加することもできます。

詳細リージョンには、Add Rowボタンがあります。 このボタンをクリックすると、保留中の変更がすべて保存され、新しい行が追加されて、プロジェクトに新しいタスクを追加できるようになります。 Delete Checkedボタンもあります。 このボタンは、各タスクの左にあるチェック・ボックスと一緒に使用します。 「Delete Checked」ボタンをクリックすると、"チェック・マークの付いている"すべてのタスクが削除されます。 この機能には、削除確認機能が組み込まれています。すなわち、実際に削除を実行する前に本当に削除してよいかどうかの確認メッセージが表示されます。

プロジェクトの名前を変更して、「Apply Changes」をクリックします。

 

アプリケーション・オブジェクトの編集

マスター・ディテール・フォームはそのままでも実用的ですが、体裁は改良の余地があります。 このトピックでは、ページ・タイトルおよびリージョン・タイトルの名前を変更し、マスター・レポート上のアイテムの形式を変更します。 また、プロジェクト・レポートをPDF形式で出力します。 最後に、ドラッグ・アンド・ドロップ機能を使用して、プロジェクト・ページおよびタスク・ページのアイテムの順序を変更します。 以下の手順を実行します。

.

Edit Page 2」を選択します。

 

.

Regionsの「Report」リンクを選択します。

 

.

PROJECT_DEADLINEの先頭の「Edit」()アイコンをクリックします。

 

.

Column Formattingセクションで、Number/Date FormatフィールドにMM/DD/YYYYと入力し、「Apply Changes」をクリックします。

 

.

Apply Changes」をクリックします。

 

.

PageのEdit Page Attributesアイコン「」をクリックします。

 

.

Nameセクションで、NameにProjectsと入力します。 Display Attributesセクションで、TitleにProjectsと入力します。 「Apply Changes」をクリックします。

 

.

Run」をクリックします。

 

.

PROJECT_DEADLINEの書式が変更されていることを確認します。 RegionのタイトルはOBE_Projectsのままです。 開発者リンク領域で「Show Edit Links」をクリックします。

 

.

Obe Projectsリージョンのタイトルの右横にあるEditアイコン「」をクリックします。

 

.

TitleをProjectsに変更して、「Apply Changes」をクリックします。

 

.

Cancel」をクリックしてPage Regionウィンドウを閉じます。

 

.

ブラウザをリフレッシュして、変更した内容を表示します。 開発者リンクの「Hide Edit Links」をクリックします。

 

.

開発者ツールバーで「Edit Page 2」リンクをクリックします。

 

.

Projectsリージョンの横の「Report」リンクをクリックします。

 

.

Print Attributes」タブをクリックします。

 

.

Enable Report Printingドロップダウン・メニューで「Yes」を選択し、Page AttributesセクションのOrientationドロップダウン・メニューで「Portrait」を選択します。 次に、「Page Header」タブをクリックします。

 

.

Page HeaderにProject Reportと入力し、Alignmentで「center」を選択します。 「Apply Changes」をクリックします。

 

.

Report Printingを有効にしたため、Reportリンクの右側にPrintが表示されている点に注意してください。 「Run」をクリックします。

 

.

レポート下部にPrintリンクが表示されています。 「Print」リンクをクリックします。

 

.

Open with」ラジオ・ボタンをクリックし、「OK」をクリックすると、レポートがPDF形式で表示されます。

注:ライセンス契約を承認します。

印刷サービス機能を使用するためには、Oracle BI Publisherが実行されている必要があります。 BI Publisherが実行されていない場合、エラーが表示されます。 OBEのManipulating Database Objects Using Oracle Application Express 3.2で記載されているとおりに、BI Publisherを開始していない場合は、ターミナルを開いて次のコマンドを入力します。

/u01/app/oracle/product/bipub/oc4j_bi/bin/oc4j -start

 

.

プロジェクト・レポートがPDF形式で表示されます。

 

.

開発者ツールバーで「Edit Page 2」リンクをクリックします。

 

.

>」矢印をクリックして、プロジェクトおよびタスク・ページ(Page 3)のページ定義の項にナビゲートします。

 

.

Page 3のページ定義が表示されます。 このページのアイテムを並び替えるには、「Items」タブをクリックします。

 

.

Itemsセクションで「Drag and drop」アイコンをクリックします。

 

.

Drag and Drop layoutが表示されます。 この直感的なグラフィカル・レイアウトを使用して、このページのアイテムを編集、作成、または削除できます。

 

.

Page 3で、Project PriorityアイテムをProject Deadlineアイテムの上部に表示するために、P3_PROJECT_ PRIORITYアイテムをP3_PROJECT_ DEADLINEアイテムの上部にドラッグ・アンド・ドロップして、「Next>」をクリックします。

 

.

Apply Changes」をクリックします。

 

.

Run」をクリックします。

 

.

Project PriorityフィールドがProject Deadlineフィールドの上部に表示されています。 開発者ツールバーの「Application <n>」リンクをクリックします。

 

値リスト(LOV)の作成

アプリケーションの体裁を改善する別の方法として、LOVを作成する方法があります。 このトピックでは、次のLOVを作成します。

EMPLOYEES 従業員リストを表示する動的LOV。 このLOVは、タスク・リストのAssigned To列に関連付けられます。
STATUSES ステータス・リストを表示する静的LOV。 このLOVは、タスク・リストのStatus列に関連付けられます。
PRIORITIES ステータス・リストを表示する静的LOV。 このLOVは、Projects Master領域のPriority列に関連付けられます。

以下の手順を実行します。

.

3 - Master Detail」ページをクリックします。

 

.

Shared Components列のList of ValuesセクションにあるCreateアイコン「」をクリックします。

 

.

Create List of Valuesで、デフォルト値であるFrom Scratchのまま「Next >」をクリックします。

 

.

NameにEMPLOYEESと入力します。 Typeを「Dynamic」に変更します。 「Next >」をクリックします。

 

.

動的LOVの場合は、ページがレンダリングされるときに実行するSQLを入力する必要があります。 列名を調べるには、Item Finder「」アイコンをクリックします。

 

.

Tables」タブをクリックします。

 

.

OBE_EMPLOYEES」表のリンクを選択します。

 

.

列名をメモしてください。 表示されたSQL文を選択し、クリップボードにコピーしておくことを推奨します。 Item Finderウィンドウを閉じます。

 

.

SQL文を次のように変更して、「Create List of Values」をクリックします。 動的LOVの最初の列は、ユーザーに表示される列です。 2番目の列は、データベースに格納される対応値です。 この2つの列は同じ値になることもあります。

select FIRST_NAME||', '||LAST_NAME d,
    EMPLOYEE_ID r
from OBE_EMPLOYEES
order by 1

 

.

LOVが作成されました。 作成されたLOVは、このページにまだ関連づけられていないため、LOV領域には表示されていないことに注意してください。 さらに、2つの静的LOVを作成します。 再度、Create」アイコンをクリックしてください。

 

.

Create List of Valuesで、デフォルト値であるFrom Scratchのまま「Next >」をクリックします。

 

.

NameにSTATUSESと入力し、TypeとしてStaticが選択されていることを確認して、「Next >」をクリックします。

 

.

Display ValueとReturn Valueに、以下のように入力します。

Display Value Return Value
Closed closed
Open open
On Hold on-hold

Create List of Values」をクリックします。

 

.

STATUSES LOVが作成されました。 フォームのマスター部分に作成するLOVがもう1つあります。そのLOVは、Prioritiesです。 「Create」をクリックします。

 

.

Create List of Valuesで、デフォルト値であるFrom Scratchのまま「Next >」をクリックします。

 

.

NameにPRIORITIESと入力し、TypeとしてStaticが選択されていることを確認して、「Next >」をクリックします。

 

.

Display ValueとReturn Valueに、以下のように入力します。

Display Value Return Value
High 1
Medium 2
Low 3

Create List of Values」をクリックします。

 

.

PRIORITIES LOVが作成されました。 ここで、各LOVをページに関連付けます。 Edit Page 3」アイコンをクリックします。

 

.

Show All」アイコンをクリックすると、すべてのページ・コンポーネントが表示されます。

 

.

Regions領域で、「Report」リンクをクリックします。

 

.

ASSIGNED_TO列の先頭にあるEdit「」アイコンをクリックします。

 

.

Tabular Form Element」セクション・ボタンをクリックします。

 

.

Display Asを「Select List (named LOV)」に変更し、「List of Values」セクション・ボタンをクリックします。

 

.

Named LOVに「EMPLOYEES」を、Display Nullに「YES」を選択し、Null display valueに- None Assigned -と入力します。 「Apply Changes」をクリックします。

 

.

STATUS列の前にあるEdit「」アイコンをクリックします。

 

.

List of Valuesセクション・ボタンはすでに選択されているはずです。 Named LOVに「STATUSES」を、Display Nullに「Yes」を選択し、Null display valueに- No Status -と入力します。 「Tabular Form Element」セクション・ボタンをクリックします。

 

.

Display Asとして「Select List (named LOV)」を選択し、「Apply Changes」をクリックします。 「Apply Changes」をクリックします。

 

.

ページを再実行して結果を表示します。 Run Page 3」アイコンをクリックしてください。

 

.

Assigned Toのドロップダウン・リストを選択します。 動的LOVが実行され、従業員リストが表示されます。

 

.

Statusのドロップダウン・リストを選択します。 静的LOV値が表示されます。

 

.

次に、PRIORITIES LOVを、ページのマスター領域のPriorityアイテムに割り当てる必要があります。 「Edit Page 3」をクリックします。

 

.

Page RenderingセクションのItems」アイコンをクリックします。

 

.

P3_PROJECT_PRIORITY」を選択します。

 

.

Display Asフィールドの「Radio」リンクを選択し、「LOV」セクション・ボタンをクリックします。

 

.

Named LOVで「PRIORITIES」を選択し、Number of Columnsに4を入力し、Display Nullsで「Yes」を選択して、Null display valueとしてNoneを入力します。 「Apply Changes」をクリックします。

 

.

Run」をクリックします。

 

.

Priorityフィールドは、LOV値が設定されたラジオ・グループになっています。 開発者リンクの「Edit Page 3」をクリックします。

 

アイテム検証の追加

ユーザーに、今日より前の日付を入力させたくないといった場合があります。 こうしたタイプのチェックを実行するには、アイテム検証を使用します。 以下の手順を実行します。

.

Page 3のValidationsセクションにあるCreate」アイコンをクリックします。

 

.

Item Level Validationが選択されていることを確認して、「Next >」をクリックします。

 

.

P3_PROJECT_DEADLINE」アイテムを選択し、「Next >」をクリックします。

 

.

Validation Methodとして「SQL」を選択し、「Next >」をクリックします。

 

.

PROJECT_DEADLINEが検証エラーになる条件を指定するため、「SQL Expression」を選択し、「Next >」をクリックします。

 

.

Validation NameにP3_PROJECT_DEADLINEと入力してから「Next >」をクリックします。

 

.

ValidationにTO_DATE(:P3_PROJECT_DEADLINE,'MM/DD/YYYY') >= SYSDATEを、Error MessageにDate needs to be greater than todayを入力して、「Next >」をクリックします。

 

.

Condition Typeとして「Request Is Contained within Expression1」を選択し、Expression1にSAVE, CREATEを入力します。 次に、「Create」をクリックします。

 

.

これで、検証が正しく作成されました。 「Run」をクリックします。

 

.

日付を今日より前に変更し、「Apply Changes」をクリックします。

 

.

アイテム(またはフィールド)エラー・メッセージとページ通知メッセージが表示されます。 これは、検証を作成するとき、両方のメッセージを表示するように指定したからです。

 

.

開発者ツールバーの「Application <n>」リンクをクリックします。

 

まとめ

このチュートリアルで学習した内容は、以下のとおりです。

Hardware and Software Engineered to Work Together 会社情報 |オラクルとサン | Oracle RSS Feeds | 採用情報 | お問い合わせ | サイトマップ | 情報保護基本方針 | ウェブサイトのご使用条件 | 個人情報保護基本方針