Я пытаюсь создать общий интерфейс, который преобразует 24 различных XML структуры в файлы Flate путем объединения элементов XML. В Dell Boomi у нас есть возможность динамически передавать имена переменных в XSLT. Как показано ниже:
<xsl:variable name="headers" select="boomi:get-ddp('DDP_Headers')"/>
Мы сохранили все 24 XML имен узлов в строках таблицы. Пример:
CLIENTID,',',CLIENTNAME,',',CLIENTADDRESS,',',....,',',CLIENTCONTACT
PERSONID,',',PERSONNAME,',',PERSONADDRESS,',',....,',',PERSONCONTACT
......,',',.......,',',... etc
Когда мы передаем имя переменной и используем ее в функции Concat, это принимает в качестве строки и печатает только строку вместо XML значений элементов. Вот код, который мы попробовали.
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:boomi="http://boomi.com/custom-function">
<xsl:output method="text" encoding="utf-8" />
<xsl:variable name="headers" select="boomi:get-ddp('DDP_Headers')"/>
<xsl:template match="/">
<xsl:for-each select="//externalKPIClientProductivity">
<xsl:value-of select="concat($headers,'
')" />
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Код работает нормально с приведенным ниже примером:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:boomi="http://boomi.com/custom-function">
<xsl:output method="text" encoding="utf-8" />
<xsl:variable name="headers" select="boomi:get-ddp('DDP_Headers')"/>
<xsl:template match="/">
<xsl:for-each select="//externalKPIClientProductivity">
<!-- <xsl:value-of select="@id" /> -->
<!--<xsl:value-of
select="concat($headers,'
')" />-->
<xsl:value-of
select="concat(CLIENTID,',',CLIENTNAME,',',CLIENTADDRESS,',',PAY,',',CLIENTLOCATION,',',XRFCODE,',',CLIENTCONTACT,'
')" />
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Может кто-нибудь, пожалуйста, помогите мне, как передать эти динами c XML Элементы в Concat функционируют так, что они будут работать как XML Элементы и извлекать данные вместо печати того же самого строкового файла, как пример:
CLIENTID,',',CLIENTNAME,',',CLIENTADDRESS,',',PAY,',',CLIENTLOCATION,',',XRFCODE,',',CLIENTCONTACT
CLIENTID,',',CLIENTNAME,',',CLIENTADDRESS,',',PAY,',',CLIENTLOCATION,',',XRFCODE,',',CLIENTCONTACT
CLIENTID,',',CLIENTNAME,',',CLIENTADDRESS,',',PAY,',',CLIENTLOCATION,',',XRFCODE,',',CLIENTCONTACT
..................
Заранее спасибо !! D C