APP下载

基于C#.NET的GRP系统的设计与实现

2012-07-25

微型电脑应用 2012年7期
关键词:选项卡按钮会员

宋 强

0 引言

GRP(Group Resources Planning)是团体资源计划的简称。GRP系统是对团体资源中的会员日常事务、会员信息、对外联络、人力资源、财务资源集成一体化的会员信息管理软件。GRP平台是专门为团体资源的办公信息上传下达、信息采集汇总等需求提供的电子会员信息管理系统,可以将领导班子、相关部门及各具体执行人员相联,实现会员入会、活动通知、审核归档、贴头打印的上传下达,实现基层数据的采集与汇总,形成一个涵盖数据采集、信息保存、信息处理、传输控制的信息系统,逐步实现团体资源计划的规范化、标准化、科学化。

1 需求的分析

1.1 业务流程的分析

GRP系统的业务主要有会员管理、缴费管理、活动组织、现场签到、走访来访、人力资源管理等。通常有如下一些相关的事务流程:

在会员管理方面,通过职能部门主动发展、个体选择、下属媒介推广3种形式的会员发展流程。其中,团体内会存在不同会员级别的划分,发展对象通过各个阶段的审核逐步晋升其团体内资质。而这一整套审核评级机制应当作为系统在会员发展流程中的重点考虑。

对于缴费管理事宜,由于涉及资金数据重要,故采用财务部门每一阶段将向系统提供一次财务记录,系统应当根据财务数据中存在的漏缴、欠费、补交等各种情况,生成相应的处理意见并分别提示各个相关部门。

年度活动计划制定后,系统根据计划自动激活相关活动并申请批准,获得批准后开始接下去的活动具体安排。办结活动可以生成多种类型报表,提供各个部门作为参考。

相关领导决定走访对象、时间、内容信息发送至经办人操作。走访后,被访者和经办人可以将走访情况记录。来访会员访问后,被访者和来访者可以将访问情况记录。走访、来访是团体日常管理中一个重要的部分,通过访问记录可以了解会员与团体的联系情况、会员的发展情况、会员对于团体的需求。访问记录提供给领导重要的决策依据,并且促进团体提供更符合会员特点的服务或产品。

1.2 实现功能需求的分析

根据业务流程需求分析,GRP系统采用在C#.NET框架下将使用Ado.NET作为数据访问接口。在目前,Ado.NET作为.NET编程环境中优先使用的访问接口,有其天然的优势。对于数据库具体操作代码,系统将使用存储过程来完成,这样既可以加快程序运行速度、增加重用性,另外维护起来也方便。

对于密码等敏感信息系统,将在数据库中使用视图、加密等方法确保敏感信息不可见。由于会员信息的保存无需交互,故采用Hash加密方式的一种md5。

由于实际使用的要求,整个系统将会产生众多的报表;对于这点,系统将通过SSIS获取数据,同时过滤不需要的数据,然后利用 SSAS的立方体模型分析数据,最后通过SSRS产生所需要的报表。利用这些组件,使得数据采集更加规范化、标准化、智能化。同时也降低了SQL语言设计的复杂程度。为后期的维护提供操作性更强的模型结构。

对于页面需要在一个局部空间重复调用大量的数据集合,系统在页面中考虑应用Webservice和Jquery的Ajax技术,目的是尽量缩小数据集的重载范围,从而避免大量重复的内存开销。

系统将运用面向切面的 nlog4net的技术进行日常日志的计入与管理。这样做将会让系统信息与日志信息解除耦合,不用管理员从海量的错误中寻找到有用的信息。

2 系统设计与实现

2.1 系统设计目标

(1)采用B/S架构和C#.NET程序设计,实现开放式的数据采集、数据通信、数据归纳、数据整理、数据发送。

(2)支持远程用户的访问,构建用户与数据库双向互动平台。

(3)建立“会员发展”、“会费收缴”、“会员活动”等业务模型,达到事务管理流程化、逻辑化。

(4)进一步完善会员数据在采集上的细化,对于查询、统计、打印输出等模块,提供所有字段的筛选甄别、实现准确丰富的查询、分门别类的统计,及时一致的输出。

(5)对于群操作以及批次操作提供多种数据采集方式。

2.2 数据实体逻辑关联设计

GRP系统的数据实体逻辑关联,如图1所示:

图1 GRP系统的数据实体逻辑关联

