找回密码
 立即注册

QQ登录

只需一步,快速开始

lunew

初级会员

38

主题

135

帖子

385

积分

初级会员

积分
385
lunew
初级会员   /  发表于:2016-3-9 15:27  /   查看:6024  /  回复:11
数据库是sqlserver
1. 设定了报表参数param1和param2, 都是integer类型;新建一个数据集,用这两个参数做加减,例如set @i = @param1 - @param2, 竟然报错说无法对nvarchar类型做减法, 所有传入的数据集参数都是nvarchar类型的吗,是什么规则,不是自动根据报表参数类型来的? 一定要我在查询中用convert把参数转换吗?


2. HTML5Viewer控件,我想把工具条最左边的参数和搜索按钮隐藏,打印按钮也隐藏,控件的js文档里没看到相关功能,要怎么做

3. 报表的分页,只能在最外层的报表的属性上设置PageSize的固定值吗,查看报表时如果报表内容超出了PageSize的宽或高就自动在下一页了是吧?
但动态列的报表,宽度相差很大,我们不想设一个很宽的PageSize, 有很多空白,报表的宽度不能根据报表内容宽度来自适应吗, 在宽度上始终显示在一页上,应该怎么设置? 同理有时也希望高度能自适应,始终在一页上,能否做到?


谢谢!

11 个回复

倒序浏览
gw0506
超级版主   /  发表于:2016-3-9 22:52:19
沙发
很抱歉,由于我们的原因这个问题还没有处理完。明天上班第一时间处理完成并回复你。
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-3-10 10:17:46
板凳
本帖最后由 Lenka.Guo 于 2016-3-10 10:18 编辑

抱歉,回复晚了。
1. 如果参数类型正确整形,是不会报错的,我在这边试是没有问题的。



2. HTML5Viewer 控件部分按钮是可以隐藏的。需要修改应用的GrapeCity.ActiveReports.Viewer.Html.js 文件

(1)搜索“Toolbar”


(2)以Button为单位,删除对应的按钮,删除时注意,不要误删除一些按钮节点,建议运行程序后,在浏览器中追踪具体按钮来删除。
<button class="btn btn-default" data-bind="command: toolbar.search" title="%search%">\n               
                <span class="glyphicon glyphicon-search" />\n</button>
注意,修改JS 文件之后,运行程序,首先需要强刷浏览器,修改JS文件之后会应用到整个项目。
        
3. 可设置报表预览方式为“连续模式”




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
lunew
初级会员   /  发表于:2016-3-10 11:39:51
地板
本帖最后由 lunew 于 2016-3-10 11:42 编辑

1. 我用的是sqlserver做为数据源,再次测试仍然是一样的问题,这是和数据源sqlserver有关吗

2. 你这样改是所有地方都隐藏了吧,我想要的是开关功能,某些报表上做隐藏,没关系我再想其他办法把

3. 这个问题比较关键,问题不是预览的时候,而是在页面上真正显示报表的时候
我试过了,如果PageSize宽度不够,仍然会显示成两页啊,我需要的是只显示一页,页的宽度根据内容自适应,要怎么设置?


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-3-10 16:08:16
5#
1. 与数据库无关,是可以正常使用没有问题的。您可以先在SQL Server中测试您的SQL 语句是否正确,如果正确再在报表中使用,如果有同样的错误,请将您的错误截图上传和报表模板上传。

3. PageSize无法根据报表内容来自动调整宽度,必须在设计时指定,这样设计的目的是因为报表涉及打印功能,打印时有具体的纸张限制,所以设计时必须指定PageSize。如果您想让PageSize来根据报表内容,自适应宽度。您可以在后台代码中根据数据集列数设置PageSize.width属性。
回复 使用道具 举报
lunew
初级会员   /  发表于:2016-3-10 16:58:50
6#
1. 错误的例子见附件,dataset2这个数据集,报错截图就在上面的4楼
这个如果不能解决也没关系

2. 关键是这个,怎么用程序设置, 我用的是RDL报表,在设计器旁边的脚本里可以吗
根据数据集的数据数量,或者矩表列的数量,设置PageSize, 要如何写能给个例子吗

谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-3-10 18:10:57
7#
自定义纸张大小给您制作个Demo吧。
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-3-11 10:17:07
8#
本帖最后由 Lenka.Guo 于 2016-3-11 10:19 编辑

1.产品博客里面有自定义纸张大小,可参考其实现思路:http://blog.gcpowertools.com.cn/ ... namic_PageSize.aspx

2. 您上传的报表模板,因为设置的是共享数据源,我在这边没办法看到数据集设置方式,能否做一个简单带数据的模板。还有在数据集中写SQL 语句,可以先放在SQL Server中进行验证,先看看SQL Server是否能正常执行。
回复 使用道具 举报
lunew
初级会员   /  发表于:2016-3-11 14:49:41
9#
本帖最后由 lunew 于 2016-3-11 14:56 编辑

1. 例子我看了,但它是在.net后台事件里做的,做的是打印的控制
而我们用的是HTML5Viewer,首先这个没有后台事件把,我们不是要控制打印,是要控制HTML5Viewer控件展示报表的时候,根据数据集的数据数量,或者矩表列的数量,自定义PageSize, 如4楼的截图,不希望因为宽度导致显示成2页
能否有个这样的demo
谢谢!

2. 我6楼上传的例子就应该可用,你只需要把数据源改成实际的sqlServer,然后DataSet2就可以用,它里面的查询把注释的部分反注释即可,在我这里就是报错的,报错截图如4楼

评分

参与人数 1金币 +500 收起 理由
Lenka.Guo + 500 赞一个!

查看全部评分

回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-3-11 17:14:53
10#
1. HTML5Viewer中如果使用基于代码的区域报表模板,可以做到根据数据量在报表类里面设置纸张大小,但如果您使用的是RDL 报表和页面报表,就无法设置,其实,固定页面大小就是为了用户在打印时, 能够适配实际的纸张。建议您,将报表纸张按最大数据来设计宽度,就可以避免显示成2页

2. 感谢您反馈的SQL Server参数类型,因为将reportParamter 传到 数据集中就已经修改成字符串类型了,所以会导致错误。建议您在为 @p1 和@p2 赋值时,先对reportParameter 进行转换。如附件


为了表示感谢,奖励500金币

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部