《VB客户关系管理系统.docx》由会员分享,可在线阅读,更多相关《VB客户关系管理系统.docx(42页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
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 problems designs the process explanation. The population having given an account of systems first designs , design , system function discussing be geared to th
4、e needs of marriage partner three layers of C/S frames 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 manages system
5、 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 customer and so on
6、 designs content including system detailedly. Brief final the testing having introduced a software , the purpose including a testing need matters needing attentions with the mission and debugging middle.Keywords: The customer manages , VB , ACCESS , system design that目 录摘 要IAbstractII目 录III第1章 概 述11
7、.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 在工程中加入自定义枚举154.1.3 创建组
8、件的公共模块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 系统的编译与发行35总 结36参考文献37
9、致 谢38第1章 概 述1.1 课题来源客户关系管理(Customer Relationship Management CRM)起源于80年代初提出的“接触管理”(Contact Management),即专门收集整理客户与公司联系的所有信息以达到了解客户的目的。而我们所做的客户管理系统是客户关系管理系统中的一部分。到90年代初期则演变成为包括电话服务中心与支援资料分析的客户服务。经历了二十多年的不断发展,客户关系管理不断演变发展并趋向于成熟,最终形成了一套完整的管理理论体系。目前随着Internet带来的巨大商机,电子商务变得越来越成熟,基于网络办公己经取得了更宽更广的应用。所以,基于B/S
10、模式的CRM研究与应用更具有特别的意义。传统CRM系统的研究和应用都是基于C/S模式,即客户机/服务器的结构模式,再加上邮件处理系统,在企业网的内部进行实施和应用。这样的系统需要在客户端安装相应的客户端应用程序,服务器端也要安装服务器应用程序。随着Internet的广泛应用,C/S模式逐渐暴露出很多不足的地方,比如,部署程序复杂,系统升级困难,可扩展性差。相反,B/S模式的系统有许多优点:1)应用范围广泛。可以和电子商务联系起来,在全球范围内进行相关的业务处理。2)办公方式简捷,方便。只要能上网,就能进行业务处理。3)安装,使用方便,可扩展性强。只须安装服务器端应用程序,不需要安装客户端程序。
11、所以,进行基于B/S模式的CRM系统研究与应用,可以使公司客户快速、方便、及时地查询公司最新的各种信息,处理与公司的业务。这对公司管理客户关系,促进业务处理,提高经济效益,都有重大意义。目前商用的CRM产品很多,企业着手进行CRM实施的过程中,多数以失败或者不理想而告终,主要原因在于系统不适合企业自身的需要,并且对于中小企业来说一个完全意义上CRM系统似没有必要的,他们使用CRM系统也主要就是使用其中的客户管理和联系等基本功能,因此我们认为自己动手开发一个适合企业特点的客户管理系统具有重要的现实意义。1.2 开发环境简介根据我们当前的知识水平,我们选用了Microsoft Visual Bas
12、ic 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是基于对象的可视化程序开发工具,它的优点在于能够快捷、简易地建立Windows应用程序。1998年8月,微软推出了V
13、B 6.0的版本,进一步加强了部件开发的功能。以适用人员来分,可有以下三个版本:1. 标准版 针对一般程序设计人员,适合普通应用系统的开发。 2. 专业版 针对专业程序开发人员,它在标准版的基础上提供了对数据库和Internet的支持。 3. 企业版 适用于专为企业设计应用软件的程序开发人员。使用VB不需要追求完美的算法和精密的逻辑,而只要充分发挥你的想象力和创造力,就能利用VB开发出各种实用的软件了,不论是小游戏还是大型的客户端/服务器端应用程序,都变得非常简单。可视化编程的一个突出特点就是其开发环境就像一个百宝箱,很多功能都集成在其之中,这就是IDE(Integrated Developm
14、ent Environment),即集成开发环境。IDE是指在相应的开发平台中集成了编辑器、编译连接工具、控件器箱辅助工具。例如在VB的集成开发环境中就包括了以下一些主要元素:工具栏、工具箱、工程管理器窗口、属性窗口、窗体设计器、代码编辑器窗口等;和VB类似,Delphi的IDE中具有主控制窗体、对象查看窗口和窗体设计器。同时IDE的设置是很灵活的,开发人员可以按照自己的编程习惯来配置IDE。从简单的文本文件到各种复杂的关系型数据库,数据库应用程序需要面对各种各样的数据源。Visual basic 6.0提供ADO(Active Data Objects)作为应用程序和OLE-DB连接的桥梁A
15、DO,即Active数据对象(Active Data Objects):实际是一种提供访问各种数据类型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口相连。用户可以使用任何一种ODBC数据源,即不仅适合于SQL Server、Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件。ADO是基于OLE-DB之上的技术,因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。Microsoft在Visual Basic 6.0以后的版本都集成了ADO。它与以前Visual Basic的DAO、RDO相比有了很大的提高。D
16、AO(Data Access Objects)即数据访问对象,是一种面向对象的界面接口。通过DAO/Jet功能可以访问ISAM数据库,使用DAO/ODBC Direct功能可以实现远程RDO功能。RDO(Remote Data Objects)即远程数据对象,为使用代码来创建和操作一个远程ODBC数据库系统的各个部件提供了一个框架。RDO是ODBC API的一个浅层界面接口,是专为访问远程ODBC关系数据源而设计的。ADO集中了DAO和RDO的优点,可以通过简单的编程实现和各种数据结构进行连接。使用ADO的目的是进入数据源,使得修改、更新数据成为可能。ADO提供一系列的类和对象来完成各种操作。
17、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数据库的特点。第二章,系统总体设计,论及了系统功能分析、系统设计要求、系统设计。其中最主要的是讲述系统设计,它主要论述面向对象的三层C/S架构的设计、系统功能没模块的划分、系统结构设计。第三章,系统数据库设计,包括数据库需求分析、数
20、据库概念结构设计等。第四章,系统详细设计,首先介绍了组件设计,客户信息管理对话框界面设计、客户信息管理对话框代码设计、添加客户信息、修改客户信息、删除客户信息、查看客户信息、查找客户。第五章,软件测试,主要介绍测试的目的与任务以及调试中需要注意事项的。最后对整个设计工作作了一个总结。第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,要查看 组织SQL语句,查询 客户信息 数据库 返回客户对象, 返回查询结果 内部有客户信息 数据库 客户管理
25、 组件 客户管理系统操作界面 图2.1 三层架构的工作原理图图2.1 CS架构工作原理图2.3.2 系统功能模块划分 根据上述的系统功能分析,可以得出图中2.2所示的系统功能模块图。从图中可以看出系统包括客户类型管理模块、客户管理模块和提醒管理模块,在客户管理模块中,又包括客户信息管理、客户评价管理和客户合作管理3部分。可见,客户是系统的核心,其他模块都是以客户为中心并为其他服务的。 客户管理系统客户类型管理模块客户管理系统提醒管理模块添加客户类型修改客户类型删除客户类型客户信息管理客户评价管理客户合作管理查看今日提醒提醒设置管理查看定时管理删除定时管理修改定时管理添加定时管理删除合作记录修改
26、合作记录添加合作记录查找客户信息查看客户信息删除客户信息修改客户信息 图2.2 系统功能模块图2.3.3 系统结构设计根据面向对象和三层结构的设计思想,可得出如图2.3所示的系统结构设计图。从图中可以看出系统的物理结构也分为三层,即用户界面、组件和数据库。客户管理系统客户管理界面客户管理组件数据库客户类型相关界面客户信息相关界面合作信息相关界面客户类型管理客户信息管理合作信息管理提醒信息管理公共模块提醒信息集合类提醒信息类合作信息集合类客户合作信息类客户信息集合类客户信息类客户类型集合类客户类型类公共模块提醒信息相关界面枚举定义类 图2.3 系统结构设计图第3章 系统数据库设计数据库在一个信息
27、管理系统中占有非常重要的地位,数据库结构设计的好坏将直接影响应用系统的效率及实现的效果。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整性和一致性。设计数据库系统时应该首先充分了解用户各个方面的需求,包括现有的及将来可能增加的需求。数据库设计一般包括数据库需求分析,数据库概念结构设计,数据库逻辑结构设计。 3.1 数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。通过上述系统功能的分析,针对一般客户管理信息系统的需求,以下便是的
28、需求信息:l 客户类型存在上下级关系。l 客户必须属于一个客户类型。l 如果一个客户类型存在客户,或存在下级客户类型,则该类型不可删除。l 客户评价与客户一一对应。l 客户合作信息必须与某一个客户相关。l 提醒可以针对某一个客户,也可以针对全部客户。l 客户信息、合作信息、提醒信息要可以添加、修改、删除、浏览、查看。l 客户可以按几种常用的信息查询。经过上述系统功能分析和需求总结,考虑到将来功能上的扩展,设计的数据项和数据结构如下:l 客户类型信息,包括的数据项有:客户类型编号、上级客户类型编号、客户类型名称等。l 包括的数据项有:客户基本信息、客户其他联系方式、客户其他信息几方面。客户基本信
29、息包括客户编号、客户姓名、性别、手机、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-R图如图3.6所示。客户类型客户提醒评价合作提醒信息评价信息合作信息 图3.1 各实体之间关系的E-R图客户类
31、型客户类型名称上级类型客户名称客户性别客户E-mail客户电话 图 3.2 客户类型信息实体图 . 图3.3 客户信息实体图E-R图提醒信息提醒编号提醒显示时间提醒类型显示时间合作信息合作编号合作时间满意度合作内容图3.4 合作信息实体E-R图 图3.5提醒信息实体E-R图评价信息友好度满意度重要度 图3.6 评价信息实体E-R图3.3 数据库逻辑结构设计数据库的概念结构设计完毕后,现在可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。根据客户管理系统使用情况的不同,可以采用Acess数据库或SQL Server 2000数据库。从系统移植方便性角度考
32、虑,我们采用了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是“ ”手机Fax文本15是“ ”传真HomePhone文本15是“ ”宅电Work文本50是“ ”职业Posit
33、ion文本30是“ “职位Email文本20是“ ”邮件HomeAddress文本50是“ ”住址MailAddress文本50是“ ”通讯地址ZipCode文本8是“ ”邮编SelfSite文本30是“ ”个人网站Company文本50是“ ”就职单位CompanySite文本30是“ ”公司网站Likes备注是“未知”喜好Hate备注是“未知”厌恶TypeId数字长整型是0客户类型IDRemark备注是“ ”备注Birthday Warn是/否是False是否启用生日提醒Importance数字整型是50重要度(0-255)Friendly数字整型是50友好度(0-255)Satisfac
34、tion数字整型是50满意度(0-255)表3.2 客户类型信息表(ClienType)列表数据类型字段大小必填字段默认值说明TypeId自动编号长整型是递增,主键SuperId数字长整型是0上级类型IDTypeName文本20否“”客户类型名 表3.3 合作信息表(Cooperate)列表数据类型字段大小必填字段默认值说明CooperateId自动编号长整型是主键,递增ClientId数字长整型是客户ID,外码Date日期/时间短日期是#1900-1-1#合作日期Satefaction数字整型是50满意度(0-255)Remark备注是“ ”备注表3.4 提醒信息表(Warning)列表数据
35、类型字段大小必填字段默认值说明WarnId自动编号长整型是主键,递增ClientId数字长整型是0客户ID,为0时表时全体客户ShowDate日期/时间短日期是#1900-1-1#提醒显示日期TypeId数字整型是1提醒类型Id,外码Msg备注是“ ”提醒消息表3.5 提醒类型信息表(WarnType)列表数据类型字段大小必填字段默认值说明WTypeId自动编号字节是提醒类型编号WtypeName文本30是“定时提醒”提醒类型名称3.4 数据库的生成与配置经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。下面在Acess数据库创建数据表,本系统的数据库文件名定为“ManageClie
36、nt.mdb”,这里需要注意数据库的权限问题,即:(1)去掉数据库文件和所在文件夹的只读属性。(2)如果是NTFS分区,则要给适当的用户添加权限,一般,简单的解决办法是给它的Everyone用户添加完全控制权限。 第4章 系统详细设计后台数据库结构的设计工作完成以后,可以进入系统的详细设计环节。客户管理事务处理组件用来处理客户管理系统中的业务逻辑,既负责与界面进行数据传递,同时也要将界面端的请求应用业务逻辑之后对数据库进行操作。4.1 组件设计客户管理事务处理组件包括以下功能:(1)客户类型信息管理;(2)客户信息管理;(3)业务合作信息管理;(4)客户提醒信息管理。4.1.1 客户管理事务处
37、理事件的创建为了给客户管理事件创建组件,我们新建了ActiveX DLL工程,加入对ADO的引用,设置的工程的关键属性如下:工程类型为ActiveX DLL,启动对象为Sub Main,工程名称为ClientManagerCom。4.1.2 在工程中加入自定义枚举新建工程时自动生成的类型名称设为CPublic,此类没有别的具体意义,主要功能是保存一些自定义的枚举类型,这些枚举类型在以后其他各类中要经常用到,同时这个类的实现没有技术难度,根据需要我们定义了以下枚举:Option Explicit该类无实际意义,只为保存一些自定义枚举自定义枚举,用于表示性别Public Enum gxcSex M
38、ale = 0 Female = 1End Enum连接数据库的类型Public Enum gxcDBType DBAccess = 0 DBSQLServer = 1End Enum以下枚举用于“客户类型”对象的操作,用于表示客户类型删除结果的枚举Public Enum gxcDelete DeleteOK = 0 DeleteFail = 1 未知原因导致不能删除 DeleteSubExists = 2 由于存在子类型,因此不能删除 DeleteClientExists = 3 该客户类型存在客户,不能删除End Enum用于表示客户类型更新结果的枚举Public Enum gxcUpda
39、te UpdateOK = 0 UpdateFail = 1 DuplicateName_Update = 2 名字不可重复 RecordNotExist = 3 当前更新的记录不存在End Enum用于表示客户类型新增结果的枚举Public Enum gxcAddNew AddNewOK = 0 AddNewFail = 1 DuplicateName_AddNew = 2 名字不可重复 SuperNotExist = 3 指定的上级客户类型的ID不存在End Enum用于提醒类别设置Public Enum gxcWarnType BirthdayWarn = 1 生日提醒 CommonWa
40、rn = 2 定时提醒End Enum用于对话框显示类别设置Public Enum gxcViewType vtadd = 0 添加信息 vtModify = 1 修改信息 vtInfo = 2 查看信息End Enum4.1.3 创建组件的公共模块 在工程中添加一个模块,命名为mdlpublic,此模块有两个功能:l 用来连接数据库及相关的初始化操作。l 存放在对数据库的操作过程中可能用到的一些公共函数。1) 添加全局变量我们加入两个全局变量,它们的名称和功能如下:Public g_Connection 用于全局的数据连接Public g_DBPath As String 如果是Access
41、数据库,记录下数据库的路径2) Sub Main()过程启动对象手动加入Sub Main()过程,这个就是刚才在工程属性设置里指定的启动对象。在这个过程中,完成ActiveX DLL的初始化工作。在Sub Main()中的ConnecToDatabase 函数时功能是用来连接到数据库,下面来看它的实现方法。3) ConnecToDatabase 函数与数据库建立连接 功能:根据传入参数是DBAccess 还是DBSQLSever 来决定连接到 Access数据库还是SQL Sever数据库。 参数设计:gxcDBType类型,参见CPublic类中的枚举定义。 返回值:Boolean 类型,True表示成功,False 表示失败。 设计思路:根据传入参数组织不同的连接字符串,然后打开数据库连接。现在,在mblPublic模块中连接数据库的功能已经实现,下面添加在数据库操作时比较常用的一些函数。4) RealString替换字符串的单引号在用SQL语言存储字符型数据时,单引号成为我们最大的天敌,如果在字符串中存在单引号,则可能会意外截断字符,造成SQL语法错误。解决办法是用两个单引号来表示一个单引号。5) MaxID替换字符串的单引号MaxID函数
限制150内