2.4 数据库及程序变量命名规则设计

数据库的建立从流程、功能实现的角度考虑。主要分为会员基本数据、数据字典、流程控制、界面生成、权限 5个方面。生成后的数据库表内分别设置内键和外键,内键设定自增长主键保证数据的安全性和可恢复性,外键保证数据库表与表之间的连接与互访。

数据库表的命名以大写英文名词作为其命名语言。加下划线后跟下一个英文单词全部或部分组合成数据表名称。例如:“会员信息”member info表命名:MBR_INFO。

2.5 统界面及主要功能设计

2.5.1 界面风格设计

系统界面设计具有人性化,使人机互动更加出色。常用按键与其他的按键将有明显的区分;按键区将与显示区分开,按键的集中将有助于减少鼠标的频繁移动。图标设计尽量贴近平时使用软件的风格,让用户更加容易上手。例如:E-mail的界面借鉴Outlook;Web消息界面参照MSN。

2.5.2 主界面菜单目录和基本功能设计

界面由各功能模块组成,分为基本功能;信息管理、事务管理、数据维护、系统管理,如表1所示:

表1 主界面菜单目录

2.5.3 界面上提示的系统和用户信息设计

在主界面内,图片下方信息栏内有显示用户的角色权限信息,左上方的用户信息栏内显示当前使用系统的用户全名和用户名。

在用户信息下方两个信封图标,绿色信封表示“信息”,闪烁表示用户有“未读短信”;红色信封表示“事务”,闪烁表示用户有“待办事宜”,并分别记录数据数量。

帮助功能:提供系统内相关操作的文字说明,并且对于可能出现的常见误操作或由此而引起的错误进行说明和解释。

辅助功能:给予操作流程以文字描述,并对于一些操作中的常见错误进行解释。

2.5.4 主界面上其他功能的设计

在主界面上设置 “信息反馈”、“信息查询”、“图表统计”、“新增活动”和“新增会员”5个快捷图标按钮,快捷按钮的作用和菜单选项一样,单击即可进入。

在主界面上设置两个按钮“刷新”、“登录”。点击“刷新”按钮可返回到主界面,点击“登录”按钮返回登录界面。

系统的权限设计采用RBAC(Role Based Access Control)的基本思想,通过各个用户的分配,落实每个用户在事务流程中所处的位置节点与操作权限,并可以任意设置事务工作流程中的节点安排,“人岗分离”的设计理念,彻底摆脱了人员工作性质变动而产生的工作盲区。

在查询条件的设计上,强调使用的方便、高效、灵活的特点。例如:人员姓名汉字拼音首字母查询(姓名:张平;只需输入“ZP”即可查到);

2.6 程序难点及关键技术的实现

2.6.1 查询统计功能设计的要点

系统中会员信息的输出分为查询和统计,统计结果分为3部分:数据集、比率图表、会员详细信息。数据集分为“类型”、“数量”、“百分比”。比率图表依据数据集百分比显示。会员详细信息在选中数据集任意类型后,显现实出该类型具体会员基本信息。其中统计图表的显示,使用微软 Office提供的绘图控件OWC11。

首先,建立一个ChartFactory类,并定义起初始化函数InitTypeMap();。

在初始化函数里,主要进行图表种类的设置,并匹配其对应的中文名称。

设计好ChartFactory类

在调用时创建一个图形容器对象 ChartSpace的实例oChartSpace。

OWC11.ChartSpace oChartSpace= new OWC11. Chart-Factory ();

通过对oChartSpace的参数设置,就可以得到所需要的统计图表。

最后通过 oChartSpace.ExportPicture()函数设置好图表的路径、格式、大小后将图表导出,由Image控件调用即可显示。

2.6.2 权限角色的设计

GRP系统权限功能的设计依据 RBAC(Role Based Access Control)的基本思想,采用用户绑定用户组的形式。其中,用户组概念作为特定群体,对于系统中数据的查询、统计、增加、编辑、删除、注销、打印等操作,具有相同的操作动作权限,通过具体用户与用户组的绑定,实现了具体个人对于系统数据操作的范畴。用户组可以通过使用方的需要任意搭建。

完成这一目标需要以下5张数据库表格,如表2所示:

表2 5张数据库表格

用户组绑定动作代码

2.6.2 页面管理中的Ajax技术的应用

