计算机专业课程设计客户管理系统课程设计大学毕设论文.docx
《计算机专业课程设计客户管理系统课程设计大学毕设论文.docx》由会员分享,可在线阅读,更多相关《计算机专业课程设计客户管理系统课程设计大学毕设论文.docx(20页珍藏版)》请在冰豆网上搜索。
![计算机专业课程设计客户管理系统课程设计大学毕设论文.docx](https://file1.bdocx.com/fileroot1/2022-10/11/a03720c4-6a4e-4a32-ad69-b85bfe59ee6e/a03720c4-6a4e-4a32-ad69-b85bfe59ee6e1.gif)
计算机专业课程设计客户管理系统课程设计大学毕设论文
客户管理系统
课程设计报告
学院:
专业年级:
姓名:
学号:
指导教师:
目录
一系统概述
二功能需求分析及说明
(一)分析系统
(二)系统需要实现的功能
三系统设计说明
(一)项目规划
(二)系统功能结构
(三)系统设计
(四)开发及运行环境
(五)数据库设计
四技术准备
(一)数据库的封装
(二)封装ADO数据库的代码分析
五本系统功能模块
(一)登陆功能
(二)客户信息维护:
1客户信息
2联系人信息
3业务往来
4客户呼叫中心
(三)客户服务
1客户反馈
(四)信息查询
1客户信息查询
2联系人信息查询
(五)基础信息维护
1区域性质设置
2企业性质设置
(六)系统功能
1增加操作员
2修改密码
3退出系统
六课程设计总结
(一)实训遇到的问题及解决办法
(二)心得体会
一系统概述:
科技的发展、时代的进步,市场经济的竞争也越发激烈与残酷,在竞争中客户作为市场的最最要的资源,早已成为市场营销的核心,企业间谁拥有的客户多,谁就在竞争中占有绝对的优势。
在市场经济竞争如此激烈的环境之下,企业要想立于不败之地,就必须和与之生存发展息息相关的客户,建立起良好的关系,在现有客户资源的基础之上,维护好和老客户的关系,并且不断的发展新的客户,用企业高品质的产品、优质的服务、良好的信誉树立企业在客户心目中的良好形象;并以客户需求为己任,不断的创新与发展自身的产品,以满足客户新需求,并规范企业内部的客户资源的管理方式、提升企业的客户服务质量。
计算机管理系统满足了企业对自身客户资源管理的新要求,减少了客户资源管理过程中的浪费的大量人力、物力和财力等。
本系统具有完善的基础信息维护和客户信息维护功能,并增置了客户服务模块,满足了客户日常管理的需求;强大的数据查询及图表分析功能,帮助企业能够及时根据分析结果进行新规划和方案,以适应变化万千的消费市场。
客户管理系统后台数据库采用SQLServer2000数据库,以保证数据的安全、高效和稳定。
前台采用Microsoft公司的VisualC++6.0作为主要的开发工具,其可与SQLServer2000数据库无缝链接。
二功能需求分析及说明
(一)分析系统:
本系统通过访问到数据库,使操作员可以对数据库的客户数据表进行各种处理,使对数据的录入转换成人性化的界面录入,实现本地或者远程访问数据库,满足个人、企业等用户方便地对数据进行管理的需求。
(二)系统需要实现的功能:
基本功能:
(1)系统登录:
输入用户名和密码,进行登录;
(2)客户信息维护模块:
输入和编辑客户信息;
(3)信息查询模块:
客户信息查询,联系人信息查询等;
(4)系统管理模块:
增加操作员,密码修改以及退出系统。
扩展功能:
(1)基础信息维护模块:
包括区域信息设置,企业性质设置,企业类型设置,企业资信设置,客户级别设置以及客户满意度设置;
(2)客户服务模块:
包括客户反馈和客户投诉;
(3)VIP客户模块及有针对性的服务。
三系统设计说明:
(一)项目规划
客户管理系统所涉及的信息非常的全面,主要由客户信息录入、联系人信息录入、信息查询和系统管理等几个功能模块组成,系统管理模块主要包括操作员设置、密码修改和系统退出。
(二)系统功能结构
客户管理系统的功能结构如图1所示。
客户管理系统功能架构图
(三)系统设计
设计目标
本系统属于典型的数据库管理系统,是针对中小型企业生产管理开发设计的,实现进一步的计算机化的管理。
通过本系统可以达到以下目标:
❑灵活的运用表格批量输入数据,使信息传递更快捷。
❑系统采用良好的人机对话模式,界面设计美观友好,信息查询灵活、方便、快捷、准确,数据存储安全可靠。
❑键盘操作,快速响应。
❑实现各种查询及打印等。
❑操作员可以随时修改自己的口令。
❑管理员可以设置操作员的权限
❑对用户输入的数据,系统进行严格的数据检验,尽可能排除人为的错误。
❑数据保密性强,为每个用户设置权限级别。
❑系统运行稳定、安全可靠。
(四)开发及运行环境
系统开发平台:
VisualC++6.0。
数据库管理系统软件:
SQLServer2000。
运行平台:
Windowsxp
(五)数据库设计
本系统数据库采用SQLServer2000数据库,系统数据库名称为db_Client。
数据库db_SCGL中包含13张数据表。
下面分别给出数据表概要说明和主要数据表的结构。
数据表概要说明:
从读者角度出发,使读者对本系统后台的数据库中数据表有一个更清晰的认识,在此特设计一个数据库中数据表列表,该数据表列表包含系统所有数据表,如图2所示。
四技术准备
(一)数据库的封装
调用数据库的方式有很多,主要有DAO、ODBC、ADO,但使用起来比较灵活的是ADO,直接引用ADO的方法是在头文件StdAfx.h中加入如下代码:
#import"C:
\ProgramFiles\CommonFiles\System\ado\msado15.dll"no_namespacerename("EOF","adoEOF")rename("BOF","adoBOF")
然后在要用的ADO的类中加入两个指针的定义就可以应用ADO了
_ConnectionPtrm_pConnection;
_RecordsetPtrm_pRecordset;
(二)封装ADO数据库的代码分析
对ADO的封装主要是将引用ADO的代码加到自定义的类中,并引用头文件StdAfx.h即可,对ADO进行封装的代码如下:
头文件ADO.H声明如下:
#import"C:
\ProgramFiles\CommonFiles\System\ado\msado15.dll"no_namespacerename("EOF","adoEOF")
classado
{
public:
_ConnectionPtrm_pConnection;
_RecordsetPtrm_pRecordset;
public:
ado();
virtual~ado();
voidclose();
boolMovePrevious();//向上移动
boolMoveLast();//最后一条
boolMoveNext();//向下移动
boolMoveFirst();//最后一条
intGetRecordCount();//获得记录个数
boolOpen(CStringsrecordset,UINTadCmd);
voidGetErrors(_com_erroreErrors);//获得错误信息
CStringGetFieldValue(CStringField);//获得字段值
boolMove(intnRecordNum);//移动记录
voidExecuteSQL(CStringSQL);//执行SQL语句
voidrstOpen(CStringTSQL);//打开记录集
};
五本系统功能模块
主要功能模块设计:
(一)登陆功能:
提供操作员的登录功能,拒绝非法用户访问数据库。
登陆成功后就进入到主窗体,就可以对客户管理系统的各个模块进行调用,主要有菜单调用和工具栏按钮调用两种,如图所示。
(二)客户信息维护
2.1客户信息
可以实现客户基本信息的添加、删除和修改,进行客户信息中上一条,下一条,第一条和最后一条信息的操作,能够用列表显示数据表中全部信息。
程序运行如图所示。
2.2联系人信息
可以实现联系人基本信息的添加、删除和修改,进行上一条,下一条,第一条和最后一条的操作,用列表方式显示数据表中全部信息。
2.3业务往来
可以实现产品信息的添加、删除和修改。
程序运行如图所示。
2.4客户呼叫中心
实现对客户的呼叫、客户详细信息以及对联系人信息的查询。
程序运行如图所示。
(三)客户服务
3.1客户反馈
(四)信息查询
4.1客户信息查询实现查询功能,可以查询客户的编号,企业的名称,联系人的姓名等字段,最后将查询出来的结果显示在列表中,程序运行结果如图所示。
4.2联系人信息查询:
实现查询功能,可以查询联系人的编号,企业的名称,联系人的姓名等字段,最后将查询出来的结果显示在列表中,程序运行结果如图所示。
(五)基础信息维护
5.1区域信息设置
5.2企业性质设置:
可以设置企业的性质,进行添加、修改、删除等功能。
(六)系统功能
6.1增加操作员:
增加系统的操作员,使多个操作员可以对数据库进行访问,实现权限的再发布。
添加成功就会返回一个添加成功的对话框,如下:
6.2修改密码:
提供操作员的密码修改功能,使操作员的密码有泄漏风险时可以尽快更改,防止造成数据的泄露。
添加成功就会返回一个添加成功的对话框,如下:
六课程设计总结
(一)实训遇到的问题及解决办法
在做这个客户管理系统是遇到了很多的问题,不过到最后想办法解决了。
刚开始的时候因为没备份,做到下一步时做错了,就只好前功尽弃,重新再做一个。
1错误1
运行过程中,点击客户信息、客户联系人信息都会出现错误.这是因为一开始数据库中没有数据造成的.要先在代码里插入一个判断语句,如果没有记录,就返回return。
错误的代码:
要是数据库里的客户信息记录为空,则会出现一个runningtimeerror的错误。
voidkhinfo:
:
loadrst()
{
rst4.rstOpen("select*fromtb_khxx");
tnum2=rst4.GetRecordCount();
b.edit1=rst4.GetFieldValue("khxx_id");
b.edit2=rst4.GetFieldValue("khxx_mc");
2=rst4.GetFieldValue("khxx_qyxz");
3=rst4.GetFieldValue("khxx_qylx");
5=rst4.GetFieldValue("khxx_qyzx");
b.edit4=rst4.GetFieldValue("khxx_qydz");
6=rst4.GetFieldValue("khxx_szsf");
b.edit5=rst4.GetFieldValue("khxx_szcs");
b.edit6=rst4.GetFieldValue("khxx_gsyb");
b.edit7=rst4.GetFieldValue("khxx_frdb");
b.edit8=rst4.GetFieldValue("khxx_khyh");
b.edit9=rst4.GetFieldValue("khxx_yhzh");
b.edit10=rst4.GetFieldValue("khxx_nsh");
b.edit11=rst4.GetFieldValue("khxx_ICcard");
b.edit12=rst4.GetFieldValue("khxx_gswz");
b.edit13=rst4.GetFieldValue("khxx_gsdh")