![计算机专业课程设计客户管理系统课程设计学士学位论文_第1页](http://file4.renrendoc.com/view/856e0815924d5f7e704153a98ba49459/856e0815924d5f7e704153a98ba494591.gif)
![计算机专业课程设计客户管理系统课程设计学士学位论文_第2页](http://file4.renrendoc.com/view/856e0815924d5f7e704153a98ba49459/856e0815924d5f7e704153a98ba494592.gif)
![计算机专业课程设计客户管理系统课程设计学士学位论文_第3页](http://file4.renrendoc.com/view/856e0815924d5f7e704153a98ba49459/856e0815924d5f7e704153a98ba494593.gif)
![计算机专业课程设计客户管理系统课程设计学士学位论文_第4页](http://file4.renrendoc.com/view/856e0815924d5f7e704153a98ba49459/856e0815924d5f7e704153a98ba494594.gif)
![计算机专业课程设计客户管理系统课程设计学士学位论文_第5页](http://file4.renrendoc.com/view/856e0815924d5f7e704153a98ba49459/856e0815924d5f7e704153a98ba494595.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计客户管理系统课程设计报告学院:专业年级:姓名:学号:指导教师:目录一系统概述二功能需求分析及说明(一)分析系统(二)系统需要实现的功能三系统设计说明(一)项目规划(二)系统功能结构(三)系统设计(四)开发及运行环境(五)数据库设计四技术准备(一)数据库的封装(二)封装ADO数据库的代码分析五本系统功能模块(一)登陆功能(二)客户信息维护:1客户信息2联系人信息3业务往来4客户呼叫中心(三)客户服务1客户反馈(四)信息查询1客户信息查询2联系人信息查询(五)基础信息维护1区域性质设置2企业性质设置(六)系统功能1增加操作员2修改密码3退出系统六课程设计总结(一)实训遇到的问题及解决办法(二)心得体会一系统概述:科技的发展、时代的进步,市场经济的竞争也越发激烈与残酷,在竞争中客户作为市场的最最要的资源,早已成为市场营销的核心,企业间谁拥有的客户多,谁就在竞争中占有绝对的优势。在市场经济竞争如此激烈的环境之下,企业要想立于不败之地,就必须和与之生存发展息息相关的客户,建立起良好的关系,在现有客户资源的基础之上,维护好和老客户的关系,并且不断的发展新的客户,用企业高品质的产品、优质的服务、良好的信誉树立企业在客户心目中的良好形象;并以客户需求为己任,不断的创新与发展自身的产品,以满足客户新需求,并规范企业内部的客户资源的管理方式、提升企业的客户服务质量。计算机管理系统满足了企业对自身客户资源管理的新要求,减少了客户资源管理过程中的浪费的大量人力、物力和财力等。本系统具有完善的基础信息维护和客户信息维护功能,并增置了客户服务模块,满足了客户日常管理的需求;强大的数据查询及图表分析功能,帮助企业能够及时根据分析结果进行新规划和方案,以适应变化万千的消费市场。客户管理系统后台数据库采用SQLServer2000数据库,以保证数据的安全、高效和稳定。前台采用Microsoft公司的VisualC++6.0作为主要的开发工具,其可与SQLServer2000数据库无缝链接。二功能需求分析及说明分析系统:本系统通过访问到数据库,使操作员可以对数据库的客户数据表进行各种处理,使对数据的录入转换成人性化的界面录入,实现本地或者远程访问数据库,满足个人、企业等用户方便地对数据进行管理的需求。(二)系统需要实现的功能:基本功能:系统登录:输入用户名和密码,进行登录;客户信息维护模块:输入和编辑客户信息;信息查询模块:客户信息查询,联系人信息查询等;系统管理模块:增加操作员,密码修改以及退出系统。扩展功能:基础信息维护模块:包括区域信息设置,企业性质设置,企业类型设置,企业资信设置,客户级别设置以及客户满意度设置;客户服务模块:包括客户反馈和客户投诉;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"); b.edit14=rst4.GetFieldValue("khxx_gscz"); b.edit15=rst4.GetFieldValue("khxx_lxr"); b.edit16=rst4.GetFieldValue("khxx_lxrdh"); 4=rst4.GetFieldValue("khxx_khjb"); b.edit17=rst4.GetFieldValue("khxx_bz"); }就要在载入客户信息前加一句判断语句: if(tnum2==0) {return; }这样,当记录为空的时候就不会出错误了。正确的代码如下: voidkhinfo::loadrst() { rst4.rstOpen("select*fromtb_khxx"); tnum2=rst4.GetRecordCount();if(tnum2==0) {return; }//判断记录是否空 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"); b.edit14=rst4.GetFieldValue("khxx_gscz"); b.edit15=rst4.GetFieldValue("khxx_lxr"); b.edit16=rst4.GetFieldValue("khxx_lxrdh"); 4=rst4.GetFieldValue("khxx_khjb"); b.edit17=rst4.GetFieldValue("khxx_bz"); }2错误2同样的代码,做密码菜单时的步骤也没有错,但在我的管理系统点击进入系统菜单的密码修改时出现错误,最后经过调试、上网查找材料,终于解决了。错误的代码:没办法根据用户名进行密码修改,进入密码修改菜单时出错。BOOLCMimaDlg::OnInitDialog(){ CDialog::OnInitDialog(); adorsta; rsta.Open("select*fromtb_user",adCmdText); intrstnum=rsta.GetRecordCount(); inti;for(i=1;i<=rstnum;i++) { this->m_com1.AddString(rsta.GetFieldValue("user_name")); this->m_com1.SetWindowText(rsta.GetFieldValue("user_name")); rsta.Move(i); } rsta.close(); returnTRUE;}改正后的代码:将这一句this->m_com1.AddString(rsta.GetFieldValue("user_name"));改为this->m_com1.SetWindowText(rsta.GetFieldValue("user_name"));则修改密码是就不会出错了。3错误3在引入字符串的时候,添加、修改、删除、第一条、下一条等图标的值出现了不连续,而由于给图标添加文字说明的时候,是通过循环添加的,就出现了文字添加不正错的问题。改正:到resource.h这个头文件将图标的值改成连续的。4不足1总共需要用的图标只有18个:客户信息、联系人信息、呼叫中心、关闭等而自己却总共需要添加24个才能够全部实现图标的功能,使得有些图标如添加、修改等进行了重复引入、定义,增加了系统的复杂性,系统不够简洁。当然,还遇到了
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 银川油泵项目申请报告模板参考
- 2025年正在改制行业深度研究分析报告
- 助贷服务合同范本
- 2025年度脚手架施工质量监督与验收合同
- 2025年度建筑劳务市场合同示范文本汇编
- 2025年度国际货物保险风险评估与管理合同
- 别克车销售合同范本
- 2025年度搅拌桩施工设备租赁合同
- 化肥包装租赁合同范例
- 2025年度创意产业园区租赁运营管理合同
- 中央2025年交通运输部所属事业单位招聘261人笔试历年参考题库附带答案详解
- 2025年上半年上半年重庆三峡融资担保集团股份限公司招聘6人易考易错模拟试题(共500题)试卷后附参考答案
- (正式版)HGT 22820-2024 化工安全仪表系统工程设计规范
- 华银铝项目氧化铝系统总体投料试车方案
- 2023年青岛远洋船员职业学院高职单招(数学)试题库含答案解析
- 2023年卫生院岗位大练兵大比武竞赛活动实施方案
- 2023年浙江省初中学生化学竞赛初赛试卷
- 辽海版小学五年级美术下册全套课件
- 专题7阅读理解之文化艺术类-备战205高考英语6年真题分项版精解精析原卷
- 2022年广东省10月自考艺术概论00504试题及答案
- 隧道二衬承包合同参考
评论
0/150
提交评论