公司高层决定,把用了多年的ERP系统,从繁体版本转换为简体版本。俺躬逢其盛,被分配到了 “ 修改报表 ” 的任务。
报表数量很多,将近600个。DB组同事们的做法大致是:把它们一个个从RPT文档里拷贝出来,放到 WORD / EXCEL 里面,进行简繁体转换。之后,再复制回Crystal Reports里面。此法的弊端有:动作多(需要来回地切换)、内容虽然还原了,但是字体/字号/颜色/下划线/粗体......等格式全部丢失,还得重设一遍、非常麻烦,所以效率极其低下。某同事上班8小时,只做了13个报表文件,就是很明显的证明。
为了又快、又好地完成任务,俺也是蛮拼的。首先把电脑的操作系统,从当了一年多小白鼠的Win10,换回了更久没用的XP,图的就是一个字:快。再把神马杀毒软件、加域、联网\Office等统统没装,更不切换操作系统的Unicode内核,就靠着《Crystal Reports 水晶报表 7.0》本身做事。两天之内,处理了240个报表,一天120个,效率煞是惊人。
那我是怎么做到的呢?请看如下步骤:
一、只管在Crystal Reports 7.0 版本里打开报表,映入眼帘的当然是满屏乱码:
二、全选屏幕上的所有控件。(按Ctrl+A没用的,只能从某个方位开始,按住鼠标不放,向对角线方向延伸。俺的习惯是从左上角一直拖到右下角)
三、在左上方的工具栏,点击向下的黑色三角箭头,选择字体:(根据公司要求,所有报表统一修改成 “ 宋体 GB2312”)
四、此时,原来那乱成一片的各Text,纷纷露出了它们的真颜(虽然还是繁体,但至少已经是汉字了)
五、技术活到此完毕,剩下的就是体力活了。在每一个文本控件上点击右键,会出现快捷菜单,选择第二项:“ Edit Text Object ”。然后再调出输入法,把旧字删除,输入对应的简体汉字即可。
当然此法也不是完美无缺的。演示给同事看时,他提出的 “ 也许会打错汉字 ” 固然存在可能,(他那种拷贝来、拷贝去的方法确实不用担心这点),更重要的,是容易出现 “ 黑框”:
好在它们只在修改过程中出现,只要有了存盘的动作,就会自行消失。另外重新打开看,也不会发现它们的存在。