0

我正在尝试实现简单的消息流,它读取文本文件(SWIFT 消息)并替换一个字段值,然后我需要将其放回文件中。Flow 将文件读取为 blob,然后我将消息转换为 CHARACTER 并进行替换。结果,我得到了一个 CHARACTER 变量,我想将其写入文件。

4

2 回答 2

2

将变量转换回 BLOB,使其成为消息根,然后将其发送到具有默认设置的 FileOutput 节点。假设您正在计算节点中使用 ESQL 进行字符替换(其计算模式设置为更改消息),那么后续的 ESQL 将是:

SET OutputRoot.BLOB.BLOB = CAST(yourCharVar AS BLOB);

于 2015-06-11T16:19:32.607 回答
0

要在 ESQL 中将简单的 CHARACTER(例如,像 '< tag >' 这样的 XML 标记)写入文件,您只需创建一个计算节点并添加如下内容:

DECLARE youCharacterToWrite CHARACTER '<a simple string>';
SET OutputRoot.BLOB.BLOB = CAST(youCharacterToWrite AS BLOB CCSID InputRoot.Properties.CodedCharSetId);

并将您的计算节点从输出终端连接到 FileOutput 的输入终端以写入文件。如果您在 IIB 中调试该变量,它将显示您的 CHARACTER 变量的一些 Base64 表示,但它会被正确写入文件。

于 2018-09-14T15:50:55.517 回答