如何从Infopath人/组选择器中检索电子邮件地址

时间:2010-12-13 22:18:38

标签: sharepoint-2010 infopath

如何从Infopath人/组选择器中检索电子邮件地址?当我将人员/组选择器添加到infopath表单时,我只获得3个字段DisplayName,AccountId,AccountType。任何人都可以告诉我如何收到电子邮件通过配置或代码。

5 个答案:

答案 0 :(得分:3)

在SharePoint Designer中,在设置工作流以响应InfoPath人员选择器字段时,我只需将“发送电子邮件”操作的“收件人:”字段映射到我拥有的任何人员选择器字段(即使它已设置为拉显示名称)...无论如何,电子邮件将成功发送出去。现在,您的里程可能会有所不同,也许是因为我们的Exchange服务器设置和小公司规模使其能够正常运行。

无论如何,试试吧。也许从人员选择器中提取电子邮件地址是一个非常重要的步骤。

答案 1 :(得分:1)

我有一个更简单的解决方案。

假设您正在使用连接向导向从人员选择器中选择的人发送电子邮件。

在to-field中 - concat(substring-after(AccountId,“\”),“@ domain.com”)

假设您公司的邮件帐户有一个username @ domain的条目。

因为AccountId = domain \ username

所以我们最终得到了username@domain.com

为我工作

答案 2 :(得分:0)

如果您只想使用域中的电子邮件地址填充字段,则此功能非常有效。两天来,我一直在用双重评估技巧敲打我的脑袋。我得到了它的工作,但在SharePoint中的表单呈现花了2分46秒。

答案 3 :(得分:0)

我知道答案为时已晚,但我仍在写这篇文章,以便将来有人可以获得帮助。

当我们保留人员选择器时,它会为我们提供您指定的三个值(AccountId,DisplayName和AccountType)。

现在,如果有人想要检索电子邮件地址,可能会有很多要求,但我想大多数人都希望向选择发送给人员选择器的用户发送邮件。

如果要向所选用户发送邮件,则可以在工作流程项目中使用AccountId字段。 SharePoint设计器会自动从AccountId检测电子邮件地址并发送邮件。

我希望这可以节省一些人的时间。

答案 4 :(得分:0)

  • 创建一个按钮以及该按钮的以下规则。
  • 创建数据连接以从GetUserProfileByName检索。
  • 创建一个字段来存储您要检索的电子邮件。

按钮规则

规则1 设置字段值。将GetUserProfileByName的AccountName的值设置为等于人员选取器中的AccountID。

enter image description here

enter image description here

规则2将操作添加到查询数据连接GetUserProfileByName

规则3将字段值设置为您刚刚执行的查询的电子邮件地址

enter image description here

过滤数据

enter image description here

将值更改为名称

enter image description here

enter image description here

enter image description here

enter image description here