変換結果

マイグレーション > 変換ユーティリティ > コマンドラインコンバータ

変換ユーティリティによって、V9Plus のアプリケーションがどのように変更されるかを以下に示します。

項目

変更結果

Blob項目

GUI表示形式の[スタイル]特性が「I=リッチエディット」と定義されたV9PLusのBlob項目は、[内容]特性が「A=ANSI」のBlob項目に変換されます。他のすべてのBlob項目は「B=バイナリ」に変換されます。

[コールWebサービス]処理コマンド

V9Plusの[コールWebサービス]処理コマンドは、[外部コール]処理コマンドに変更されます。(マニュアルの表記は、[コールWebサービス]処理コマンドとしています。)

サービス名やWSDL、URL、処理名は、V9Plusで定義されたものが引き継がれます。

[コール公開名]処理コマンド

V9Plusのアプリケーションファイル名は変換されません。

変換後のプロジェクトファイに定義されている MFF/MCFファイルを文字検索機能で検索し、手動で変更してください。

[コントロール変更]ハンドラ

[コントロール変更]ハンドラは、[項目変更]ロジックユニットに変換されます。

コントロールに割り当てられた項目は、[項目変更]ロジックユニットに割り当てられます。

同じコントロールが割り当てられ、異なる[有効]特性値が設定された複数の[コントロール変更]ハンドラは、その機能が保持されます。

同じ項目が、異なるフォームで表示され、それぞれのコントロールハンドラに割り当てられている場合、新しい[項目変更]ロジックユニットは各項目に対して作成され、[有効]特性値は、新しいMainDisplay関数に基づいて設定されます。

[項目変更]ロジックユニット内の処理は、条件式:CHG_REASON = 0が指定された[ブロック]処理コマンド内に作成されます。V9Plusの[コントロール変更]ハンドラはCHG_REASON = 0が指定された[項目変更]ロジックユニットと同じです。

[コントロール]ハンドラの処理

コントロールに対するハンドラの設定は、コントロール名によって参照されたコントロールのISNによって参照されるように変更されます。

あらゆる[コントロール]ロジックユニットの[スコープ]特性は、タスクに設定されます。

これは、V9Plusと同じ動作を保持します。V9Plus以来、[コントロール]ハンドラは同じタスク内でのみ実行されます。

同じ名前の異なるコントロール上にハンドラが定義されている場合、変換ユーティリティは実行されません。従って、同じコントロール名に対して重複するロジックユニットが作成されます。重複したハンドラが作成されたことを示すメッセージがログファイルに出力されます。

異なるクラス「0」のフォームから同じコントロール名に対して設定されたハンドラがある場合、[メインフォーム]特性に条件が設定されていると、条件はフォームに従って各ロジックユニットの[有効]特性に設定されます。

[メインフォーム]特性に式が設定されていない場合、メインフォームのコントロールに対するロジックユニットの[有効]特性は、「Yes」に設定されます。他のフォームのコントロールに対するロジックユニットの[有効]特性は、「No」に設定されます。

[DBテーブル]テーブル

[DBテーブル]の設定内容は、タスクの[データビュー]エディタ内の定義処理(メインソースやリンクテーブルの特性)に変換されます。

[オープン]特性では、「高速」や「破損」モードがサポートされなくなりました。また、「再索引」モードは、SQLデータソースではサポートされなくなりました。サポートされなくなってモードは全て「標準」モードに変換されます。

サポートされないモードは正常なオープンなモードによって交換されます。

オープン/共有モード

オープンモードの高速モードと破損モードは、すべてのデータソースにサポートされておらず、また再インデックスモードはSQL系のデータソースではサポートされません。このためサポートされないオープンモードは通常モードに変換されます。

イベントとハンドラ

全ての処理は、Magicの同等機能に変換されます。

強制レコード終了

[強制終了]特性に「レコード」が設定されたイベントは、「レコード更新前」に変換されます。

HTMLマージ

HTMLマージ」 は、「マージ」に変更されます。

[リンク]コマンドの[確認]特性

[リンク]コマンドの[確認]特性は、Magic V10ではサポートされません。

変換ユーティリティは、[確認リンク]コマンドを[照会リンク]に変換し、[RM互換]ロジックユニットに[エラー]処理コマンドを追加します。

[リンク]コマンドの[戻り値]特性に項目が設定されている場合、この項目を確認条件に指定します。そうでない場合、ユーティリティは、位置付け式とリンク結果が一致するかどうかをチェックする条件を設定します。

