VisualFoxPro报表设计.ppt

上传人:牧羊曲112 文档编号:5452430 上传时间:2023-07-08 格式:PPT 页数:70 大小:1.15MB
返回 下载 相关 举报
VisualFoxPro报表设计.ppt_第1页
第1页 / 共70页
VisualFoxPro报表设计.ppt_第2页
第2页 / 共70页
VisualFoxPro报表设计.ppt_第3页
第3页 / 共70页
VisualFoxPro报表设计.ppt_第4页
第4页 / 共70页
VisualFoxPro报表设计.ppt_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《VisualFoxPro报表设计.ppt》由会员分享,可在线阅读,更多相关《VisualFoxPro报表设计.ppt(70页珍藏版)》请在三一办公上搜索。

1、Visual FoxPro 数据库、报表设计教程,高得软件,教程目录,第三章、vfp 数据表、字段类型,第一章、报表设计器应用,第二章、vfp 常用函数,第一章 报表设计器应用,1.创建报表2.修改报表3.预览和打印报表,预览和打印报表,创建报表,1.创建报表,报表简述 报表是将需要的数据表格化的重要工具,包括两个基本组成部分:数据源和布局。报表布局定义了报表的打印格式。数据源通常是数据库的表,也可以是视图、查询或临时表;创建报表的过程包括定义报表的样式并指定数据源,系统将报表样式保存在报表文件中,报表文件的扩展名为.frx。,(1)利用报表设计器创建报表 报表设计器的启动 可用下述三个方法之

2、一打开“报表设计器”1)在“项目管理器”中选择“文档”选项卡中的“报表”,单击【新建】按钮,在随后弹出的“新建报表”对话框中,单击【新建报表】按钮。,2)使用“文件”菜单的“新建”菜单项,打开“新建”对话框,在对话框的“文件类型”栏中选择“报表”,单击“新建文件”按钮。,3)在命令窗口中输入:CREATE REPORT,也可用命令打开报表设计器:格式:Modify Report 用“快速报表”命令创建报表 方法:打开“报表设计器”,在“报表”菜单中选择“快速报表”命令。报表设计工具栏 系统在打开“报表设计器”时,会同时打开“报表设计器”工具栏。,设置报表数据源一般情况下报表总是与一定的数据源相

3、联系的。方法:打开“报表设计器”,右击选择“数据环境”命令,在“数据环境设计器”中右击,选择“添加”命令。在数据环境中的数据源,将在每一次运行报表时被自动打开。,默认情况下,“报表设计器”显示三个带区:页标头、细节和页脚注。报表带区(report band)是指报表中的一块区域,可以包含文本、来自表字段中的数据、计算值、用户自定义函数、图片、线条等。报表上可以有各种不同类型的带区,每一个带区的底部有一个分隔栏。带区名称显示在靠近蓝箭头的栏上,蓝箭头指示该带区位于栏之上,而不是之下。利用不同的报表带区,可以控制数据在报表页面上的打印位置。,报表布局利用“报表向导”或“快速报表”都可以生成一个基本

4、报表,但是,所生成的报表不一定能满足设计的要求,用户可以在“报表设计器”里对报表布局进行更深入的设计。修改报表布局包括:设置报表数据环境、修改报表带区、修改或添加控件、调整控件位置和大小、定义字段格式、更改报表中的字体、添加线条、矩形和圆形、向报表添加图片以及向报表添加注视、在布局上分组数据等。,报表带区 认识报表的结构。有些是重复的,有些只显示一次。带区的作用主要是控制数据在页面上的打印位置;在打印或预览报表时,系统会以不同的方式处理各个带区的数据,例如:对于“标题”带区,系统只在一个报表中打印一次该带区的内容。在每一个报表里,都可以添加或删除若干个带区。,工资发放表,发放日期:2005年1

