VisualFoxPro报表设计.ppt

上传人:wuy****n92 文档编号:54710276 上传时间:2022-10-29 格式:PPT 页数:70 大小:1.15MB
返回 下载 相关 举报
VisualFoxPro报表设计.ppt_第1页
第1页 / 共70页
VisualFoxPro报表设计.ppt_第2页
第2页 / 共70页
点击查看更多>>
资源描述

《VisualFoxPro报表设计.ppt》由会员分享,可在线阅读,更多相关《VisualFoxPro报表设计.ppt(70页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Visual FoxPro 数据库、报表设计教程数据库、报表设计教程高得软件高得软件教程目录教程目录第三章第三章 、vfp 数据表、字段类型数据表、字段类型第一章第一章、报表设计器应用、报表设计器应用第二章第二章 、vfp 常用函数常用函数 第一章 报表设计器应用报表设计器应用1.创建报表创建报表2.修改报表修改报表3.预览和打印报表预览和打印报表预览和打印报表预览和打印报表创建报表创建报表1.创建报表创建报表 报表报表简述简述 报表是将需要的数据表格化的重要工具,包包括括两个基本组成部分:数据源和布局。两个基本组成部分:数据源和布局。报表布局定义了报表的打印格式。数据源通常是数据库的表,也可

2、以是视图、查询或临时表;创建报表的过程包括定义报表的样式并指定数据源,系统将报表样式保存在报表文件中,报表文件的扩展名为.frx。(1)(1)利利用用报报表表设设计计器器创创建建报表报表 报表设计器的启动报表设计器的启动 可用下述三个方法之一打开“报表设计器”1)在“项目管理器”中选择“文档”选项卡中的“报表”,单击【新建】按钮,在随后弹出的“新建报表”对话框中,单击【新建报表】按钮。2)使用“文件”菜单的“新建”菜单项,打开“新建”对话框,在对话框的“文件类型”栏中选择“报表”,单击“新建文件”按钮。3)在命令窗口中输入:CREATE CREATE REPORT REPORT 也可用命令打开

3、报表设计器:格式:Modify Report 用用“快速报表快速报表”命令创建报表命令创建报表 方法:打开“报表设计器”,在“报表”菜单中选择“快速报表”命令。报表设计工具栏报表设计工具栏 系统在打开“报表设计器”时,会同时打开“报表设计器”工具栏。设置报表数据源设置报表数据源一般情况下报表总是与一定的数据源相联系的。方法:打开“报表设计器”,右击选择“数据环境”命令,在“数据环境设计器”中右击,选择“添加”命令。在数据环境中的数据源,将在每一次运行报表时被自动打开。默认情况下,“报表设计器”显示三个带区:页标头、细节和页脚注。报表带区(report band)是指报表中的一块区域,可以包含文

4、本、来自表字段中的数据、计算值、用户自定义函数、图片、线条等。报表上可以有各种不同类型的带区,每一个带区的底部有一个分隔栏。带区名称显示在靠近蓝箭头的栏上,蓝箭头指示该带区位于栏之上,而不是之下。利用不同的报表带区,可以控制数据在报表页面上的打印位置。报表布局报表布局利用“报表向导”或“快速报表”都可以生成一个基本报表,但是,所生成的报表不一定能满足设计的要求,用户可以在“报表设计器”里对报表布局进行更深入的设计。修改报表布局包括修改报表布局包括:设置报表数据环境、修改报表带区、修改或添加控件、调整控件位置和大小、定义字段格式、更改报表中的字体、添加线条、矩形和圆形、向报表添加图片以及向报表添

5、加注视、在布局上分组数据等。报表带区报表带区 认识报表的结构。有些是重复的,有些只显示一次。带区的作用主要是控制数据在页面上的打印位置;在打印或预览报表时,系统会以不同的方式处理各个带区的数据,例如:对于“标题”带区,系统只在一个报表中打印一次该带区的内容。在每一个报表里,都可以添加或删除若干个带区。工资发放表工资发放表发放日期:2005年11月28制表人:王晓华主管:张长江表头部分主体部分,多条记录重复表尾部分在认识一个报表的各部分以后,才能有效地对应到报表设计器中的各带区添加标题或总结带区添加标题或总结带区:执行“报表”菜单中的“标题/总结”命令,选中“标题带区”复选框。表示向表中添加一个

