ヘッダーをスキップ
Oracle® Application Expressアプリケーション移行ガイド
リリース3.2
B53790-03
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

2 移行プロセスの概要

Oracle Formsから変換するか、Microsoft Accessから移行するかに関係なく、Oracle Application Expressのアプリケーション移行は、変換プロジェクトを開始するための有効なツールです。このセクションでは、ツールの機能概要と、変換プロジェクトを開始する前に確認する必要がある重要な情報について説明します。

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

Oracle Application Expressに移行する理由

Oracle Formsのモダナイゼーション・プロジェクトは、レガシー・アプリケーションをOracle Databaseの最新バージョンに変換する場合に開始され、これによってユーザー対話性とWeb2.0の機能性の向上に対するユーザーの要求に応えることができます。

Microsoft Accessには管理性において様々な問題があります。単純なアプリケーションの多くが、規模と複雑性を増し、ミッション・クリティカルなものへと変化します。これらの同一のアプリケーションがネットワーク全体に散在するため、メンテナンス、バックアップ、セキュリティ、アクセスによるコストと非一貫性を増大させます。Microsoft AccessをOracleのデータベースに移行する主要な理由の1つは、データを整理統合し、単一のデータソースに基づく共通アプリケーションを作成することです。

Oracle Application Expressに移行することにより、堅牢かつスケーラブルでセキュアなアプリケーション開発ツールを利用することができるため、Oracle Databaseのすべての利点が得られます。Oracle Application Expressは、Webブラウザのみを必要とし、開発、デプロイまたは実行のためのクライアント・ソフトウェアは必要ありません。生成されるWebページはハイパーテキスト・マークアップ言語(HTML)で表示されます。Oracle Application Expressの開発環境には、対話モード・レポートやFlashチャートなど、そのまま使用できる機能が多数用意されており、ユーザーの対話性を大きく向上させるWebアプリケーションを、迅速にデプロイすることができます。

変換プロセスを開始する前に

変換プロジェクトを開始する前に、Oracle Application Expressによるアプリケーションの作成方法を知る必要があります。最初のステップは、Oracle Application ExpressをOracle Databaseインスタンスにインストールすることです。Oracle Application Expressには、リリース9.2.0.3以上のOracle Databaseが必要です。詳細は、Oracle Application Expressインストレーション・ガイドを参照してください。既存のOracle Database表を使用してアプリケーションを作成する方法については、『Oracle Database Application Express 2日で開発者ガイド』を参照してください。

Oracle Application Expressの開発環境は、宣言型環境のウィザードを利用し、SQLおよびPL/SQLを使用して容易にコンポーネントを拡張できます。JavasScriptおよびAsynchronous JavasScript+XML(AJAX)を組み込むことによって、さらにOracle Application Expressのフレームワークを強化できます。詳細は、「ビジネス・ロジックの実装」を参照してください。

変換するかアプリケーションを最初から作成するかの評価

Oracle Application Expressでは、短時間で新規にアプリケーションを作成できるため、ソース・アプリケーションの定義をOracle Application Expressの変換プロジェクトにロードして初期設計を生成するよりも、アプリケーションを最初から作成する方が早いように思われるかもしれません。

アプリケーションを最初から作成するよりも、既存のアプリケーションを変換する方が多くの利点があります。元のアプリケーションのソース・ファイルをOracle Application Expressプロジェクトにロードすると、Oracle FormsやMicrosoft Accessを参照し直さなくても、必要な情報をすべての開発者が確認できます。ソースのツール開発環境に精通する必要はありません。

また、フォーム、レポートおよび問合せを変換プロジェクトにロードすることにより、古いアプリケーションで利用されていた機能およびアプリケーション・ロジックを簡単に確認することができます。これらのコンポーネントをOracle Application Expressアプリケーションの生成に使用しない場合でも、基礎となるSQLを表示、コピーおよび再利用することができます。