5、1月28,制表人:王晓华,主管:张长江,表头部分,主体部分,多条记录重复,表尾部分,在认识一个报表的各部分以后,才能有效地对应到报表设计器中的各带区,添加标题或总结带区:执行“报表”菜单中的“标题/总结”命令,选中“标题带区”复选框。表示向表中添加一个“标题”带区,如果希望把标题内容单独打印一页,还要选中“新页”,同样可以设置“总结带区”。系统自动把“标题”带区设置在报表顶部,而把“总结”带区设置在报表尾部。,添加组标头或组注脚带区:单击“报表”菜单中的“数据分组”命令。弹出“数据分组”对话框,在对话框中输入分组表达式,报表则添加多个“组标头”带区,同样可设置“组注脚”带区。调整带区高度:双击

6、需要调整高度的带区标识栏,屏幕显示一个对话框,在对话框的“高度”框中可以调整高度;也可用拖动法改变。“带区高度保持不变”复选框:(双击带区)选中可以防止报表带区因为容纳过长的数据而移动。,设置报表变量 用户可以在报表中创建变量,保存打印报表时所计算的结果。使用“报表”菜单中的“变量”命令,可以添加新的变量,改变或删除已有变量,或更改变量的计算顺序。,当变量建立完成后,要将变量加入到报表中去,可按以下步骤操作:在“报表设计器”中,选择“报表控件”工具栏的“域控件”按钮。在报表中选定要添加域控件的位置。在弹出的“报表表达式”对话框中,在“表达式”框输入新添加的变量,或单击其右边的按钮,在弹出的“表

7、达式生成器”中选中新建的变量。单击“确定”按钮,则新变量被添加到报表的指定位置上。,页面设计方法:单击“文件”菜单中的“页面设置”命令。在“页面设置”设置对话框中,设置报表的列数、列宽、页面布局、对象间隔、页边距;可以单击“打印设置”按钮,在弹出的“打印设置”对话框中对打印纸张、打印方向等进行设置。与所用的打印机支持的纸宽有关系。,报表控件报表控件工具栏 默认情况下系统在打开一个“报表设计器”的同时会打开“报表控件”工具栏,在设计报表时要经常使用该工具栏所提供的功能。,2.“报表设计器”工具栏和“报表控件”工具栏在报表的设计环境中,最常用的控件工具是“报表设计器”工具栏和“报表控件”工具栏。如

8、果在启动“报表设计器”时没有出现如图的两个小窗体,可通过“显示”菜单下的“工具栏”选项来打开“工具栏”窗口。“报表设计器”工具栏和“报表控件”工具栏所包括的按钮及其说明分别见下表 图“报表控件”和“报表设计器”控件,域控件用于在报表中添加一个数据项,可以是表中的一字段,也可以是一个表达式,类似一个文本框。简单方法:往报表中添加表或视图的字段时,可以打开报表的“数据环境”选中表或视图,然后把相关的字段拖放到指定的带区里。标签控件标签控件用于输入报表的标题、字段的说明性文字等。,OLE对象一个OLE对象,可以是图片、声音、文档等,在Visual FoxPro的表中可以包含这些对象,这就意味着报表应

9、该能够处理OLE对象。人员的照片、商品的商标等,都可以以图片的形式添加到报表中去。线条、矩形和圆型为了提高报表的可视效果,可以使用“报表控件”工具栏提供的添加线条、矩形和圆形工具实现。,三、报表分组设计好报表基本布局后,可以通过指定字段或字段表达式来给记录分组,分组显示可以使报表更加便于阅读。使用“报表设计器”可以为报表添加一个或多个组、更改组的顺序、重复组标头以及更改或删除组带区等。,建立单个组在“报表”菜单中选择“数据分组”命令,弹出“数据分组”对话框。在对话框的“分组表达式”框中输入表达式,或单击其右侧的按钮,在弹出的“表达式生成器”中创建分组表达式。在“组属性”框中,选定需要设置的属性

