摘 要
在瞬息万变的市场环境中,企业要立于不败之地。必须依托现代化的管理思想和手段,其中客户管理尤为重要。企业客户管理系统作为ERP软件中的CRM组件的一个功能模块,本系统实现了企业客户管理的信息化,可对企业所有客户的 相关信息进行有效管理,并可以通过邮件与客户进行沟通,交流。
本文详细阐述了使用C#及LINQ开发该系统的设计、分析、实施的过程。C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言, 是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性。LINQ是Visual Studio 2008中的领军人物。借助于LINQ技术,我们可以使用一种类似SQL的语法来查询任何形式的数据。目前为止LINQ所支持的数据源有SQL Server、XML以及内存中的数据集合。
本文所选的课题涉及的知识知识与技术都是微软近些年的新技术,力图在CRM软件的技术上有自己的创新,并将其应用到现实生产实践中,有利于调动学生学习实践积极性,全面提高学生的软件开发能力和综合素质。
关键词:客户关系管理;C#;LINQ
Abstract
In a rapidly changing market environment, enterprises must be invincible. Must rely on modern management ideas and tools, including customer management is particularly important. Enterprise Customer Management System as ERP software in the CRM component of a functional module, the system realized the enterprise customer management information, businesses can all customer information for effective management, and can communicate with customers via e-mail exchange.
This paper describes the use of C# and LINQ development of the system design, analysis, implementation process. C# is Microsoft's release of an object-oriented, running on. NET Framework on the high-level programming language, is a safe, stable, simple, elegant, from the C and C++ derived for object programming language. It inherits C and C++ power while removing the complexity of some of their characteristics. LINQ is a Visual Studio 2008 in the leader. With LINQ technology, we can use a syntax similar to SQL to query data of any kind. LINQ so far supported by the data source with SQL Server, XML, and memory data sets.
This knowledge of selected topics related to knowledge and technology are Microsoft's new technology in recent years, in a bid to have their own CRM software, technical innovation and apply it to real production practice, to arousing the enthusiasm of the students study and practice comprehensively improve their software development capability and overall quality.
Key words: CRM; C#; LINQ
目 录
引 论 1
(一) 项目背景 1
(二) 项目技术简介 4
一、企业客户管理系统系统分析 7
(一) 需求分析 7
(二) 系统总体流程图分析 7
(三) 系统功能结构 8
(四) 系统模块功能分析 9
二、企业客户管理系统系统设计 10
(一) 设计目标 10
(二) 开发运行环境 10
(三) 编码规范 11
(四) 数据库设计 12
(五) 对象模型的建立 17
(六) 界面设计 19
(七) 关键性代码解析 23
三、系统的测试与纠错 29
后 记 30
主要参考文献 31
引 论
(一) 项目背景
随着Internet技术的蓬勃发展,全世界范围内,所有企业都在经历着一场变革。企业在扩大市场、提高效率和保持客户的原始商业驱动力不变的情况下,如何从浩如烟海的信息中,获取最有效的市场情况和客户信息,并及时作出反应,方能提高企业的竞争力。与此同时,客户的期望也在发生着变化,客户完全可以决定选择哪位供应商。随着网络、通讯技术的发展,客户选择可摆脱传统地域的限制。因此如何最大程度的留住客户,积极发展新客户,成为了企业竞争的一个重要方面。
1、 关于ERP
ERP(Enterprise Resource Planning,企业资源计划)是上个世纪90年代美国一家IT公司根据当时计算机信息、IT技术发展及企业对供应链管理的需求,预测在今后信息时代企业管理信息系统的发展趋势和即将发生变革,而提出的概念。
ERP是针对物资资源管理(物流)、人力资源管理(人流)、财务资源管理(财流)、信息资源管理(信息流)集成一体化的企业管理软件。一个由 Gartner Group 开发的概念,描述下一代制造商业系统和制造资源计划(MRP II)软件。它将包含客户/服务架构,使用图形用户接口,应用开放系统制作。除了已有的标准功能,它还包括其它特性,如品质、过程运作管理、以及调整报告等。特别是,ERP采用的基础技术将同时给用户软件和硬件两方面的独立性从而更加容易升级。ERP的关键在于所有用户能够裁剪其应用,因而具有天然的易用性。
ERP不仅仅是一个单一的系统,而是许多复杂系统的集合体(如图1所示),本文所述的客户资源管理只是其中的极小一部分。
图 1
2、 关于CRM
一、CRM的含义
CRM(CustomerRelationshiopManagement,客户关系管理)是一种以客户为中心的经营策略。它以信息技术为手段,并对工作流程进行重组,赋予企业更完善的客户交流能力,最大化客户的收益。
客户关系管理是旨在改善企业与客户之间关系的新型管理机制,它主要实施于企业的市场营销、销售、服务与技术支持等与客户相关的领域。通过向企业的销售、市场和客户服务的专业人员提供全面、个性化的客户资料,并强化跟踪服务、信息分析的能力,使他们能够协同建立和维护一系列与客户和生意伙伴之间卓有成效的“一对一关系”,从而使企业得以提供更快捷和周到的优质服务、提高客户满意度、吸引和保持更多的客户,从而增加营业额;另一方面则通过信息共享和优化商业流程来有效地降低企业经营成本。
客户关系管理也是一种管理软件和技术。它将最佳的商业实践与数据挖掘、数据仓库、一对一营销、销售自动化以及其它信息技术紧密结合在一起,为企业的销售、客户服务和决策支持等领域提供一个业务自动化的解决方案,使企业有了一个基于电子商务的面对客户的前沿。
它主要包含以下几个主要方面(简称7P):
客户概况分析(Profiling)包括客户的层次、风险、爱好、习惯等;
客户忠诚度分析(Persistency)指客户对某个产品或商业机构的忠实程度、持久性、变动情况等;
客户利润分析(Profitability)指不同客户所消费的产品的边缘利润、总利润额、净利润等;
客户性能分析(Performance)指不同客户所消费的产品按种类、渠道、销售地点等指标划分的销售额;
客户未来分析(Prospecting)包括客户数量、类别等情况的未来发展趋势、争取客户的手段等;
客户产品分析(Product)包括产品设计、关联性、供应链等;
客户促销分析(Promotion)包括广告、宣传等促销活动的管理。
图 2
二、CRM的目标
客户关系管理的目标就是提高效率、拓展市场和保留客户。利用信息技术,结合企业现有的管理系统如MIS系统、ERP系统,将分散在企业各部门的信息加以统计、分析,为企业的市场开拓提供支持。
客户服务是客户关系管理中的核心内容之一。企业提供的客户服务是能否保留满意的客户,提升客户忠诚度的关键。据统计,93%的CEO认为,客户关系管理是企业成功和更有竞争能力的重要因素,2/3的客户离开其供应商是因为企业对客户关怀不够。一个非常满意的客户其购买意愿将六倍于一个满意的客户。而客户满意度方面的5%的提高将使企业利润加倍。由此可见,客户的满意度与忠诚度是企业取得竞争优势的关键。
此外,随着上网用户的增加,客户服务的自动化还应能够处理客户各种类型的询问,包括有关产品报价信息,定单请求,定单执行情况等等。
三、客户关系管理系统建立的原则
1.为客户提供多样化、个性化的服务。客户关系管理的核心思想,就是吸引客户、方便客户、满足客户、为客户提供多样化和个性化的服务。
2.巩固和发展客户群体,提高企业的竞争力。印刷企业应朝着符合现代企业管理制度要求的现代企业发展。只有巩固忠诚客户群,不断发展新客户群,打造品牌效应,方能提高企业竞争力。
3.适度超前和创新的原则。
在建立客户关系管理系统同时,提供充分的扩展功能,满足企业未来业务经营与发展的需要。
3、 项目规划
该系统主要由资料管理、我方信息管理、统计分析、用户管理、系统维护和帮助等模块组成,具体规划如下:
资料管理模块:该模块主要用于实现区域信息管理、客户资料管理和竞争对手信息等功能。
我方信息管理模块:本企业基本信息管理、员工信息管理、货物信息管理和重大历史历程管理等功能。
统计分析模块:该模块主要用于实现客户的级别分析和来源分析等功能。
用户管理模块:该模块主要用于实现用户管理、更改密码和权限设置等功能。
帮助模块:该模块主要用于实现更改窗体布局、重新登陆和退出等功能。
(二) 项目技术简介
本文所述的企业客户管理系统使用C#作为编程语言,采用目前比较新的Microsoft SQL Server 2005作为前台数据库。该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大、效率高;后台使用微软的新技术LINQ作为程序访问数据库的接口,简化了繁琐的SQL语句的编写过程,提高了代码的编写效率。
1、 编程语言C#
C#是一门简单、现代、面向对象和类型安全的编程语言,由C和C++发展而来。
在C#之前,C和C++已经成为在软件的开发领域中使用最广泛的语言。它们为程序员提供了十分灵活的操作,但也因此牺牲了一定的效率及相应的易用性,比如与Microsoft Visual Basic等语言相比,同等级别的C/C++应用程序往往需要更长时间来开发。也正由于C/C++语言的复杂性,C++也只有专业的程序员才能掌握,而对于一般用户而言,C++确实有些沉重。对于信息化社会的今天而言,单纯的软件开发甚为少见,但更多的注重于实际应用,许多程序员都试图寻找一种新的语言,希望能在功能与效率之间找到一个更为理想的权衡点。
对于某些有些语言来说,也许以牺牲灵活性的代价来提高效率是可以接受,但是这些灵活性正是C/C++程序员所需要的,另外这些解决方案对编程人员的限制过多(如屏蔽一些底层代码控制的机制),其所提供的功能难以令人满意。这些语言无法方便地同早先的系统交互,也无法很好地和当前的网络编程相结合。
对于C/C++用户来说,最理想的解决方案无疑是在快速开发的同时又可以调用底层平台的所有功能。他们想要一种和最新的网络标准保持同步并且能和已有的应用程序良好整合的环境。另外,一些C/C++开发人员还需要在必要的时候进行一些底层的编程。
C# (C sharp) 是微软对这一问题的解决方案。C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。
正是由于C#面向对象的设计,使它成为构建各类组件的理想之选--无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML 网络服务,从而使它们可以由任何语言在任何操作系统上通过Internet进行调用。
最重要的是,C#使得C++程序员可以高效的开发程序,而绝不损失C/C++原有的强大的功能。因为这种继承关系,C#与C/C++具有极大的相似性,熟悉类似语言的开发者可以很快的转向C#。或者这么说生产信息化的今天,也就产生了C#。
2、 数据库前后台链接组件LINQ
LINQ,即语言级集成查询(Language Integrated Query),它是Visual Studio 2008中的领军人物。借助于LINQ技术,我们可以使用一种类似SQL的语法来查询任何形式的数据。目前为止LINQ所支持的数据源有SQL Server、XML以及内存中的数据集合。开发人员也可以使用其提供的扩展框架添加更多的数据源,例如MySQL、Amazon甚至是Google Desktop。简单来说,通过使用LINQ,开发人员可以以一个统一的方式访问包括内存数据集合、数据库、XML等在内的各类数据源。如下图所示: |