【发布时间】:2012-08-29 10:10:32
【问题描述】:
我有以下 XML:
<?xml version="1.0" encoding="UTF-16"?>
<APIDATA xmlns="api-com">
<ORDER EngineID="1" OrderID="66" OtherInfo="yes"><INSTSPECIFIER InstID="27" SeqID="17"/></ORDER>
<ORDER EngineID="2" OrderID="67" OtherInfo="yes"><INSTSPECIFIER InstID="28" SeqID="18"/></ORDER>
<ORDER EngineID="3" OrderID="68"><INSTSPECIFIER InstID="29" SeqID="19"/></ORDER>
</APIDATA>
我想在一个 for each 循环中为所有 Order 条目获取 SSIS 变量的所有 ID。到目前为止,我可以在 SSIS 的控制流中使用 ForeachLoop 获取数据,具体如下:
EnumerationType: ElementCollection
OuterXPathString: //*[name() = 'ORDER']
InnerElementType: NodeText
InnerXPathString: @* | child::node()/@*
然后在变量映射上我遇到了问题,XML 的行长度不同。例如:第三行没有 OtherInfo 条目。如果我将变量映射到索引 4,这会导致循环因错误而死。
这个问题的解决方法是什么?
感谢您的帮助。
【问题讨论】: