基于VC的客户资源管理系统的设计与实现

时间:2022-09-19 05:22:11

基于VC的客户资源管理系统的设计与实现

摘 要:随着信息技术的应用,特别是计算机应用技术越来越深入且广泛的应用,为客户资源管理现代化提供了重要手段。介绍在Visual C++与SQL Server开发环境下客户资源管理系统设计方法和具体的实现过程。该系统适合中小型企业对客户资源的有效管理,从而为企业带来长久的竞争优势。

关键词:客户管理系统;数据库;Visual C++;SQL

中图分类号:TP311 文献标识码:B

文章编号:1004-373X(2008)10-106-03オ

Design and Implementation of Customer Relation Management Syetem Based on Visual C++

XIONG Xiangguang,JIANG Tianfa

(College of Computer,South Central University for Nationalities,Wuhan,430073,China)オ

Abstract:With application of information technology,especially more and more widespread and profound application of computer technology supplies important methods for the modernization of the customer′s resource management system.This article introduces the design method and detailed process of customer management system under the environment of Visual C++ and SQL Server.The system is adapt to small Enterprises managing customer resource,it brings development advanteges for Enterprises.

Keywords:customer management syetem;database;Visual C++;SQL

客户资源管理是现代企业运作的策略和基础,是建立在对各种数据分析基础上的理性思考。其策略是建立企业与客户的伙伴关系,调动企业市场、销售、服务等全方位地围绕客户运作。其要以客户为中心,提高客户满意度、赢得新客户,让整个企业的各个环节都向以客户为中心转变,转变企业管理模式,为客户提供个性化、一体化的优质服务。国内外对设计资源管理的研究主要集中在3个方面[1] :产品数据管理技术(PDM) 、设计案例管理技术和设计知识库技术。而长期以来,企业对客户管理工作大部分还是人工管理,工作效率低下,不能及时了解各类客户的实际情况,也无法快速进行客户信息的查询、统计等操作,不便动态及时调整客户资料。人工管理存在这样那样的弊端是明显的,如不可避免的人为因素,经常造成数据的遗漏、误报等。随着计算机应用技术的发展,管理信息系统成为数据管理更快捷的方式,将实现客户资源数据的集中管理,消除人工管理的弊端,提高管理效率。由于市场上一些通用的客户管理软件不适合每一个企业的实际情况,所以开发适合自己企业的客户资源管理系统成为必然[2]。

1 系统应用中的关键技术

SQL Server是Microsoft公司推出的大型数据库管理系统,他是建立在成熟而强大的关系模型基础之上,可以很好地支持客户机/服务器模式,能够满足各种类型的企事业单位对构建自己数据库的需求,并且具有易用性,可扩展性,可靠性等。为了充分利用SQL Server的强大功能,Visual C++提供了多种数据库开发技术和编程规范,主要包括ODBC API,MFC ODBC,DAO,OLE DB和ADO;根据其功能和特点,现在采用 MFC ODBC与SQL Server作为开发技术。

1.1 ODBC技术

ODBC(Open DataBase Connectivity)是为数据库应用程序访问关系型数据库时提供的一个统一的接口,对于不同的数据库,ODBC提供了一套统一的API,使应用程序可以访问任何一种提供ODBC驱动程序的数据库。由于直接使用ODBC API编写应用程序要编制大量的代码,一般的开发者需要花费大量的精力在非核心代码的维护上,而MFC ODBC类封装了ODBC API,从而利用MFC类来创建ODBC的应用程序非常方便。在MFC ODBC类中,常用的类有CDatabase(数据库类)、Crecordset(记录集类)、CRecordView(可视记录集类)和CRBException(异常类)[3]。Cdatabase类对象建立和数据库数据源的一个连接,通过他可以对数据库进行操作。例如使用ExecuteSQL函数实现对数据库记录的添加、修改和删除操作;Crecordset类对象代表一个从数据源中获取的记录集;CrecordView类对象提供一个表单视图来显示和操作记录集,因为CrecordView类派生于CformView类,同时又绑定一个记录集,从而可以利用表单视图方便地显示、添加、修改和删除记录;CRBException类对象处理MFC ODBC访问类在操作数据库时发生的异常,他继承于CException类。MFC ODBC类在操作数据库时会抛出CRBException异常,这些异常一定要处理,否则程序会异常中止,会给其用户带来不便甚至带来巨大的损失[4,5]。

1.2 SQL技术

SQL是Structured Query Language(结构化查询语言)的缩写,是关系数据库支持的标准查询语言。SQL在20世纪70年代由IBM推出,随着关系数据库管理系统的不断推出和广泛普及[6],SQL语言也被广泛应用。无论是Orcale;Sybase;SQL Server这些大型数据库管理系统,还是Visual FoxPro,PowerBuilder这些常用数据库开发系统,都支持SQL语言。SQL语言从功能上可以把他分为3类:

数据定义语言(DDL) 用于定义或修改数据库和数据库对象,包括CREATE(创建)、ALTER(修改)和DROP(删除)等语句。

数据处理语言(DML) 用于完成数据处理,如添加、修改或删除数据,包括INSERT(插入)、UPDATE(更新)和DELETE(删除)等语句。

数据控制语言(DCL) 用于管理数据库用户权限,包括GRANT(授权)和REVOKE(撤权)等语句。

在SQL Server 2000中,创建数据库、数据表、关系、视图和索引等数据对象时,不仅可以使用SQL命令操作,还可以使用SQL Server 2000提供的工具或向导,快述、方便地创建和访问数据库对象,同时SQL Server 2000也提供完成维护、备份和管理等数据库管理工作的工具。

2 系统设计

本系统力求高起点、高标准、严要求,尽可能满足企业的要求和能实现自动处理相关的业务需要,因此在系统设计阶段,首先必须要了解和澄清用户的需求,其次依照需求对系统进行模块划分,最后根据模块之间的关系整理出系统的流程。本文经过仔细的分析系统需求之后,为该系统制定了如下目标:

(1) 系统应具有良好的人机界面,易学易用;

(2) 用户进入系统前需要身份验证方可进入,登陆后可对客户资源进行查询和编辑;

(3) 管理员应可根据需要定义客户类型信息,可对客户信息进行修改和删除;

(4) 管理员应可定义客户的详细信息,对客户的详细信息进行修改和删除。

2.1 系统的主要功能模块

通过对系统的功能分析,本系统的功能模块图如图1所示。

系统管理 提供了系统的访问控制功能。系统管理员通过此模块,可以很方便,快捷地完成系统的初始化配置工作,主要功能包括权限管理,数据管理,系统基础配置等。

客户类型管理 即系统的配置信息管理,包括添加、修改和删除等操作,其客户类型信息包括客户所在的地区、职位、行业等。

客户信息管理 提供的功能为添加、删除、修改客户的基本信息,其包括姓名、年龄、行业、职位、联系方式等。

客户查询管理 主要包括按姓名查询、详细信息查询和统计信息查询3种。通过这些查询接口可以更加方便地利用SQL Server数据库的强大功能为客户资源提供服务[7,8]。

2.2 系统流程分析

由定义给出的功能模块,当用户登陆系统后可以拥有权限进行客户详细信息编辑及查询等操作,具体的流程如图2所示。

2.3 数据库设计

数据库的设计是整个数据库应用系统开发过程中的一个重要环节,数据库结构设计的好坏将直接影响到系统的效率和功能的实现。其主要由2个部分组成:

E-R图的的设计,即概念模型的设计;表与字段的设计,即逻辑模型的设计。

在概念模型设计时,因本系统的需求主要体现在对各种信息的保存、修改、查询等方面,故设计的数据库信息为:地方信息:其包括地方ID、地方名称;结识途径信息:包括结识途径ID、结识途径名称;职位信息:包括职位ID、职位名称;行业信息:包括行业ID、行业名称;客户信息:包括客户ID、姓名、所在地、职位、行业、所在单位、结识途径、邮件地址、固定电话、移动电话、爱好等。在逻辑结构设计时,一是需对实体建立相对应的表,二是建立表与表之间的联系[9]。

