AI時代におけるOracle FormsからOracle APEXへの変換: APEXスキルへの最新化フォームの概要 (2026/10/01)

AI時代におけるOracle FormsからOracle APEXへの変換: APEXスキルへの最新化フォームの概要 (2026/10/01)

https://blogs.oracle.com/apex/transforming-f2a-skill

投稿者:Monica Godoy | Senior Principal Product Manager

パート1では、AIを活用した近代化ワークフローを使用して、Oracle Formsサンプルアプリケーションの顧客モジュールと注文モジュールを分析しました。このプロセスでは、Forms XMLを検証し、データベースの依存関係を確認し、再利用可能なビジネスロジックを特定し、最新のOracle APEXアプリケーションを構築するための機能要件仕様書、トレーサビリティマトリックス、および近代化レポートを作成しました。

サンプルフォーム

このデモでは、Summit Sample Formsアプリケーション、具体的には以下に示す顧客モジュールと注文モジュールを使用します。

図1. 顧客フォーム
図2.注文書

大まかに言うと、アプリケーションは以下の機能を提供する必要があります。

  • 顧客を検索・管理するための顧客ワークベンチ。
  • 注文の検索と作成を行うための注文ワークベンチ。
  • 選択した注文とその商品を表示する注文詳細ページ。
  • 顧客、注文、注文品目用の引き出し式用紙。
  • 製品別および倉庫別の在庫状況を表示する製品在庫ページ。
  • 支払い検証、出荷日検証、品目番号生成、製品のデフォルト設定、および注文合計金額の計算には、提供されているデータベース関数と手順を使用してください。

前提条件

パート1に記載されている前提条件に加えて、以下のものが必要です。

  • Oracle APEX 26.1環境へのアクセス、またはOCIで無料のOracle AI Autonomous Databaseをダウンロードまたはプロビジョニングしてください。
  • AI コーディング エージェントに APEXlang スキルをインストールしてください。VS Code での Oracle APEX 開発の開始を 参照してください。
  • スキーマメタデータファイルを生成します。
  • このファイルには、フォームで使用されるOracleデータベースのスキーマメタデータ(テーブル、列、データ型、キー、制約、インデックス、およびフォームとデータベースから推論されたビジネスルールなど)が含まれます。このファイルはパート1で生成済みです。
  • Summitサンプルアプリケーションの機能要件ドキュメントを作成します。
  • これは、パート1で作成したAPEXアプリケーションの仕様書です。

機能要件文書を確認する

自然言語で書かれた機能要件文書が手に入ったので、それを見直して要件が完全であることを確認するとともに、最も重要なこととして、ビジネスにとって関連性がなくなったため、改善、簡素化、または廃止できるプロセスを特定してください。

ドキュメントを読み進めていくと、アプリを大幅に改善できる点がいくつか見つかるかもしれません。また、アプリケーションで使用されているAPEXコンポーネントについて、より詳細に把握しておきたい場合もあるでしょう。以下にいくつかの例を示します。

  • ナビゲーションの簡素化

    From>システムは、次のグローバルナビゲーションエントリを提供します。
    – 顧客ワークベンチ
    –顧客ディレクトリ
    – 注文ワークベンチ
    –注文詳細
    – 製品在庫
    – 管理 / 参照データ
    To>システムは、次のグローバルナビゲーションエントリを提供します。
    – 顧客ワークベンチ
    – 注文ワークベンチ
    – 製品在庫
    – 管理 / 参照データ

    スタンドアロンの顧客ディレクトリページは、その機能が顧客ワークベンチに統合されたため削除されました。注文詳細はグローバルナビゲーションから削除されましたが、注文ワークベンチから開かれるコンテキストページとして残っています。
  • 顧客ワークベンチの拡張
    From> システムは、顧客の閲覧とフィルタリングを行うための顧客ワークベンチ ページを提供する必要があります。
    顧客ワークベンチは、国別および営業担当者別の顧客フィルタリングをサポートし、フォームの階層ツリーの動作を APEX ネイティブ フィルター、ファセット検索、またはツリー領域に置き換える必要があります。
    To> システムは、顧客の閲覧、フィルタリング、顧客の作成と更新を行うための顧客ワークベンチ ページを提供する必要があります。顧客ワークベンチは、国別および営業担当者別の顧客フィルタリングをサポートし、フォームの階層ツリーの動作を APEX ネイティブ フィルター、ファセット検索をクラシック レポートに

    置き換える必要があります。要件と、アプリケーションで使用する APEX コンポーネントを明確にしてください。
  • 便利なホームページ
    開始> デフォルトのランディングページでは、顧客検索、注文検索、最近の注文、未処理の注文にすばやくアクセスできるようにします。
    終了> デフォルトのランディングページでは、エンドユーザーにとって便利なダッシュボードを提供します。関連するビジネスデータを表示するには、APEX チャートを使用します。

    これによりアプリケーションのホームページが作成されるため、関連する KPI を備えた便利なダッシュボードを構築するのが理にかなっています。