10、,单击“确定”按钮。,建立多个组在“报表”菜单中选择“数据分组”命令,弹出“数据分组”对话框。在对话框的“分组表达式”框中输入多个表达式,或单击其右侧的按钮,在弹出的“表达式生成器”中创建多个分组表达式。在“组属性”框中,选定需要设置的属性,单击“确定”按钮。,更改组带区及分组顺序如果要修改组带区,可以选择“报表”菜单中的“数据分组”命令,在弹出的“数据分组”对话框中,插入或删除分组表达式,即添加删除组带区;也可以用鼠标拖动分组表达式左边的按钮,将分组表达式移动到新的位置上,即更改分组顺序。,四、编辑报表添加报表控件前面已经讲过可以用“显示|数据环境”命令,然后选择需要的字段拖到报表中,也可以

11、“报表控件”工具添加。,此时出现页标头、细节、页注脚3个带区。,此带区为表头的名称,可改写,此带区是取表中相应字段的值,为便于输入报表名称:“价格情况表”,选定“报表”菜单中的“标题/总结”,添加一个标题带区,报表设计器中最多可有9个带。,选中此按钮可在标题带区中定位,并输入标题,选中此按钮可在带区中划表格线,若要打印报表只需选择“报表”菜单中的“运行报表”或单击右键选择“打印”。若要预览,则单击右键,选择“预览”。此时可在屏幕显示报表如下:,报表控件操作选择、移动和调整控件的大小选择:单击控件,选中一个控件;在控件周围拖动鼠标,用虚框包围控件,或按住Shift键逐个单击控件,则选中多个控件。

12、移动:选中控件,拖到报表带区中的新位置。调整:选中控件,拖动边框。,复制、删除报表控件复制:选中控件,单击“编辑复制粘贴”命令。复制的控件显示在原控件的下方,然后将其拖动到报表的合适位置。删除:选中控件,单击“编辑|剪切”命令,或按Del键。,格式化控件定义控件格式方法:双击域控件,弹出“报表表达式”对话框,单击“格式”文本框右边的按钮,弹出“格式”对话框,在对话框中选择字段类型(字符型、数值型、日期型),再选择适当的格式“编辑选项”。,调整控件中的文本该调整并不改变控件在报表中的位置,只用于改变控件中的内容在控件中的对齐方式。方法:选中控件,单击“格式文本对齐方式”,从子菜单中选择需要的对齐

13、方式。,改变字体用以改变每个域控件的文本或标签控件的字体和大小,以及改变整个报表的默认字体。方法:选择控件,单击“格式字体”命令。改变控件颜色在报表设计器中,可以改变域控件、标签控件、直线或矩形的颜色。方法:选择要改变颜色的控件,在调色板中选择所需的前景和背景颜色。,五、报表输出报表预览在“报表设计器”设计报表的过程中,可以随时预览报表,其具体操作如下:单击“显示预览”命令,或单击“常用”工具栏上的“打印预览”按钮,或用右键单击在弹出的快捷菜单中选择“预览”,屏幕将显示报表的页面样式,并弹出“打印预览”工具栏。,报表打印要打印报表时,首先要打开报表,然后在系统菜单上单击“文件|打印”命令,或在

14、报表快捷菜单上选择“打印”命令,或在“打印预览”工具栏上选择“打印”按钮,屏幕弹出“打印”对话框。在“打印”对话框中,可以设置“打印范围”和“打印份数”。单击“属性”按钮,会弹出“属性”对话框,在对话框中可以设置纸张尺寸大小、方向、纸张来源和打印精度等选项。,3、命令法调用报表有时,需要用命令法调用一个报表,如在一个菜单中,调用一个报表等。命令法如下:Report form 报表文件名 preview 打印预览Report form 报表文件名 to printer打印Report form 报表文件名 to printer prompt打印对话框,VFP常用函数,IIF、ROUND、INTS

