客户关系管理系统的实现

客户关系管理系统的实现[java毕业论文下载]

摘  要

论文介绍了一个较为完整、有较强实用性的客户关系管理(CRM)系统的开发过程。该CRM系统主要包括客户管理、联系人管理、时间管理、销售管理、电话营销、营销管理等诸多典型功能。在系统的实现上,前台主要应用的是ASP.NET web设计技术、C#程序设计语言以及DreamWeaver网页设计工具;后台则是采用了网络数据库SQL server 2000。

论文首先对客户关系管理(CRM)进行了概述性的介绍,包括CRM的基本概念、管理思想和基本构成。接着对CRM的进行了需求分析、系统规划以及数据库设计。在此基础上,论文详细介绍了客户管理子系统和活动管理子系统设计过程中涉及的用户验证、数据列表分页、创建公用数据库连接类、对数据表之间关联等关键技术,并介绍了系统设计过程中对应模块的详细设计过程,给出了设计效果和设计代码。另外,论文还介绍了系统测试的目的、任务和方法,利用一个具体的测试实例检验完成系统对应功能的实现情况。最后概述了系统优缺点、将来可能提出的要求以及设计的体会和感受。

 

关键字:CRM;  ASP.NET;  SQL;  .Net Framework对象开发库

 


Abstract

The paper introduced a complete and stronge usable customer relations management (CRM) system performance history. This CRM system mainly includes many typical functions as the customer management, the contact person manages, the time management, the sales management, the telephone marketing, the marketing management and so on. In the system realization, the onstage mainly applies the ASP.NET web design technology, the C# programming language as well as the DreamWeaver homepage design tool. The backstage uses network database SQL server 2,000.

The paper (CRM) has first carried on the outline introduction to the customer relations management, including CRM basic concept, management thought and basic constitution. After that carries on the demand analysis, the system plan as well as the database design to CRM. In this foundation, the paper in detail introduced the customer management subsystem and in the active management subsystem design process involves user confirmation, data logger minute page, foundation public database connection class, to data sheet between connection and so on essential technology, and introduced in the system design process corresponds the module the detailed design process, has produced the design effect and the design code. Moreover, the paper also introduced the system test goal, the duty and the method; use a concrete test example examination to complete the system correspondence function the realization situation. Finally has outlined the request as well as the design experience and the feeling which the system good and bad points, the future possibly proposed.

 

Essential character: CRM; ASP.NET; SQL; Net Framework object development storehouse


目  录

   I

Abstract II

   III

1     1

1.1  课题研究背景 1

1.2  课题研究意义 2

1.3  课题研究内容 2

2  客户关系管理(CRM)概述 4

2.1  CRM基本概念 4

2.2  CRM管理思想 4

2.3  CRM系统的基本构成 5

2.3.1  客户管理 6

2.3.2  联系人管理 6

2.3.3  时间管理 6

2.3.4  潜在客户管理 6

2.3.5  销售管理 6

2.3.6  营销管理 7

2.3.7  客户服务管理 7

3  客户关系管理系统的分析与设计 8

3.1  CRM系统分析 8

3.2  CRM系统规划 9

3.2.1  客户管理系统模块 10

3.2.2  活动管理系统模块 12

3.3  系统数据库设计 13

4  客户管理子系统实现 17

4.1  关键技术介绍 17

4.1.1  创建用户验证页面 17

4.1.2  数据列表分页的方法 18

4.1.3  创建公用的数据库连接文件(类) 19

4.2  客户管理模块 20

4.2.1  浏览客户信息 20

4.2.2  添加客户信息 23

4.2.3  客户信息列表显示 24

4.2.4  修改客户信息 26

4.2.5  删除客户信息 27

4.3  联系人管理模块 28

4.3.1  浏览联系人信息 28

4.3.2  添加联系人信息 29

4.3.3  修改联系人信息 30

4.3.4 联系人信息列表 30

5  活动管理子系统实现 31

5.1  关键技术介绍 31

5.2  活动管理模块 32

5.2.1  浏览活动信息 32

5.2.2  添加活动信息 33

5.2.3  活动列表模块 34

5.2.4  修改活动信息 34

5.2.5  删除活动信息 35

6  软件测试 37

6.1  测试的目的与任务 37

6.2  测试的方法 37

6.3  具体测试 38

7  结论与体会 39

