メッセージ・マッピングをマイグレーションするには、mqsimigratemfmaps コマンドを使用します。このコマンドは Message Brokers Toolkit の一部であって、Windows および Linux のランタイムではなく、デフォルトではコマンド・パスでは使用不可です。コマンドは、ツールをインストールした場所にある Eclipse ディレクトリーの下にあります。メッセージ・マッピングのマイグレーションに 関する制約事項がいくつかあります。
バージョン 5.0 でサポート | マイグレーション・ユーティリティーのエラー・メッセージ |
---|---|
反復ソース・エレメントの複数インスタンスを含む式。以下に例を示します。 src_msg.e[1] + src_msg.e[2] -> tgt_msg.e |
エラー:102: マッピング可能ターゲット 'e' について、予期しない索引 '2' が検出されました。予想された索引は '1' です。現在、マイグレーションでは、同じ反復エレメントの複数のインスタンスが使用される式をサポートしていません。 |
ワイルドカード文字「*」(アスタリスク) を
含む ESQL フィールド参照。以下に例を示します。 src_msg.e.* or src_msg.e.*[] |
エラー:130: ESQL フィールド参照 'src_msg.e.*' をマイグレーションできません。マイグレーションでは、「*」を含むフィールド参照に対するサポートを現在提供していません。 |
動的 ESQL フィールド参照。以下に例を示します。 src_msg.e.{'a' || 'b'} |
エラー:131: ESQL フィールド参照 'src_msg.e.{'a' || 'b'}' をマイグレーションできません。マイグレーションでは、動的フィールド参照に対するサポートを現在提供していません。 |
一時インデックス変数「#I」への参照を含む ESQL 式。以下に例を示します。 src_msg_e || "#I" -> tgt_msg.e |
エラー:128: 繰り返しエレメントの索引以外の場所に変数「#I」を含む ESQL 式は、マイグレーション時に処理できません。 |
反復エレメントの索引内の式。以下に例を示します。 src_msg.e[src_msg.a] or src_msg.e["#I" +5] or src_msg.e[< 3] |
エラー:116: ESQL フィールド参照 'src_msg.e[< 3]' をマイグレーションできません。現在、マイグレーションでは、変数「#I」および単純な整数の索引以外の索引はサポートされていません。 |
ESQL SELECT 式と一緒に使用される集約関数 MIN、MAX、および COUNT。以下に例を示します。 SELECT MAX("#T".FIRSTNAME) FROM Database.CUSTOMER AS "#T" WHERE "#T".CUSTOMERID = 7 |
エラー:135: ESQL 式 'SELECT MAX("#T".FIRSTNAME) FROM Database.CUSTOMER AS "#T" WHERE "#T".CUSTOMERID = 7' をマイグレーションできませんでした。 式には、新しいマップ・スクリプト言語で直接に相当するもののない構文が含まれています。 |
ESQL の IN 演算子。以下に例を示します。 src_msg.e IN (1, 2, 3) |
エラー:135: ESQL 式 'SELECT MAX("#T".FIRSTNAME) FROM Database.CUSTOMER AS "#T" WHERE "#T".CUSTOMERID = 7' をマイグレーションできませんでした。 |