无法从InfoPath 2010人员选取器控件中检索值

时间:2013-04-04 15:32:33

标签: sharepoint infopath

我在InfoPath 2010中遇到了Person Picker控件的问题。我输入一个名称,然后解析并显示在控件上。到现在为止还挺好。现在我正在尝试检索控件提供的AccountId的值。它在本地预览表单时有效,但当我将其发布到SharePoint(这是一个支持浏览器的表单)时,AccountId将返回为空白。

下面是我正在使用的XPath。 (我尝试添加索引,如“Person [1]”,但InfoPath也不喜欢。此外,我限制了控件,因此只能输入1个用户。)

/我的:myFields /我的:ApproverGroup /我的:分析员/ PC:人/ PC:ACCOUNTID

如果我尝试获取DisplayName或AccountType,则相同的结果 - 在预览中工作,但在我发布时不工作。我正在发布到我的本地SharePoint Server(我正在开发的同一台机器)。

有什么想法吗?提前谢谢。

1 个答案:

答案 0 :(得分:0)

我明白了。在数据源反映在人员选取器控件中输入的值之前,需要回发。为什么这是我不知道,但它以某种方式使控件正常工作。此回发可以在表单加载时执行一次,然后人员选取器将在此之后工作。所以我的下一个问题是寻找一种强制表单加载回发的方法。此外,人物选取器莫名其妙地不包括“回发设置”属性,例如文本框。我在表单的第一个文本框上启用了回发设置为“Always”,希望用户在向下滚动到People Picker控件之前输入一个值。这是一个可怕的黑客,但到目前为止我唯一的解决方法。如果有人能在这里提供更好的答案,请这样做。