Oracle Formsを変換することのもう1つの大きな利点は、変換を追跡し、新しいアプリケーションにすべてのビジネス・ロジックを完全に実装することを確認できることです。変換プロジェクトで注釈を利用することにより、任意のコンポーネントに対して、優先度およびリソースの割当て、注意やタグの追加を行うことができます。変換の進捗を追跡できることで、簡単なプロジェクト管理機能を利用できます。

Oracle Application Expressでアプリケーション変換されないものについての理解

アプリケーションをOracle Application Expressに変換する場合、ソース・ファイルをロードして数個のボタンを押すだけで完全なアプリケーションが生成されるわけではありません。変換機能は、元のアプリケーションを完全に複製するように拡張する必要がある初期設定を提供するように設計されています。生成済アプリケーションでは、Oracleの既存の表またはビューからアプリケーションを作成するために使用するものと同じ「アプリケーションの作成」ウィザードを使用します。ただし、生成されるページを指定する必要はなく、それらは変換プロジェクトにロードされた情報によって決定されます。生成された様々なソース・コンポーネントの詳細は、「Oracle Formsの生成機能および代替方法」を参照してください。

初期設計を生成した後、Oracle Application Expressによる簡単なアプリケーション開発の機能を活用して、生成されたページを拡張します。また、組込みのウィザードで必要に応じてページやリンクを新規に追加することによって、このアプリケーションを簡単に拡張することができます。

Oracle Application Expressとの重要な違い

Oracle Application Expressと、Oracle FormsまたはMicrosoft Accessとのいくつかの重要な違いを理解しておくことは、アプリケーションを再開発する場合に非常に役に立ちます。

このセクションの構成は次のとおりです。

ステートレスなWebアプリケーション

Oracle Application Expressでは、クライアント(Webブラウザ)とデータベースとの間に一定のステートが保持されるのではなく、ステートレスなトランザクションが実行されます。データベース・セッションは、ページのリクエスト時または送信時にのみ利用されます。Oracle Application Expressは、論理的なトランザクション(レコードの更新時など)が開始されてから終了されるまでステートレスであるため、ペシミスティック・ロックではなくオプティミスティック・ロックが使用されることになります。

Oracle FormsおよびMicrosoft Accessでは、ペシミスティック・ロックが使用されるため、ユーザーからレコードの更新がリクエストされると、そのレコードはロックされます。このロックは、そのレコードの処理が完了(コミット)するか、または取り消される(ロール・バック)されるまで保持されます。ステートレスなWebアプリケーションでペシミスティック・ロックが使用されない主な理由の1つは、トランザクションの途中でユーザーがWebブラウザを閉じるか、接続が失われた場合、そのレコードがロックされたままになるためです。

「アプリケーションの作成」ウィザードまたは「ページの作成」ウィザードでフォーム・ページを生成すると、行の自動フェッチと行の自動処理のプロセスが生成されます。これには、オプティミスティック・ロックを施行するMD5チェックサムの検証が組み込まれています。レコードが更新または削除されてデータベースに送られる前に、最初に作成されたMD5と現在のデータベース・レコードのMD5の値が比較されて、両者が同一であることが確認されます。これらが異なる場合は、そのデータベース・レコードは問い合されてから更新されており、ユーザーにエラーが表示されます。

HTMLアプリケーションの1つの特徴は、ユーザーがページと対話するときに、表示されるページが、検証やフィールドの表示、非表示などのアクションを実行しないことです。検証は、ユーザーがページを処理するために送信したときに実行されます。ただし、このデフォルトの動作は、JavaScriptおよびAJAXを利用して変更することができます。ページのロードに必要な時間は、転送速度と、そのWebブラウザのページ表示速度の影響を受けます。そのため、クライアント側の対話性をすべてHTMLアプリケーションに複製することはお薦めしません。ページの重さ(サイズ)とそのページのパフォーマンスは相反するからです。クライアント側のアクションはクリティカルなもののみを実装することをお薦めします。

ユーザー・インタフェース設計の評価

Oracle FormsとMicrosoft Accessでは、ユーザーへの画面の表示に、異なる基盤テクノロジが使用されています。他方、Oracle HTTP Serverでは、WebブラウザでHTMLが表示されます。そのため、画面およびアイテムの設計仕様は大きく異なります。

