水晶报表在本地测试没有问题,到了客户那儿纸张就变成A4了

wo331847512 2010-12-27 06:38:04
水晶报表在本地开发测试没问题,预览也是我自定义纸张那么大(220mm*138mm),装到客户那儿预览就变成A4了,怎么设置打印机也不行 ,打印出来纸张右边缺一部分,我的测试打印机是爱普生670k,客户的是爱普生630k,不知道是什么问题。哪位遇到这样问题的帮忙看看
...全文
139 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿泰 2010-12-29
  • 打赏
  • 举报
回复
再补充几句。

当然,也不一定非要现场开发,如果公司里有这种打印机的话,也可以在公司开发。。

说到这个我倒想起来,你先这样试试:

把客户的打印机,改成你开发时用的打印机同样的名称,并在上面设置一个自定义纸型,名称要跟你开发机器上的一样。
然后重启电脑,再试试。

我最后一次做这种类型的开发时2005年,现在不少细节记不大清楚了。。

阿泰 2010-12-29
  • 打赏
  • 举报
回复
CS模式下水晶报表的开发,对于自定义纸型确实不方便。
要实现原样预览,打印机的名称应该与设计时一致,而且纸型名称也要一样。
这个信息是绑定在报表上的,跟你后期在客户那里怎么设置打印机无关
除非用同型号打印机,部分不同型号也可以的。。设置一个同名称的纸型。(这句话有点矛盾好像,希望你能明白吧。。)。

如SP1234所说,这种问题应该在测试时就要暴露出来,因为客户用的打印机是千姿百态的。

就目前这个情况,我建议是这样的,现场开发。稍显笨拙,绝对实用。

其实没那么复杂,
你在现场用自己的电脑,连到客户的打印机上,针对这个打印机单独做一个rpt模板,替换掉你现在的模板就可以了。
具体操作就是在客户机上设置好一个纸型,然后打开一个报表模板,重新执行下打印机,纸型就完事了。几分钟的事。
当然,如果报表多了就麻烦。

当然,可以在程序里做参数配置,比如说,该客户机器是A,那么在程序里就调用A机器对应的模板,以此类推。


做这个之前,建议你用以下方法先试试

如果你用的是CR10及以后的版本,可以在 页面设置中,勾选“无打印机”。可能会有效。
我有阵子没做这种CS模式了,手边也没环境,你可以这样试试。

期待楼主分享下成果
  • 打赏
  • 举报
回复
“怎么设置打印机也不行”也不行,那么我能想到最好的做法是,把用户的打印机抱回来测试(或者自己找一台型号完全一样的)。等你建立了信心,那么在客户那里,把它所有其它打印机驱动全都删掉,重新按照你在公司里的做法、从安装驱动开始做起。
  • 打赏
  • 举报
回复
[Quote=引用楼主 wo331847512 的回复:]
水晶报表在本地开发测试没问题,预览也是我自定义纸张那么大(220mm*138mm),装到客户那儿预览就变成A4了,怎么设置打印机也不行 ,打印出来纸张右边缺一部分,我的测试打印机是爱普生670k,客户的是爱普生630k,不知道是什么问题。哪位遇到这样问题的帮忙看看
[/Quote]

还是在自己公司里测试好。或者,也许你们公司缺乏以为真正懂得测试的人。

正规地从测试触发,如何测试一个产品能不能适应不同默认打印机环境呢?可能至少要写出30个测试用例,然后再一一进行测试。

你的问题很含糊,难以现学现卖地就能解决什么问题。还是从平时的积累入手吧。
liujiang917 2010-12-28
  • 打赏
  • 举报
回复
网上有好多帖子介绍了相关的方法,还提供了相关的代码类。搜一下。
tyy283 2010-12-28
  • 打赏
  • 举报
回复
如果客户那里没有你那种自定义的纸张,应该会默认成A4纸吧
wo331847512 2010-12-27
  • 打赏
  • 举报
回复
我想按照我设置好的纸张打印,不知道重新写一个打印按钮怎么写,哪位有现成的代码给一段,着急用。谢谢了
wo331847512 2010-12-27
  • 打赏
  • 举报
回复
vs2005上自带的报表
阿泰 2010-12-27
  • 打赏
  • 举报
回复
用的是win程序?这个比较难弄。你用的是什么版本的水晶报表?

4,816

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