0

我有以下 XML:

<?xml version="1.0" encoding="UTF-16"?>
<APIDATA xmlns="api-com">
<ORDER EngineID="1" OrderID="66"><INSTSPECIFIER InstID="27" SeqID="17"/></ORDER>
<ORDER EngineID="2" OrderID="67"><INSTSPECIFIER InstID="28" SeqID="18"/></ORDER>
</APIDATA>

我想在每个循环中为所有订单条目获取 SSIS 变量的所有 ID。到目前为止,我可以在 SSIS 的控制流中使用 ForeachLoop 获取前两个 id,如下所示:

EnumerationType:  ElementCollection
OuterXPathString: //*[name() = 'ORDER']
InnerElementType: NodeText
InnerXPathString: @*

然后在变量映射上,我使用索引为 0 和 1 的两个字符串变量来获取两个 ID。如何获取 INSTSPECIFIER 元素的 ID?一次获取所有四个 ID 的正确 XPath 命令是什么?

注意,ORDER 元素中只能有一个 INSTSPECIFIER。此外,如果这需要单独完成,例如在 ForeachLoop 中获取 ORDER 并在 XMLTask 中获取 INSTSPECIFIER,则 OrderID 是主键。因此,在这种情况下,问题是,如何在 XMLTask 中获取 INSTSPECIFIER 条目的 InstID 和 SeqID,该条目具有具有特定 OrderID 的父 ORDER 条目?

谢谢你的帮助。

4

1 回答 1

1

这次尝试四个变量和 InnerXPathString:@* | child::node()/@*其他值不变。

于 2012-08-28T20:57:36.777 回答