7.1  系统优缺点 39

7.2  将来可能提出的要求 39

7.3  系统设计过程中的体会和感受 40

参考文献 41

   42

 

 

第1章    

1.1  课题研究背景

随着信息技术和全球一体化的发展,企业经营环境发生了巨大的变化。从前,企业只要控制成本与质量,能够以最小的成本,制造出最好的产品,就可以击败竞争对手,在市场中占一席之地。但随着网络应用的迅速发展,竞争模式日益更新,速度、知识和网络改变恶劣竞争的规则,在全球范围内造就了一个利用信息技术将速度和知识结合起来创造新价值的新经济时代。这就对传统的商业模式提出了挑战,企业不仅需要改进内部的组织流程和结构,更重要的是应该关注企业外部的生存和发展环境,企业之间的竞争已从原先的以价格为中心的竞争转变为以客户为中心的竞争。

1990年前后,许多美国企业为了满足日益竞争的市场需要,开始开发销售自动化系统(SFA),随后又着力发展客户服务系统(CSS)。1996年后,一些公司开始把SFA和CSS两个系统合并起来,再加上营销策划(Marketing)和现场服务(Field Service),在此基础上再集成CTI(计算机电话集成技术),从而形成集销售(Sales)和服务(Service)于一体的呼叫中心(CallCenter)。这样就逐步形成了我们今天熟知的CRM。

客户关系管理(CRM)全面解决了企业外部客户问题,实现了对客户资源的有效发掘和利用,同时,实施客户关系管理是一个系统工程,它既适应了企业竞争环境变化的要求,又融合了数据库营销、关系营销、一对一营销等一系列管理思想。

客户关系管理(CRM)已成为很多企业的基本商务战略,它与企业资源规划(ERP)、供应链管理(SCM)一起,是企业提高竞争力的三大法宝。

客户关系管理是一套先进的管理模式,其实施要取得成功,必须有强大的技术和工具支持。CRM软件是实施客户关系管理必不可少的一套技术和工具集成支持平台,它基于网络、通讯、计算机等信息技术,能实现企业前台、后台不同职能部门的无缝连接。CRM软件是以客户为中心的思想的固化、程序化,用于协助管理者更好地完成客户关系管理的两项基本任务:识别和保持有价值客户。

客户关系管理系统把有关市场和客户的信息进行统一管理、共享,并能进行有效分析的处理的新型应用系统,它为企业内部的销售、营销、客户服务等提供全面的支持。在帮助企业缩减销售成本、增加收入、寻找扩展业务所需的新市场和新渠道,提高客户的价值方面CRM具有很广阔的应用空间。

1.2  课题研究意义

使用CRM概念和技术,企业能快速搜集、追踪和分析每一个客户的信息,进而了解整个市场走势,并确切地知道谁是客户、谁是客户的客户、什么是客户的需要、客户需要什么样的产品和服务、如何才能满足客户的要求,以及满足客户要求的一些重要限制因素。CRM还能观察和分析客户行为对企业收益的影响,使企业与客户的关系及企业盈利都得到最优化。

CRM进入国内已有几年的时间,客户关系管理系统所遵从的“一对一个性化服务”的企业管理理念,逐渐被国内众多的用户所熟悉和接受。无论用户还是厂商都非常关注这个产品,很多软件厂商纷纷推出自己的CRM产品。我国的CRM市场正在迅速发展和壮大,其中孕育了较大的商机,已经成为投资商、软件开发厂商和用户共同关注的对象,CRM的市场前景将十分广阔。

但是经过仔细的鉴别与分析后发现:能够提供功能比较全面的CRM产品的国内厂商很少,有些只能提供实现客户管理中的几个应用模块,有的只是在ERP的某些模块上稍作修改,并没有真正实现客户关系系统的“客户为中心”的理念。市场中真正的CRM产品很少,适合国情的产品更是少之又少,现代企业着手进行信息化建设,多数以失败或者不理想而告终,基于以上原因,我们认为自己动手开发一个CRM系统是具有非常重要的现实意义的。

1.3  课题研究内容

