目标:使用WEB ENABLED表单从SharePoint 2010列表中提取数据。然后,从包含辅助数据的重复表中,仅提取所需数据并将其镜像到主表单字段中。然后修改提取的数据,并使用Nintex Workflows提交到另一个共享点列表,或者,如果IT部门对此项目微笑,则提交数据库。
我尝试了什么:在我的主要表单字段中,在名为“TEST”的重复组中创建了一个名为“TEST_CyS”的字段,用于存储镜像数据。该字段的默认值为:
xdXDocument:GetDOM("REMOVED")/dfs:myFields/dfs:dataFields/d:SharePointListItem_RW[(count(../preceding-sibling::*[local-name() = "TEST"]) + 1)]/d:Cy_Statement
表单更新时刷新。
count(../preceding-sibling::*[local-name() = "TEST"]) + 1
,则会准确计算每个插入的组。xdXDocument:GetDOM("REMOVED")/dfs:myFields/dfs:dataFields/d:SharePointListItem_RW[<INT>])]/d:Cy_Statement
,其中<INT>
是介于1和n之间的任何整数值,则该字段将显示正确的信息,用于引用索引的辅助数据字段。当我将这两者结合起来时,情况会崩溃。
主要数据树:
辅助数据树:
假设:我猜测preceding-sibling::*[local-name() = "TEST"]
轴没有返回值,因为它与GetDOM()
方法一起被调用。我试图将前面的兄弟回到主表单字段中的正确组,但后来我觉得很难尝试,因为它不知道从哪里开始计数和infopath给我一个错误:
Function 'GetDOM' did not return a value, or it returned a value that cannot be converted to an XSL data type.
摘要:如果没有代码或为qopule等Infopath购买一些“插件”,这是否是一个失败的原因? IT部门不会让允许在其中运行代码的表单在SharePoint网站上运行,并且表单上的要求表明它必须是一个支持Web的表单才能在SharePoint中填写。
编辑:我们也无法访问VSTA,安装它的可能性非常非常小。
有没有其他方法可以用来解决此问题?
答案 0 :(得分:0)
如果InfoPath表单使用代码,则不需要参与SharePoint管理员,只要它仅限于SharePoint 2010沙箱API。