画面設計を考える際、Oracle Formsでよく使用される画面レイアウトのいくつかは、Oracle Application Expressで再作成できません。Oracle Application Expressでは、完全なHTMLページは表示されますが、ウィンドウおよびキャンバスの概念はサポートされていません。また、Oracle Application Expressには、表形式はページごとに1つまでという制限があります。そのため、元のアプリケーションの画面レイアウトを正確に再現することが困難であることを理解しておく必要があります。このことは、いくつかの重要なビジネス・プロセスを設計し直すことによってこれらを合理化したり、より柔軟性のある別のプロセスを組み込むための機会にもなります。

たとえば、Oracle Formsでは一般的なレイアウト(マスター・ディテール・ディテールのフォームなど)は、各ディテール・ビュー(ディテールを編集するための個別ページにリンクしている)のレポートを含むマスター・フォームを使用して再デプロイすることができます。また、これらの同じディテール・ページには、アプリケーションのどこからでも簡単にアクセスすることができます。

Oracle Formsでは、多くの場合、レコードの問合せと、その後に単一のレコードを一度に更新する場合の両方に同じ画面が使用されます。このことは、単一レコードの更新に使用されるフォーム上で、問合せを直接実行することで実現されます。Oracle Application Expressでは、Enter Query and Execute Queryの概念がサポートされていません。そのため、変換プロジェクトでは、単一レコードを編集するためのフォームへのリンクからレコードを問い合せられる対話モード・レポートが生成されます。

Oracle Application Expressでは、ページのフィールドの位置を連動して簡単に決める機能はサポートされず、ラベルやアイテムのような要素の設計にはHTMLを使用します。アイテムには、HTML表内の表示位置を決めるための属性(新しい行、新規フィールド、列スパンおよび行スパン)を指定することができます。

ビジネス・ロジックの複製について

Oracle FormsまたはMicrosoft Accessのいずれかから変換する際の、主要な側面の1つは、ビジネス・ユーザー・インタフェースに固有のロジックを複製することです。ビジネス・ロジックとユーザー・インタフェースを操作するロジックを切り離すことが重要です。ユーザー・インタフェースの実装に違いがあるとしても、元のアプリケーションの大部分の関連ロジックは、問題になりません。Oracle Application Expressは、プロセス、演算、検証を使用してビジネス・ロジックを実装します。Oracle Application Expressのアイテム定義のデフォルトおよびソース値を利用することによって、複製できるロジックもあります。

新しいアプリケーションを正しく動作させるために重要な点は、その機能がそれぞれいつどのように動作するかを理解することです。Oracle Application Expressの任意のコンポーネント(リージョン、アイテム、ブランチ、プロセス、計算および検証)に対して条件付きロジックを追加できるため、元のビジネス・ロジックを再現する際の柔軟性も大きくなります。詳細は、「ビジネス・ロジックの実装」を参照してください。

Oracle Application Express移行プロジェクトの作成

Oracle Formsの変換プロジェクトでは、データ構造はOracle Databaseで定義済であるため、移行する必要はありません。ただし、Microsoft Accessの場合は、最初にSQL Developerを使用してデータ構造およびデータをOracleに移行する必要があります。データ構造の移行方法の詳細は、「Microsoft Accessアプリケーションを移行する方法」を参照してください。

データ構造をOracle Application Expressで利用可能なスキーマに正しく実装した後、変換を実行する基本プロセスによって、ソース・アプリケーションのファイルがプロジェクトにロードされます。プロジェクトは、利用可能なすべてのコンポーネントを表示し、初期のアプリケーション設計を生成することができるように設計されています。プロジェクトのコンポーネントを確認し、必要な画面、レポートおよびアイテムが含まれるように選択すると、Oracle Application Expressアプリケーションを生成することができます。Formsの変換プロジェクトとAccessの移行プロジェクトの両方について、プロジェクトにロードしたコンポーネントが生成されないことがあります。生成機能および対処については、「Oracle Formsの生成機能および代替方法」を参照してください。