论文首先对客户关系管理(CRM)进行了概述性的介绍,包括CRM的基本概念、管理思想和基本构成。接着对CRM的进行了需求分析、系统规划以及数据库设计。在此基础上,论文详细介绍了客户管理子系统和活动管理子系统设计过程中涉及的用户验证、数据列表分页、创建公用数据库连接类、对数据表之间关联等关键技术,并介绍了系统设计过程中对应模块的详细设计过程,给出了设计效果和设计代码。另外,论文还介绍了系统测试的目的、任务和方法,利用一个具体的测试实例检验完成系统对应功能的实现情况。最后概述了系统优缺点、将来可能提出的要求以及设计的体会和感受。

全文内容安排如下:

第一章引言,介绍了系统开发的背景和意义,并简要介绍了论文内容的安排。

第二章客户关系管理(CRM)概述,主要介绍了CRM的基本概念、管理思想和基本构成。

第三章客户关系管理的分析与设计,主要介绍了对CRM的需求分析、系统规划和数据库设计。

第四章客户管理系模块的详细设计,介绍了客户关系管理模块涉及的用户验证、数据列表分页和创建公用数据库连接类这三类关键技术,及其对应的数据库的建立和功能代码的编写,实现界面的预览。

第五章活动管理模块,主要介绍了对数据表之间关联的实现技术,对应的数据库的建立和功能代码的编写,实现界面的预览。

第六章软件测试,介绍了测试目的、任务和方法。并利用一个具体的测试实例检验完成系统对应功能的实现情况。

第七章结论与体会,概述了系统优缺点、将来可能提出的要求以及设计的体会和感受。

 

 


第2章  客户关系管理(CRM)概述

2.1  CRM基本概念

CRM是英文Custormer Relationship Management的缩写,即客户关系管理。它是一个获取、保持、和增加可获利客户的过程。首先,它是一套先进的管理思想及技术手段,它通过将人力资源、业务流程与专业技术进行有效的整合,最终为企业涉及到客户或消费者的各个领域提供了完美的集成,使得企业可以更低成本、更高效率地满足客户的需要,并与客户建立起基于学习型关系基础上的一对一营销模式,从而让企业可以最大程度地提高客户满意度及忠诚度,发掘并牢牢地把握能给企业带来最大价值的客户群。

CRM的核心内容主要是通过不断的改善与管理企业销售、营销、客户服务和支持等与客户关系有关的业务流程并提高各个环节的自动化程度,从而缩短销售周期、降低销售成本、扩大销售量、增加收入与盈利、抢占更多市场份额、寻求新的市场机会、销售渠道,最终从根本上提升企业的核心竞争力,使得企业在当前激烈的竞争环境中立于不败之地。CRM将先进的思想与最佳的实践具体化,通过使用当前多种先进的技术手段,最终帮助企业实现以上目标。

从物理结构上说,CRM是一套智能化的信息处理系统,从功能上说,它将企业的经营、管理导向“以客户为中心”的一套管理和决策方法。它是一个软件模块。一个完整的CRM概念不仅包含了一个现代的网络呼叫中心的全部功能,而且还包括了呼叫中心收集起来的信息和数据进行存储、加工、分析和整理。对大量的数据进行研究,发现他们的自然规律,并运用人工智能的各种优化算法建立数学模型,经过计算获得若干对企业决策和支持有用的结果。

2.2  CRM管理思想

在竞争日益激烈的今天,越来越多的企业开始关注客户,重视收集客户的信息,倾听并及时响应客户的要求和期望。企业通过对客户理解的不断加深以及对客户服务实践的不断改善,提高其竞争力。CRM的目标在于协助企业不断地获取和积累客户知识,并将这些知识运用在企业的生产、市场营销和客户服务等各个领域,以提升客户满意度和忠诚度,降低生产、销售和服务成本,从而增加企业效益。CRM的核心管理思想主要包括以下几个方面:

1)客户是企业发展最重要的资源之一

在人类社会从产品导向时代转变为客户导向时代的今天,客户的选择决定着一个企业的命运,因此,客户己成为当今企业最重要的资源之一。CRM系统中对客户信息的整合集中管理体现出将客户作为企业资源之一的管理思想。在很多行业中,完整的客户档案或数据库就是一个企业颇具价值的资产。通过对客户资料的深入分析并应用销售理论中的2/8法则将会显著改善企业营销业绩。

2)对企业与客户发生的各种关系进行全面管理