2.4 系统框架和模块设计

工程框架的设计首先主要是应用VC所提供的控件进行系统主界面的设计,其主要包括客户信息管理,地区信息管理,职位信息管理等几个部分。这部分主要是设置好每个部分的控件类型,ID,属性和方法,其次是处理数据库的连接和把数据显示到界面上。现在数据库的连接采用ODBC方式,为了能从数据库中读取数据并显示到列表框控件中,需要在CHRDBSDlg类中定义一个InitCtrlData私有函数,同时还需要定义2个分别把数据插入到列表框控件中的函数,分别为InsertConfigItem和InsertCRInfoItem,前者负责把数据插入到系统配置列表框控件中,后者负责把数据插入到客户信息列表框控件中[10]。

系统模块的设计主要有登陆、配置信息管理、客户信息管理与客户查询管理的设计。其中登陆模块主要是设计进入系统之前进行的身份验证;配置信息管理模块主要包括地区信息,结识途径信息,职位信息和行业信息;客户信息管理主要包括添加客户信息,修改客户信息和删除客户信息;客户查询管理主要包括详细信息查询,统计信息查询和按姓名查询,其按姓名查询采用了模糊查询的方式。例如输入姓名为“熊”,则查询时会在客户信息列表框中显示所有姓“熊”的客户信息。

3 结 语

随着新技术的广泛应用,全世界范围内的各个企业都在经历一场深刻的变革,尤其是在企业怎样与客户和潜在客户进行互动交流这一点上体现得特别明显。从管理的角度来说,企业关注的焦点逐渐由改进内部运作转移到更多地关注客户上来。目前的CRM软件通过建立一个系统,使企业在客户服务、市场竞争、销售及支持方面形成彼此协调的全新关系实体,为企业带来长久的竞争优势,从而提高了生产率。但是,CRM是个高度复杂的系统,不同的企业的管理模式不尽相同,不可能使所有的企业都来使用这个高度复杂的系统,故开发一个适合自己企业的CRM系统是现今企业的当务之急。本文实现的客户资源管理系统,适合中小型企业对客户资源的有效管理,为员工提供个性化、一体化的优质服务,为管理者提高了效率。

参 考 文 献

[1]Wang F J,Mills J J,Devarajan V.A Conceptual Approach Managing Design Resource [J].Computers in Industry,2002,47:169-183.

[2]蒋天发.含空值关系数据库泛关系及其实例的研究[J].武汉大学学报:工学版,2004,37(6):89-92.

[3]李涛,王永皎.VC++数据库开发与实例[M].北京:清华大学出版社,2006.

[4]Gorti S R.An Object-oriented Representation for Product and Design Processes[J].Computer-Aided Design,1998,30(7):489-501.

[5]刘炳文.精通Visual C++6.0(中文版)[M].北京:电子工业出版社,1999.

[6]蒋天发.关系数据库中的空值与数据依赖满足性变换算法[J].武汉汽车工业大学学报,2000(5):49-52.

[7]Watson I,Perera S.A Hierarchical Case Representation Using Context Guided Retrieval [J].Knowledge-based Systems,1998,11(2):285-292.

[8]何荣勤.CRM原理设计实践[M].北京:电子工业出版社,2006.

[9]付良,王宁,丁贵勇,等.基于面向对象技术的作战仿真数据库系统设计[J].现代电子技术,2007,30(18):94-96.

[10]Jiang Tianfa,Jiang Wei.A Performance Analysis on theCooperation based Intranet[J].Journal of Wuhan University of Technology(Transportation Science & Engineering),2005,29(2):319-322.

作者简介

熊祥光 男,1984年出生,贵州人,硕士研究生。主要研究方向为网络安全和网格技术。

蒋天发 男,1954年出生,湖北荆门人,中南民族大学计算机科学学院教授,研究生导师,中国高等学校电子教育学会副理事长。

上一篇:基于复合控制的某型雷达伺服系统优化 下一篇:一种新型Rom-less流水线DDS设计