组织电话簿-印刷版

我羡慕我的英语同事,他们不必重新发明轮子,他们都拥有相同的布局,而且没有人用名字对对方讲话,这在我们的正式信件中非常重要。

这是一个简单的任务-您需要组织的最新电话簿,可以打印出来,其中包含俄语的全名和英语的显示名(如邮件地址簿中的一样),并具有主要的联系电话。 但是很少在哪个组织中找到正常的解决方案。

当接待员通过邮件发送歪曲填写的Word文件以应对每一次人员变更或员工更换手机时,每个人都熟悉吗? 我想很多人都笑了...

我正在分享有关如何将Active Directory连接到SQL Reporting Server的解决方案。

如果您在AD中有订单,请跳过此步骤,其余部分将举一个在AD中填写用户字段的示例。

图片

图片

这种填充的优点 :您可以在俄语的其他目录中搜索人。
缺点 :找不到拉丁用户的姓氏。

另一个选择是,您可以使用其他AD属性,例如:middleName或Display-Name-Printable以俄语存储名称或赞助人。

下载并运行报表生成器

选择矩阵向导->创建数据集
新的连接名称-AD
连接类型-OLE DB
在“凭据”选项卡中,选择当前用户的凭据
点击构建按钮
Ole DB提供程序选择:用于Microsoft目录服务的OLE DB提供程序

在服务器名称中,填写任何可用的域控制器,结果应如下所示:

图片

接下来,添加到连接字符串:

SELECT givenName, SN, telephoneNumber,department, displayName,title, mail, mobile FROM 'LDAP://OU=Users,OU=HOLDING,DC=domain,DC=kz'WHERE objectCategory='user' 

将路径更改为用户在LDAP上所在的OU

测试连接:

图片

接下来,将所有必要的字段拖到报表的“值”中:

图片

仅此而已。 接下来,根据需要设置报告格式。 例如,我按部门将报告分组,并将大小调整为A4。

您可以通过添加运算符来对查询中的数据进行排序和过滤:ORDER BY column1,column2,... ASC | DESC; 或在Tablix属性中

图片

仅保留将报表放置在Reporting Server上并发布,并将其添加到URL的末尾
键?rs:embed = true

这是我的报告:

图片

您可以在这里下载。

该解决方案的优点:

该目录可以托管在SQL Reporting Server上,现在它是完全免费的,可以单独下载并且可以与Express版本一起使用 ,或者将rdl报告放在Intranet上的任何aspx页上。

此外,您还将获得有关AD用户和部门正确填充的信息。 一切都是相关且美观的,主要是要及时将被解雇的用户转移到任何其他OU。

顺便说一句,为正确的层次结构指示了用户的部门编号,如果需要按职位进行严格排序,则可以使用任何其他AD属性。

可以动态组合字段,例如“名称”字段中的“名字”和“姓氏”,并快速将目录调整为公司颜色。

问候,谢尔盖

Source: https://habr.com/ru/post/zh-CN439012/


All Articles