企业与客户之间发生的关系,不仅包括单纯的销售过程所发生的业务关系,如合同签订、定单处理、发货、收款等,而且还包括在企业营销及售后服务过程中所发生的各种关系。如在企业市场活动、市场推广过程中与潜在客户发生的关系。在与目标客户接触过程中,内部销售人员的行为、各项活动及其与客户接触全过程所发生的多对多的关系。还包括售后服务过程中,企业服务人员对客户提供关怀活动、各种服务活动、服务内容、服务效果的记录等,这也是企业与客户的售后服务关系。

对企业与客户间可能发生的各种关系进行全面管理,将会显著提升企业营销能力、降低营销成本、控制营销过程中可能导致客户抱怨的各种行为,这是CRM系统的另一个重要管理思想。

3)进一步延伸企业供应链管理

CRM系统借助Internet Web技术,突破了供应链上企业间的地域边界和不同企业之间信息、交流的组织边界,建立起企业自己的B2B网络营销模式。CRM真正解决了企业供应链中的下游链管理,将客户、经销商、企业销售全部整合到一起,实现企业对客户个性化需求的快速响应。同时帮助企业清除营销体系中的中间环节,通过新的扁平化营销体系,缩短响应时间,降低销售成本。

2.3  CRM系统的基本构成

一个CRM系统是具有对客户各方面信息进行详细管理、分类、统计等功能的复杂系统,一般有多个子系统组成。一般CRM软件的基本功能包括客户管理、联系人管理、时间管理、潜在客户管理、销售管理、营销管理、电话营销、客户服务等,有的软件还包括了呼叫中心、合作伙伴关系管理、商业智能、知识管理、电子商务等。

2.3.1  客户管理

客户是企业最重要的资源之一,客户管理是对企业的客户资源进行管理。主要功能包括基本信息管理、活动管理、订单管理、合同管理等。

2.3.2  联系人管理

企业与客户直接接触时的对象是联系人,企业与客户之间往往具有固定的一个或多个联系人。联系人管理的主要作用包括联系人概况的存储和检索、跟踪与客户联系的详细记录、客户内部机构的设置概况等。

2.3.3  时间管理

时间管理主要的功能有日历功能:设计约会、活动计划、有冲突时,系统会提示;进行事件安排,如约会、电话、电子邮件、传真;备忘录进行团队等事件安排;查看团队中其他人的安排,以免发生冲突;把事件的安排通知相关的人;任务表安排;预告与提示;记事本等。

2.3.4  潜在客户管理

潜在客户管理主要的功能包括业务线索的记录、升级和分配,销售机会的升级和分配,潜在客户的跟踪等。

2.3.5  销售管理

销售管理的主要功能包括组织和浏览销售信息;产生各销售业务的阶段报告,并给出业务所处阶段、还需的时间、成功的可能性、历史销售状况评价等信息;对销售业务给出战术、策略上的支持;对地域进行维护;把销售员归入某一地域并授权;地域的重新设置;根据利润、领域、优先级、时间、状态等标准,用户可定制关于将要进行的活动、业务、客户、联系人、约会等方面的报告;提供类似BBS的功能,用户可把销售秘诀贴在系统上,还可以进行某一方面销售技能的查询;销售费用管理与销售佣金管理等。

2.3.6  营销管理

营销管理主要功能包括产品和价格配置器;在进行营销活动时,能获得预先定制的信息支持;把营销活动与业务、客户、联系人建立关联;显示任务完成进度;提供类似公告板的功能,可张贴、查找、更新营销信息,从而实现营销文件、分析报告等的共享;跟踪特定事件;安排新事件。

2.3.7  客户服务管理

客户服务管理主要的功能包括服务项目的快速录入;服务项目的安排、调度和重新分配;事件的升级;搜索和跟踪与某一业务相关的事件;生成事件报告;服务协议和合同;订单管理和跟踪;问题及其解决方法的数据库。

 

 


第3章  客户关系管理系统的分析与设计

3.1  CRM系统分析

现行的CRM软件还处于起步阶段,功能模块结构不尽相同,但是其基本的需求是一样的,其主要技术需求应包括六个方面:

1、信息分析能力

CRM有大量客户和潜在客户的信息,企业应该充分的利用这些信息进行分析,使得决策者掌握的信息更加完全,从而能及时的作出决策。良好的商业情报是企业成功的一半。

2、对客户互动渠道进行集成的能力

