从Universe数据库生成XML文档

问题描述:

我需要从Universe数据库生成XML文档。 这些XML文件是SSIS包的来源。所以首先我必须制作XML文件。 为此,我正在使用以下命令。 SELECT FIRST 1000 LIST TOXML ELEMENTS 它正在返回1000个记录,它很好。 我在这里有一些问题, 1.我如何指定一个条件来选择只有满意的记录 a。例子名称,比如“S%”(SQL Server)的 2.有些领域有像从Universe数据库生成XML文档

<RECORD> 
<BRANCH>A</BRANCH> 
<SUB_BRANCH>A1</SUBBRANCH> 
<SUB_BRANCH>A2</SUBBRANCH> 
<SUB_BRANCH>A3</SUBBRANCH> 
</RECORD> 
<RECORD> 
<BRANCH>B</BRANCH> 
<SUB_BRANCH>B1</SUBBRANCH> 
<SUB_BRANCH>B2</SUBBRANCH> 
</RECORD> 
<RECORD> 
<BRANCH>C</BRANCH> 
<SUB_BRANCH>C1</SUBBRANCH> 
</RECORD> 

从这个多值我想基于使单独的记录

象下面这样:

<RECORD> 
<BRANCH>A</BRANCH> 
<SUB_BRANCH>A1</SUBBRANCH> 
</RECORD> 
<BRANCH>A</BRANCH> 
<SUB_BRANCH>A2</SUBBRANCH> 
</RECORD> 
<BRANCH>A</BRANCH> 
<SUB_BRANCH>A3</SUBBRANCH> 
</RECORD> 
<RECORD> 
<BRANCH>B</BRANCH> 
<SUB_BRANCH>B1</SUBBRANCH> 
</RECORD> 
<BRANCH>B</BRANCH> 
<SUB_BRANCH>B2</SUBBRANCH> 
</RECORD> 
<RECORD> 
<BRANCH>C</BRANCH> 
<SUB_BRANCH>C1</SUBBRANCH> 
</RECORD> 

这可能吗?

感谢,

我不明白选择的事情,所以只是讲评XSL部分在这里。 当涉及到处理时,您的源XML有几个问题。首先你需要一个根元素来处理它。其次,您的SUB_BRANCH似乎与SUBBRANCH关闭(不带下划线),因此您的XML无效。 假设这些是固定的:

<xsl:template match="RECORD"> 
    <xsl:element name="RECORD"> 
    <xsl:for-each select=".//SUB_BRANCH"> 
     <xsl:element name="BRANCH"> 
      <xsl:value-of select="../*"/> 
     </xsl:element> 
     <xsl:element name="SUB_BRANCH"> 
      <xsl:value-of select="node()"/> 
     </xsl:element> 

    </xsl:for-each> 
     </xsl:element> 
</xsl:template> 

将是给你你想要在输出什么样的一种方式,但我要强调,如果你解决您的源数据它只会工作(如果是自动生成的,产生的一切它)

你的SELECT可能看起来像这样

与字段名LIKE ...一些SELECT ...名,当mvfieldname = somethingelse

WITH子句将采取单一值的护理领域的应用的d多值域中子值的WHEN子句