没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
RDLC 报表随笔……
转载感谢网友”蜡人张”
(一)
开发中,用什么做报表?
可能的回答是 ,自紧密”集成 后,这可能是
开发人员比较单一的选择。但是,这种集成似乎并不非常紧密,网络上充斥着关于使用
的抱怨,太复杂也许是其最为令人诟病的地方,自定义性比较差也不能为
程序员们所容忍。
当然,必须承认 的功能还是非常强大的,被 收购
以后,商业职能的成分也在逐渐增加,也形成了一定规模的用户群。
进入 !""# 版本以后, 与 $% 的结合更“紧密”
了,至少我们看不到那个讨厌的注册窗口了。但是,&' 似乎并不容忍在自己的超
级工具中竟然没有报表工具,于是 ( 出现了,我把它的报表称为
%) 报表。
在 !""# 之前,*)+,+ 中已经提供了一种被称
为报表定义语言(%-),,%))的语言;在 !""# 中,
&' 提供了针对这种报表的设计器,并提供了在 ./0 和 ./0 中使用这
种 报 表 的 能 力 。 &' 将 这 种 报 表 的 后 缀 定 为 %) , %) 仍 然 是
%-),, 的缩写,那么 代表什么呢? 代表 1 ,,凸
显了它的客户端处理能力。
这种报表的易用性和可定制性让我们完全有理由放弃 ,让我们来看
看它的强大功能吧:
2、简单易用的控件,特别是 控件,非常方便字段在报表上的排列;
!、灵活的可定制性,用 3&) 来描述一个报表相关的一切,不用说了吧?
4、高度可编程性,在你的项目中,甚至不需要有一个报表文件,通过代码就可以实现报
表生成、预览和打印等一系列操作;
5、支持 %6,6 数据钻取功能;
#、导出的 7 文件格式非常完美,任何其它报表在这方面都不能与之比拟,而且并不
需要安装 7;
889偷偷懒,其实我并不擅长总结某某的特点,我只能从实际经验中得到一点点
结论,而且我也不原意去抄袭帮助中的 (/,呵呵……:
在以后的几篇随笔中,我将结合最近一段时间使用 %) 报表的经验继续探讨相
关的一些问题,大致内容包括:报表设计器的使用、) 的一些相关操作,如何
自定义纸张等等,欢迎大家提出参考意见。
(二)
需要说明的是,现在关于 !""# 中的 ( 的内容非
常少,我只能按照自己的理解来说一些东西,这其中肯定会有一些偏差,欢迎各位的批评
指正。另外,我所涉及的内容都是关于 ) 的,对于 + 没有进行研
究。
在这篇随笔中,我主要分析一下 ;( 上的几个经典例子,我们可以从中看
到 ( 的强大功能:HH
2、.),<=
这是一个比较典型的 )<> 应用,我们可以看到 %) 报表强大的 6 和
+, 功能。当然了,例子中解析 .4 标准日志文件的代码也非常有借鉴意义。这
个 ? 在 我 的 随
笔 6@AA(7 ,0A6+A!""BA"2A2CA4!"!D"60 中曾经提到过,
不再详述。HH
!、子报表HH
展示如何使用子报表显示主记录的详细信息,这种应用很像 < 中的子报表功能。
主要使用 >, 事件为子报表提供数据。HH
4、钻取报表HH
钻取报表是通过设置 +,E)F和 >0 来实现的,通常在
)<> 应用程序中很有用。HH
5、具有子报表的钻取报表HH
这个例子实现的功能类似 7 中数据透视表>+的功能,在一个复杂的
交叉表中可以进行时间和商品两个维度的向下钻取。这在别的报表中恐怕是很难实现的。
如图所示,HH
#、引用外部代码块H
此 示 例 演 示 从 另 外 一 个 类 G 中 读 取 函 数 返 回 值 到 报 表 中 : 首 先 , 使 用
) 的 < & $<%0 方法允许 G 类中的
方法在 ( 中执行,然后在报表中使用 77 控件的 节点调用 G
中的静态方法 / 在报表中显示其返回值。H
另外一个相关的示例基本上与此相同,只不过在 G 类中访问一个文本文件并将该
文本文件中的字符显示在报表中H
B、导出到 7
%) 报表导出到 7 中的效果非常好,曾经看到另外一个报表设计器(好像就是
)导出为 7 文件后的效果非常差,单元格根本不对齐,用户无法在其
基础上进行二次操作,而 %) 报表导出的 7 文件就没有这个缺点,而且基本上完全
保留了原报表设置的格式。如图所示,
可以直接使用 ( 控件自带的按钮生成 7 文件,也可以使用如下代
码来完成操作:
&,./0.,9:.,H
,9:0$ H
,&0H
, ,H
,/07H
9:I6() J7J&0
,/070$ .
,H
,/>6IKJ%@L7JH
,0$/0'I(/0/>6/&
M
'."),6H
N
对于 ) 的 方法,以后的随笔中将进行详细阐述。H
O、交互排序H
在 %) 报表的众多交互功能中,这个功能是比较新颖的,终端用户可以通过报表
中列标题上的图标进行数据的排序,而预览及打印的效果完全取决于用户的排序。 9此处好
像有一个 ,,即对数据进行一种排序后的预览效果会保持不变,除非再次开启这个应用
程序并重新排序。:而这一切不需要在代码中做任何操作,只需要在报表定义文件中添加
PGQ节并指定相应的 7 和 7。
D、 新闻阅读器
用 ( 实现 新闻阅读器?是的!如图所示,H
剩余63页未读,继续阅读
xiang
- 粉丝: 2
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页