RDLC系列之四 常见错误
解决 RDLC 报表自动分页表头显示问题
原文:http://www.th7.cn/Program/net/201207/85445.shtml
RDLC是用XML来描述一个报表相关的一切,只需要在<TablixMember>节点添加<RepeatOnNewPage>true</RepeatOnNewPage>子节点就可以,并设定值为true.
有些朋友在VS环境中无法打开XML编辑方式,这里我提示一下,你可以去工程目录下用记事本打开扩展名为RDLC的文件,也可以直接在VS中搜索<TablixMember>,并设定查找范围为“当前项目”,默认会在VS环境打开该报表
以下是报表部分节点
<TablixRowHierarchy>
<TablixMembers>
<TablixMember>
<KeepWithGroup>After</KeepWithGroup>
<RepeatOnNewPage>true</RepeatOnNewPage>
</TablixMember>
<TablixMember>
<Group Name="详细信息" />
</TablixMember>
</TablixMembers>
</TablixRowHierarchy>
左边的报表数据窗口没了怎么办?
在RDLC的设计界面,有个data菜单,选择show data sources 或 shift + alt + D 出来datasource工具栏
错误:无法显示子报表
网上解决方法:(不理解,记录下备用)
解决:在主报表里面,给子报表设置参数
尚未为数据源“Sales_Quotation_Detail”提供数据源实例
原因:为主表指定了多余的数据源
个人解决方法:
1.添加一个新数据源(如data.xsd),为数据源添加table,字段名必须和 后台数据源 的table的字段名完全一致
2.确认给子报表设置的参数名的准确性,大小写必须与数据源完全一致
Rdlc报表出现空白页解决方法
在使用RDLC报表时,碰到这种情况:当只有一页数据时,报表却显示两页,第二页除了报表头之外数据为空。然后,当有多页数据时,最后一页为空。
RDLC报表设计好后,在ReportViewer预览报表时,页数都正常;但在切换为整页模式时,常造成多了不少空白页出来。第一时间觉得不可思议,在ReportViewer看来正常,怎可能在整页预览时,格式会跑掉?如果在整页预览时格式跑掉,那在打印时也一定是这样的情形。ReportViewer会将RDLC所设计的报表文件显示其中,但和实际纸张打印时,并不是如此,因此时就要检查RDLC报表本身的大小。
1.先至Report.rdlc报表设计的页面,选择菜单上的[报表]->[报表属性],在[配置]的页签中记录着输出报表的纸张大小,预设应为A4直式的纸张(页宽:21cm,页高:29.7cm,左右上下边界:2.5cm),记下这些值。
2.检查Report.rdlc的属性窗口中[主体]属性的Size值,它的宽度Width要小于[报表属性]中的(页宽)– (左边界)– (右边界)。
3.调整后再整页预览看看,多调几次应就不会再产生太多的空白页了。
这个问题很奇怪,网上有很多解决方案,以下的方法可以解决此问题。
方法一:设置报表的属性 ConsumeConteinerWhitespace = True
第一种方法具体操作:
1,选中要修改的报表按F4 ,将下拉列表中的【主体】换选中【报表】
2,选择【报表】后就出现了ConsumeConteinerWhitespace 的属性,默认是false,改成True即可解决空白行的问题
方法二:在Row Group 中设置 Keep Together = False, 进入Advance Mode,设置所有Static成员的Keep Together = False
对于一些报表,调整Body的宽度和高度,直到和Report的宽度和高度差不多就行了。操作就是将body的边框拖到和Report平齐。
这么说来,这就是个非常简单的问题,是由于Body的宽度太宽或高度太高引起的。
附件截图设置RDLC报表属性
解决WIN7下添加Microsoft XPS Document Writer
最近做一个项目需要打印功能,但是又没有打印机来真实测试,就想起OFFICE里有虚拟打印机,可以直接用,解决方法很简单,如下:
控制面板-所有控制面板选项-管理工具,在这里双击打印管理,点打印服服务器,会发现在“驱动程序”里存在Microsoft XPS Document Writer,如图:
在打印服务器里面的“打印机”选项上右键-添加打印机,如图:
然后选择第三个单选按钮,下一步
下一步在“使用计算机上现有的打印机驱动程序”里选择【Microsoft XPS Document Writer】即可。如图:
最后一直下一步就可以了(当然也可以取消共享打印机和设为默认打印机)。
RDLC系列之四 常见错误的更多相关文章
- 《Visual C++ 2010入门教程》系列四:VC2010中初学者常见错误、警告和问题
<Visual C++ 2010入门教程>系列四:VC2010中初学者常见错误.警告和问题 这一章将帮助大家解释一些常见的错误.警告和问题,帮助大家去理解和解决一些常见问题,并了解它的 ...
- Sql Server来龙去脉系列之四 数据库和文件
在讨论数据库之前我们先要明白一个问题:什么是数据库? 数据库是若干对象的集合,这些对象用来控制和维护数据.一个经典的数据库实例仅仅包含少量的数据库,但用户一般也不会在一个实例上创建太多 ...
- 一个超复杂的间接递归——C语言初学者代码中的常见错误与瑕疵(6)
问题: 问题出处见 C语言初学者代码中的常见错误与瑕疵(5) . 在该文的最后,曾提到完成的代码还有进一步改进的余地.本文完成了这个改进.所以本文讨论的并不是初学者代码中的常见错误与瑕疵,而是对我自己 ...
- C语言初学者代码中的常见错误与瑕疵(5)
问题: 素数 在世博园某信息通信馆中,游客可利用手机等终端参与互动小游戏,与虚拟人物Kr. Kong 进行猜数比赛. 当屏幕出现一个整数X时,若你能比Kr. Kong更快的发出最接近它的素数答案,你将 ...
- 分数的加减法——C语言初学者代码中的常见错误与瑕疵(12)
前文链接:分数的加减法——C语言初学者代码中的常见错误与瑕疵(11) 重构 题目的修正 我抛弃了原题中“其中a, b, c, d是一个0-9的整数”这样的前提条件,因为这种限制毫无必要.只假设a, b ...
- C语言初学者代码中的常见错误与瑕疵(9)
题目 字母的个数 现在给你一个由小写字母组成字符串,要你找出字符串中出现次数最多的字母,如果出现次数最多字母有多个那么输出最小的那个. 输入:第一行输入一个正整数T(0<T<25) 随后T ...
- 要心中有“数”——C语言初学者代码中的常见错误与瑕疵(8)
在 C语言初学者代码中的常见错误与瑕疵(7) 中,我给出的重构代码中存在BUG.这个BUG是在飞鸟_Asuka网友指出“是不是时间复杂度比较大”,并说他“第一眼看到我就想把它当成一个数学问题来做”之后 ...
- C语言初学者代码中的常见错误与瑕疵(7)
问题: 矩形的个数 在一个3*2的矩形中,可以找到6个1*1的矩形,4个2*1的矩形3个1*2的矩形,2个2*2的矩形,2个3*1的矩形和1个3*2的矩形,总共18个矩形.给出A,B,计算可以从中找到 ...
- Python:常见错误集锦(持续更新ing)
初学Python,很容易与各种错误不断的遭遇.通过集锦,可以快速的找到错误的原因和解决方法. 1.IndentationError:expected an indented block 说明此处需要缩 ...
随机推荐
- Web打印控件
Lodop是什么? 有人说她是Web打印控件,因为她能打印.在浏览器中以插件的形式出现,用简单一行语句就把整个网页打印出来: 有人说她是打印编程接口,因为她介于浏览器和打印设备之间,是个通道和桥梁,几 ...
- English Training Material - 01
Building a relationship Cross-cultural understanding Eye contact In many Western societies, includin ...
- Volley网络连接
一.Volley a burst or emission of many things or a large amount at once Volley是Android平台上的网络通信库,能使网络通信 ...
- UIActionSheet 修改字体颜色
-(void)willPresentActionSheet:(UIActionSheet *)actionSheet { SEL selector = NSSelectorFromString(@&q ...
- Windows 7 与 Vmware Ubuntu 15.10_64 共享文件夹
设置共享文件夹 安装/更新最新的vmware-tools 安装 在ubuntu 内部会打开DVD ,里面的压缩包中包含vmware-toole. 先解压 ...
- 关于String StringBuffer StringBuilder
0. String对象的创建 1.关于类对象的创建,很普通的一种方式就是利用构造器,String类也不例外:String s=new String("Hello world&qu ...
- (Ios 实战) 自定义UITableView
自定义UITableView 分成两个部分 1 自定义UITableViewCell 继承UITableViewCell,同时提供接口,根据当前的数据,现实View 2 在UITableView中实 ...
- Effective Java 49 Prefer primitive types to boxed primitives
No. Primitives Boxed Primitives 1 Have their own values Have identities distinct from their values 2 ...
- mysql,sql server,oracle 唯一索引字段是否允许出现多个 null 值?
最近一个项目,涉及到sql server 2008,因为业务需求,希望建立一个唯一索引,但是发现在sql server中,唯一索引字段不能出现多个null值,下面是报错信息: CREATE UNIQU ...
- 解读Python发送邮件
解读Python发送邮件 Python发送邮件需要smtplib和email两个模块.也正是由于我们在实际工作中可以导入这些模块,才使得处理工作中的任务变得更加的简单.今天,就来好好学习一下使用Pyt ...