对多渠道进行集成与CRM解决方案的功能部件的集成是同等重要的。不管客户是与企业联系还是与销售人员联系,于客户互动都应该是无缝的、统一的、高效的。同一的渠道还能带来内部效益的提高。

3、支持网络应用的能力

在支持企业内外的互动和业务处理方面,Web的作用越来越大,这使得CRM得网络功能越来越重要。如网络可以为电子商务渠道提供支持。为了使客户和企业雇员都能方便应用CRM,需要提供标准化的网络浏览器,使得用户几乎不需训练就能使用系统。另外,如果通过网络为客户提供在线反馈的话并能有专人及时传达信息给公司的售后服务部门,这将为公司留住客户(尤其是距离较远的)并使业绩添砖加瓦。

4、建设集中的信息仓库的能力

采用集中化的信息、实时的客户信息,可使各业务部门和功能模块间的信息能统一起来。

5、对工作流进行集成的能力

工作量是指把相关文档和工作规则自动化安排给负责特定业务流程中特定步骤的人。CRM解决方案应具有较强的功能,为跨部门工作提供支持,使这些工作能动态的、无缝的集成。

6、与ERP功能的集成

如果CRM与ERP和财务、库存、制造、分销、物流和人力资源等连接起来,使之成为一个客户互动循环,这种集成能使企业在系统间搜集商业情报,而不是低水平的数据同步。

根据分析,一个成功的CRM产品一般都能实现以下功能:

(1)客户信息进行全方位跟踪。

(2)帮助企业高层进行决策。

(3)帮助企业提高营业额,产生新的商机

因而可得企业CRM系统的应包括以下基本功能:

销售管理:销售支持系统给销售人员提供了功能强大的支持工具和多种形式的信息,从而使销售人员可以对客户、业务等进行有效的管理。对于企业来说,销售管理系统将大大扩展客户范围,提高工作效率,降低销售成本,为企业的利润增长提供有力的支撑。

营销管理:使营销人员能高效、全面地分析客户及市场信息,量身定做合适的市场活动计划。系统可以对销售、服务等进行指标化的分析,帮助营销人员根据实际情况制定、实施和调整营销战略计划,并发送给销售人员和合作伙伴,从而实现对产品、服务、物流等渠道进行管理调控。

客户服务:客户服务系统可以帮助企业以更快的速度和更高的效率来满足客户的独特需求。可以向服务人员提供完备的工具和信息,并支持多种与客户的交流方式。帮助客户服务人员更有效率、更快捷、更准确地解决用户的服务咨询,同时能根据用户的背景资料和可能的需求向用户提供合适的产品和服务建议。

电话中心CallCenter:将销售与客户服务系统整合成为一个系统。使得服务人员可以根据客户提出的需求提供售后服务支持,也可以提供销售服务。大大方便了客户与公司的交流,使顾客增加了对公司服务的依赖。

3.2  CRM系统规划

本CRM系统是具有对客户各方面信息进行详细管理、分类、统计等功能的复杂系统,一般由多个子系统组成。主要功能包括,客户管理系统模块、活动管理系统模块、销售管理系统模块、服务管理系统模块、费用管理系统模块、库存管理系统模块、报表管理系统模块、E-mail管理系统模块以及后台管理系统模块。本系统为了体现模块的独立性,各个模块之间的关联除了后台数据库之外,模块之间的关联是很少的。本人负责如下两个模块。

3.2.1  客户管理系统模块

客户管理系统模块是整个CRM系统的重点与主干,该系统主要对客户的信息进行管理,并将客户信息作为连接其余各个系统模块的主线,整体关系表现如下:

客户管理主要就是将企业掌握的信息进行详细管理,并可以方便地对这些信息进行修改。在CRM系统中,客户管理系统可以通过客户或相关联系人的关键字段进行查询,快速找到所需要的客户或相关联系人信息。具体系统实现功能如下:

1. 客户详细信息管理

客户详细信息管理主要功能是浏览、查询、添加、删除、修改各个客户的详细信息。

2 .客户信息列表

用于将客户信息进行简单的列表显示,使用户可以方便地管理客户信息库,并具有模糊查询、删除等功能。

3. 联系人详细信息管理

联系人指的是某客户的具体联系人员,对联系人也需要建立类似客户的管理西。联系人详细信息管理模块与客户详细信息管理类似,主要功能是浏览、查询、添加、修改各个联系人的详细信息。

