posts - 61,  comments - 2033,  trackbacks - 0

报表设计与开发

Q: jdbc连接DB时的写法。

A: <env-entry>

<env-entry-name>jdbc/david</env-entry-name>

<env-entry-value>!oracle.jdbc.driver.OracleDriver!jdbc:oracle:thin:tjdba/tjdba@192.168.1.21:1521:david</env-entry-value>

<env-entry-type>java.lang.String</env-entry-type>

</env-entry>

 

Q: 发布到Server上,有记录数的限制,怎么办?

A: Crystal Management Console > Servers > Page Server ,取消max record limit的设定

 

 

Q:如何在Crystal Reports XI中设计带参数的报表

A: 请你先再一份报表中加入参数字段(Parameter Fields),然后先不要写任何的程序,先把报表发布到Crystal Report ServerBOE XI中,并使用它的Info View来观察一下整个参数处理的流程。

 

Q: 最好在设计(Design)页面进行字段格式的更动

A: 如果要对字段格式进行更改的话,最好不好直接在预览页面(Preview)上直接修改格式,因为在预览页面(Preview)上是马上会显示你所作的改变,特别是当你的数据量大或是一次要变更很多字段时,所以建议比较有效率的作法是在设计(Design)页面进行更动,再到预览页面(Preview)一次调整。

 

Q:如何使用参数?比如订单号由用户输入。

A:你可以参考ReportDocument.SetParameterValue()方法。

 

Q: 如果日期时间为字符型,如何显示为日期型?

A: 新建一个公式字段,然后调用一下函数即可。

 

Q: 导出文件时为何要两次才能成功导出?

    待解决

 

Q: 如果使用字段资源管理器: 参数字段、组名字段

 A:  组名字段不能在字段资源管理器右键编辑,必须选择组专家;

     参数字段可以作为条件,写法为: {?参数名称}

 

Q: 数据是否一直缓存在CR的某个区域?只有当你做了更改之后才会提示刷新?比如,打开一个报表,在不修改的情况下,预览数据的速度很快。但如果加上某一字段,则会弹出连接数据库的安全验证窗口。

A: 一.把报表上的随报表保存数据上的勾打上了,二.修改了报表,预览数据时会重新连接数据库,也可以把这个验证取掉。

 

Q: 换行—当字段过长,必须换行,但同一记录所占行数,必须以行数最多的字段为准。

A: 在字段格式里,把可以扩大勾选起来

 

Q: 在公式工作室里可以加上条件,但好像不接受like?

A: 可采用函数代替,比如InStr等。

 

Q: 如何使用公式工作室->函数->汇总里的布尔值条件、日期条件、时间条件

A:  可以用函数调用Sum ({T_CARD.PRICE},{T_CARD.CREATE_DATE} , "weekly"),

    其中{T_CARD.CREATE_DATE}类型要与布尔值条件、日期条件、时间条件对应。

Q: 如何设置每页显示几条记录?

A : 节专家:在以下内容之后新建页: recordnumber mod 10 = 0

子报表

Q: 使用子报表的正确时机为?

A: 由于使用子报表会影响整份报表的执行效率,除非当无法用正常关联图解法建立的表格关系时,例如你有一部份的客户数据存在IBM DB2数据库里,另一部份的客户数据在Access数据库里。子报表虽然嵌在主报表里,但在运作上它是一样会被当作一份单独的报表来执行。一旦当你的报表含有子报表之后,就表示在实际执行上,Crystal Reports至少会执行两份报表才能正确显示你要的内容。
  而子报表执行次数,会和你放置子报表的区段有相当关系。假如你把子表放置在报表首,因为报表首区段只会出现一次,再加上原来这份报表,表示Crystal Reports要执行两份报表才会产生你要的结果。
  若你将子报表放置在群组尾,而这层群组共有n组,则共有n+1份报表需要执行。更何况要是子报表是被放置在细目区段里,那执行的报表次数还会更多。

 

Q: 子报表之间如何连结

A: 当在建立连结关系时,Crystal Reports自动产生一个参数字段来做两者之间的桥梁。而主报表的连结字段会把数据内容传给参数字段,而参数字段在筛选条件里控制了子报表的连结字段。
如: 主报表的连结字段 --传数据-> 参数字段 = 子报表的连结字段

 

Q: 如何设定主报表和子报表之间的数据更新?

A: 有三个地方与主子报表之间的更新有关:
1.在菜单上的File->Options设定对话框中,报表(Reporting)页面里的 开启报表时重新  汇入子报表(Re-import Subreports When Loading Reports)这是个整体的选项,当勾选后即代表只要用Crystal Reports开启任一份含子报表之报表时,一定会更新子报表 的数据。
2.在设计(Design)页面上点选子报表,按右键选格式子报表(Format Subreport),在对话 框中的子报表(Subreport)页面,开启时重新汇入(Re-import When Opening)可针对该子报表做单独的设定。
3.在设计(Design)页面上点选子报表,按右键选重新汇入子报表(Re-import        Subreports),这是个实时的动作,当按下些项时,Crystal Reports会立即重读子报表 的数据。


 

服务端……
posted on 2005-12-07 16:57 鱼上游 阅读(3556) 评论(2)  编辑  收藏 所属分类: 爪哇世界探险


FeedBack:
# 如何变行
2007-03-02 10:15 | 连宁
我现在做的一个报表,如果数据小于等于10的时候显示10行,多于10行时显示20行,最多不会超过20行,请问应该如何解决?  回复  更多评论
  
# re: 水晶报表系列文章--FAQ
2007-05-17 20:38 |
请教高手,我用vb6+水晶报表9做了一个项目,用到了子报表,请教怎么传递子报表参数,先谢了.czbok@163.com  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
 
<2005年12月>
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567

常用链接

留言簿(82)

随笔分类(59)

文章分类(21)

相册

收藏夹(40)

GoodSites

搜索

  •  

积分与排名

  • 积分 - 1265745
  • 排名 - 22

最新评论

阅读排行榜