FormsからAPEXスキルへの近代化

近代化プロジェクトは組織によって異なります。各組織は、複数のモジュールやアプリケーションに適用できる特定のルール、動作、およびガードレールを必要とする場合があります。スキル を取得し、組織のニーズに合わせて調整してください。
近代化スキルは、パート1で作成された機能要件とスキーマメタデータを権威ある入力として扱います。アプリケーションを生成する前に、スキルは以下を含む近代化ワークフローを定義します。

  1. ビジネスプロセス、エンティティ、トランザクション、検証、計算、レポート、およびマスター/ディテール関係を特定します。
  2. これらの要件をデータベーススキーマおよび既存のビジネスロジックと整合させる。
  3. ファセット検索、クラシックレポート、スマートフィルター、インタラクティブレポート、フォーム、ドロワーページ、LOV、検証、計算、動的アクションなどのコンポーネントを使用して、ネイティブなAPEXユーザーエクスペリエンスを設計します。ここでは、組織が最新化するすべてのアプリケーションにおいて、特定のフォームコンポーネントをAPEXにどのように変換するかを定義できます。
  4. キャンバス、ウィンドウ、キーボードトリガー、アラート、ツリーコントロール、ナビゲーション組み込み機能など、フォーム固有の実装詳細は除外します。
  5. 各要件を、その要件に対応するデータベース証拠および対象となるAPEXコンポーネントにリンクするトレーサビリティマトリックスを作成します。
  6. APEXlangを使用してAPEXアプリケーションを生成し、インポートする前にAPEXコンパイラで検証してください。

目標は、Oracle Formsのユーザーインターフェースを再現することではなく、ビジネスプロセスとOracle Databaseへの投資を維持することです。たとえば、Formsのマスター/ディテールモジュールは、

  1. ビジネスプロセスでインライン編集が必要な場合に、マスター/ディテール編集のような操作感を実現します。APEXでは、インタラクティブグリッドで同様の動作を提供できます。
  2. 2段階のページ操作が可能です。ユーザーはワークベンチページで概要を確認し、レコードの閲覧やフィルタリングを行うことができます。レコードを作成または選択すると、詳細ページが開き、親レコードの概要と関連する子レコードが表示されます。APEXでは、ファセット検索ページ、クラシックレポート、ドロワーページを組み合わせて、この動作を実現できます。

このブログ記事では、フォームモジュール内のすべてのマスター/ディテールコンポーネントに対して、2番目のオプションを使用するスキルについて説明します。組織はこのルールをカスタマイズし、独自のユーザビリティおよびガバナンス基準に適合する他の多くのルールを追加できます。

スキル成果

アプリケーション生成が要求され、ワー​​クスペースの入力が判明すると、このスキルは以下の出力ファイルを生成します。

  • .apexlang/application-spec.mdページ、ビジネスワークフロー、検証、ナビゲーション、およびデータベースの依存関係を定義します。
  • .apexlang/app-ux-contract.jsonページ構成、マスター/ディテール関係、アクション、LOV(値リスト)、更新動作、および受け入れテストを定義します。
  • 生成されたAPEXlangアプリケーション
    • application.apx
    • Page .apx files
    • Shared components
    • Navigation and breadcrumbs
    • LOVs
    • Forms and reports
    • Validations, computations, processes, and dynamic actions
  • 検証証拠
    • ローカル検証レポートが利用可能な場合
    • コンパイラ真実監査
    • SQLcl/APEX検証トランスクリプト
    • 実行時プリフライトレポートおよび検証専用レポート
    • 明示的に許可され実行された場合のインポートおよび実行時証拠
