使用 mqsimigratemfmaps 命令来迁移消息映射。此命令是 Message Brokers Toolkit 的一部分,而不是 Windows 和 Linux 上的运行时,并且缺省情况下不存在于命令路径中。可以在工具安装的 Eclipse 目录下找到该命令。有一些迁移消息映射的限制。
在 V5.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]、src_msg.e["#I" +5] 或 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”。 |