Я попытался реализовать простой цикл, проверив значение null для переменной и установив результат.
Моя порция мулового потока выглядит так, как показано ниже.
База данных (выберите) -> Преобразовать сообщение (DataWeave- преобразовать в xml)
База данных имеет значение, как показано ниже:
Book1 Book2 Book3 Book4 Book5
abc cde fgh ijk lmn
opq rst NULL NULL NULL
Код Dataweaver выглядит следующим образом:
ns0#LibraryDetails:{
ns0#User: payload."Book1",
ns0#User: payload."Book2",
ns0#User: payload."Book3",
ns0#User: payload."Book4",
ns0#User: payload."Book5"
}
Ожидаемый результат1
<LibraryDetails>
<User>abc</User>
<User>cde</User>
<User>fgh</User>
<User>ijk</User>
<User>lmn</User>
</LibraryDetails>
Ожидаемый результат 2
<LibraryDetails>
<User>opq</User>
<User>rst</User>
</LibraryDetails>
Как мы можем избежать только нулевых значений и создания цикла в переплетении данных. Я также попробовал функцию карты. Не могли бы вы пролить свет на это.