プライマリ・コンテンツに移動
Oracle® Forms Oracle Forms 6iからOracle Forms 12cへのアップグレード
12c (12.2.1.3.0)
E90223-01
目次へ移動
目次

前へ
前へ
次
次へ

2 Oracle Forms Migration Assistantの使用について

Oracle Forms Migration Assistantを使用して、Forms 6iアプリケーションをOracle Forms 12cにアップグレードします。

この節の内容は以下のとおりです。

2.1 Oracle Forms Migration Assistantについて

Oracle Forms Migration Assistantは、PL/SQLコードの更新および廃止されたコードの用法のリスト、廃止された機能に直面した場合の警告および他の機能の提供を支援します。

Oracle Forms Migration Assistantは、PL/SQLコードの廃止された用法を更新することによって、Forms 6iアプリケーションをOracle Forms 12cにアップグレードできるようにします。このツールは、必要な変更を自動的に適用できない場合、警告を発行します。このツールには、コマンドラインとウィザード・バージョンがあります。Oracle Forms Migration Assistantでは、すべてのFormsモジュール・タイプ(オブジェクト・ライブラリとPL/SQLライブラリを含む)に次の処理が実行されます。

  • 必要に応じて、次のようにPL/SQLコードを更新します。

    • Reportsのコールに使用する場合に、RUN_PRODUCTをRUN_REPORT_OBJECTビルトインに更新します。

    • CHANGE_ALERT_MESSAGEをSET_ALERT_PROPERTYビルトインに更新します。

  • 廃止されたコードの用法をリストとして表示します。これには、アップグレードできる同等のコードがないためにツールで変更できないコードも含まれます。その場合、次のような処理も行います。

    • ITEM_ENABLEDなどの廃止されたビルトインが実行時に使用されると、警告を発行します。

      注意:

      Oracle Forms Migration Assistantはビルトインを置換し、コードのコメント内に存在するビルトインに関する警告を発行します。

  • 廃止された項目タイプがコードに含まれている場合など、廃止された機能が見つかった場合に警告を発行します。

  • 不適切なレベルで定義されているトリガーについての警告を発行します。

  • 単純に1対1で対応するコード文字列を置換します。たとえば、OHOSTをHOSTに、MENU_CLEAR_FIELDをCLEAR_ITEMに、MENU_FAILUREをFORM_FAILUREに置換します。

  • より複雑な置換を実行します。たとえば、CHANGE_ALERT_ MESSAGEをSET_ALERT_PROPERTYビルトインに、DISABLE_ITEMをSET_MENU_ITEM_PROPERTYビルトインに、ITEM_ENABLEDをGET_ ITEM_PROPERTYビルトインに、ENABLE_ITEMをSET_MENU_ITEM_ PROPERTYビルトインに置換します。

  • V2スタイルのトリガーが見つかった場合に、Formモジュールのログに警告を記録します。

  • 廃止されたオブジェクト・タイプに関連するビルトイン(VBX.FIRE_EVENT、VBX.GET_ PROPERTY、VBX.GET_VALUE_PROPERTYなど)が見つかった場合に、Formモジュールのログに警告を記録します。

Oracle Forms Migration Assistantはバッチ・モードで実行します。必要に応じてユーティリティに再度入ると、アップグレード・プロセスをFormsアプリケーションで複数回実行できます。Migration Assistantのウィザード・バージョンを使用して、複数のモジュールをアップグレードすることもできます。

converter.propertiesファイルを編集すると、バッチ移行を開始する前にオプションを設定できます。search_replace.propertiesファイルを編集すると、Oracle Forms Migration Assistantで検索して置換する文字列を指定すると共に、廃止されたビルトインが見つかった場合に発行する警告を編集できます。

このツールではログ・ファイルが作成されるので、アプリケーション内で問題のある領域に移動して、手動で修正を加えることができます。

2.1.1 複数ログのサポート

