一个典型的数据库应用程序由数据结构、用户界面、查询选项和报表等组成。
1.1 应用背景
1.2 项目目标:包括系统登录功能,权限设置,数据录入,信息查询,报表输出,系统维护,退出功能等;
1.3 设计思路:自底向上,首先设计数据结构,然后设计表单、菜单、报表、主程序等;
1.4 系统结构图:系统的整体结构是先运行主程序,由主程序调出用户登录界面(表单),成功登录后,调出系统的主菜单,通过主菜单进入各个表单和报表,二者的数据均来自数据库中的表;
2.1 需求分析:系统的每个功能都要通过菜单和报表来操作数据表中的数据;
2.2 所需的数据表:客户表、联系人表、部门配置表、部门电话表、区号邮编表、服务表、操作员表等;
2.3 数据表的结构字段;
2.4 表之间的关联:通过参照完整性确保数据的一致性,建立一对多表单、报表;
4.1 建立数据库;
4.2 建立数据表;
4.3 建立表之间的完整参照性;数据库管理器---关联线右击---编辑参照完整性(打开数据完整性生成器)
5.1 布局表单控件(属性);
5.2 表单的方法和事件代码:loading、按钮的click等事件的代码;
8.1 建立主程序:项目管理器---代码---程序---编写代码--保存为MainPro;
8.2 设置主文件:由该文件调用应用程序中的某些组件,再由这些组件调用其他组件,主文件可以是一个PRG程序,一个表单,一个菜单,选择---项目(菜单)---设置主文件:一般来说,主文件可以具有以下的一些功能:1 对应用系统的环境进行初始化;2 用控制事件循环的访求来实行程序调用;3 恢复初始化前的环境;(设置主程序为主文件)
系统连编:将应用程序各个分散的部件连接在一个可执行文件或可执行应用程序;
用户对系统中的数据的操作是通过界面进行的,界面主要由表单和菜单两部分组成,主要部分是表单,表单也是面向对象编程的核心部分;
由主程序(设置为主文件)设置系统登录屏幕界面,调用系统登录表单(do form ---);由登录表单---调用主程序或主界面(可以是表单,包含初始环境设置,主菜单);由主菜单调用各功能模块;
主程序
系统菜单
系统登录界面
数据库
数据输入界面
数据输出界面
数据维护功能
数据检索界面
帮助功能
项目文件
收集基础数据、数据流程图,把一个处理功能的数据逐步分解,直到把系统的工作过程表达清楚为止。数据字典:各类数据属性的清单:
2.1 E-R模型是对现实世界的一种抽象,是对实际人、事、物和概念的人为处理,宏观地抽取人们共同关心的特性,而忽略非本质的细节;
2.2抽象机制由三种抽象方法形成:
分类classification:
定义:某一概念作为现象世界中一组对象的类型
抽象对象:对象值和型之间的is a member of的语义;
E-R模型是的抽象:实体型;
聚焦aggregation:
定义:某一类型的组成部分;
抽象对象:对象内部属性类型和整体与部分之间is a part of的语义;
E-R模型是的抽象:若干属性的聚集组成了实体型;
概括generalization:
定义:类型之间的各种子集之间的联系;
抽象对象:类型之间的is a subset of的语义;
E-R模型是的抽象:子类继承超类上定义的所有抽象性质;
将E-R图的一个实体或一个联系转换成一个关系模式;
应用程序和数据库位于同一台PC中;
应用程序使用的数据库位于局域网服务器中,其它的计算机通过客户端应用程序访问服务器中的数据。c/s结构,应用软件被划分为客户软件和服务器软件两部分,这两部分允许安装在同一台设备上,但多数情况下被安装在网络不同的PC上,当客户软件发出访问数据库请求后,服务器软件接收这一请求;C/S模式的最大优势是把系统划分为前台和后台,在通常情况下,客户机运行前端front-end)应用程序,向用户提供界面(user interface)和显示逻辑(presentation logic),而服务器则负责访问后台数据库,并完成各种事务逻辑(transaction logic)的处理,这样每次任务都是由客户机和服务器共同完成;C/S模式的第三个成分就是连接器,它是沟通客户机和服务器的纽带,包括网卡及其驱动程序,和实施数据库访问的软件,如ODBC、ADO,使服务器成为数据库服务器。
客户端应用程序为浏览器,客户通过浏览器访问服务器中的某个网页,如在网页中提出数据请求,该请求首先发送到web服务器,由web服务器将数据请求发送到数据库服务器,数据库服务器接到数据请求后,完成数据处理,并将处理结果返回web服务器,web服务器最后将结果返回到客户端的浏览器中,在设计网页时,可以使用ADO(activeX data object)访问VF数据库。
只需要将可执行程序和项目中标记为“排除”的文件(数据库和表文件)发布给文件即可,另处,使用VF开发的应用程序需要相应版本的的运行库文件,才能地没有安装相应版本的VF的windows操作系统中运行。另外,如果在程序中使用了外部库或者COM组件,也需要将这些组件所在的文件放入程序的发布目录中。然后使用“安装向导”:工具---向导---安装---指导发布树目录(要发布给用户的文件所在的目录)---选择程序组件---指定要生成的安装程序类型---生成的安装程序的保存位置---指定安装结束后执行的程序。
1.1 构建应用程序框架:
设置主程序做为应用程序的起点,由主文件依次调用所需的应用程序组件。可以为应用程序建立一个主程序,完成初始化设置后,再调用作为主界面的表单,也可以用一个表单作为主程序,将初始的用户界面和主程序的功能集合到一起。初始化环境包括初始化变量,建立一个默认目录,打开需要的数据库、数据库表、索引,添加外部库和用户。显示初始的用户界面(一般是登录表单)。控制事件循环,等待用户的交互动作:read events,让用户开始处理鼠标的单击、按键等用户事件,应用程序还必须使用一个菜单项或表单上的一个按钮执行clear events命令来结束事件处理。将控制权交给系统。
1.2 在项目中添加文件:通过连编应用程序可以自动添加一些引用的文件到项目中去。
1.3 为项目创建应用程序
连编项目中的所有文件,合成一个应用程序文件,把应用程序文件和数据文件一起发布给用户.a app文件:必须在VF环境下执行;b exe文件:包含了VF加载程序,提供了两个支持文件vfp6r.dll and vfp6renu.dll;
项目-项目信息-加密 or 附加图标;
工具-向导-安装:定位文件、指定组件、磁盘映像、安装选项、默认目标目录、改变文件位置。
1 发布树:必须将应用程序使用的所有文件和子目录拷贝到一个单独的上当(切记不要将程序源码一同拷贝),称为发布树,安装向导则把此安装树做为要压缩到磁盘映像子目录中的文件源,并且不能使用distrib目录,因为向导把该目录作为发布树目录使用。同时,最好将源树放置在VF目录外。
2 指定组件:如果在应用程序中使用了VF之外的一些组件,如activeX控件,在程序发布时,必须将这些组件一同放入应用程序安装包中,在进行安装时,安装程序会根据目标计算机的OS环境善来决定是否安装这些组件。
3 选择磁盘映像:安装程序生成后,将放置在指定的映像目录下,并建立子目录,如disk4,websetup,netsetup等;
4 安装选项
5 默认目标目录:程序组:用户安装后这个应用程序出现在用户的开始菜单中;也可以选择“用户可以修改”:目录与程序组;
在VF中开始事件处理可以使用“read events”命令,使用该命令以后操作系统在程序中将控制权交给用户,并且开始处理用户的键盘、鼠标等操作,如果在一个程序中没用使用read events开始事件处理,其结果是在程序运行后一闪而过,因为没有开始事件处理,操作系统在该程序中不需要处理任何用户的操作。一般流程是在主程序中调用系统中第一个表单或者菜单等界面程序后使用read event命令来开始事件处理,退出系统时使用clear events命令来结束事件处理,将控制权交给系统,系统开始处理主程序中read events命令后的命令。