6、“标题”带区,如果希望把标题内容单独打印一页,还要选中“新页”,同样可以设置“总结带区”。系统自动把“标题”带区设置在报表顶部,而把“总结”带区设置在报表尾部。添加组标头或组注脚带区添加组标头或组注脚带区:单击“报表”菜单中的“数据分组”命令。弹出“数据分组”对话框,在对话框中输入分组表达式,报表则添加多个“组标头”带区,同样可设置“组注脚”带区。调整带区高度调整带区高度:双击需要调整高度的带区标识栏,屏幕显示一个对话框,在对话框的“高度”框中可以调整高度;也可用拖动法改变。“带区高度保持不变带区高度保持不变”复选框复选框:(双击带区)选中可以防止报表带区因为容纳过长的数据而移动。设置报表变量

7、设置报表变量 用户可以在报表中创建变量,保存打印报表时所计算的结果。使用“报表”菜单中的“变量”命令,可以添加新的变量,改变或删除已有变量,或更改变量的计算顺序。当变量建立完成后,要将变量加入到报表中去,可按以下步骤操作:在“报表设计器”中,选择“报表控件”工具栏的“域控件”按钮。在报表中选定要添加域控件的位置。在弹出的“报表表达式”对话框中,在“表达式”框输入新添加的变量,或单击其右边的按钮,在弹出的“表达式生成器”中选中新建的变量。单击“确定”按钮,则新变量被添加到报表的指定位置上。页面设计页面设计方法:单击“文件”菜单中的“页面设置”命令。在“页面设置”设置对话框中,设置报表的列数、列宽

8、、页面布局、对象间隔、页边距;可以单击“打印设置”按钮,在弹出的“打印设置”对话框中对打印纸张、打印方向等进行设置。与所用的打印机支持的纸宽有关系。报表控件报表控件报表控件工具栏报表控件工具栏 默认情况下系统在打开一个“报表设计器”的同时会打开“报表控件”工具栏,在设计报表时要经常使用该工具栏所提供的功能。2.“2.“报表设计器报表设计器”工具栏和工具栏和“报表控件报表控件”工具栏工具栏在报表的设计环境中,最常用的控件工具是“报表设计器”工具栏和“报表控件”工具栏。如果在启动“报表设计器”时没有出现如图的两个小窗体,可通过“显示”菜单下的“工具栏”选项来打开“工具栏”窗口。“报表设计器”工具栏

9、和“报表控件”工具栏所包括的按钮及其说明分别见下表 图图“报报表控件表控件”和和“报报表表设计设计器器”控件控件 域控件域控件用于在报表中添加一个数据项,可以是表中的一字段,也可以是一个表达式,类似一个文本框。简单方法:往报表中添加表或视图的字段时,可以打开报表的“数据环境”选中表或视图,然后把相关的字段拖放到指定的带区里。标签控件标签控件标签控件用于输入报表的标题、字段的说明性文字等。OLEOLE对象对象一个OLE对象,可以是图片、声音、文档等,在Visual FoxPro的表中可以包含这些对象,这就意味着报表应该能够处理OLE对象。人员的照片、商品的商标等,都可以以图片的形式添加到报表中去

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

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

12、以“报表控件”工具添加。此时出现页标头、细节、页注脚此时出现页标头、细节、页注脚3个带区。个带区。此带区为表头的此带区为表头的名称,可改写名称,可改写此带区是取表中此带区是取表中相应字段的值相应字段的值为便于输入报表名称:为便于输入报表名称:“价格情况表价格情况表”,选定选定“报表报表”菜单中的菜单中的“标题标题/总结总结”,添,添加一个标题带区,报表设计器中最多可有加一个标题带区,报表设计器中最多可有9个带。个带。选中此按选中此按钮可在标题钮可在标题带区中定位,带区中定位,并输入标题并输入标题 选中此按钮选中此按钮可在带区中划可在带区中划表格线表格线 若要打印报表只需选择若要打印报表只需选择

13、“报表报表”菜单中的菜单中的“运行报表运行报表”或单击右键或单击右键选择选择“打印打印”。若要预览,则单击。若要预览,则单击右键,选择右键,选择“预览预览”。此时可在屏。此时可在屏幕显示报表如下:幕显示报表如下:报表控件操作报表控件操作选择、移动和调整控件的大小选择、移动和调整控件的大小选择选择:单击控件,选中一个控件;在控件周围拖动鼠标,用虚框包围控件,或按住Shift键逐个单击控件,则选中多个控件。移动移动:选中控件,拖到报表带区中的新位置。调整调整:选中控件,拖动边框。复制、删除报表控件复制、删除报表控件复制复制:选中控件,单击“编辑复制粘贴”命令。复制的控件显示在原控件的下方,然后将其