Forms Migration Assistantでは、すべてのログ情報を1つのログ・ファイルに書き込むことも、複数のログ・ファイルにわたって書き込むこともできます。Forms Migration Assistantのログ・ファイルが複数にわたる場合、処理されるモジュールごとに個別のログ・ファイルが生成されます。

Forms Migration Assistantでログ・ファイルの書込みに使用されるディレクトリを指定する必要があります。生成されるログ・ファイルの名前はmodulename_moduletype.logです。

たとえば、test.fmbという名前のモジュールを処理する場合、ログ・ファイルの名前はtest_fmb.logになります。アップグレード対象としてtest.fmbtest.mmbを選択しても、Formsの移行ウィザードでログ・ファイルが上書きされることはありません。ただし、2つの異なるディレクトリから2つのtest.fmbモジュールを選択して変換した場合、ログ・ファイルは上書きされます。Forms Migration Assistantでは、test_fmb.logとtest_mmb.logの2つのログ・ファイルが生成されます。

2.2 converter.propertiesファイルの編集

アップグレード・オプションを変更するには、テキスト・エディタでconverter.propertiesファイルを編集します。

次のアップグレード・オプションを設定できます。

表2-1 Forms Migration Assistantのconverter.propertiesファイルのオプション

オプション 説明

Log File Name(default.logfilename)

ログ情報を格納するファイル名と場所を指定します。

Reports Queue Table Installed(default.usequeuetables)

これらのキュー表は、Webベースのレポートを使用する際に、キューに格納されたレポートおよび処理されたレポートの監視に役立ちます。このキュー表をOracle Forms Migration Assistantで使用すると、アプリケーション・スキーマへのインストール時に詳細なエラー・メッセージが発行されます。(たとえば、PL/SQLがコンパイルされていないためにレポートを実行できない場合、キュー表を使用して、すべてのエラー・メッセージの問合せを行うことができます。)生成されたレポートは自動的に印刷されます。

「パフォーマンス分析ツール」を参照してください

Reports Servlet Directory(default.servletdir)

Web上でレポートを実行するときに使用するReportsサーブレットについて、その仮想パスに対して定義されている名前を指定します。この設定は、Run_ProductコールをRun_Report_Objectに変換するときに必要です。

Reports Servlet Name(default.servletname)

Web上でレポートを実行するときに使用するReportsサーブレットの名前を指定します。この設定は、Run_ProductコールをRun_Report_Objectに変換するときに必要です。

Reports Server Host(default.reports_servername)

Reportsサーバーを実行するシステムの名前またはIPアドレス。この設定は、Run_ProductコールをRun_Report_Objectに変換するときに必要です。

DESTYPE (default.destype)

レポート出力を受信するデバイスのタイプ。「配布XMLファイルの要素」を参照してください。

DESFORMAT (default.desformat)

DESTYPEがFILEである場合に使用されるプリンタ・ドライバ。「コマンドライン・キーワード(ACCESSIBLEからDESTYPE)」を参照してください。

DESNAME (default.desname)

レポート出力の送信先であるファイル、プリンタ、電子メールIDまたは配信リストの名前。「コマンドライン・キーワード(ACCESSIBLEからDESTYPE)」を参照してください。

Reports Server Host(default.reportshost)

Reportsサーバーを実行するシステムの名前またはIPアドレス。この設定は、Run_ProductコールをRun_Report_Objectに変換するときに必要です。

2.3 search_replace.propertiesファイルの編集

search_replace.propertiesファイルには、Oracle Forms Migration Assistantで検索して置換する文字列が含まれます。また、警告の対象となる廃止されたビルトインのリストも含まれます。

検索と置換を行う文字列の追加

search_replace.propertiesファイルを編集して、次のように固有のsearch-and-replace文字列を追加できます。
  1. テキスト・エディタでsearch_replace.propertiesファイルを開きます。
  2. 検索と置換を行う文字列のリストの末尾に移動します。
  3. 次の構文を使用して、検索と置換を行う文字列を追加します。
    SearchString|ReplaceString
    
    
  4. search_replace.propertiesファイルを保存します。

