IIB/Esql 如何将 XMLTYPE 从 oracle table 传播到 OutputRoot.XMLNSC

IIB/Esql how to propagate XMLTYPE from oracle table to OutputRoot.XMLNSC

我有一个带有计算节点和 MQOutput 节点的消息流,如下所示:

MQInput->Compute->MQOutput

在计算节点中,我从 oracle 数据库中检索了一个 xml 文档数组,如下所示:

declare xmlDoc row;
set xmlDoc.rows[] = passthru('select XMLTYPE.getClobVal(xml_document) as xml from my_table where something=something');

我确认这工作正常,然后我尝试将 XML 放入 MQOutput 节点,如下所示:

    FOR xml AS xmlDoc.rows[] DO
        CREATE LASTCHILD OF OutputRoot DOMAIN('XMLNSC')
                                    PARSE(CAST(xml.XML AS BLOB CCSID InputProperties.CodedCharSetId ENCODING InputProperties.Encoding), 
                                    InputProperties.Encoding,
                                    InputProperties.CodedCharSetId);    

        PROPAGATE;
    END FOR;
    RETURN FALSE;

流运行时没有错误,但输出队列中没有任何内容。我正在寻找一些关于从 oracle 数据库中获取 XMLTYPE 并将其放入 MQOutput 节点的正确方法的指导。

谢谢

我将 SQL 查询更改为使用 getBlobVal

新SQL查询:

set xmlDoc.rows[] = passthru('select mt.xml_document.getBlobVal('UTF8') as xml from my_table mt where something=something');