15、UBSTR、LEFT、RIGHT、ALLTRIM、LENCTOD、DTOC、CTOT、TTOC、TTODEOF、EMPTY、SPACE,LEN()函数返回字符表达式中字符的数目。LEN(cExpression)返回值数值型参数cExpression 指定字符表达式,len()函数返回其字符数目。备注len()函数可用于确定字符表达式的长度。,示例LEN(con)=3LEN(con)=4LEN(中)=2,ALLTRIM()函数删除指定字符表达式的前后空格符,并且返回删除空格符后的字符串。ALLTRIM(cExpression)返回值字符型参数cExpression 指定删除首尾空格的字符表达式。

16、备注使用 ALLTRIM()函数能确保删除用户输入数据首尾的空格字符。,示例ALLTRIM(con)=con)ALLTRIM(con)=conALLTRIM(中)=中ALLTRIM(中)=中,LEFT()函数从字符表达式最左边一个字符开始返回指定数目的字符。LEFT(cExpression,nExpression)返回值字符型参数cExpression 指定字符表达式,left()函数从中返回字符。nExpression 指定从字符表达式中返回的字符个数。若 nExpression 的值大于 cExpression 的长度,则返回字符表达式的全部字符。如果 nExpression 为负值或 0

17、,则返回空字符串。,示例LEFT(Read,3)&显示Rea,RIGHT()函数从一个字符串的最右边开始返回指定数目的字符。RIGHT(cExpression,nCharacters)返回值字符型参数cExpression 指定一个字符表达式,right()函数从中返回最右边的若干字符。nCharacters 指定要从字符串中返回的字符数目。如果 nCharacters 大于 cExpression 的长度,right()函数返回整个字符表达式。如果 nCharaters 为负数或 0,right()函数返回空字符串。备注返回的字符从右边最后一个字符开始,包含指定数目的字符。,示例RIGHT(

18、Read,2)&显示ad,SUBSTR()函数从给定的字符表达式或备注字段中返回字符串。SUBSTR(cExpression,nStartPosition,nCharactersReturned)返回值字符型参数cExpression 指定要从其中返回字符串的字符表达式或备注字段。nStartPosition 指定返回的字符串在字符表达式或备注字段 cExpression 中的位置,cExpression 的第一个字符是位置 1。如果 TALK 设置为 ON,并且 nStartPosition 大于 cExpression 中的字符数目,那么 Visual FoxPro 产生错误信息;如果 T

19、ALK 设置为 OFF,那么返回一个空字符串。,nCharactersReturned 从 cExpression 中返回的字符数目。如果省略了 nCharactersReturned 参数,那么返回字符表达式结束前的全部字符。备注SUBSTR()从一个字符表达式或备注字段中返回一个字符串。该字符串起始于字符表达式或备注字段的指定位置,到指定数目字符结束。示例STORE abcdefghijklm TO mystringCLEAR?SUBSTR(mystring,1,5)&显示 abcde?SUBSTR(mystring,6)&显示 fghijklm,ROUND()函数返回四舍五入取整到指定小

20、数位数的数值表达式。ROUND(nExpression,nDecimalPlaces)返回值数值型参数nExpression 指定要圆整的数值表达式。nDecimalPlaces 指定 nExpression 圆整到的小数位数。如果 nDecimalPlaces 为负数,则 ROUND()返回的结果在小数点左端包含 nDecimalPlaces 个零。例如,如果 nDecimalPlaces 为-2,那么小数点左端的第一和第二个数字(个位和十位)均为 0。备注ROUND()返回的值有 nDecimalPlaces 个小数位。ROUND()忽略由 SET DECIMALS 指定的小数位。,示例?

