Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Новый топик    Ответить
 как извлечь атрибуты из xml?  [new]
help_me_445
Member

Откуда:
Сообщений: 17
всем привет,
у меня есть простой flow где я отправляю сообщение <a>1</a> в очередь T1.in.

Потом в Compute пытаюсь вытащить значение элемента "a" и записать его в таблицу:

-------------------------------

CREATE COMPUTE MODULE f_test_1_Compute
CREATE FUNCTION Main() RETURNS BOOLEAN
BEGIN
CALL CopyMessageHeaders();
CALL CopyEntireMessage();
INSERT INTO Database.test1 (ID, val) VALUES (InputBody.a, 2)
RETURN TRUE;
END;

CREATE PROCEDURE CopyMessageHeaders() BEGIN
DECLARE I INTEGER 1;
DECLARE J INTEGER;
SET J = CARDINALITY(InputRoot.*[]);
WHILE I < J DO
SET OutputRoot.*[I] = InputRoot.*[I];
SET I = I + 1;
END WHILE;
END;

CREATE PROCEDURE CopyEntireMessage() BEGIN
SET OutputRoot = InputRoot;
END;
END MODULE;

-------------------------------
Получаю в таблице : null | 2 - в первой колонке всгда null.
Перепробовал все возможные комбинации вариантов извлечения атрибута 'a' , например InputRoot.XMLNSC.a . Никак не получается, всегда NULL вместо "1". Хотя значение свойства типа InputRoot.Properties.Encoding извлекаются нормально.
Что делать?
4 окт 16, 18:23    [19743369]     Ответить | Цитировать Сообщить модератору
 Re: как извлечь атрибуты из xml?  [new]
help_me_445
Member

Откуда:
Сообщений: 17
скрин flow во вложении

К сообщению приложен файл. Размер - 10Kb
4 окт 16, 18:25    [19743380]     Ответить | Цитировать Сообщить модератору
Все форумы / IBM DB2, WebSphere, IMS, U2, etc Ответить