製品
ソリューション
顧客事例
サービス
ORACLE
事例に見るWebシステムのポイント
第3回 Oracle Forms(Developer)
クライアント・サーバーからWebへ

OracleDirectでは、電話やWebを通じて多くのお客様から寄せられたお問合せに、ご回答をしたり解決策を提案しています。

今回は、そのなかでも最近お問合せが増えているOracle Forms(旧称 Oracle DeveloperのForms)に焦点をあて、Webへの移行方法、メリット、注意点など事例をまじえてご紹介します。

Oracle Formsとは?

Oracle Formsは、Oracle Databaseのパフォーマンスをフルに引き出すOracle純正のビジュアル開発環境です。PL/SQLを開発言語とし、短期間でアプリケーションを構築できる統合的な開発環境のもとで「データを問い合わせる」「挿入/更新する」などといった操作がおこなえます。また、複数のユーザー間でのトランザクション管理をする場合、開発者によるコーディングは必要とせず、アプリケーションが自動的におこないます。さらにウィザードによる開発支援などと相まって、非常に速いデータベース・アプリケーションの開発が提供できるのです。

最近は、Oracle Developer Suiteに統合され、露出が減ったためか「今後Oracle Formsは継続していくのですか?」という質問を受けることもありますが、ご心配の必要はありません。クライアント・サーバーの形式からWebのインタフェースへと進化し、Webでリッチクライアントを実現するために機能拡張を続けています(図1)。

図1
図1:Oracle Application Server Forms Servicesアーキテクチャ
クライアント・サーバーからWebへ

お客様にWeb化の理由をうかがうと「クライアント・サーバーでの運用コスト、とくにアプリケーションを各クライアントに配布するような運用にかかる時間/コストを削減したい」という点がもっとも多いようです。Web化することでシングル・サインオンの機能や、Javaを使った機能拡張、Oracle Formsが実現している新しい技術を取り入れることも可能になります。

さらに移行を希望されている方に、現在使用しているOracle Developerのバージョンをお尋ねすると、Oracle Developer/2000(R1.x、R2.x)からOracle Developer6、6iが多くあげられます。またクライアントのOSではWindows 95かWindows 98を、Oracle DatabaseはOracle7かOracle8を使用中とのことです。おそらくそれぞれ導入から4年ほどが経過して、ハードウェアやソフトウェアを更新する時期にきているのだと思います。

Webへの移行は簡単

開発環境のバージョンアップでは、苦労をされた方も多いと思います。一例をあげるとMicrosoft Visual Basicで作成したアプリケーションをバージョンアップする際、苦労したという話をよく耳にします。そのような経験からか、アプリケーションの開発環境のバージョンアップは「一筋縄ではいかないのでは?」といった錯覚を起こす方が多いようです。ましてクライアント・サーバーからWebに移行する時は、その不安が大きくなるのは当然といえるかもしれません。

ところが、そのような“錯覚”を嘘だと思わせるほど、Oracle DeveloperをWeb化させる作業はとても簡単なのです。実際にOracleDirectで支援したOracle DeveloperのWeb移行では、よほど外部ライブラリを開発(User exitなど、Office連携)していない限り、大きな問題に直面することは少ないようです。

具体的な移行方法は「Forms Builder、Forms Compilerで該当モジュールをコンパイルする」だけです。この作業のあと、既存のソースコードとコンパイル時に生成するコードを比較して修正します。その際に通常修正が必要になるケースについては、ドキュメントが公開(後出URL参照)されています。また、ソース・コードをまったく修正せずに動作している事例もあります。

このように、移行自体はとても簡単ですが、いくつか注意が必要なポイントがあります。

移行時の注意点

まず、バージョンアップ時の注意点として、移行時にコンパイルをおこなってください。バージョンの互換性がないコードは、プログラムがチェックをおこなう仕組みになっています。ただし、100%自動変換ではないので一部ソース・コードをチェックする必要があります。また、移行時にはクライアント・サーバーからWebへの機能的な変更点に注意を払ってください。

詳しくはhttp://otn.oracle.co.jp/products/forms/に掲載している以下のドキュメントを参照してください。

  • 「Oracle Developer 6i 移行ガイド」
  • 「Oracle9i Formsクライアント・サーバーからWebへの移行」
  • 「Oracle9i Forms 廃止される機能」
Webに移行したあとは...

クライアント・サーバーのアプリケーションをWebへ移行すると、次のような画面になります(図2)。

図2
図2:クライアント・サーバーからWebへ移行

ご覧のとおり、見た目はほとんど違いがありません。エンド・ユーザーは、アプリケーションの使い方を再度習得することなく、そのまま新しいWebシステムを利用できます。また通常のWebアプリケーション=HTMLアプリケーションでは、HTMLという制限を考慮しアプリケーションの再構成が必要になりますが、Oracle Formsではその必要はありません。Webブラウザ上のJava Appletとしてリッチクライアント・アプリケーションを実現していくので、開発者はHTMLの枠にとらわれない、きめの細かいユーザー・インタフェースをWebで実現できるのです。

最後に

クライアント・サーバーのOracle Formsから、Webへの移行を検討している場合は、おもに次の2点のメリットとデメリットを再考察してください。

  1. J2EEのHTMLアプリケーション(もしくはほかのテクノロジー)として一から作り直す
  2. Oracle FormsをそのままWebにする

システム全体としてみた場合のパフォーマンスは、Oracle FormsでもJ2EEでも大差はありません。通信量はむしろOracle Formsのほうが少なくなります。つまり、現行のクライアント・サーバーのOracle Formsによるシステムを多大な工数を費やしてまで、J2EEにすべて書き換えるという業務的な必然性があるのか、十分に検討する必要があるでしょう。

  • 開発言語をJavaに統一したい
  • Java/J2EE の一般的開発スキルをつけたい
  • HTMLベースの端末やモバイル機器のクライアントに対するアプリを組みたい

これらにYESである場合、Oracle Formsの選択は適切ではありません。一方NOである場合は、新しい言語を習得し、一からアプリを書き直す多大なコストやリスクを犯してまでOracle Formsからほかのテクノロジーへ移行する必要はないと思われます。

移行については、上記のようにさまざまな点を考慮する必要があります。移行をご検討される際は、まずはOracleDirectへご相談ください。


長谷川 純也(はせがわ じゅんや)
OracleDirect アプリケーション・サーバー系 エンジニア
最新情報をお伝えしていきますので、ご期待ください。 趣味:フットサル 愛読書:プロゴルファー猿(大人になってワイルドになっています)

お問い合わせ先
OracleDirect TEL 0120-155-096
http://www.oracle.co.jp/contact/
目次へ戻る >>