4. 联系人信息列表

与客户信息列表类似,联系人信息列表是将联系人信息进行简单的列表显示,以使得用户可以方便地管理联系人信息库。

客户管理子系统的模块结构图如下:

添加新客户信息时,首先从客户信息表单中获得客户的详细信息,在对所有的字段进行格式校验合格后,将数据添加到数据库的客户表中。同样的,当添加新联系人信息的时候,首先从联系人信息表单中获得联系人的详细信息,在对所有的字段进行格式校验合格后,将数据添加到数据库的联系人表中。在添加联系人信息时,需要为联系人选择一个相关的客户信息,才能把数据添加到联系人表中。

各模块之间的关系如下图所示。

3.2.2  活动管理系统模块

活动管理系统模块主要记录与客户之间的联系计划信息,以便及时和客户取得联系,随时了解客户的情况,保证稳定的客户来源。它是由活动详细信息管理和活动列表构成。

活动管理系统主要就是将企业与客户及其相关联系人之间发生的各种活动进行详细管理,并可以方便地对活动信息进行添加、修改等编辑操作。在CRM中,活动管理系统可以通过活动的关键字段进行查询,快速找到所需要的活动信息,提供方便全面的活动记录参考。具体的活动管理系统实现的功能如下:

1、活动管理模块

添加活动:添加新的活动信息到活动表,其中包括活动主题、活动类型、相关客户、活动时间、活动具体安排等信息。

浏览活动:能够对所有活动信息进行逐一浏览,并可以浏览其他用户公开的活动记录信息。

编辑信息:能够修改和删除活动信息,用户可以在浏览活动信息时随时更新活动信息,并可删除作废的活动信息。

2、活动列表模块

活动列表显示:对所选择客户的活动进行列表显示,使得用户更容易从全局去把握活动计划,并能够快速找到需要的活动记录。

活动信息模糊查询:通过限定的关键字段查询活动信息,将符合条件的活动信息进行列表显示。

批量删除活动信息:能够批量删除先中的多个活动信息,用户可以在对活动信息进行查询后批量删除符合条件的活动信息。

当添加新活动信息的时候,首先从活动信息表单中获得活动的详细信息,在对所有的字段进行格式校验合格后便将数据添加到数据库的活动表中。在添加活动信息时,必须为活动分别选择一个相关的客户信息和联系人信息,才能把数据添加到活动表中。

具体个模块之间的关系如下图所示。

3.3  系统数据库设计 

首先,打开Microsoft SQL Server的查询分析器,创建一个空数据库CRM。(Create database CRM),再建立所需要的表。本文中的涉及到了11张表。分别为:客户信息表(Client)、联系人信息表(Touchman)、活动信息表(Activity)、产品信息表(Product)、库存信息表(Stock)、临时库存信息表(Stock_Temp)、销售信息表(Sell)、服务信息表(Feedback)、费用信息表(Fee)、用户信息表(User)和部门信息表(Section)。因本人分到的模块是客户管理系统模块和活动管理系统模块,所以这里仅详细介绍了本人所要应用表的具体结构。

(1)  部门信息表(Section)

 

表3-1  部门信息表

字段名称

数据类型

大小

必填字段

允许空字符串

索引

说明

SectionID

Int

4

部门编号(自增)

SectionName

nvarchar

200

部门名称

 

(2)  客户信息表(Client)

 

表3-2  客户信息表

字段名称

数据类型

大小

必填字段

允许空字符串

索引

说明

ClientID

Int

4

客户唯一标识ID

ClientName

nvarchar

200

客户名称

ClientNation

nvarchar

200

客户国家

ClientNatonCode

nvarchar

200

客户国家代码

ClientProvince

nvarchar

200

客户省份

ClientCity

nvarchar

200

客户城市

ClientAreaCode

nvarchar

200

区号

ClientMailCode

nvarchar

200

邮政编码

ClientAddress

nvarchar

200

地址

ClientPhoneNum

nvarchar

200

电话号码

ClientFaxNum

nvarchar

200

传真号码

ClientEmail

nvarchar

200

客户E-mail

ClientHomepage

nvarchar

200

客户主页

ClientYearIncome

Int

4

客户年收入

ClientEmpNum

Int

4

客户雇员人数

ClientAccountBank

nvarchar

200

客户开户银行

