消息代理中的CCSID

时间:2014-03-12 03:33:29

标签: broker

源和目标应用程序了解不同CCSID中的字符。

源应用程序连接到某个默认CCSID set的队列管理器。目标应用程序也连接到具有不同CCSID设置的队列管理器。

我需要澄清一下如何传递和检索这些消息。 1)源应用程序将消息放入其Q.This消息是不可读的格式。因为两者都有不同的CCSID,我希望MQPUT将提供CCSID,它被Source QM的默认CCSID覆盖。 - 如果错误请更正

2)WMB以MRM格式接收消息。它根据指定的物理和逻辑结构进行解析。 - 请根据目标应用程序的CCSID澄清数据转换是否在此阶段发生?如果没有,那么当消息代理出来时,消息的可读格式如何?

3)解析后的WMB根据目标应用程序的CCSID为CCSID和Encoding设置OutputRoot.properties。如果错误,请更正

4)最后,当Target应用程序获取带有一些CCSID的消息MQGET时,它会覆盖Target QM的CCSID。如果错误,请更正

2 个答案:

答案 0 :(得分:0)

创建2个消息集。一个具有输入类型的消息集和一个具有输出类型的第二个消息集。

根据为其定义的消息集设置输出节点消息域

根据为其定义的消息集设置输入节点消息域

在输入节点和输出节点之间使用map节点将能够映射内容。

由于 阿拉文德

答案 1 :(得分:0)

如果这两条消息是MRM,您不需要创建2个Mset,您可以使用相同的。

在Mapping节点中,您可以更改CCSID,只需指定一个值,但您需要知道CCSID是什么(如819,1208等...)。

您也可以使用ESQL更改CSSID。

设置OutputRoot.Properties.CSSID = 819;

3)WMB不会根据目标更改CCSID或Enconding,WMB无法知道目标正在等待什么。

4)是的,当您收到消息时,WMB将接受enconding和CCSID并覆盖它。 (你可以在OutputRoot.Properties上看到它。)