2.3.1 廃止されたビルトインに関する警告の変更

ビルトインに関する警告には、次の構文が使用されます。

<class>.Message=<WarningMessage>
<class>.Warning1=<BuiltIn1>
<class>.Warning2=<BuiltIn2>
<class>.Warning3=<BuiltIn3>
etc.

たとえば、obsoleteMenuParamクラスの場合、警告は次のようにコーディングされます。

obsoleteMenuParam.Message=Menu Parameters are no longer supported, the parameter and usage of %s should be replaced using a Forms parameter or global variable.
obsoleteMenuParam.Warning1=MENU_PARAMETER
obsoleteMenuParam.Warning2=QUERY_PARAMETER
obsoleteMenuParam.Warning3=TERMINATE

<class>は、共通の警告を持つビルトインのグループです。<WarningMessage>には、変数文字列(%s)を1つ含めることができます。

Oracle Forms Migration Assistantでは、警告の発行が必要なビルトインが見つかった場合、その警告がログに記録され、変数文字列(%s)がビルトイン名に置換されます。

search_replace.propertiesファイルには次のクラスが含まれます。

  • obsoleteItemTypeBuiltin

  • obsoleteBuiltin

  • obsoleteMenuParam

  • obsoleteItemTypeConstantProp

  • obsoleteConstantProp

  • obsoleteConstant

  • obsoleteHardCodedUserExit

  • obsoleteComplexBuiltin

  • DataParameterWithReports

  • NoErrorOrWarningFromForms

既存のクラスにビルトインの警告を追加する場合、およびクラスと警告を作成する場合は、次の手順を使用します。

  1. テキスト・エディタでsearch_replace.propertiesファイルを開きます。
  2. 警告メッセージのリストの末尾に移動します。
  3. 既存のクラスに警告を追加するか、または前述の構文を使用してクラスと警告を作成します。
  4. search_replace.propertiesファイルを保存します。

    注意:

    search_replace.propertiesファイルの最後の2つのコマンドは削除しないでください。

2.4 Oracle Forms Migration Assistantの起動

Formsの基礎となる共通のモジュールをForms Migration Assistantの実行時にFORMS_PATHに含める必要があります。他のモジュールが依存する可能性があるFormsモジュールを最初にアップグレードする必要があります。

FMAを使用して、次の順序でモジュールをアップグレードする必要があります。

  • .olbモジュール

  • .pllモジュール

  • .mmbモジュール

  • .fmbモジュール

注意:

UNIXの場合、Oracle Forms Migration Assistantを実行するにはxterm表示が必要となります。

注意:

RUN_PRODUCTをRUN_REPORT_OBJECTに変換するには、forms\rp2rro.pllファイルおよびforms\EnableDisableItem.pllファイルをFORMS_PATHに含める必要があります。

UNIXでは、FORMS_PATH変数を、setenv FORMS_PATH $ORACLE_HOME/formsなどに設定します。

表2-2 Forms Migration Assistantのコマンドライン・パラメータ

パラメータ 説明

module(バッチ・モードでのみ必須)

アップグレードするモジュールを指定します。モジュール名パラメータに指定できる値は1つだけです。一度に複数のモジュールをアップグレードするには、「Forms Migration Assistantのウィザード・バージョンの実行」を参照してください。

log (オプション)

アップグレード結果を書き込むログ・ファイルを指定します。指定しない場合は、converter.propertiesファイルのデフォルト値が使用されます。

mode (オプション)

このオプションには値が2つあります(batchおよびwizard)。Migration Assistantをバッチ・モードで実行する場合はmode=batchを、ウィザードを実行する場合はmode=wizardを使用します。