ClientAccountNum

nvarchar

200

客户银行帐号

ClientTaxName

nvarchar

200

客户开票名

ClientTaxCode

nvarchar

200

客户增值税号

ClientTaxBank

nvarchar

200

增殖税开票名

ClientTaxAccNum

nvarchar

200

增值税开户名

ClientTaxAddress

nvarchar

200

增值税开户地址

ClientTaxPhoneNum

nvarchar

200

增值税开户电话

ClientCreatorID

Int

4

创建者ID标识

ClientCreateDate

Datetime

8

创建日期

ClientOpenFlag

Int

4

公开标识

ClientRevisorID

Int

4

修改者ID标识

ClientReviseDate

datetime

8

最后修改日期

 

 

(3)  用户信息表(User)

 

表3-3  用户信息表

字段名称

数据类型

大小

必填字段

允许空字符串

索引

说明

UserID

Int

4

用户编号(自增)

UserName

Nvarchar

200

用户名称

UserPass

Nvarchar

200

用户密码

UserSection

Int

4

用户部门编号

IsAdmin

int

4

管理员标识

 

(4)  联系人信息表(Touchman)

 

表3-4  联系人信息表

字段名称

数据类型

大小

必填字段

允许空字符串

索引

说明

TouchmanID

Int

4

联系人标识ID

TouchmanName

nvarchar

200

联系人姓名

TouchmanClientID

Int

4

相关客户ID

TouchmanSection

Nvarchar

200

部门

TouchmanDuty

nvarchar

200

职务

TouchmanMPhone

Nvarchar

200

手机号码

TouchmanOPhone

Nvarchar

200

办公室电话

TouchmanHPhone

Nvarchar

200

家庭电话

TouchmanFax

Nvarchar

200

传真号码

TouchmanEmail

Nvarchar

200

E-mial地址

TouchmanHobby

Nvarchar

255

爱好

TouchmanEspDay

Nvarchar

8

特殊日子

TouchmanAddress

Nvarchar

200

地址

TouchmanOthers

Ntext

16

详细说明

TouchmanCreatorID

Int

4

创建者ID

TouchmanCreateDate

Datetime

8

创建日期

TouchmanOpenFlag

Int

4

公开标识

TouchmanRevisorID

Int

4

修改者ID

TouchmanReciseDate

Datetime

8

最后修改日期

TouchManMain

int

4

主要联系人

 

 

(5)  活动信息表(Activity)

 

表3-5  活动信息表

字段名称

数据类型

大小

必填字段

允许空字符串

索引

说明

ActivityID

Int

4

活动标识ID

ActivityTopic

Nvarchar

200

活动主题

ActivityClientID

Int

4

相关客户ID

ActivityTouchmanID

Int

4

相关联系人ID

ActivitySort

Nvarchar

200

活动类型

ActivityDate

Datetime

8

活动开始日期

ActivityOverDate

Datetime

8

活动结束日期

ActivityPriority

Int

4

活动优先级

ActivityDetail

Ntext

16

活动细节

ActivityCreatorID

Int

4

创建者ID

ActivityCreateDate

Datetime

8

创建日期

ActivityOpenFlag

Int

4

公开标识

ActivityRevisorID

Int

4

修改者ID

ActivityReviseDate

Datetime

8

最后修改日期

 

 

 

 

 


第4章  客户管理子系统实现

客户管理系统是CRM系统中最重要的组成部分之一。它统一管理与企业所掌握的客户及其相关联系人信息,而这是其余模块系统的基础。客户及其联系人是企业最重要的资源之一,通过客户管理系统能有效地管理客户及其相关联系人。

4.1  关键技术介绍 

在用户管理系统中主要通过对数据库的操作来管理客户信息,其中涉及到身份验证、数据查询和页面分页等处理。

4.1.1  创建用户验证页面

由于系统必须登陆后才能够使用,所以必须对用户身份进行验证.在本系统中,选用了第一个index.aspx页面.其内部的具体判别代码如下:

 .cs文件代码

private void CustomValidator1_ServerValidate(object source, System.Web.UI.WebControls.ServerValidateEventArgs args)

