因此,我在一个空工作簿(已经建立了数据连接)上动态创建了一个数据透视表,并成功保存了:文档甚至可以成功打开,为什么使用Excel GUI:一切正常,并且可以正常工作。
当我查看包装内部时,我发现Xml标签有一个extar x :,就像workbook.xml就像下面的波纹管一样。
TableA
有人为什么我们有这个额外的x:吗?只有在将ivotCaches标记添加到workbook.xml后才会发生这种情况。我正在使用OpenXml 2.7.1
答案 0 :(得分:0)
select EmployeeName, ARRAY_AGG(struct(EmployeeDetail1, EmployeeDetail2)) from Table1 t1, Table2 t2 where t1.Id = t2.Id
GROUP BY EmployeeName
前缀称为https://symfony.com/doc/3.4/form/dynamic_form_modification.html。您还必须在XML文件中看到一个x:
属性,该属性指示如何解析此命名空间的架构。
答案 1 :(得分:0)
x
中的x:pivotCaches
是 XML名称空间前缀。
要使XML为namespace-well-formed,必须有一个声明,该声明将命名空间前缀x
与命名空间URI(例如http://schemas.openxmlformats.org/spreadsheetml/2006/main
)绑定在一起。目前的XML片段不是使用正确的XML命名空间前缀的格式,因为它没有使用命名空间格式的前缀。
名称空间前缀可以在其使用祖先的任何位置或更高位置声明:
<x:pivotCaches xmlns:x="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
<x:pivotCache cacheId=”1″ r:id=”rId4″ />
</x:pivotCaches>
如果改为声明默认的XML名称空间,则可以省略名称空间前缀:
<pivotCaches xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
<pivotCache cacheId=”1″ r:id=”rId4″ />
</pivotCaches>
另请参见