MQ EOL 数据转换
我们通过 MQ 将数据从 az/OS/CICS 系统发送到 AS400。
消息的原始编码是 CCSID 500,采用 MQSTR 格式。客户端应用程序正在获取带有 CONVERT 选项和 CCSID 819 的消息。
除了行尾字符之外,数据几乎已正确转换。有什么想法吗? z/OS 正在发送 0D (CR) 作为行结束字符。如果他们有 0D+0A (CR+LF),CCSID 会自动从 500 更改为 437,并且行尾在客户端仍然不正确。
we are sending data trough MQ from a z/OS/CICS system to an AS400.
Original encoding of the message is CCSID 500 with a MQSTR Format. The client application is getting the message with the CONVERT option and CCSID 819.
Data is almost converted correctly except for the end of line caracter. Any idea?
The z/OS is sending 0D (CR) as end of line caracter. If they had 0D+0A (CR+LF), CCSID automatically change from 500 to 437, and the end of line still ain't right on the client side.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您是否已经只尝试过“0A”(LF)?您是否在没有显式 CONVERT 的情况下尝试过?我们在这部分转换方面从未遇到过任何问题,并且我们的机器可以与 Windows、AIX、Linux 等进行通信。我们几乎一直依赖自动转换。
另外,您可能需要检查从队列中选取 MQ 消息的作业的用户。大多数时候,用户使用系统属性(在相应的 SYSVAL 中定义)。也许此用户配置文件已配置得非常具体,并且与 SYSVAL 不同,后者会阻止 iSeries 进行正确的自动转换。
作为一个简单的测试,将您的数据通过 FTP 传输到 iSeries。这还将强制使用系统表 (WRKTBL) 进行自动转换。这可能会显示该配置中的错误。
Have already you tried only "0A" (LF)? Have you tried without an expliciet CONVERT? We've never had any issues with this part of the conversion and our machine talks with windows, AIX, Linux and so. Almost all the time we do rely on automatic conversions.
Also, you may want to check the USER of your job that picks the MQ message from the Queue. Most of the time the USER uses the system attributes (as defined in the appropriate SYSVAL). Maybe this userprofile has been configured very specific and different from the SYSVAL which stops the iSeries in doing the correct automatic conversion.
As a simple test, FTP your data to the iSeries. That will also force an automatic conversion that uses the system tables (WRKTBL). That may show an error in that configuration.
我们遇到了队列管理器的 CCSID 设置不正确以及使用了错误的转换表的问题。
We had a problem with the CCSID of the queue manager not being set correctly and the wrong conversion table used.