アップグレード・プロセスの進捗情報が画面に表示されます。これは、converter.propertiesファイルで指定したログ・ファイルにも保存されます。(「converter.propertiesファイルの編集」の説明に従って、アップグレード・オプションを変更します。)

ログ・ファイルをチェックし、ツールで変更されなかった必須のアップグレード手順に関する情報を確認します。それらの変更を手動でアプリケーションに加えます。

2.4.1 バッチ・モードのMigration Assistantについて

複数のアプリケーションを変換するには、コマンドラインからバッチ・モードでForms Migration Assistantを実行します。バッチ・モードは、複数のFormsアプリケーションを変換するのに有用です。たとえば、Windowsで次の内容のバッチ・ファイル(upgrade.batなど)を作成します。

for %%f in (%1) do frmplsqlconv module=%%f userid=<connect_string>

次に、このバッチ・ファイルを次のように実行します。

upgrade *.fmb

または

upgrade foo*.mmb

UNIXでは、次の内容のシェル・スクリプト(upgrade.shなど)を作成します。

for file in $*

do

frmplsqlconv.sh module=$ff

done

次に、このシェル・スクリプトを次のように実行します。

または

upgrade.sh foo*.mmb

2.4.2 バッチ・モードでのMigration Assistantの起動

WindowsおよびUNIXコンピュータでは、バッチ・モードでMigration Assistantを実行できます。

2.4.2.1 Windowsでのバッチ・モードによるMigration Assistantの起動

コマンド・ウィンドウで、次のコマンドを発行します。

frmplsqlconv mode=batch module=<filename> log=<logname>

注意:

変換前にファイルをバックアップすることを推奨するダイアログ・ウィンドウが表示されます。この警告を今後も表示するには、「今後もメッセージを表示する」ボックスを選択します。

<filename>は、変換するファイルの名前です。<logname>は、生成するログ・ファイルの名前です。

Forms Migration Assistantは、d:\tempディレクトリでtest.fmbファイルを検索し、生成したログ・ファイルにtest.logという名前を付けてd:\tempディレクトリに配置します。ログ・ファイルには、任意の名前と場所を指定できます。デフォルトでは、ログ・ファイルはORACLE_HOME\binに書き込まれます。モジュール・パラメータに指定できる値は1つだけです。

次に例を示します。

frmplsqlconv mode=batch module=d:\temp\test.fmb log=d:\temp\test.log

変換の結果が画面に表示されます。これは、デフォルトのログ・ファイルにも保存されます。バッチ・モードでは、すべてのコンバータ・オプションがconverter.propertiesファイルから取り込まれることに注意してください。コンバータ・オプションを変更する場合は、「converter.propertiesファイルの編集」を参照してください。

2.4.2.2 UNIXでのバッチ・モードによるMigration Assistantの起動

UNIXシェルで、次のコマンドを発行します。

frmplsqlconv.sh mode=batch module=<filename> log=<logname>

変換の結果が画面に表示されます。これは、デフォルトのログ・ファイルにも保存されます。バッチ・モードでは、すべてのコンバータ・オプションがconverter.propertiesファイルから取り込まれることに注意してください。コンバータ・オプションを変更する場合は、「converter.propertiesファイルの編集」を参照してください。

2.4.3 Forms Migration Assistantのウィザード・バージョンの実行

Forms Migration Assistantのウィザード・バージョンを実行して、コンバータ・オプションを編集できます。

2.4.3.1 Forms Migration Assistantのウィザード・バージョンの起動