14、拖动到报表的合适位置。删除删除:选中控件,单击“编辑|剪切”命令,或按Del键。格式化控件格式化控件定义控件格式方法:双击域控件,弹出“报表表达式”对话框,单击“格式”文本框右边的按钮,弹出“格式”对话框,在对话框中选择字段类型(字符型、数值型、日期型),再选择适当的格式“编辑选项”。调整控件中的文本该调整并不改变控件在报表中的位置,只用于改变控件中的内容在控件中的对齐方式。方法:选中控件,单击“格式文本对齐方式”,从子菜单中选择需要的对齐方式。改变字体用以改变每个域控件的文本或标签控件的字体和大小,以及改变整个报表的默认字体。方法:选择控件,单击“格式字体”命令。改变控件颜色改变控件颜色在报

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

16、设置“打印范围”和“打印份数”。单击“属性”按钮,会弹出“属性”对话框,在对话框中可以设置纸张尺寸大小、方向、纸张来源和打印精度等选项。3 3、命令法调用报表、命令法调用报表有时,需要用命令法调用一个报表,如在一个菜单中,调用一个报表等。命令法如下:Report form 报表文件名 preview 打印预览Report form 报表文件名 to printer打印Report form 报表文件名 to printer prompt打印对话框VFP常用函数IIF、ROUND、INTSUBSTR、LEFT、RIGHT、ALLTRIM、LENCTOD、DTOC、CTOT、TTOC、TTODEO

17、F、EMPTY、SPACELEN()函数返回字符表达式中字符的数目。LEN(cExpression)返回值返回值数值型参数参数cExpression 指定字符表达式,len()函数返回其字符数目。备注len()函数可用于确定字符表达式的长度。示例LEN(con)=3LEN(con)=4LEN(中)=2ALLTRIM()函数函数删除指定字符表达式的前后空格符,并且返回删除空格符后的字符串。ALLTRIM(cExpression)返回值返回值字符型参数参数cExpression 指定删除首尾空格的字符表达式。备注备注使用 ALLTRIM()函数能确保删除用户输入数据首尾的空格字符。示例ALLTRI

18、M(con)=con)ALLTRIM(con)=conALLTRIM(中)=中ALLTRIM(中)=中LEFT()函数函数从字符表达式最左边一个字符开始返回指定数目的字符。LEFT(cExpression,nExpression)返回值返回值字符型参数参数cExpression 指定字符表达式,left()函数从中返回字符。nExpression 指定从字符表达式中返回的字符个数。若 nExpression 的值大于 cExpression 的长度,则返回字符表达式的全部字符。如果 nExpression 为负值或 0,则返回空字符串。示例LEFT(Read,3)&显示ReaRIGHT()RI

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

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

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

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

23、ND(1234.1962,0)&显示1234?ROUND(1234.1962,-1)&显示1230?ROUND(1234.1962,-2)&显示1200?ROUND(1234.1962,-3)&显示1000INT()函数计算一个数值表达式的值,并返回其整数部分。INT(nExpression)返回值数值型参数nExpression 指定 INT()要计算的数值表达式。示例CLEAR?INT(12.5)&显示 12?INT(6.25*2)&显示 12?INT(-12.5)&显示-12STORE-12.5 TO gnNumber?INT(gnNumber)&显示-12EOF()函数函数确定记录指针

24、位置是否超出当前表或指定表中的最后一个记录。EOF(nWorkArea|cTableAlias)返回值返回值逻辑型参数参数nWorkArea 指定表所在的工作区号。cTableAlias 指定表的别名。如果指定工作区中没有打开的表,则 EOF()函数返回“假”(.F.)。如果没有指定工作区或别名,则检查当前选定工作区中打开的表,看是否到达了表的最后一个记录。EMPTY()函数确定表达式是否为空值。EMPTY(eExpression)返回值返回值逻辑型参数参数eExpression 指定 EMPTY()函数作用的表达式。可包含字符、数值、日期或逻辑表达式,也可以是已打开表的备注字段或通用字段的名

25、称。当表达式取下列值时,EMPTY()函数返回“真”(.T.):SPACE()函数返回由指定数目的空格构成的字符串。SPACE(nSpaces)返回值返回值字符型参数参数nSpaces space()函数返回的空格数目。nSpaces 最大值的唯一限制是内存容量。IIF()函数函数根据逻辑表达式的值,返回两个值中的某一个。IIF(lExpression,eExpression1,eExpression2)返回值返回值字符型、数字型、货币型、日期型或日期时间型参数lExpression 指定要计算的逻辑表达式。eExpression1,eExpression2 如果 lExpression 计算

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

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

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

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

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 初中资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