版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘 要根据目前一些小企业的特点,本系统旨在建立一个完成访客资料的记录和查询的客户管理系统,它可以理解为是目前流行的客户关系管理系统的一个子系统。论文在介绍了课题的来源和系统设计背景的基础上展开了系统设计过程的说明。首先讲述了系统的总体设计,主要论述面向对象的三层C/S架构的设计、系统功能模块的划分、系统结构设计。接着介绍了系统数据库的设计,包括数据库需求分析、数据库概念结构设计等,然后详细介绍了客户管理系统详细设计,包括系统组件设计,主界面设置,客户信息管理对话框代码设计、添加客户信息、修改客户信息、删除客户信息、查看客户信息、查找客户等设计内容。最后简要介绍了软件测试,包括测试的目的与任务以
2、及调试中需要注意事项的。关键词:客户管理,VB,ACCESS,系统设计AbstractSome are in the light of at present peanuts characteristic, this system aims at building that customer management system , it are understandable for being at present popular Customer Relationship Management system one build of precis writer and inquiry acco
3、mplishing the visitor data system.The system having spread out on thesis basis designing background in source and system having introduced a problem's designs the process explanation. The population having given an account of system's first designs , design , system function discussing be ge
4、ared to the needs of marriage partner three layers of C/S frame's mainly have no the module partition , system physical design. And then proceed to have introduced system data base design, include data base need analysis , data base concept physical design etc., have introduced that the customer
5、 manages system detailed design , the module designs , the host interface interposes , the customer information administration conversation frame code designs , adding customer information , revising customer information , deleting customer information , checking customer information , seeking a cus
6、tomer and so on designs content including system detailedly. Brief final the testing having introduced a software , the purpose including a testing need matters needing attention's with the mission and debugging middle.Keywords: The customer manages , VB , ACCESS , system design that目 录摘 要IAbstr
7、actII目 录III第1章 概 述11.1 课题来源11.2 开发环境简介21.2.1 VB 概述21.2.2 ACCESS 2003 数据库简介31.3 本文所做的工作4第2章 系统总体设计62.1 系统功能分析62.2 系统设计要求62.3 系统设计72.3.1 面向对象的三层CS架构的设计72.3.2 系统功能模块划分82.3.3 系统结构设计8第3章 系统数据库设计103.1 数据库需求分析103.2 数据库概念结构设计113.3 数据库逻辑结构设计123.4 数据库的生成与配置14第4章 系统详细设计154.1 组件设计154.1.1 客户管理事务处理事件的创建154.1.2 在工
8、程中加入自定义枚举154.1.3 创建组件的公共模块174.2 客户管理主界面设置184.2.1 设计主窗体控件布局184.2.2 图片列表的关键字设置194.2.3 给工具条添加按钮194.2.4添加菜单204.3 主界面编辑状态预览214.4 客户信息管理模块214.4.1 客户信息管理对话框界面设计214.4.2 客户信息管理对话框代码设计254.4.3 添加客户信息294.4.4 修改客户信息294.4.5 删除客户信息304.4.6 查看客户信息314.4.7 查找客户32第5章 软件测试335.1 测试的目的与任务335.2 测试的方法335.3 系统的调试与注意事项345.4 系
9、统的编译与发行35总 结36参考文献37致 谢38第1章 概 述1.1 课题来源客户关系管理(Customer Relationship Management CRM)起源于80年代初提出的“接触管理”(Contact Management),即专门收集整理客户与公司联系的所有信息以达到了解客户的目的。而我们所做的客户管理系统是客户关系管理系统中的一部分。到90年代初期则演变成为包括电话服务中心与支援资料分析的客户服务。经历了二十多年的不断发展,客户关系管理不断演变发展并趋向于成熟,最终形成了一套完整的管理理论体系。目前随着Internet带来的巨大商机,电子商务变得越来越成熟,基于网络办公己
10、经取得了更宽更广的应用。所以,基于B/S模式的CRM研究与应用更具有特别的意义。传统CRM系统的研究和应用都是基于C/S模式,即客户机/服务器的结构模式,再加上邮件处理系统,在企业网的内部进行实施和应用。这样的系统需要在客户端安装相应的客户端应用程序,服务器端也要安装服务器应用程序。随着Internet的广泛应用,C/S模式逐渐暴露出很多不足的地方,比如,部署程序复杂,系统升级困难,可扩展性差。相反,B/S模式的系统有许多优点:1)应用范围广泛。可以和电子商务联系起来,在全球范围内进行相关的业务处理。2)办公方式简捷,方便。只要能上网,就能进行业务处理。3)安装,使用方便,可扩展性强。只须安装
11、服务器端应用程序,不需要安装客户端程序。所以,进行基于B/S模式的CRM系统研究与应用,可以使公司客户快速、方便、及时地查询公司最新的各种信息,处理与公司的业务。这对公司管理客户关系,促进业务处理,提高经济效益,都有重大意义。目前商用的CRM产品很多,企业着手进行CRM实施的过程中,多数以失败或者不理想而告终,主要原因在于系统不适合企业自身的需要,并且对于中小企业来说一个完全意义上CRM系统似没有必要的,他们使用CRM系统也主要就是使用其中的客户管理和联系等基本功能,因此我们认为自己动手开发一个适合企业特点的客户管理系统具有重要的现实意义。1.2 开发环境简介根据我们当前的知识水平,我们选用了
12、Microsoft Visual Basic 6.0作为前台的开发工具,用ACCESS 2003作为后台支持数据库,通过VB6.0的数据库控件来连接ACCESS 2003中并对其编程来实现各种功能。,因为ACCESS与Visual Basic用的同为Microsoft Jet数据库引擎,有着最好的兼容性。1.2.1 VB 概述Visual Basic (以下简称VB)的前身是QBASIC,语言基础是BASIC。自从微软推出VB后,便成为了程序开发人员的首选工具。据统计,仅在数据库系统开发领域,VB就占了90的份额。VB是基于对象的可视化程序开发工具,它的优点在于能够快捷、简易地建立Window
13、s应用程序。1998年8月,微软推出了VB 6.0的版本,进一步加强了部件开发的功能。以适用人员来分,可有以下三个版本:1. 标准版 针对一般程序设计人员,适合普通应用系统的开发。 2. 专业版 针对专业程序开发人员,它在标准版的基础上提供了对数据库和Internet的支持。 3. 企业版 适用于专为企业设计应用软件的程序开发人员。使用VB不需要追求完美的算法和精密的逻辑,而只要充分发挥你的想象力和创造力,就能利用VB开发出各种实用的软件了,不论是小游戏还是大型的客户端/服务器端应用程序,都变得非常简单。可视化编程的一个突出特点就是其开发环境就像一个百宝箱,很多功能都集成在其之中,这就是IDE
14、(Integrated Development Environment),即集成开发环境。IDE是指在相应的开发平台中集成了编辑器、编译连接工具、控件器箱辅助工具。例如在VB的集成开发环境中就包括了以下一些主要元素:工具栏、工具箱、工程管理器窗口、属性窗口、窗体设计器、代码编辑器窗口等;和VB类似,Delphi的IDE中具有主控制窗体、对象查看窗口和窗体设计器。同时IDE的设置是很灵活的,开发人员可以按照自己的编程习惯来配置IDE。从简单的文本文件到各种复杂的关系型数据库,数据库应用程序需要面对各种各样的数据源。Visual basic 6.0提供ADO(Active Data Objects
15、)作为应用程序和OLE-DB连接的桥梁ADO,即Active数据对象(Active Data Objects):实际是一种提供访问各种数据类型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口相连。用户可以使用任何一种ODBC数据源,即不仅适合于SQL Server、Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件。ADO是基于OLE-DB之上的技术,因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。Microsoft在Visual Basic 6.0以后的版本都集成了ADO。它与以前Visual Basi
16、c的DAO、RDO相比有了很大的提高。DAO(Data Access Objects)即数据访问对象,是一种面向对象的界面接口。通过DAO/Jet功能可以访问ISAM数据库,使用DAO/ODBC Direct功能可以实现远程RDO功能。RDO(Remote Data Objects)即远程数据对象,为使用代码来创建和操作一个远程ODBC数据库系统的各个部件提供了一个框架。RDO是ODBC API的一个浅层界面接口,是专为访问远程ODBC关系数据源而设计的。ADO集中了DAO和RDO的优点,可以通过简单的编程实现和各种数据结构进行连接。使用ADO的目的是进入数据源,使得修改、更新数据成为可能。A
17、DO提供一系列的类和对象来完成各种操作。1.2.2 ACCESS 2003 数据库简介过去的一些数据库软件,在操作上、数据库建立、维护等等,都相当复杂且不易使用,但是在具备了窗口的GUI(图形用户界面)特性的ACCESS数据库推出之后,数据库的建立不再是困难的事情,我们可以在PC上简单而快速的建立出一套符合自己的数据库。 不但如此,在ACCESS 2003推出以后,我们发现数据库的建立更加的快速,但是功能却更加强大,用户不用再去记忆那一大堆的文件名称,或是为数据库的文件管理大费周章,通过ACCESS的人性化管理接口把数据库的管理整理,便于维护;此外,在报表的制作上也是相当容易的,完全的视觉开发
18、向导设计,让人使用起来很舒服。但是美中不足的是ACCESS对于主从式结构的安全性管理不足,由于ACCESS可以快速的通过ODBC连接到数据库服务器上(Database Server),并浏览所有表格或是相关对象转成HTML。基本上,ACCESS对建立一个数据库所具备的每一个对象,其中包括了表、查询、窗体、报表、宏、模块。其功能分别叙述如下:Ø 表对象打开已经存在的表格、对已存在的表格字段数据进行修改、新建表格。Ø 查询对象可以用直接拖放的方式,建立表格之间的关联与对应关系,自动产生SQL语法查询出我们想要的数据。Ø 窗体设计对象可以设计用户接口,用来输入并处理数据
19、。Ø 报表对象利用视图向导的开发方式,简单、快速的建立出需求报表或标签。Ø 宏对象提供许多的宏功能,您可以把这样的宏连接到窗体设计中的任一个对象,以达成一些复杂的功能。Ø 模块对象撰写VB的程序模块,处理较复杂的问题与需求,该功能是采用事件驱动的模式,类似VB的处理方式。1.3 本文所做的工作 本文主要针对客户管理系统的设计过程做一个详细的说明,论文共分五章:第一章,概述,主要介绍了课题的来源,并简单介绍了系统开发环境VB与ACCESS 2003数据库的特点。第二章,系统总体设计,论及了系统功能分析、系统设计要求、系统设计。其中最主要的是讲述系统设计,它主要论述面
20、向对象的三层C/S架构的设计、系统功能没模块的划分、系统结构设计。第三章,系统数据库设计,包括数据库需求分析、数据库概念结构设计等。第四章,系统详细设计,首先介绍了组件设计,客户信息管理对话框界面设计、客户信息管理对话框代码设计、添加客户信息、修改客户信息、删除客户信息、查看客户信息、查找客户。第五章,软件测试,主要介绍测试的目的与任务以及调试中需要注意事项的。最后对整个设计工作作了一个总结。第2章 系统总体设计2.1 系统功能分析以客户为中心的理念在国外兴起于20世纪50年代,当时很多企业寄望于通过改进技术、压缩生产周期、改善内部资源管理来提高生产增长率和利润,但事实上见效甚微。这样企业开始
21、从强调降低经营成本的供应方发展策略转向了需求方策略。所谓需求方策略,就是指与客户联系更紧密,从客户关系方面挖掘新能源的策略,CRM应运而生。所不同的是,现在计算机可以帮助人们实现这些看似并不复杂而实际操作起来非常繁琐的工作。试想一下,当我们需要查找一个客户的电话号码时,只需要敲几下键盘,就可以看到客户的详细资料(包括姓名、公司名称、电话、Email,甚至包括合作历史记录),还有,当客户的生日快到时,软件可以提醒您是该客户寄出贺卡的时候了 。所有的这些,正是一个完善的客户管理系统的功能所在。本系统设计的是一个面向企业或面向个人的客户管理系统。系统开发的总体任务是实现与客户相关的各种信息的系统化、
22、规范化和自动化。系统主要完成的功能有: 客户类型的建立与维护,包括客户类型的新建、修改和删除等。 客户信息的输入,客户信息包括客户的基本信息、一般的通讯方式及客户其他信息,如爱好、禁忌、生日等。 客户信息的修改与删除,包括启动与取消客户的生日提醒等。 根据不同条件查询客户,可以查看客户信息。 与客户合作记录的信息维护,包括合作记录的添加、修改和删除等。 客户评价管理,包括客户的重要度、友好度、满意度的设定与查看。 客户事件提醒,包括定时约会提醒和生日提醒两种。 客户提醒信息维护,包括添加、修改和删除提醒信息。2.2 系统设计要求根据小型客户管理系统的特点,该系统应该具有如下设计需求:三层结构设
23、计:本系统采用三层结构设计,即程序逻辑结构分为用户界面层、业务逻辑处理层和数据存储层。三层在实际的物理结构上也是独立的,业务逻辑处理层采用ActiveX DLL实现,用户界面与业务逻辑分离,系统的安全性、可维护性、重用性和扩展性都大大提高。面向对象设计:系统中将客户类型、客户等都封装成相应的类,同时每个类都有自己对应的集合类,从而再次提高了对数据库操作的安全性和程序的可扩展性。人性化设计:系统不仅仅是一个客户信息的管理软件,它更具有人性化的生日提醒,极具实用性的合作记录,以及对客户的重要度、友好度、满意度评价等。尽可能使用现有资源:目的当然是为了提高软件开发的效率,在本系统中主要体现为使用VB
24、应用程序向导来创建应用程序,向导可以为我们生成很多有用的代码和一个总体框架,本系统在向导中选择的是“资源管理器样式”,这就是为什么系统的主界面很像资源管理器的原因了。另外,读者也许已经注意到了,系统的今日提醒界面与某些程序的“每日一帖”或“日积月累”对话框十分相似,事实上它正是用VB窗体模板中的“日积月累”对话框实现的。2.3 系统设计现在首先从系统设计思想角度来介绍客户管理系统的总体设计,然后讲述本客户管理系统的功能模块设计与结构设计。2.3.1 面向对象的三层CS架构的设计本系统采用三层架构设计,它的工作原理如图2.1所示。 用户界面层 业务处理层 数据存储层 IUnkown 给出客户ID
25、,要查看 组织SQL语句,查询 客户信息 数据库 返回客户对象, 返回查询结果 内部有客户信息 数据库 客户管理 组件 客户管理系统操作界面 图2.1 三层架构的工作原理图图2.1 CS架构工作原理图2.3.2 系统功能模块划分 根据上述的系统功能分析,可以得出图中2.2所示的系统功能模块图。从图中可以看出系统包括客户类型管理模块、客户管理模块和提醒管理模块,在客户管理模块中,又包括客户信息管理、客户评价管理和客户合作管理3部分。可见,客户是系统的核心,其他模块都是以客户为中心并为其他服务的。 客户管理系统客户类型管理模块客户管理系统提醒管理模块添加客户类型修改客户类型删除客户类型客户信息管理
26、客户评价管理客户合作管理查看今日提醒提醒设置管理查看定时管理删除定时管理修改定时管理添加定时管理删除合作记录修改合作记录添加合作记录查找客户信息查看客户信息删除客户信息修改客户信息 图2.2 系统功能模块图2.3.3 系统结构设计根据面向对象和三层结构的设计思想,可得出如图2.3所示的系统结构设计图。从图中可以看出系统的物理结构也分为三层,即用户界面、组件和数据库。客户管理系统客户管理界面客户管理组件数据库客户类型相关界面客户信息相关界面合作信息相关界面客户类型管理客户信息管理合作信息管理提醒信息管理公共模块提醒信息集合类提醒信息类合作信息集合类客户合作信息类客户信息集合类客户信息类客户类型集
27、合类客户类型类公共模块提醒信息相关界面枚举定义类 图2.3 系统结构设计图第3章 系统数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接影响应用系统的效率及实现的效果。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的及将来可能增加的需求。数据库设计一般包括数据库需求分析,数据库概念结构设计,数据库逻辑结构设计。 3.1 数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构及数据处理的流程,组成
28、一份详尽的数据字典,为后面的具体设计打下基础。通过上述系统功能的分析,针对一般客户管理信息系统的需求,以下便是的需求信息:l 客户类型存在上下级关系。l 客户必须属于一个客户类型。l 如果一个客户类型存在客户,或存在下级客户类型,则该类型不可删除。l 客户评价与客户一一对应。l 客户合作信息必须与某一个客户相关。l 提醒可以针对某一个客户,也可以针对全部客户。l 客户信息、合作信息、提醒信息要可以添加、修改、删除、浏览、查看。l 客户可以按几种常用的信息查询。经过上述系统功能分析和需求总结,考虑到将来功能上的扩展,设计的数据项和数据结构如下:l 客户类型信息,包括的数据项有:客户类型编号、上级
29、客户类型编号、客户类型名称等。l 包括的数据项有:客户基本信息、客户其他联系方式、客户其他信息几方面。客户基本信息包括客户编号、客户姓名、性别、手机、E-mail等;客户其他联系方式包括办公室电话、家庭住址、邮编等;客户其他信息包括客户公司网站、客户喜好、禁忌等。l 客户评价信息,包括重要度、友好度、满意度等。l 客户合作信息,包括合作编号、合作客户、合作时间、合作内容等。l 提醒信息,包括提醒编号、提醒对象、提醒时间、提醒内容等。在上面的需求分析、数据结构设计、数据项分析的基础上,下面可以开始数据库概念结构设计了。3.2 数据库概念结构设计 得到上面的数据项和数据结构以后,就可以设计出能够满
30、足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。本实例根据上面的设计规划出的实体有:客户类型信息实体、客户信息实体、提醒信息实体、评价信息实体、合作信息实体。每一个实体都是现实中实际存在的对象的抽象,每两个或两个以上的实体之间可能存在某种关系。下面分别给出各个实体的E-R(Entity-Relation)图。各实体之间关系的E-R图如图3.1所示,客户类型信息实体E-R图如图3.2所示,客户类型信息实体E-R图如图3.3所示,合作信息实体E-R图如图3.4所示,提醒信息实体E-R图如图3.5所示,评价信息实体E
31、-R图如图3.6所示。客户类型客户提醒评价合作提醒信息评价信息合作信息 图3.1 各实体之间关系的E-R图客户类型客户类型名称上级类型客户名称客户性别客户E-mail客户电话 图 3.2 客户类型信息实体图 . 图3.3 客户信息实体图E-R图提醒信息提醒编号提醒显示时间提醒类型显示时间合作信息合作编号合作时间满意度合作内容图3.4 合作信息实体E-R图 图3.5提醒信息实体E-R图评价信息友好度满意度重要度 图3.6 评价信息实体E-R图3.3 数据库逻辑结构设计数据库的概念结构设计完毕后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。根据客
32、户管理系统使用情况的不同,可以采用Acess数据库或SQL Server 2000数据库。从系统移植方便性角度考虑,我们采用了Access 数据库。客户管理系统数据库中各个表的设计结果如表3.1表3.5所示。表3.1为客户信息表,因为与客户评价表主键相同,可以合并为一张表。表3.1 客户信息表(ClientInfo)列表数据类型字段大小必填字段默认值说明ClientId自动编号长整型是“”递增,主键Name文本20是0姓名Sex数字字节是0性别Age数字字节是1980-1-1#年龄Birthday日期/时间短日期是“ ”生日OfficePhone文本15是“ ”办公室电话Mobile文本15是
33、“ ”手机Fax文本15是“ ”传真HomePhone文本15是“ ”宅电Work文本50是“ ”职业Position文本30是“ “职位Email文本20是“ ”邮件HomeAddress文本50是“ ”住址MailAddress文本50是“ ”通讯地址ZipCode文本8是“ ”邮编SelfSite文本30是“ ”个人网站Company文本50是“ ”就职单位CompanySite文本30是“ ”公司网站Likes备注是“未知”喜好Hate备注是“未知”厌恶TypeId数字长整型是0客户类型IDRemark备注是“ ”备注Birthday Warn是/否是False是否启用生日提醒Impo
34、rtance数字整型是50重要度(0-255)Friendly数字整型是50友好度(0-255)Satisfaction数字整型是50满意度(0-255)表3.2 客户类型信息表(ClienType)列表数据类型字段大小必填字段默认值说明TypeId自动编号长整型是递增,主键SuperId数字长整型是0上级类型IDTypeName文本20否“”客户类型名 表3.3 合作信息表(Cooperate)列表数据类型字段大小必填字段默认值说明CooperateId自动编号长整型是主键,递增ClientId数字长整型是客户ID,外码Date日期/时间短日期是#1900-1-1#合作日期Satefacti
35、on数字整型是50满意度(0-255)Remark备注是“ ”备注表3.4 提醒信息表(Warning)列表数据类型字段大小必填字段默认值说明WarnId自动编号长整型是主键,递增ClientId数字长整型是0客户ID,为0时表时全体客户ShowDate日期/时间短日期是#1900-1-1#提醒显示日期TypeId数字整型是1提醒类型Id,外码Msg备注是“ ”提醒消息表3.5 提醒类型信息表(WarnType)列表数据类型字段大小必填字段默认值说明WTypeId自动编号字节是提醒类型编号WtypeName文本30是“定时提醒”提醒类型名称3.4 数据库的生成与配置经过前面的需求分析和概念结构
36、设计以后,得到数据库的逻辑结构。下面在Acess数据库创建数据表,本系统的数据库文件名定为“ManageClient.mdb”,这里需要注意数据库的权限问题,即:(1)去掉数据库文件和所在文件夹的只读属性。(2)如果是NTFS分区,则要给适当的用户添加权限,一般,简单的解决办法是给它的Everyone用户添加完全控制权限。 第4章 系统详细设计后台数据库结构的设计工作完成以后,可以进入系统的详细设计环节。客户管理事务处理组件用来处理客户管理系统中的业务逻辑,既负责与界面进行数据传递,同时也要将界面端的请求应用业务逻辑之后对数据库进行操作。4.1 组件设计客户管理事务处理组件包括以下功能:(1)
37、客户类型信息管理;(2)客户信息管理;(3)业务合作信息管理;(4)客户提醒信息管理。4.1.1 客户管理事务处理事件的创建为了给客户管理事件创建组件,我们新建了ActiveX DLL工程,加入对ADO的引用,设置的工程的关键属性如下:工程类型为ActiveX DLL,启动对象为Sub Main,工程名称为ClientManagerCom。4.1.2 在工程中加入自定义枚举新建工程时自动生成的类型名称设为CPublic,此类没有别的具体意义,主要功能是保存一些自定义的枚举类型,这些枚举类型在以后其他各类中要经常用到,同时这个类的实现没有技术难度,根据需要我们定义了以下枚举:Option Exp
38、licit'该类无实际意义,只为保存一些自定义枚举'自定义枚举,用于表示性别Public Enum gxcSex Male = 0 Female = 1End Enum'连接数据库的类型Public Enum gxcDBType DBAccess = 0 DBSQLServer = 1End Enum'以下枚举用于“客户类型”对象的操作,用于表示客户类型删除结果的枚举Public Enum gxcDelete DeleteOK = 0 DeleteFail = 1 '未知原因导致不能删除 DeleteSubExists = 2 '由于存在子类型,
39、因此不能删除 DeleteClientExists = 3 '该客户类型存在客户,不能删除End Enum'用于表示客户类型更新结果的枚举Public Enum gxcUpdate UpdateOK = 0 UpdateFail = 1 DuplicateName_Update = 2 '名字不可重复 RecordNotExist = 3 '当前更新的记录不存在End Enum'用于表示客户类型新增结果的枚举Public Enum gxcAddNew AddNewOK = 0 AddNewFail = 1 DuplicateName_AddNew = 2
40、 '名字不可重复 SuperNotExist = 3 '指定的上级客户类型的ID不存在End Enum'用于提醒类别设置Public Enum gxcWarnType BirthdayWarn = 1 '生日提醒 CommonWarn = 2 '定时提醒End Enum'用于对话框显示类别设置Public Enum gxcViewType vtadd = 0 '添加信息 vtModify = 1 '修改信息 vtInfo = 2 '查看信息End Enum4.1.3 创建组件的公共模块 在工程中添加一个模块,命名为mdlp
41、ublic,此模块有两个功能:l 用来连接数据库及相关的初始化操作。l 存放在对数据库的操作过程中可能用到的一些公共函数。1) 添加全局变量我们加入两个全局变量,它们的名称和功能如下:Public g_Connection 用于全局的数据连接Public g_DBPath As String 如果是Access数据库,记录下数据库的路径2) Sub Main()过程启动对象手动加入Sub Main()过程,这个就是刚才在工程属性设置里指定的启动对象。在这个过程中,完成ActiveX DLL的初始化工作。在Sub Main()中的ConnecToDatabase 函数时功能是用来连接到数据库,下
42、面来看它的实现方法。3) ConnecToDatabase 函数与数据库建立连接Ø 功能:根据传入参数是DBAccess 还是DBSQLSever 来决定连接到 Access数据库还是SQL Sever数据库。Ø 参数设计:gxcDBType类型,参见CPublic类中的枚举定义。Ø 返回值:Boolean 类型,True表示成功,False 表示失败。Ø 设计思路:根据传入参数组织不同的连接字符串,然后打开数据库连接。现在,在mblPublic模块中连接数据库的功能已经实现,下面添加在数据库操作时比较常用的一些函数。4) RealString替换字符串
43、的单引号在用SQL语言存储字符型数据时,单引号成为我们最大的天敌,如果在字符串中存在单引号,则可能会意外截断字符,造成SQL语法错误。解决办法是用两个单引号来表示一个单引号。5) MaxID替换字符串的单引号MaxID函数用来获取表中当前主键的最大值,这个函数用于在数据库中添新记录后,立即获取刚才添加记录的主键值。6) ExistByID判断记录是否存在 ExistByID 函数用于给定一条记录的ID号后,查看数据库中是否存在此记录。7) GetValueByID根据主键名获取某以字段的值这个函数根据输入的ID来查找对应的记录,如果找到一条记录,则根据输入的字段名返回对应值。比如知道客户ID后
44、,可以调用此函数来获取客户名。4.2 客户管理主界面设置4.2.1 设计主窗体控件布局 为了对主界面的设计,首先我们对主窗体的控件的属性,图片列表的关键字,工具条的按钮等做了些设置。按表4.1所示的设置为主窗体添加控件(已有控件只需设置属性即可)。表4.1 主窗体及其控件属性的设置控件名称属性属性取值功能frmMain(Form)Caption客户管理系统系统主窗体imlViewSIcon(LisView)ImageHeight16树形控件和列表框小图标所使用的图片ImageWidth16imlViewBIcon(ImageList)ImageHeight32列表框大图标和工具条所使用的图片I
45、mageWidth32tbToolBar(ToolBar)AlignvbAlignBottom主窗体中的工具条StyletbrFlatTextAlignmenttbrTextAlignBottomImageListimlViewBIcontvTreeView(TreeView)LineStletvwRootLines显示客户类型树Style7ImageListimlViewSIconlvListView(ListView)FullRowSlelctTrue显示客户列表GridLinesTrueViewlvwReportIconimlViewBIconSmall IconimlViewSIcon
46、4.2.2 图片列表的关键字设置按上述给窗体添加完控件并设置属性后,下面是对系统中要用到的图片做的初始化设置。对两个ImageList的图片选择不做限制,但要求:imlViewSIcon必须包“group”、“group2”、“boy”、“girl”、“sboy”、“sgirl”等关键字;imlViewSIcon必须包括“boy”、“girl”、“bboy”、“bgirl”、“group”、“add”、“modify”、“del”“info”、“search”、 “warn”、“setting”、“IstView”、“exit”等关键字。4.2.3 给工具条添加按钮 为了使用的方便,我们在工具
47、条中设计了一下常用的按钮。具体设计细节见表4.2-4.4所示: 表4.2 工具条按钮的设置按钮标题关键字样式图像客户类型tbnClientType5-tbrDropdowngroup3-tbrSeperator添加客户tbnAddClient0-tbrDefualtadd修改客户tbnModifyClient0-tbrDefualtmodify删除客户tbnDelClient0-tbrDefualtdel客户信息TbnClientInfo0-tbrDefualtinfo查找客户tbnSearchClient0-tbrDefualtsearch3-tbrSeperator今日提醒tbnWarn0
48、-tbrDefualtwarn提醒设置tbnWarnsetting0-tbrDefaultsettingtbnViewStyle3-tbrSeperator显示方式tbnViewStyle5-tbrDropdownIstView3-tbrSeperator退出系统tbnExit0-tbrDefault表4.3 客户类型按钮的按钮菜单设计文本关键字添加客户类型tbnAddClientType修改客户类型tbnModifyClientType删除客户类型tbnDelClientType表4.4 显示方式按钮的按钮菜单设计文本关键字大图标大图标小图标小图标列表列表详细资料详细资料4.2.4 添加菜单
49、 下面是主界面编辑的最后一步,在主界面的界面设计模式下,打开“菜单编辑器”对话框,按照表4.5所示的设置为主界面添加菜单,其他属性取值默认值。 表4.5 主界面菜单设置标题名称级别系统管理mnuAdmin1&X退出系统mnuExit2客户类型管理mnuClientType1&A添加客户类型mnuAddClientType2&M修改客户类型mnuModifyClientType2&D删除客户类型mnuDelClientType2客户管理mnuClient1&A添加客户mnuAddClient2&M修改客户mnuModifyClient2&D
50、删除客户mnuDelClient2mnuSplit12&S查找客户mnuSearchClient2MnuSplit22&I查看客户详细资料mnuClientInfo2提醒管理mnuWarning1&T查看今日提醒mnuShowWarn2MnuSplitter32&S查看提醒设置mnuWarnSetting24.3 主界面编辑状态预览 按照以上的要求设置后,主界面frmMain的设计如图4.1所示。 图4.1 客户管理系统主界面设计视图4.4 客户信息管理模块此系统是由我们小组的三位同学共同组合成的,本人是负责客户信息管理这个模块,以下是本人对这个模块具体的如何实现。客户信息管理模块实现以下的功能:(1)添加客户信息;(2)修改客户信息;(3)删除客户信息(5)查找客户信息;(6)查看客户信息。在本系统中,客户的关键信息是用列表控件显示在主窗体的右侧的,但客户信息的添加、修改、查看都需要新的窗口来
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《有偿委托合同任意解除权问题研究》
- 《云计算应用对企业组织变革影响研究》
- 《我国重点税源专业化管理问题研究》
- 《CuS基吸附剂脱汞机理的密度泛函理论研究》
- 演员经纪合同的市场趋势
- 配电高压设备故障检测合同
- 化工企业废水处理服务合同
- 电子产品材料采购合同
- 命题作文“绿意的生活”写作指导及范文
- 冷链物流设备保温施工方案
- 冠脉介入的发展史课件
- 生物药物成分的提取纯化技术
- DLT50722023年火力发电厂保温油漆设计规程
- 后勤管理人员试题及答案
- 低相对介电常数的圆极化径向缝隙天线的分析
- 广西壮族自治区桂林市各县区乡镇行政村村庄村名明细居民村民委员会
- DBJ04-T 429-2022 加筋土地基技术标准
- 四年级上册英语教案第四单元MyHomeA. Lets talk 人教
- 北京市六年级上册期末测试道德与法治试卷(一)
- 中低位直肠癌手术预防性肠造口中国专家共识(2022版)
- 《斜视弱视学》考试备考题库(含答案)
评论
0/150
提交评论