Excel插件在物流数据仓库中的应用
2015-02-18缪兴锋
车 书,缪兴锋,余 颖
(1.广东轻工职业技术学院,广东 广州 510300;2.启德教育集团,广东 广州 510055)
1 引言
物流信息化指在物流活动中全面运用传感技术、定位技术、视频监控技术等现代信息和通信技术,充分利用信息流调控和主导物流,有效配置物流资源,以最小的综合成本来满足顾客的需求,以实现利润最大化。现代物流具有以下的特点:电子商务与物流的紧密结合,物流、数据流、资金流和人才流的统一,信息化、自动化、网络化、智能化、柔性化的结合,数据增值服务。物流服务商正在演变为客户服务中心、加工和维修中心、信息处理中心和金融中心,根据顾客需要而增加新的服务是一个不断发展的观念。面对如此浩瀚的数据海洋,物流管理者如何突围,面对竞争对手的数据化攻势,必须采用数据化、智能化的管理变革手段,将积累的海量数据加以分析利用,挖掘出数据之间潜藏的信息,发挥出数据的应有价值。物流企业如何在“大数据”的困境中寻找成长机遇,而不是被其淹没,构建基于数据仓库的商业智能数据分析及挖掘平台无疑是其首选[1]。然而在企业辛苦构建好数据仓库、搭建好数据模型之后,更为重要的是如何将数据信息安全快捷的呈现,而不是被竞争对手轻易窃取,Excel本可完美的做数据呈现和多维分析,可是安全性非常欠缺,如何能快速呈现结果而又不需要太大的投入呢?本文提出开发一个Excel插件的方式来弥补Excel本身在数据安全方面的问题,从而可以使客户放心地使用Excel。
2 物流数据仓库应用现状分析
智能物流,强调构建一个虚拟的物流动态信息化的互联网管理体系,利用日益完善的通讯网络技术及手段,将分布于全球的企业仓库虚拟整合为一个大型途途物流系统,以完成快速、精确、稳定的物资保障任务,满足物流市场的高频度、小批量订货需求。物流数据中心承担着数据的集中整合、深度加工和服务的功能,从而能够满足各类的管理需求。物流数据仓库结构如图1所示。
图1 数据仓库结构图
数据采集是一个动态的过程,结合物联网技术、GIS技术等,将各类物流作业中产生的采购数据、仓储数据、配送运输数据、报关数据、呼叫中心数据、财务及E-HR系统数据,经过抽取、转换、加载到ODS(Operational Data Store)层,再通过一定的规则转换,将ODS层的数据导入物流数据仓库,根据面向的主题产生多个数据集市,建立数据分析指标体系,从而构建出物流行业多维数据集,终端用户通过IE、Excel等展示工具,通过查询多维数据集里的数据来查看分析数据。不同地域的管理者可以根据各自所拥有的不同数据权限通过Excel连接企业云BI系统,如图2所示。由此可以看出,总部定制的标准数据分析模板下发之后,需要由区域管理者替换为本地数据源方式访问多维数据集,操作步骤繁琐,且Excel的安全性不高,容易导致重要数据流失等,出于对数据安全的保护及为提高数据分析的效率,笔者提出开发一个Excel插件来弥补Excel本身的不足,可以完美结合Excel数据分析的优点,提高工作效率,主要解决以下两大问题:
(1)Excel的数据安全验证机制不高,容易造成数据泄密。
(2)总部下发的数据分析模板需要手工替换为本地数据源访问或者手工建立云连接访问,对于使用者来说操作步骤过于繁琐。
图2 区域管理者查看数据流程
3 Excel插件应用
Excel开发通常是一种插件式的开发机制,它需要借宿在Excel上,并通过调用Excel的API来实现特定的业务逻辑。本文的设计思路是通过在Excel中增加用户检验环节,动态地根据用户数据权限创建数据源连接,达到必须通过服务器验证才能提供数据访问服务的目的。在普通的Excel连接多维数据集时,数据源需要手工创建,步骤繁琐,虽然可以创建一次后保存起来,但是无法有效保护用户密码口令的安全,容易造成数据泄密。Excel插件工作原理如图3所示。
3.1 数据库使用
关系型数据库作为数据存储的有效方式,在一定时间内还将长期存在,本文引入数据库表,不仅可以控制每一用户可以访问的多维数据库列表,还大大提高了插件程序的灵活度,为日后插件的功能扩展提供了无限可能,例如记录终端用户的操作记录,这里只列出主要字段及其说明,见表1。
表1 用户数据验证表结构设计
重点说明一下Fxml字段的引用,该类型直接使用xml字段类型,方便以后功能扩展。在sqlserver2008版本以后都提供了直接对xml字段进行操作的方法,本文给出一段示例,用来灵活控制用户界面所能访问的多维数据库及其描述信息,示例如下:
3.2 Web Service使用
Web Service是一个平台独立的、低耦合的、自包含的、基于可编程的Web应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置应用程序,用于开发分布式的、互操作的应用程序,开发供客户端Excel插件调用的WebService接口。
3.2.1 getServerInfo。获取默认访问的服务器地址信息,如服务器IP、端口号。
3.2.2 getCubeList。根据客户端传入的用户名密码,验证该用户的合法性。如果验证通过,将根据用户权限返回用户所能访问的多维数据库列表。
3.3 改进后的流程图
改进后的数据访问流程如图4所示。
3.3.1 打开Excel,切换到插件页,点击登录按钮,插件程序调用WebService的getServerInfo返回默认的要访问的服务器地址及其端口号,客户端用户可以根据实际情况输入服务器地址及端口号,同时输入用户名、密码,点击登录。
3.3.2 调用getCubeList方法,将客户端输入的服务器信息、用户名和密码传给后端校验,获取服务器访问权限。不输入登录信息将无法获取访问权限。
3.3.3 如果没有通过服务器验证,后端直接返回无权登录的提示;如果通过服务器端验证,服务器将同时查询后台数据库表信息及后台OLAP服务器,返回该客户端用户可以访问的多维数据库列表。
3.3.4 客户端接收到服务器端验证通过后的消息,Excel插件即可动态创建登录用户的数据访问连接,无需人工参与。
图4 改进后的数据访问流程
3.3.5 如果用户打开的是总部下发的数据模板,则将动态创建的数据连接激活,并自动查询更新数据。如果用户打开的是新创建数据分析模板,则自动创建该数据访问连接对应的透视表给用户,并等待用户拖入相应指标及维度。
3.3.6 用户定制完模板或查询分析完数据之后,退出Excel时,插件在后台自动删除该数据连接,以保证下次打开该Excel文件时必须登录才可查看更新数据。
通过以上步骤的介绍,不难看出由于运用了Excel插件,客户端用户不再需要手工建立数据源连接,替换原有数据分析模板里的数据源连接,不用担心自己输入的用户名和密码被明文保存成文件而导致泄密。所有工作全部交由Excel插件程序后台自动完成,对用户透明,提高了用户的使用体验。在智能时代,应特别注意数据本身的价值。以往的信息化较多的定位在功能,如完成某项操作、管理或控制,而不去思考这些管理和控制背后的依据是否充分。通常人们总是在现有经验和水平上去完成信息化的目标,而现在,我们要基于数据,实现在线的分析优化控制,方便快捷地找出数据间规律和依据,从而提升各项作业控制的价值。将数据处理成财富,而不再是包袱。
4 结语
本文灵活地将Excel的插件开发功能与服务端数据库表相结合,极大地扩展了Excel的安全验证机制,使总部可以下发统一的数据分析模板,大大提高了工作效率。xml字段的引入,更为日后扩展Excel插件的功能创造了空间,例如可以再增加财务合并报表的导出功能,直接将集团财务合并报表导出到Excel里,既增加了灵活度又保证了安全性。
[1](美)兰吉特,等.SQL Server 2008 商业智能完美解决方案[M].北京:人民邮电出版社,2010.
[2](美)Rob Bovey,等.Professional Excel Development(Second Edition)[M].北京:电子工业出版社,2013.
[3](美)Herbert Schildt.C#2.0 The Complete Reference(Second Edition)[M].北京:清华大学出版社,2007.
[4]刘学敏,程文明.基于OLAP技术的物流数据仓库应用研究[J].铁道运输与经济,2007,(1):63-65.