Sharepoint Designer 2007 - 带有ADDRESS BOOK按钮的表单字段

时间:2011-11-02 20:18:11

标签: sharepoint sharepoint-2007 sharepoint-designer

我正在SP Designer 2007中开发一个批准工作流程。我需要一个表单字段,允许用户验证他们是否已将Active Directory中的工作电子邮件地址输入到表单字段中。 (这将是授予批准的用户主管的电子邮件地址 - 如果此电子邮件地址错误,则整个过程将脱轨)。我认为它可以像电子邮件表单中的地址簿按钮一样工作。或者更好的是,就像Check Name按钮一样,只需检查当前输入的电子邮件地址,并通过加下划线或其他视觉提示来验证它。

似乎是一种明显有用的行为 - 我必须遗漏一些东西 - 我是SP新手。谢谢!

1 个答案:

答案 0 :(得分:0)

您是否可以使用当前用户的用户名运行LDAP查询,获取用户“经理”字段。用它来获取经理的电子邮件地址。

这样,如果用户明确想要别人,则用户只会覆盖电子邮件地址。

这是一个帮助您进行LDAP查询的小代码

  using System.DirectoryServices;
//DirectoryEntry de = new DirectoryEntry("LDAP://wel0101");

    DirectoryEntry de = new DirectoryEntry();
    DirectorySearcher deSearch = new DirectorySearcher(de);
    //deSearch.PropertiesToLoad.Add("Email");

    SearchResultCollection results;
    deSearch.SearchScope = SearchScope.Subtree;
    deSearch.Filter ="(&(objectClass=user)(cn=bacchu*))";
    //deSearch.
    results = deSearch.FindAll();

    foreach (SearchResult result in results)
    {
        ResultPropertyCollection props = result.Properties;
        richTextBox1.Text += "------------------------\n";
        foreach (string propName in props.PropertyNames)
        {
            richTextBox1.Text += propName + ":\"" +  props[propName][0] + "\"\n";
        }
    }

    richTextBox1.Text += "Done" + DateTime.Now.ToString() + "\n";