Dom InfoPath 2010:从辅助数据源镜像数据

Dom InfoPath 2010:从辅助数据源镜像数据,dom,sharepoint,sharepoint-2010,infopath,infopath2010,Dom,Sharepoint,Sharepoint 2010,Infopath,Infopath2010,目标:使用启用WEB的表单从SharePoint 2010列表中提取数据。然后,从包含辅助数据的重复表中,仅提取所需的数据并将其镜像到我的主表单字段中。然后,提取的数据将被修改,并使用Nintex工作流提交到另一个sharepoint列表,或者,如果IT部门对该项目满意,则提交到数据库 我尝试的内容:在重复组中创建了一个名为“TEST_CyS”的字段,名为“TEST”,在我的主表单字段中存储镜像数据。此字段的默认值为: xdXDocument:GetDOM("REMOVED")/dfs:myF

目标:使用启用WEB的表单从SharePoint 2010列表中提取数据。然后,从包含辅助数据的重复表中,仅提取所需的数据并将其镜像到我的主表单字段中。然后,提取的数据将被修改,并使用Nintex工作流提交到另一个sharepoint列表,或者,如果IT部门对该项目满意,则提交到数据库


我尝试的内容:在重复组中创建了一个名为“TEST_CyS”的字段,名为“TEST”,在我的主表单字段中存储镜像数据。此字段的默认值为:

xdXDocument:GetDOM("REMOVED")/dfs:myFields/dfs:dataFields/d:SharePointListItem_RW[(count(../preceding-sibling::*[local-name() = "TEST"]) + 1)]/d:Cy_Statement
当表单更新时,将刷新此选项

  • 如果我将默认值设置为
    count(../previous sibling::*[local-name()=“TEST”])+1
    它将准确地计算每个插入的组
  • 如果我将默认值设置为
    xdXDocument:GetDOM(“已删除”)/dfs:myFields/dfs:dataFields/d:SharePointListItem\u RW[])/d:Cy\u Statement
    ,其中
    是介于1和n之间的任何整数值,则该字段将显示索引被引用的辅助数据字段的正确信息
只有当我把两者结合起来,事情才会分崩离析

主数据树:

辅助数据树:


假设:我猜前面的同级::*[local-name()=“TEST”]axis没有返回值,因为它与
GetDOM()方法一起被调用。我曾尝试将前面的兄弟节点指向主表单字段中的正确组,但后来我觉得这样做很愚蠢,因为它不知道从哪里开始计数,infopath向我显示了一个错误:

Function 'GetDOM' did not return a value, or it returned a value that cannot be converted to an XSL data type. 
摘要:这是一个没有代码的失败原因,还是为Infopath购买了一些类似qRules的“插件”?IT部门将不允许在SharePoint网站上运行包含代码的表单,并且表单上的要求声明必须是启用web的表单才能在SharePoint中填写

编辑:我们也无法访问VSTA,安装它的可能性非常非常小


我是否可以使用其他方法来实现这一点?

如果InfoPath表单使用代码,只要它仅限于SharePoint 2010沙盒API,SharePoint管理员就不需要参与。

啊,我没有提到VSTA未安装,我正在锁定的计算机上工作。不过,这些信息很有帮助。我将尝试与高层管理人员讨论安装VSTA的问题,但我的希望并不高。我们在这里与很多boundries合作,并且被要求很多。谢谢