Adobe ColdFusion Reports(2)

  上一篇随笔只是用报表向导生成了一个最简单的报表,数据都是从数据库中直接获取,我们知道,数据库中存储数据可能比实际显示要简洁,因此显示的数据格式等还需要进一步完善。

  默认情况下,用报表向导生成的报表列标题使用的是查询的列名,我们可以通过更改Column Header对其进行修改。双击Column Header部分的值便可进行修改。

·LASTNAME -> Artist Name

·ARTNAME -> Title

·DESCRIPTION -> Description

·PRICE -> Price

·ISSOLD -> Sold?

  ISSOLD字段存储的是”0/1”表示是否。我们需要将其转化为”Yes/No”,这样更加直观,毕竟用户可不想知道”0/1”分别表示什么意思。双击Detail中的query.ISSOLD单元格,调出Expression Builder. 找到Function -> Display and Formatting -> YesNoFormat, 双击,结果如图1. 单击OK. 设定完毕。

图 1

  下面用同样的方法将PRICE字段格式化为带美元货币符号的数值。只需将原来的query.PIRCE改成DollarFormat(query.PRICE).

  然后将组中的query.LASTNAME改为query.FIRSTNAME &” “&query.LASTNAME, 这样就可以显示艺术家的全名了。

  下面我们进行分页处理,使每个艺术家的作品进行分页显示。操作很简单,只需要使用Report -> Group Management, 如图2. 

图 2

  前面提到过“组”的很大一个作用就是可以对该组进行摘要描述,比如我们在这里可以对每个艺术家的作品售出的价格进行汇总。

  打开Fields and Parameters面板(可以通过菜单栏的Window -> Fields and Parameters打开)。并添加一个Calculated Field. 如图3. 

图 3

  在LASTNAME组的Footer添加一个新的字段,在弹出的Add Field对话框中选择calc.Sold, 别忘了对其进行美元货币符号格式化。此处注意是在LASTNAME组的Footer, 不要搞错位置。在刚才添加的字段前面添加一个标签”Total Sales”.

  最后我们将报表头的”Company Name”替换为一个logo图片。删掉原来的文本框,加入一个Image控件,图片路径选择" C:\ColdFusion9\wwwroot\cfdocs\getting_started\photos\somewhere.jpg".

  此时F12预览报表,效果如图4. 

图 4

  可以看到按照艺术家分组,每组一页,并且相应的汇总信息也正确的显示出来。

posted @ 2010-02-26 20:54  spoony  阅读(657)  评论(0编辑  收藏  举报