V9Plusの[確認]特性に条件が設定されている場合、条件には、新しい条件が追加されます。

変換処理が終了すると、以下のメッセージが表示されます。

Link Validate migrated as Link Query + Verify Error.

参考:[エラー]処理コマンドのメッセージテキストは、英語表記のままになっています。変換の後に、メッセージ内容を変更するために、テキストの[検索]と[置換]機能が利用できます。

リテラル

[ACT]リテラルは、[EVENT]に変換されます。

[KEY]リテラルは、[INDEX]に変換されます。

[FILE]リテラルは、[DSOURCE]に変換されます。

メモ型

メモ型項目は、記憶形式が「String Memo」に設定された文字型項目に変換されます。

メニュー

[デフォルトプルダウンメニュー] は、メインプログラムの中で参照するように設定されます。

処理コマンド

Magic V10の処理コマンドの中には、V9Plusと異なるものがあります。これらの処理コマンドは、全て同等の処理コマンドに変換されます。

レコードメイン

レコードメインに定義された処理(ビュー定義を除きます。)は、[RM互換]ロジックユニットに変換されます。ここでは、V9Plusと同じように項目定義の間に処理が定義されているように設定されます。

四角コントロールのスタイル

四角コントロールのスタイル特性は、以下のように変更されます。

  • V9で、スタイル特性が凸立体で立体線特性が=Yesに設定されている場合、V10ではWindowsに変換されます。

  • V9で、スタイル特性が凹立体で立体線特性が=Yesに設定されている場合、V10ではエンボスに変換されます。

関数の名前

名前が変更される関数は、該当する名前に変換されます。

タブ

パーキング可

[セレクト]処理コマンドの[条件]は、コントロールの[パーク可]特性に変換されます。

コントロールが項目が割り当てらていない場合、[パーク可]特性は「Yes」に設定され、無効表示になります。

タブ移動方向

[セレクト]処理コマンドの[カーソル方向]([フロー]カラムの2番目)の設定は、[タブ移動方向]特性に変換されます。

「C=両方向」は、「B=両方向」に変換されます。

「F=前方」は、「F=前方のみ」に変換されます。

「B=後方」は、「C=後方のみ」に変換されます。

タブ順序

レコードメイン内の[セレクト]処理コマンドの定義順によって決まっていたタブの順序は、コントロールの[タブ順序]特性に変換されます。

項目が割り当てられていないコントロールの[タブ順序]特性は、データが割り当てられているコントロールの次から始まって、[上辺位置]、[左辺位置]、[Zオーダ]の各特性の組み合わせに基づいて設定されます。

自動タブ順序

フォーム上のコントロールのタブ順序が、([上辺位置]、[左辺位置]、[Zオーダ]に基づいた)自動タブ順序の設定内容と一致している場合、フォームの[自動タブ順序]の設定は、「On」に設定されます。そうでない場合、「Off」に設定されます。

タブで移動

この特性の値は、全てのコントロールで「Yes」に設定されます。

タスクとレコードハンドラ

V9Plusの[タスク前/後]と[レコード前/後]のハンドラは、対応するロジックユニットに変換されます。ハンドラ内の処理は、ロジックユニットに移動します。

タスクレイヤ

ユーティリティは、新しいタスク構造内にタスクを作成します。

この結果、以下のように変更されます。

  • メインソース定義、リンク定義、および項目の定義は、タスクの[データビュー]エディタに移動します。

  • タスクのロジックは、 [ロジック]エディタに設定されます。

  • タスクの様々なフォームは、[フォーム]エディタに設定されます。

Unicode

Magic V10は、Unicodeをサポートします。

V9Plusのアプリケーションを変換すると、以下のオブジェクトはMagic V10のデフォルトコードページに基づいて自動的にUnicodeに変換されます。

  • Unicode文字を含んでいるカラムの型は、文字型からUnicode型に変換されます。

  • [メニュー定義]テーブルの[ユーザメニュー名]カラム

  • ヘルプに指定されたテキスト

  • ツールチップに指定されたテキスト

  • 文字型の式が定義されているコントロールの型は、Unicode型に修正されます。

  • 様々な特性に指定されたテキスト(例えば、[フォーム名]や[表示項目リスト]特性など)

フォーム特性

フォーム特性の[モーダルウィンドウ]、[フローティングウィンドウ]、[子ウィンドウ]、[ウィンドウ分割]の各特性は、フォーム特性の[ ウィンドウタイプ]特性に変換されます。この特性は、[フロート]、[モーダル]、[分割子ウィンドウ] に変換されます。