在GRP系统中经常会遇到页面太大,而只需要局部加载一些数据如报表分析数据,用户在一张页面多次产生报表,如果刷新整个页面,显然不是合理和科学的做法。系统设计一个局部调用的Ajax函数,内容如下:

这样一来,页面再大,系统也只需要在局部刷新的数据,大大节省系统内存在占用。

2.6.3日志管理解的耦合

在GRP系统中,涉及很多敏感数据,日志管理必不可少。故采用log4net将日志功能从系统中剥离出来,将系统与日志解耦合。log4net详细规范了系统的错误级别,可以通过系统错误的级别来发送信息,对于错误高的,需要及时解决可以直接发信,而不用管理员在海量的错误中寻找到有用的信息。Log4Net建议使用4个级别,优先级从高到低分别是 ERROR、WARN、INFO、DEBUG。通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。

2.7 数据接口连接

数据库采用SQL Server,数据连接方式采用ODBC在VS平台下的ADO.Net接口连接。使用Internet Information Server(IIS)作为Web服务器。

2.7.1 建立数据库

(1)使用SQL Server2000建立数据库

(2)建立新数据库命名:GRP_DB

(3)设置用户名:GRP 密码:*****

2.7.2 创建连接

2.7.2.1 创建Connection

(1)开启VS.NET。

(2)在VS.NET窗口打开Server Explorer。

(3)右击“Data Connections”节点,选择“Add Connection…”。

(4)在弹出的窗口“Data Link Properties”内选择“Provider”选项卡。

(5)在“Provider”选项卡内选“Microsoft OLE DB Provider for SQL Server”后按“下一步”。

(6)选择在“Connection”选项卡。

(7)选项卡内的“Select of enter server name”选服务器名称(例:MyComputer)。

(8)选项卡内的“Enter information to log on to the server”选登入方式(例:选择“Use a specific user name and password”,User name为 GRP,Password 为 GRP)。

(9)选项卡内的“Select the database on the server”选所需数据库(例:QL2)。

(10)点击“Connection”选项卡内的“Test Connection”按钮。返回“Test connection succeeded”,说明数据库连接成功。

2.7.2.2 创建DataAdapter

(1)在“Toolbox”下的“Data”内双击“SqlDataAdapter”对象,开启向导;

(2)在向导的第一步:选择数据库连接,在“Which data connection should the data adapter use?”的下拉框内可选择已有的连接(例:MyComputer.QL2.dbo);

(3)也可以点击“New Connection…”按钮新建数据库连接;

(4)第二步选择“Use SQL statements”为检索数据的方式;(5)第三步单击“Query Builder…”选择所要表;

(6)选好以后点击“Add”按钮,选择完毕以后点击“Close”按钮;

(7)然后选择相应的列,选好以后点击“OK”按钮,最后完成。

2.7.2.3 创建DataSet

(1)在“Toolbox”下的“Data”内双击“DataSet”对象进行添加;

(2)在DataSet的属性框内,关联相应的DataAdapter,完成。

2.7.2.4 代码连接

3 总结与展望

GRP系统采用B/S架构开发,在未来的不断发展中一定会遇到新的机遇和挑战,对于系统也会提出相应的要求和改善,需要对系统的模块进行相应的修改,包括数据库结构的修改,甚至可能会改动系统架构。

GRP的发展应该建立面向全球的会员门户,不断完善系统的功能模块,不断完善系统的兼容性,建立与最新通讯设备的接口,建立与最新办公软件与财务软件等的接口,实现不同类操作系统的连接。

信息化建设是一项异常艰巨而复杂的任务,需要勤耕不辍,精益求精,以点带面,各个突破,逐步全面铺开。最终实现企业在资源上数据共享,在管理上构成在业务、过程和管理形成闭环控制。深信在不久的将来,GRP一定会有广阔的发展前景。

[1]古凌岚著,《基于.Net框架的XML相关技术的实现》[j],《计算机工程与设计》,2005年 26卷(7期)

[2]耿俊豹, 陈小虎《基于C#.NET的寿命周期费用模型开放式构建技术》[j],《计算机与数字工程》,2011.02

猜你喜欢

选项卡按钮会员
当你面前有个按钮
会员之窗
会员之窗
会员之窗
会员之窗
PPT中巧作形意信息图
巧用Word替换纠正角标跑偏
禁用一切 优化无限
死循环
内心不能碰的按钮