Micorsoft公司对新推出的Visual FoXPRo 9报表设计器作了显著地改进,同时又与老版本的Visual Foxpro保持了向后兼容性,新版本的报表设计器是一个新旧版本的混合体。
在本文中,你将了解报表设计器对新的数据环境、报表保护、用户界面、对象布局与数据分组功能的增强。最后,你将了解Visual FoxPro 9报表设计器的一个最有用的增强功能:多条明细区带(multiple detail bands)。
报表设计被一个新增的“Xbase报表设计器”的工具代替。它提供了一些新的对话框,并且比以前的版本更方便使用。它还提供了一些旧版本报表设计中所没有的新特色。你可以通过改变一个名为“_REPORTBUILDER”的系统属性来决定使用哪种报表设计器,如下所示:
*--假如要使用新版本的报表设计器
_REPORTBUILDER = HOME() + 'ReportBuilder.app'
*--假如要使用旧版本的报表设计器
_REPORTBUILDER = ''
报表输出引擎:与报表设计器一样,你可以控制是否选用新版本的报表输出引擎。但与报表设计器不同的是Visual FoxPro 9默认报表输出引擎为旧版本方式。主要是因为在新版本的输出引擎中使用了GDI+库,而老版本的输出引擎使用的是GDI库,使用老版本的输出引擎就可以让应用程序可以在不用版本的windows上显示出同样的输出效果。你可以用如下命令来切换你的输出引擎:
*--使用新版本的输出引擎
SET REPORTBEHAVIOR 90
*--使用旧版本的输出引擎
SET REPORTBEHAVIOR 80
在下文中我们假定使用的是新版本的报表设计器和输出引擎。
数据环境(DE)
Visual FoxPro9的报表设计器能与让多个报表共享同一个数据环境。数据环境能够以类的方式保存,并在需要的时候被报表载入。这为那些需要制定通用报表数据环境的应用程序提供了方便。
要将数据环境保存为一个类,首先你要为报表定义一个数据环境,然后激活数据环境窗口,并在“File”主菜单中单击“Save As Class...”选项。
这样系统会弹出一个新的对话框(参见图1)。在这种情况下,Save单选按钮组中只有“DataEnvironment”处于答应状态。
图1.使用“Save As Class”对话框指定要保存的类名以及所在的类库,并将指定报表的数据环境保存在这个类中。