21、ROUND(1234.1962,3)&显示1234.196?ROUND(1234.1962,2)&显示1234.20?ROUND(1234.1962,0)&显示1234?ROUND(1234.1962,-1)&显示1230?ROUND(1234.1962,-2)&显示1200?ROUND(1234.1962,-3)&显示1000,INT()函数计算一个数值表达式的值,并返回其整数部分。INT(nExpression)返回值数值型参数nExpression 指定 INT()要计算的数值表达式。,示例CLEAR?INT(12.5)&显示 12?INT(6.25*2)&显示 12?INT(-12.5

22、)&显示-12STORE-12.5 TO gnNumber?INT(gnNumber)&显示-12,EOF()函数确定记录指针位置是否超出当前表或指定表中的最后一个记录。EOF(nWorkArea|cTableAlias)返回值逻辑型参数nWorkArea 指定表所在的工作区号。cTableAlias 指定表的别名。如果指定工作区中没有打开的表,则 EOF()函数返回“假”(.F.)。如果没有指定工作区或别名,则检查当前选定工作区中打开的表,看是否到达了表的最后一个记录。,EMPTY()函数确定表达式是否为空值。EMPTY(eExpression)返回值逻辑型参数eExpression 指定

23、EMPTY()函数作用的表达式。可包含字符、数值、日期或逻辑表达式,也可以是已打开表的备注字段或通用字段的名称。当表达式取下列值时,EMPTY()函数返回“真”(.T.):,SPACE()函数返回由指定数目的空格构成的字符串。SPACE(nSpaces)返回值字符型参数nSpaces space()函数返回的空格数目。nSpaces 最大值的唯一限制是内存容量。,IIF()函数根据逻辑表达式的值,返回两个值中的某一个。IIF(lExpression,eExpression1,eExpression2)返回值字符型、数字型、货币型、日期型或日期时间型参数lExpression 指定要计算的逻辑表

24、达式。eExpression1,eExpression2 如果 lExpression 计算结果为“真”(.T.),返回 eExpression1;如果 lExpression 为“假”(.F.),则返回 eExpression2,下面示例用 iif()函数检查 学生的性别。如果为男,则显示“boy”;否则,显示“girl”。Xsxb=男iif(Xsxb=男,boy,girl)用 iif()函数检查数据库产品的类型。如果产品类型字段(CPLX)为1,则显示“纸板”;如果产品类型字段(CPLX)为2,则显示“纸箱”;如果产品类型字段(CPLX)为3,则显示“彩印”,CTOD()函数把字符表达式转

25、换成日期表达式。CTOD(cExpression)返回值日期型参数cExpression 指定的字符表达式,CTOD()把它转换成日期型的值。,示例CTOD(2010-01-01),DTOC()函数由日期或日期时间表达式返回字符型日期。DTOC(dExpression|tExpression,1)返回值字符型参数dExpression 指定日期型内存变量、数组元素或字段,DTOC()由此返回字符型日期。tExpression 指定日期时间型内存变量、数组元素或字段,DTOC()由此返回字符型日期。,示例DTOC(1998-10-31),CTOT()函数从字符表达式返回一个日期时间值。CTOT(

26、cCharacterExpression)返回值DateTime参数cCharacterExpression 指定要返回日期时间值的字符表达式。备注,示例CTOT(2000-10-24 13:30:00),TTOC()函数从日期时间表达式中返回一个字符值。TTOC(tExpression,1|2)返回值字符型参数tExpression 指定的一个日期时间表达式,TTOC()函数从该表达式中返回一个字符值。tExpression 必须是一个合法的日期时间值。如果 tExpression 中只包含时间,Visual FoxPro 把默认的日期“12/30/1899”添加到tExpression 中

27、;如果 tExpression 中只包含日期,Visual FoxPro 将默认的午夜时间“12:00:00A.M.”添加到tExpression中。,示例TTOC(CTOT(2000-10-24 13:30:00),TTOD()函数从日期时间表达式中返回一个日期值。TTOD(tExpression)返回值日期型参数tExpression 指定一个日期时间表达式,TTOD()函数从该表达式中返回一个日期。tExpression 必须是一个合法的日期时间值。如果 tExpression 只包含时间,Visual FoxPro 将默认的日期“12/30/1899”添加到 tExpression 中,并返回这个默认的日期。,示例TTOD(CTOT(2000-10-24 13:30:00),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号