{

Session["flag"]="ok";

string UserName=args.Value;

Session["Username"]=args.Value;

SqlConnection con=conn.createconn();

con.Open();

SqlCommand cmd=new SqlCommand("select count(*) from [User] where UserName='"+UserName+"'",con);

int count=Convert.ToInt32(cmd.ExecuteScalar());

if (count>0)

{

args.IsValid=true;

SqlConnection con1=conn.createconn();

con1.Open();

SqlCommand cmd1=new SqlCommand("select  UserID  from [User] where UserName='"+UserName+"' ",con1);

Session["UserID"]=cmd1.ExecuteScalar().ToString();

string UserID=Session["UserID"].ToString();

SqlCommand cmd2=new SqlCommand("select  IsAdmin from [User] where UserID='"+UserID+"' ",con1);

Session["IsAdmin"]=cmd1.ExecuteScalar().ToString();

}

else

{

args.IsValid=false;

}//是关于用户名不为空

private void CustomValidator2_ServerValidate(object source, System.Web.UI.WebControls.ServerValidateEventArgs args)

{

string UserPass=args.Value;

SqlConnection con=conn.createconn();

con.Open();

SqlCommand cmd=new SqlCommand("select count(*) from [User] where  UserPass='"+UserPass+"'",con);

int count=Convert.ToInt32(cmd.ExecuteScalar());

if (count>0)

{

args.IsValid=true;

SqlConnection con1=conn.createconn();

con1.Open();

SqlCommand cmd1=new SqlCommand("select  UserID from [User] where  UserPass='"+UserPass+"'",con1);

Session["UserID"]=cmd1.ExecuteScalar().ToString();

Response.Redirect("CHKLogin.aspx");

}

else

{

args.IsValid=false;

}

}//关于密码不能为空

这些代码除了判定这两个文本输入框不为空外,还外加判定是否是被允许的访问者(用户).

其对应的HTML文件代码如下:

<asp:customvalidator id="CustomValidator1" runat="server" Display="Dynamic" ControlToValidate="username" ErrorMessage=" 用户名不正确!">*</asp:customvalidator>

<asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server" Display="Dynamic" ControlToValidate="username"ErrorMessage="用户名不能空!">*</asp:RequiredFieldValidator>

类似 <asp:customvalidator id="CustomValidator2" runat="server" ControlToValidate="userpwd" ErrorMessage="密码不正确!"Width="8px">*</asp:customvalidator>

<asp:RequiredFieldValidator id="RequiredFieldValidator2" runat="server" Display="Dynamic" ControlToValidate="userpwd"ErrorMessage="密码不能为空!" Width="8px">*</asp:RequiredFieldValidator>

4.1.2  数据列表分页的方法

在操作客户或联系人信息列表的时候,如果数据过多,在同一页面上显示出来会使网页变得很大,影响页面的美观,也降低了网页执行的效率。因此,有必要进行分页操作。

在HTML的<datagride>中编写

<PagerStyle HorizontalAlign=”Center” ForeColor=”Black” BackColor=”#999999” Mode=”NumericPages”></PagerStyle>

而在所对应的.cs文件中编写如下程序代码:

 

private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)

{

this.DataGrid1.CurrentPageIndex=e.NewPageIndex;

this.databindertodatagrid1();

}

来实现分页。

4.1.3  创建公用的数据库连接文件(类)

在Visual Stdio.Net 2003编程环境下创写类conn

 

using System;

using System.Data;

using System.Data.SqlClient;//自行输入的

namespace CRM

{/// <summary>/// conn 的摘要说明。/// </summary>

public class conn

{

public conn()

{

//// TODO: 在此处添加构造函数逻辑 //}

public static SqlConnection createconn()

{

return  new SqlConnection("server=.;database=CRM;uid=sa;pwd=;");//数据库连接

}

}

}

该代码是作为单独的.cs文件。

这样,之后的页面如果要连接数据库,则可编写如下代码连接:

 

SqlConnection con=conn.createconn();

con.Open();

 

4.2  客户管理模块

客户管理系统主要通过客户表(Client)、联系人表(Touchman)来实现客户及其相关联系人的管理,其主页面为以文本框、下拉列表框和按狃为主组成的表单,并包含显示操作记录的文本框。

 4.2.1  浏览客户信息

用户可以通过客户管理系统浏览所拥有的客户信息,并根据实际情况进行相应的修改,具体的用户浏览界面如下图所示。

 

 

图4.1  浏览客户信息页面

 

客户关系管理系统的实现[点击下载]

评论