条件付き出力
  • 要件が不完全または矛盾している場合の、改良されたFRSまたは要件補足資料
  • 安全な生成が不可能な場合のギャップおよび入力不足レポート
  • 再利用可能なトランザクションビジネスロジックが必要な場合の、オプションのPL/SQLパッケージ仕様と本体
  • 廃止された Forms コンポーネントと組み込み関数の、証拠に基づいた除外リスト

このスキルは、正確な完了状況も報告します。

  • BLOCKED
  • VALIDATED-BUT-NOT-IMPORTED
  • IMPORTED-BUT-NOT-RUNTIME-VERIFIED
  • COMPLETE

スキルを実行する

以下のようなプロンプトでスキルを呼び出すことができます。

Oracle APEXを使用して、顧客および注文のOracle Formsアプリケーションを最新化します。
使用方法:

  • customers-orders-spec.md を機能要件として
  • schema_metadata.md を権威あるスキーマメタデータとする
  • Oracle FormsからApexへの近代化およびAPEXlangのスキル

重要:

  • ワークスペース:<F2A>
  • 完全なAPEXlangアプリケーションを作成し、インポート可能であることを確認してください。
  • アプリ名:顧客と注文アプリ – スキル
  • アプリの作成に要した時間と労力を表示する

アプリをインポートしてテストする

ビデオプレーヤー
00:00
02:00

興味深い発見

1. ナビゲーションメニューのキャッシュをクリアする
ユーザーが顧客ワークベンチから顧客の注文を開き、ナビゲーションメニューから注文ワークベンチに移動すると、顧客コンテキストがキャッシュされたままになります。その結果、ページにはその顧客の注文のみが表示されます。この問題を解決するには、ナビゲーションメニューのエントリにある注文ワークベンチページのキャッシュをクリアしてください。

図3.顧客ワークベンチページ。ユーザーはここで顧客の注文を開くことができる。

2. 外部キーと制約の考慮
APEXでは、テーブル列のソースフォームに外部キーが関連付けられている場合、値のリストが自動的に作成され、それらの値が正しく作成されることはよく知られています。さらに、テーブルS_CUSTOMERにはcredit_rating列に対するチェック制約があり、許可された値は顧客フォームページの選択リストとして自動的に含まれます。

図4. テーブル制約とAPEXアプリでの表現

3. 再利用可能なビジネスロジック
 注文フォームページは、パート1で担当者が特定し、機能要件ドキュメントに記載された関連ロジックを正常に組み込んでいます。出荷日と支払いタイプを検証し、関連商品を含む注文をユーザーが削除できないようにしています。

図5. 注文フォームページの検証

まとめ

その結果は、画面をそのまま変換したFormsアプリケーションではありません。重要なビジネスプロセスを維持したネイティブAPEXアプリケーションです。

  • 顧客は注文状況と常に繋がったままです。
  • 注文情報は商品と紐づけられたままです。
  • 製品選択には、意味のあるデフォルト設定が提供されます。
  • クレジットおよび配送に関する規則は引き続き適用されます。
  • 商品番号は自動的に生成されます。

繰り返し可能な近代化パターンは以下のとおりです。

分析 → 仕様策定 → 調整 → 設計 → 生成 → 検証 → インポート → テスト

このようにして、既存のOracleデータベースへの投資価値を維持しながら、機能要件を最新のOracle APEXアプリケーションへと変換することができるのです。

コメント

このブログの人気の投稿

ミリ秒の問題: BCCグループとOCIが市場データ・パフォーマンスを再定義する方法(AWSに対するベンチマークを使用) (2025/11/13)

Oracle Database 19cサポート・タイムラインの重要な更新 (2024/11/20)

Oracle Enterprise Manager 24aiの概要 (2024/12/18)