この項では、WindowsおよびUNIXコンピュータでForms Migration Assistantを起動する方法を説明します。

  1. Windowsコンピュータでは、次のようにFORMS_PATH環境変数を設定します。

    SET FORMS_PATH=%ORACLE_HOME%\forms

    UNIXコンピュータでは、次の例のようにFORMS_PATH変数を設定します。

    setenv FORMS_PATH $ORACLE_HOME/forms

  2. Windowsコンピュータでは、「スタート」メニューから「ORACLE_HOME」→「Forms Developer」→「Oracle Forms Migration Assistant(GUI Mode)」を選択するか、コマンドラインでfrmplsqlconv.bat mode=wizardと入力して変換ユーティリティを起動します。

    UNIXでは、frmplsqlconv.sh mode=wizardと入力します。

    変換ウィザードの「ようこそ」ダイアログが表示されます。

    注意:

    コマンドの後に-hを入力すると(例: frmplsqlconv -h)、ヘルプが表示されます。

  3. 「次」をクリックします。
  4. モジュール」ダイアログで、「モジュールの追加」ボタンをクリックします。
  5. 変換するモジュールを選択します。
  6. 「次」をクリックします。
  7. Options」ダイアログで、生成するログ・ファイルの場所と名前を入力します。場所の選択には参照ボタンを使用できます。
  8. レポートが埋め込まれているFormsの場合、残りのフィールドを入力します。それ以外の場合、残りのフィールドは無視してかまいません。変換の詳細オプションは、「変換の詳細オプションの設定」で説明します
  9. 「次」をクリックします。
  10. 終了」ダイアログに、選択したモジュールのリストが表示されます。「終了」をクリックして、変換を開始します。
  11. 「ログ」ウィンドウに進捗状況が表示されます。(ログ出力は、「オプション」ダイアログで指定するログ・ファイル名で保存されます。オプションの設定については、後続の項を参照してください。)
  12. ログ・ファイルをチェックし、ツールで変更されなかった必須の変換手順に関する情報を確認します。それらの変更を手動でアプリケーションに加えます。

2.4.3.2 変換の詳細オプションの設定

ウィザードを実行する前に、次の手順で変換オプションを設定できます。「converter.propertiesファイルの編集」を参照してください

  1. Options」ダイアログ(ウィザードの手順2)で、「拡張オプション」をクリックします。
  2. ダイアログの左の列にコンバータ・プロパティが表示されます。表2-3の説明に従って、プロパティ値を編集します。

    表2-3 コンバータ・プロパティ値

    プロパティ値 説明

    バックアップ警告の表示

    アプリケーションの起動時にファイルをバックアップするための警告ダイアログを表示するかどうかを指定します。

    ログ・ファイル名

    単一ログ・モードでのログ・ファイル名を指定します。

    ログ・ディレクトリ

    複数ログモードでのログ・ファイルの書込み先となるディレクトリ。

    Reportsサーブレット仮想ディレクトリ

    Reports Servletを定義する仮想パスに対して定義されている名前を指定します。Web上でのレポートの実行に使用されます。この設定は、Run_ProductコールをRun_Report_Objectに変換するときに必要です。

    Reportsサーブレット

    Web上でレポートを実行するときに使用するReportsサーブレットの名前を指定します。この設定は、Run_ProductコールをRun_Report_Objectに変換するときに必要です。

    Reports Server

    Reportsサーバーを実行するシステムの名前またはIPアドレス。この設定は、Run_ProductコールをRun_Report_Objectに変換するときに必要です。

    デフォルトのDESFORMAT

    DESTYPEがPRINTERである場合に使用されるプリンタ・ドライバ(XML、HTML、HTMLCSS、PDF、RTF、デリミタ付き)。

    デフォルトのDESTYPE

    レポート出力を受信するデバイスのタイプ(キャッシュ、プリンタ、ファイル)。

    デフォルトのDESNAME

    レポート出力の送信先であるファイル、プリンタ、電子メールID、または配信リストの名前。

    デフォルト・ブラウザ

    UNIXの場合は、Migration Assistantのヘルプの表示に使用するブラウザ。設定値は、firefoxiexplorerchromeのいずれかです。Windowsの場合は、システムのデフォルト・ブラウザが使用されます。

  3. OK」をクリックして構成を保存します。データがconverter.propertiesファイルに保存され、指定した設定が現行および今後のユーティリティ・セッションに使用されます。