资源目录
压缩包内文档预览:(预览前20页/共120页)
编号:21835842
类型:共享资源
大小:15.48MB
格式:ZIP
上传时间:2019-09-06
上传人:QQ24****1780
认证信息
个人认证
王**(实名认证)
浙江
IP属地:浙江
25
积分
- 关 键 词:
-
大学
数据库技术
应用
利用
运用
陈刚
课件
ppt
- 资源描述:
-
大学数据库技术及应用-陈刚-课件PPT,大学,数据库技术,应用,利用,运用,陈刚,课件,ppt
- 内容简介:
-
数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,1,第12章 数据窗口,本章重点内容 根据需要设计数据窗口对象 熟悉数据窗口画板及其基本操作 理解不同的数据源和显示风格 设置数据窗口的各种对象和属性 数据窗口的打印设置 统计图表的使用 数据库开发常用功能的实现方法,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,2,12.1 数据窗口,12.1.1 数据窗口的设计思想 一个数据窗口通常由数据窗口控件和数据窗口对象两部分组成。 数据窗口控件是被粘贴到窗口上的窗口级对象,提供了一个展示数据窗口对象的窗户,它可以在窗口中通过画板工具栏创建。 数据窗口对象直接关联数据表,主要用于显示数据并允许用户增删改数据。通过在数据窗口中控件的Data Object属性中设置有关的数据窗口对象的名字,将数据窗口对象和窗口联系在一起,并把数据对象显示给用户。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,3,12.1 数据窗口,数据窗口有两个重要特性:数据源和数据显示风格。 数据源指如何获取数据,即数据的来源。 显示风格指数据窗口对象以何种格式显示给用户,即用户如何和数据窗口交互。 为了有效的实现和用户的数据交互,可以在窗口或用户对象中放置一个数据窗口控件,并将这个控件同创建的数据窗口对象关联起来,在应用程序中就可以通过这个数据窗口控件同数据源交换信息,最后还可以在窗口画板和用户对象画板中书写脚本,动态地控制数据窗口控件及显示内容。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,4,12.1 数据窗口,12.1.2 数据窗口的创建 (1)单击工具条上的“新建”按钮,在New对话框中选择DataWindow标签。 (2)选择显示风格:在DataWindow标签中可以看到有11种显示风格,表示11种不同的显示格式,可根据需要选择。 (3)选择数据源:有5种可被选择的数据源:Quick Select、SQL Select、Query、External和Stored Procedure。 设置数据表及数据列 保存 数据窗口创建实例演示,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,5,12.2 典型数据窗口设计,数据窗口的显示风格是指数据在数据窗口中的显示格式。 11种显示风格 1Composite(复合风格) Composite(复合风格)的特点是可将已存在的多个不同风格的数据窗口对象放在一个数据窗口中显示 , 这种数据窗口本身没有数据源。,12.2.1 显示风格,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,6,12.2.1 数据窗口显示风格,2Crosstab (交叉表) Crosstab (交叉表)风格是模拟电子表格的数据窗口表现风格。其特点是横向和纵向都有标题,可以对行和列的数据进行统计。Crosstab主要用于分析和统计数据,可自动将检索到的数据分类或分组,进行累计求和和求平均值等运算。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,7,CrossTab风格数据窗口示例,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,8,12.2.1数据窗口显示风格,3Freeform(自由格式) Freeform是一种很常用的数据窗口显示风格,允许用户随意拖动列和列标签,使用非常灵活自由,因而得名。这种风格通常用于数据录入、更新删除。在显示时,通常是一条记录占据数据窗口一屏。默认时,Freeform风格的所有列显示标签都显示在字段的左边。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,9,Freeform风格示例,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,10,12.2.1 数据窗口显示风格,4Graph(统计图风格) Graph(统计图风格)是基于图形、图像的数据窗口显示风格,可以使用户直观的操作数据,尤其适用于数据统计。在创建Graph风格的数据窗口对象过程中会弹出12-14所示的“Define Graph Data”对话框。在Category下拉列表框中选择作为横轴的字段,在Values下拉列表框中选择作为纵轴的字段。在Series下拉列表框中选择分类统计的依据。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,11,设定横轴列,设定纵轴列,设定分类轴,Graph风格数据窗口的创建,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,12,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,13,预览窗口,数据窗口设计结果,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,14,12.2.1 数据窗口显示风格,5Grid(网格风格) Grid(网格)风格的数据窗口的主要特点是:以带线的电子表格的形式显示数据,有多列、多行,数据的与列之间用线隔开。数据的每一项都放在网格之中。在设计数据窗口对象时不能移动列和列标题,也不能添加列和列标题。但在程序执行时却可以移动每一列,以改变各列的宽度和列的排列顺序。由于它以整齐的方式显示数据,因此它常常用于查询数据量较大的数据窗口或打印报表。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,15,Grid风格数据窗口示例,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,16,12.2.1 数据窗口显示风格,6Group(分组风格) Group风格为数据窗口提供了一种对数据窗口分组显示的简便方法。所谓分组指将数据按某一数据项值的不同分开显示。在这种风格下,每一组都带有统计数据,适合于显示有组关系的数据。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,17,Group分组风格数据窗口示例,设置用于分组的列,分组依据,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,18,单击Next按钮,进入Set Group Page Data对话框,用户可以根据需要进行相应的设置,标题,每组从新的一页开始显示,每组结束后重置页号(1),数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,19,结果数据窗口,预览结果,设计结果,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,20,12.2.1 数据窗口显示风格,7Label(标签风格) Label风格的数据窗口对象是由多个标签组成的。它主要用在某些特定的场合,如图书馆中的图书标签、贴在信封上的邮寄标签等。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,21,设置标签属性,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,22,页面设置,设置页边距,设置进纸方式,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,23,Label风格设计结果,设计结果,预览结果,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,24,数据窗口显示风格,8N-UP(分栏风格) N-UP风格所显示的数据窗口和Word文字排版中的分栏处理类似。它能一行显示多条记录,从而一屏可以显示更多的记录,尽量减少滚动浏览的次数。另外用它来显示一些定期产生的数据也是非常方便的,这样,可以把不同时期产生的数据在同一行显示,以便进行对比。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,25,N-UP风格示例,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,26,9Tabular(表格风格) Tabular风格类似于显示一列的N-UP风格,数据按列排列在数据窗口中,每一列数据都有相应的标题,用户可以任意调整字段标题和字段的位置,各列的位置可以交换,数据可以分组显示。Tabular风格数据窗口常用于数据输入和报表中。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,27,Tabular(表格风格)示例,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,28,数据窗口数据源,12.2.2 数据源的定义 数据源即数据的来源,指数据窗口对象获取数据的方式。PowerBuilder有5种数据源:Quick Select、SQL Select、Query、External和Stored Procedure 。其中只有使用的DBMS支持存储过程并可以返回结果集时,PowerBuilder才显示Stored Procedure数据源图标。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,29,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,30,12.2.2 数据源的定义,1Quick Select数据源 Quick Select数据源,顾名思义,是快速选择数据源,它是定义数据源的最为简便、快捷的方法。 Quick Select主要用于从一个表或多个通过外部键连接的表中选择某些数据列,而且这些数据列都是非计算列(即不是通过计算得到的列)。可以为Quick Select数据源的数据定义排序和检索条件,但不能进行数据分组,不能定义计算列和使用检索参数。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,31,12.2.2 数据源的定义,2SQL Select数据源 SQL Select数据源主要用于在一个或多个表中通过SQL语句来选择数据(表之间不一定要有外部键关联)。这种数据源对SELECT语句具有更强的控制能力。使用SQL Select数据源可以对数据进行分组、添加计算列、定义筛选条件和进行分组统计等操作,可以定义和使用检索条件,可以把系统生成的SQL语句作为查询存储起来,并可以把它作为Query数据源使用。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,32,12.2.2 数据源的定义,3Query数据源 Query数据源是一组可以重复使用并存储在文件中的一组SQL语句。Query数据源可以是SQL Select数据源个选项定义的结果所创建的一个查询,也可以是数据库画板中所包含的Query画板。 4External数据源 External数据源,即外部数据源,该数据源数据不是来自于数据库,而是来自于其它文件或由应用程序生成数据。由于External数据源数据不是来自于数据库,所以应该为该类数据窗口定义列及其数据类型。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,33,12.2.2 数据源的定义,5Stored Procedure数据源 Stored Procedure数据源是利用数据库中定义的存储过程定义数据源,所谓存储过程是指事先编译好并存储在数据库中的SQL语句。用户可以调用存储过程完成查询。 如果要使用存储过程数据源,则首先要求所使用的数据库平台要支持存储过程,另外要在数据库中已经建立了相应的存储过程。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,34,12.2.3 数据窗口对象的属性,1.数据窗口对象总体属性 鼠标单击数据窗口画板的工作区内任何空白区域,在Properties属性工作区设置。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,35,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,36,2.数据窗口中对象的基本属性,数据窗口中的对象指文本(标题、标签等)、和数据对象(包括列、计算域、汇总信息等)等的属性。 文本框的属性,边框,对齐方式,文本,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,37,2.数据窗口中对象的基本属性,数据对象的属性 Format显示风格,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,38,Edit编辑风格,下拉数据窗口,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,39,CheckBox样式,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,40,DropDownDW样式,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,41,DropDownListBox样式,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,42,Edit Mask样式,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,43,RadioButtons样式,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,44,3.数据窗口的工作带,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,45,表12-1 数据窗口中各工作带的作用,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,46,4. 设置Tab键次序 选择按钮,或选择菜单【Format】【Tab Order】,会发现各列的上面均出现了红色的数字显示。用鼠标选中即可修改Tab键值(以10为单位,Tab键按数值递增的顺序跳转,0表示不能获得焦点),可以修改。修改完成后,用同样的方法返回。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,47,注释:为数据窗口对象新增的字段,或由多个数据表生成的数据窗口对象中的字段的Tab值均为0,即默认这些字段是不允许修改的,Tab键也不会跳到这些字段。如果需要,可以修改这些字段的Tab值为一合适的非0值(但不同列的Tab值不能重复)。恰恰是利用Tab值为0这一特性,可以控制某些字段不能被修改。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,48,12.2.4 数据窗口对象上的控件,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,49,1. 添加按钮,方法同窗口控件 属性对话框的General标签页中的Action下拉列表框指定按钮的功能。具体如下: l Append Row:追加行; l Cancel:撤消Retrieve(Yield)操作; l Delete Row:删除行; l Filter:过滤; l Insert Row:插入空白行; l Page First:第一页; l Page Last:最后一页; l Page Next:后一页;,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,50,1.添加按钮,l Page Prior:前一页; l Preview:打印预览; l Preview with Rules:显示打印预览标尺; l Print:打印; l Query Clear:在查询模式中去掉WHERE子句; l Query Mode:切换查询模式的打开与关闭; l Query Sort:允许用户定义排序条件; l Retrieve:检索; l Retrieve(Yield):用于大量数据的检索,检索过程中,可用Cancel终止当前检索; l Save Row as:将数据窗口中的数据另存为其它格式文件; l Sort:排序; l Update:提交; l User Defined:用户自定义。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,51,2.添加平均值、计数域、求和域,平均值、计数、求和图标主要用于在数据窗口对象的Summary工作带添加汇总信息。添加汇总信息的方法是: 在数据窗口对象的Detail工作带选择要进行汇总计算的列(可以是计算列或计算域)。然后选择相应的按钮或选择菜单InsertControlAverage、Sum或Count,相应的计算表达式会自动添加到Summary工作带。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,52,3.添加计算域或计算列,计算域和计算列主要用于添加基于列的数据计算(如学生总成绩)、或用于连接数据列等信息。 计算域和计算列含义不同, 计算列是指在Select画板里直接为SELECT语句定义的计算列,这些语句用于将数据检索到数据窗口对象。 计算域是指在数据窗口画板中通过图标添加的Computed Field,可以在确定了SELECT语句后定义计算域。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,53,3.添加计算域或计算列,计算列和计算域的区别: 计算列直接定义在数据源的SQL SELECT语句上,将计算结果带到数据窗口上,由于只有在数据窗口执行检索命令时,才执行相应的SQL语句,所以数据窗口上的操作(不重新检索数据库时)不会引起计算列的变化,只有重新检索数据库时,计算列的内容才会发生变化。 计算域是定义在数据窗口对象之上,它是根据数据窗口的数据进行计算,因而数据能够动态变化。 使用计算域的方法 选择图标或选择菜单【Insert】【Control】【Computed Field】,然后在要放置计算域的位置单击鼠标,,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,54,4.添加新列,选择图标或选择菜单【Insert】【Control】【Column】,在数据窗口对象上单击要放置该列的位置,弹出Select Column对话框显示出数据窗口数据源的所有列,选择需要的列,然后单击【OK】按钮即可。 注释:数据窗口对象的列也可单击工具栏上的图标重新回到数据源对话框对数据列进行选择。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,55,12.3 数据窗口中数据处理,12.3.1 数据正确性检查 在数据窗口画板中设置校验规则的步骤如下: 1打开要设置校验规则的数据列的属性对话框,单击属性对话框中某些属性旁边的图标,即可弹出校验规则对话框,如图12-49所示。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,56,12.3.1 数据正确性检查,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,57,12.3.1 数据正确性检查,2在Expression编辑框中输入校验表达式,可以使用Functions和columns提供的函数和列,然后单击【Verify】按钮进行验证。如果表达式正确,出现“Expression is OK”提示框。此时单击【OK】按钮返回,此时会发现原来的红色按钮变成了绿色按钮。 注释:校验表达式可以是关系表达式或逻辑表达式,同时还可以是如下格式的IF语句格式:IF(关系表达式或逻辑表达式,数据正确时的提示信息,数据错误时的提示信息),,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,58,12.3 数据窗口中数据处理,12.3.2 数据排序、过滤、分组及去掉重复值 1分组显示 分组显示是把数据窗口检索出的数据按一定条件分组,将具有相同特征的数据放在一起显示。对于要分组的数据,一般应先定义排序。分组显示的定义方法如下: 在数据窗口画板中,选择菜单【Rows】【Create Group】,弹出“Specify Group Columns”对话框,如图12-50所示。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,59,12.3.2 数据排序、过滤、分组及去掉重复值,图12-50 “Specify Group Columns”对话框,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,60,12.3.2 数据排序、过滤、分组及去掉重复值,用鼠标把分组依据的列名拖动到右边的列表框中,单击【OK按钮】。在上图中fpno列为发票号,分组完成后,数据窗口的预览结果如图12-51所示。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,61,12.3.2 数据排序、过滤、分组及去掉重复值,2去掉重复值 当数据窗口某个(些)列的数据具有重复值时,为了显示上的直观,可以使用去掉重复值的方法使其只显示一个。例如,将图12-51的所属单位列去掉重复值后的结果如图12-52所示。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,62,12.3.2 数据排序、过滤、分组及去掉重复值,图12-52 按所属单位字段去掉重复值后的预览结果,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,63,12.3.2 数据排序、过滤、分组及去掉重复值,去掉重复值的方法是选择菜单【Rows】【Suppress Repeating Values】,弹出“Specify Repeating Value Suppression List”对话框,如图12-53所示。用鼠标将要去掉重复值的列拖到右边的列表框中,单击【OK】按钮即可。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,64,12.3.3 数据的导入、导出和检索,1数据的导入和导出 数据的灌入、导出操作与数据表数据的导入、导出操作相同,读者可参见8.5.4节。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,65,12.3.3 数据的导入、导出和检索,2数据检索 (1)分阶段检索 当一个数据窗口对象要检索的数据量非常大时,在所有行被检索出来并显示给用户之前,屏幕无任何反映,用户会感到有明显的延时。在这样的数据窗口对象中,可以为数据窗口指定分阶段检索属性,让PowerBuilder只是检索数据窗口控件显示数据并把控制权转给用户前所必需的行数,这样,可以提高应用程序的反应速度,减少延时。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,66,12.3.3 数据的导入、导出和检索,例如,如果一个数据窗口对象一次仅可以显示10行数据,设定分阶段检索后,在将数据显示给用户之前PowerBuilder 可能仅仅检索大于10的很少量的数据(例如11条数据)。当用户按下PagesDown键或使用滚动条翻页时,PowerBuilder继续检索下面的必须的显示数据。这样边检索边显示,由于每次检索的数据量小,用户一般不会感觉到有明显的延时。 设置分阶段检索的方法是在数据窗口画板打开时,选择菜单【Rows】【Retrieve Options】【Rows As Needed】。再次选择上述菜单会去掉分阶段检索。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,67,12.3.3 数据的导入、导出和检索,(2)把检索出的数据存储到磁盘 如果想使得PowerBuilder和其它应用程序可利用的内存得到最大化,可以让PowerBuilder将检索出来的数据存放到硬盘的一个临时文件中,而不是全部保存到内存中。程序运行期间,PowerBuilder将会根据显示数据的需要在临时文件和内存之间交换数据。 只要选择菜单【Rows】【Retrieve Options】【Rows to Disk】即可。再次选择该菜单项将会去掉Rows to Disk选择。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,68,12.4 在脚本中引用数据窗口对象和数据窗口项,12.4.1 数据窗口对象的引用 Dataobject属性:指定数据窗口对象 例:dw_1.dataobject=d_no_name 12.4.2 数据窗口项的引用 1.通过表达式引用数据窗口项 (1)通过列名引用 dwcontrol.Object.columnname.buffer.current.originalrownumber,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,69,dwcontrol:数据窗口控件名称。 Object:必选部分,用来指定一个数据窗口对象的数据值。 Columnname:必选部分,用来指定要操作的数据窗口列名 Buffer:可选部分,指明要从哪个缓冲区中取得数据,用户可以在Primary(主缓冲区)、Delete(删除缓冲区)或Filter(过滤缓冲区)中选择一个,默认设置为Primary缓冲区。 .current.original:用来指明是从原始数据(从数据库中检索出来的数据)还是从当前缓冲区中取得数据。current为默认设置,指当前数据缓冲区。original指原始数据。 rownumber:可选字段,指定数据窗口的行号或者某一范围。,1.通过表达式引用数据窗口项,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,70,1.通过表达式引用数据窗口项,例 dw_1.Object.fpno1 = 5 语句把数据5赋值给主缓冲区中的第一行的fpno列项:,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,71,(2)访问所有行,用法与上述的调用格式类似,不同之处是省略了访问数据所在的行号: dwcontrol.Object.columnname.buffer.current.original 例如,下列语句从当前主缓冲区中获得shdw列的所有行的数据,并赋值给一个已定义的数组: string shdw_Array shdw_Array =dw_1.Object. shdw.Primary,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,72,(3)通过列号引用数据窗口项,使用列号引用数据窗口项的一般格式如下: dwcontrol.Object.col_number.buffer.current.originalrownum 各参数的含义与前面的含义类似,其中col_number用来指定一个数据窗口列号。 注释:通过列号引用列时,在列号前要加#号。例如 #2表示数据窗口对象的SQL SELECT语句中的第2列。 例如,从过滤缓冲区中获得列shdw(列号为3)的第3行到第5行的数据并赋值给一个已定义的数组: string shdw_Array shdw_array=dw_1.Object.#3.Filter3,5 sle_2.text=shdw_Array1+“-“+shdw_Array2+“-“+shdw_Array3,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,73,2.通过函数引用数据窗口项,取得数据窗口缓冲区中特定行列的数据; GetItemString GetItemDateTime、GetItemTime、GetItemNumber、GetItemDecimal GetItem 设置数据窗口特定行列的数据值。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,74,string dwcontrol.GetItemString (row,column ,dwbuffer,originalvalue ) dwcontrol:数据窗口控件的名字。 row:指定要取得字符型数据项所在的行号。 column:指定要取得字符型数据项所在的列,可以时列号(数值型)或列名(字符型)。 dwbuffer:指明要从哪个缓冲区中取得数据。默认设置是Primary缓冲区。 originalvalue:用来指明是从原始数据还是从当前缓冲区中取得数据,True表示获得从数据库检索出来的原始数据;False(默认)表示获得当前缓冲区中的数据。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,75,例,rownum=dw_1.getrow() /取得当前行的行号 num_no = dw_1.GetItemNumber(rownum,number) /取得当前行、number列的值,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,76,设置数据窗口特定行列的数据值。 SetItem,其语法格式如下: integer dwcontrol.SetItem (row, column, value ) row指定赋值项所在的行, column指赋值项所在的列,可以是列号或列名; value是要为数据项设置的值。 例: Dw_1.setitem(dw_1.getrow(),sex,男),数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,77,12.5 数据窗口的更新控制,1数据窗口的更新属性 选择菜单【Rows】【Update Properties】,弹出“Specify Update Properties” 设置更新属性,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,78,12.5 数据窗口的更新控制,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,79,12.5 数据窗口的更新控制,对话框中各更新属性的含义如下: (1)Allow Updates(允许更新)复选框:用于指定该数据窗口是否具有可更新能力,选中此复选框后,才可以设置其它属性。 (2)Table to Update(可更新的表)下拉列表框:每个数据窗口在每一时刻只可更新一个表的数据。此下拉列表框就是用来指定当前数据窗口可更新的表。 (3)Unique Key Columns(键列):键列用来标识表中将被更新的记录的一列或多列。PowerBuilder在生成数据库的更新语句时,将用这些键列构成WHERE子句。键列可以示表的主键,也可以不是。 (4)Updateable Columns(可更新列)列表框:用来设置当前数据窗口对象对当前可更新的表中哪些字段具有可更新能力。如果某已列未被指定为可更新列,那么,即使在数据窗口中修改了此列的数据,它也不会向数据库提交。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,80,12.5 数据窗口的更新控制,(5)Where Clause for Update/Delete (用于更新的WHERE子句)组框:用来实现对数据窗口的并发控制。当多个用户并发的更新一个表时,就需要为数据窗口设定更新数据库的条件。因为,如果应用程序在任何情况下都可以更新数据库的话,一个用户的操作可能会覆盖其它用户的更新。例如,在火车联机售票系统中,几台售票客户机同时查询服务器,查询剩余车票(结果相同),如果不加控制,有可能同一个座位的车票被售出两张甚至多张。所以在多用户的Client/Server结构的应用中,一定要进行并发控制。 在生成更新语句时,PowerBuilder通过产生不同的WHERE子句来实现对更新的并发控制。在更新属性对话框的Where Clause for Update/Delete组框中选择不同的单选按钮,将产生不同的WHERE子句。 (6)Key Columns(键列)单选按钮:在WHERE子句中只包括键列。如果某键列已被修改,则更新无效。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,81,12.5 数据窗口的更新控制,(7)Key and Updateable Columns(键列和可更新列)单选按钮:在WHERE子句中包括键列和可更新的列。如果其中某列已被修改,则更新无效。 (8)Key and Modify Columns(键列和被修改的列)单选按钮:在WHERE子句中包括键列和所有被修改的列。如果某列已被修改,则更新无效。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,82,12.5 数据窗口的更新控制,2Key Modification(键列的更新)组框 当键所在的列被修改时,PowerBuilder提供了两种不同的方式来实现对数据库的更新。在Key Modification组框中可以通过选择不同的单选按钮来指定更新方式。 (1)Use Delete then Insert:先删除表中当前记录,然后在插入一条新记录。 (2)Use Update:直接修改当前记录。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,83,12.5 数据窗口的更新控制,3Identify Column(标识列)下拉列表框 许多数据库管理系统支持这样一种列。当向表中插入一条新记录时,此列的值由数据库管理系统自动指定,称之为标识列。不同的数据库管理系统支持的标识列的类型也不同。例如,Adaptive Server Anywhere允许定义其值自动增加的列。在“Specify Update Properties”对话框中可以指定一个标识列。这样,当在数据窗口中新插入一行并提交后,PowerBuilder会自动把此列的值带回并显示出来。否则,需要重新检索才能看到此列的值。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,84,12.6 数据窗口的打印,12.6.1 打印预览 打印预览操作方法如下: (1)确保数据窗口的预览工作区已经打开,如果还未打开,可选择菜单【View】【Preview】将其打开。 (2)选择菜单【File】【Print Preview】,数据窗口预览工作区变为打印预览模式。 (3)选择菜单【File】【Print Preview Rulers】,打印预览模式会显示标尺,但该标尺不会打印出来。标尺的单位由数据窗口工作区属性的General标签页的Units决定。如图12-55所示。 (4)选择菜单【File】【Print Preview Zoom】,弹出Zoom对话框如图12-56所示。选择不同的比例,然后单击【OK】按钮,可设置打印预览模式的显示比例。该设置只是一种显示设置,不是打印的实际尺寸。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,85,图12-55 数据窗口对象的打印预览模式,图12-56 Zoom对话框,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,86,12.6.2 数据打印 用户在对数据窗口对象进行打印预览时,还可将其中的数据打印出来。其步骤如下: (1)选择菜单【File】【Print Report】,弹出如图12-57所示的Print对话框。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,87,12.6.2 数据打印,(2)在对话框的Copies编辑框中设置报表的打印份数。 (3)在组框Page Range中指定打印的页码范围:All表示打印报表所有页;Current Page表示打印当前页;Pages单选按钮用于指定打印页,在后面的编辑框中输入打印的页码范围。 (4)在Print下拉列表框中选择All Pages in Range(打印范围内的所有页)、Even Pages(打印范围内的偶数页)、Odd Pages(打印范围内的奇数页)。 (5)Collate Copies复选框用来设置副本页的排列次序(打印次序),若选中该复选框,则报表逐份打印。若不选中该复选框,则逐页打印。只有在选择打印多份报表时,才能体现出该复选框的作用。 (6)单击【Printer】按钮可以选择打印机。 (7)设置完成后,单击【OK】按钮即可打印。 (8)如果要把数据输出打印到一个文件中,则选择Print to File复选框,单击【OK】按钮,显示类似于保存对话框的Print to File对话框。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,88,12.7 统计图的使用,12.7.1 统计图的组成,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,89,12.7.1 统计图的组成,(1)标题(title):统计图的标题。默认值为title。定义后出现在统计图的顶部。如图12-58的标题为“发票明细分类统计图”。 (2)值轴(value):统计图的坐标轴之一。如果把统计图看作数学函数y=f(x),则值轴代表y轴。 (3)分类轴(category):统计图的坐标轴之一。如果把统计图看作数学函数y=f(x),则值轴代表x轴。 (4)序列(series):数据点的集合。相同数据点的数据组成一个序列(组)。每一序列(组)有同样的颜色或图案表示。例如,上图中分合同统计分次付款情况,则分类轴为发票号,序列为收费项目。 (5)图例(legend):序列名。它表示统计图中每个序列的显示文本。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,90,12.7.2 统计图的种类,PowerBuilder提供的统计图可分为6类:面图、条状图、列图、线图、饼图、散点图、三维统计图、堆积图、其它。 1面图、条状图、列图、线图,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,91,12.7.2 统计图的种类,2饼图(pie) 饼图是用图形方式显示同一序列数据点中各数据在整体中所占的比例的图形方式。在饼图中,检索数据时,PowerBuilder会自动计算每个切片的百分比。 3散点图(Scatter) 这类统计图不使用分类(series),它显示(x,y)数据点(坐标点)。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,92,12.7.2 统计图的种类,4三维统计图 三维统计图包括三维面图(3D Area)、三维条图(3D Bar)、三维列图(3D Column)、三维线图(3D Line)和三维饼图(3D Pie)。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,93,12.7.2 统计图的种类,5堆积图 在堆积图中,每个分类用一个条或列代表。堆积图包括堆积条图(Stacked Bar)和堆积列图(Stacked)。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,94,12.7.2 统计图的种类,6其它 包括实心条图(Solid Bar)、实心列图(Solid Column)、实心堆积条图(Solid Stacked Bar)、实心堆积列图(Solid Stacked Column)。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,95,12.7.3 统计图属性定义,数据窗口中统计图对象的属性在数据窗口的属性的各标签页中定义。其【General】标签页如图12-59所示。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,96,12.7.3 统计图属性定义,在【General】标签页中可设置如下属性: 在Title编辑框中输入统计图的标题文本。该文本将显示在统计图顶部。在文本中可以使用“n”强制标题换行。 在GraphType下拉列表框中选择统计图类型。 在Legend下拉列表框中选择图例位置:默认为底部(Bottom)。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,97,12.7.3 统计图属性定义,统计图数据窗口【Data】标签页如图12-60所示。在【Data】标签页中可设置以下属性: 在Category列表框中选择分类轴列。 在Value下拉列表框中选择值轴列。 选中Series复选框则可以设置分类序列 在Series下拉列表框中选择序列,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,98,12.7.3 统计图属性定义,【Axis】标签页 在【Axis】标签页可设置统计图各轴标签文本。在Axis下拉列表框中选择Category后,在Label编辑框中输入分类轴文本;在Axis下拉列表框中选择Value后,在Label编辑框中输入值轴文本;在Axis下拉列表框中选择Series后,在Label编辑框中输入序列文本。 在【Text】标签页设置、各轴的标签及文本、标题、图例等。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,99,12.8 数据窗口常用函数,12.8.1 连接事务对象的函数 1.Settransobject()函数 参数为事务对象 例:dw_1. Settransobject(sqlca) 2SetTrans( )函数 integer dwcontrol.SetTrans ( transaction transaction ) SetTrans 将事务对象的值复制到属于数据窗口控件的一个内部事务对象中。当在脚本中使用了 SetTrans,数据窗口会使用它的内部事务对象在需要的时候自动的执行连接和断开操作, 任何错误的发生都会导致自动滚回操作。当使用了 SetTrans ,在脚本中不用使用像 CONNECT、 COMMIT和 DISCONNECT这样的SQL语句。在数据窗口控件执行Retrieve 或Update函数后自动进行连接和断开连接操作。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,100,12.8 数据窗口常用函数,12.8.2 滚动数据行函数 1.Scroll( )和ScrollToRow( )函数 long dwcontrol.Scroll ( long number ) number指定要滚动的方向和行数。number为正数,表示向下滚动;若number为负数,表示向上滚动。如果该函数执行成功,那么将返回数据窗口控件中可见的第一行的行号;如果执行失败,则返回-1。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,101,12.8.2 滚动数据行函数 ScrollToRow函数 integer dwcontrol.ScrollToRow ( long row ) 参数row指定要滚动到的行号。如果row为0,则滚动到第一行,如果row大于最后一行的行号,则滚动到最后一行。该函数执行成功,则返回值为1,否则,返回-1 注释:调用ScrollToRoll函数后,指定的行变为当前行,如果该行在数据窗口控件中已经可见,则数据窗口控件中显示的行没有什么变化,否则,显示这一行 ScrollToRoll函数和其他数据窗口滚动函数并不能高亮度显示行。此时可使用SelectRow函数高亮度显示该行以使用户知道这是当前行。 ScrollToRow函数和其他数据窗口滚动函数可能触发下列事件:ItemChanged、ItemError、ItemFocusChanged、RowFocusChanged。,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,102,12.8 数据窗口常用函数,2.ScrollNextRow( )和ScrollPriorRow( )函数 long dwcontrol.ScrollNextRow ( ) long dwcontrol.ScrollPriorRow ( ) 作用:向上或向下滚动一行 3.ScrollNextPage( )和ScrollPriorPage( )函数 long dwcontrol.ScrollNextPage( ) long dwcontrol.ScrollPriorPage( ) 作用:向上或向下滚动一页,数据库原理及应用-“十一五”国家级规划教材数据库原理及开发,103,12.8.3 得到与设置数据项的函数,GetItem( )函数与SetItem( )函数 在应用程序的脚本中可以使用GetItem函数来访问指定行或列的值,该函数是针对数据窗口缓冲区的操作,而不是数据窗口编辑控件中的数据。所以,在数据窗口某一数据项被修改,但还未送到缓冲区时,使用GetItem函数取得的数据和数据窗口控件中的数据不一致。此时,可先使用AcceptText函数将数据送到缓冲区,再使用GetItem函数取数据。 SetItem函数用于设置指定行和列的项的值,该值并不进行有效性检查,而是直接放到数据窗口的主缓冲区中。函数的具体用法参见
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。