众所周时,ActiveReports 具有超强表达式计算的能力,可以应用于报表设计的方方面面,如数据运算,数据判断等,但没有人想到,这还只是开始,在现实中很多客户都是在做CRM 或ERP系统,针对的是不同客户,相同数据结构不同数据的应用场景,这个时候我们需要为客户提供数据权限控制的能力,根据用户区分实际存储的数据库和数据集。
在我们的技术人员对于AR的不断挖掘中,发现了这一需求的实现方法,今天我们来学习参数化数据源。
本身数据库连接字符串是一个常量,而现在我们要将他根据查看的用户,来动态链接到相关数据库当中。即将固定连接字符串,修改为参数化数据库连接字符串。
1. 设计好静态数据源连接字串和数据集
数据源
数据集
2. 添加报表参数
报表参数作为接受用户ID或用户角色的变量
3.修改数据源,将连接字串设置为表达式,如
="User Id=" & Parameters!dbn.Value & ";Password=" & Parameters!pwd.Value & ";Data Source=localhost/orcl;"
="data source=10.32.2.28;initial catalog=" & Parameters!dbn.Value &";user id=sa;password=123456;"
模板示例:
了解ActiveReports产品更多特性:
下载产品体验产品功能: