最近有不少朋友在后台问,公司里那套老系统自带的Crystal Reports到底怎么用,每次做月报都得求人帮忙。其实这东西没那么玄乎,我当初也是被逼着上手,踩了不少坑才摸出门道。今天就把我自己的学习过程整理出来,给同样被报表折磨的朋友一个参考。只要你跟着步骤走,不敢说变大神,至少日常那些销售统计、库存汇总、工资条打印,自己就能搞定。

先搞明白Crystal Reports到底能干啥
很多人一打开软件看到满屏的工具栏就慌了,其实你把它想成一个高级版的Excel就行。它最擅长的就是从数据库里把数据捞出来,按你想要的样子排好版,然后打印或者导出成PDF。比如你们公司用的是SQL Server或者Oracle,Crystal Reports可以直接连上去,不用先把数据导成表格。我第一次用的时候,就是帮财务拉一份全年费用明细,当时还傻乎乎地先导出Excel再排版,后来才知道直接连库就能出图,效率差了好几倍。
另外它有个好处是模板可以反复用。这个月做完的报表,下个月数据变了,只要刷新一下就能出新的,不用重新画表格。对于每个月都要交固定报表的人来说,这个功能真的能省下大把时间。
安装和新建报表时要注意的坑
安装过程没啥好说的,一路下一步就行。但新建报表的时候,第一个选项就会让人纠结:是用向导还是空白报表。我的建议是,头几次老老实实用标准报表向导,它会把连接数据、选字段、分组这些步骤拆开问你,不容易漏东西。等你熟了再玩空白报表,想怎么拖就怎么拖。
选数据源这一步特别关键。如果你连的是公司服务器,记得问清楚IT要连接字符串,或者让他们给你配好ODBC。我当时自己瞎试,把用户名密码填错了,折腾了一下午才发现是大小写的问题。还有,Crystal Reports对字段类型挺敏感的,日期字段如果数据库里存的是字符串格式,后面分组的时候会乱序,最好在数据库里就转成日期型。

分组和汇总才是报表的灵魂
光把数据列出来那叫清单,不叫报表。真正让老板满意的是分组汇总。比如按部门分组,每个部门下面列出人员明细,然后自动算个部门小计,最后再来个总计。操作就是在插入组那里选部门字段,然后右键字段选插入汇总,求和或者计数都行。
这里有个小技巧,如果你想让每个部门单独占一页,在组页眉的节专家里勾选“新建页之后”,打印出来就自动分页了。我之前不知道这个,打出来的报表部门之间连在一起,被领导说看着费劲。还有排序,分组之前先想好按什么排,不然组内顺序乱糟糟的,看着不专业。
公式字段其实没想象中那么难
一听到公式、函数,很多非技术出身的朋友就头大。其实常用的就那么几个。比如你要把姓和名拼在一起,用&符号连起来就行。要算百分比,直接写个除法。我常用的是If-Then-Else,比如金额大于一万的标个“大额”,否则标“普通”,这样筛选的时候一眼就能看出来。
写公式的时候注意大小写,Crystal Reports的字段名是区分大小写的,而且中文变量名有时候会出问题,尽量用英文或者拼音。还有就是括号要配对,少一个括号它报错能报得你怀疑人生。我建议写完先点检查,没问题再保存。

打印和导出时怎么设置才不翻车
报表做完了,最后一步是输出。打印之前一定要预览,看看页边距够不够,有没有字段被切掉。特别是横向报表,默认是纵向的,要在打印机设置里改成横向。导出PDF的时候,如果报表有图片或者特殊字体,最好嵌入字体,不然别人打开可能乱码。
还有个小细节,如果报表要发给别人看,而对方没有装Crystal Reports,那就导成PDF或者Excel。导Excel的时候注意,合并单元格可能会把分组结构打乱,最好选“保留格式”那个选项。实在不行就导PDF,最保险。

给新手的几个实在建议
别想着一次把所有功能都学会,先照着公司现有的报表模仿着做一遍。遇到问题就去翻自带的帮助文档,或者搜一下具体报错信息,大部分坑别人都踩过。另外,做好的报表文件记得备份,改坏了还能找回原来的版本。
最后说一句,Crystal Reports虽然界面看着老气,但胜在稳定,很多老系统都绑着它。花个两三天入门,以后每个月能省下好几个小时,这笔账怎么算都划算。希望这篇教程能帮你少走点弯路。


喜欢
高兴
鬼脸
呵呵
无聊
伤心