VS2010中不可忽视的部分——VSTO

今天是Visual Studio 2010正式发布的日子,刚刚看了相关的新闻和介绍,感觉上相比Visual Studio 2008来说,又有了不少新的改变和创新,不管是炒作概念也好,炒作想法也罢,但都是想法设法地为我们这些辛苦的程序员们节省了时间,提高了效率。

在发布会上,似乎更多的时间用来介绍最近最为流行的一些概念,像云产品Azure,还有在Visual Studio 2010中可以使用的敏捷方法等等,这些特性的确很好,但都有个特点,就是更多贴近的是我们这些程序员,这也难免,毕竟Visual Studio 2010本身就是一个开发工具。

然而,我觉得其中还有一个不可忽视的组成部分,那就是VSTO(Visual Studio Tools for Office),这个针对Office开发的工具,从最初的1.0,到后来的2.0,再到VS 2008中的3.0,一步一步地走到现在,已经能够和几乎所有的Office家族中的产品紧密地结合了。

然而,在国内为什么没有太多的人对其关注呢?在寻找答案的时候,我想先讲一件在工作中遇到的小故事。

有一次业务部门需要开发一个抽奖的小工具,要求随机抽出指定数量的中奖号码,并且还要导出到Excel中,以方便打印。本来想要使用VS 2005开发,但是业务告诉我,第二天就需要使用,而此时已经是当天下午1点多了。时间紧、任务重啊!最终我使用Office的开发技术,也就是VBA来实现了这个小程序,花费时间:2小时。结果业务部门使用地非常方便,毕竟他们对于Excel的使用还是非常熟悉的。但是,当我和领导提起这件事儿的时候,他告诉我,等有时间的时候,再做个真正的程序吧

大家看到了吧,在现实的环境中,很多人并不认为Office开发是真正的开发,因为它不是传统的Winform形式的软件,也不是当前比较流行的B/S模式,似乎只是在Office的基础上修修补补,做出来的不入流的小东西。

然而,我要说的是,这是一种需要纠正的看法,Office开发真的非常重要

为什么呢?大家想想当前公司中使用的各种软件之中,除了操作系统Windows之外,哪种软件的使用频率最高,公司的人员掌握的最好呢?毫无疑问,答案就是Office系列的软件,可能会包括Word、Excel、Powerpoint等等,这些软件不仅已经形成了一个庞大的家族,不断有新丁的加入,而且在业界已经形成了几乎垄断的地位。

大家还记得几年前Google发布Gmail的时候吧,那是大家都没有想到,现在在其之上衍生出多种软件,已经和Gmail一起形成了一个产品家族。

微软没有像Google一样以邮件为中心,而是以文档工具为中心,围绕着Office的产品,逐渐地形成了属于自己的产品家族。而有了VSTO,更是为扩展这个家族成员的功能提供了非常大的便利,作为程序员,我们不仅可以充分利用Office中现有的功能,而且还可以借助强大的.NET framework,来对其进行几乎是无限的扩展,访问数据库,访问其他软件的接口,访问Web Service等等,有了这些功能,我们可以在Office完成许多之前不可想象的工作。

或许大家还对上面的言论保持怀疑的态度,那么就让我们一起来看下这样的场景。

具体场景:客户投保(保险业)

当前在保险公司中,投保这个环节是非常重要的,因为这就意味着公司能够收入资金了,但是这也是非常麻烦的一件事儿,不信你看这个环节所需要的步骤:

1、代理人和客户商量、为其建议,最终填写好投保单

2、代理人将投保单带回当地的分公司

3、分公司负责人员将投保单发送给总公司

4、总公司将投保单录入到核心系统中

5、对其进行核保等操作,为客户打印保单

简单看来,似乎并不复杂,但是在实际的操作过程中,由于总分公司之间可能有很远的距离,所以投保单需要一两天甚至更长的时间之后才能够进入到系统之中。

为了解决这个问题,有些保险公司采用了扫描的方式,将投保单扫描成图片,然后按照图片来录入。

然而,这样还是有重复的工作,因为客户和代理人一起填写了投保单,而之后负责录入的人员又将所有的信息录入到核心系统中,而且在这个过程中,不可避免会有信息的丢失和出错。

为了解决这个问题,其实我们可以这样来做:

制作投保单文件,可能是Excel格式或者Word格式,代理人和客户一起在笔记本电脑上填写完成。

在这份文档上我们使用VSTO开发Add-in,只需要连接上公司的局域网,然后轻松地点击“上传到核心系统”,就可以按照相应的规则将信息上传到核心系统中。

仔细思考一下,这样做的话,对于每个投保环节,我们大概可以节省两天的时间,可以节省两个人力,还可以大大提高准确率。而代理人学习如何使用这个功能的时间几乎为0,当然前提是他会使用Office,呵呵。

从上面我们可以看出,使用VSTO与Office紧密相连的特点,在某些情况下,可以大大地提高工作效率,节省作业成本,何乐而不为呢?

当然,上述的场景还是非常简单的,而VSTO只不过是OBA(Office Business Application)的一个组成部分,微软基于Office的应用,必定会越来越强大,或许哪天我们使用的OA系统,都可以是完全由OBA完成的呢,让我们拭目以待。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/465590.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网校系统推荐eduline_网校系统的各项功能的用处

网校系统中有许多的子系统,其中众所周知也是相对重要的两个子系统,一个考试系统,一个直播系统,今天未来云校就来讲讲这两个子系统以及这两个子系统和网校系统的联系。在线模拟考试系统与网校系统大家都知道考试相对于学员、老师和…

学习 Linux/C/C++ 必备资料

在这个信息过载的时代,质量往往比数量更为重要!接下来给你推荐的,是我私藏很久的几个有态度、有意思、有质量的优质公号。学习 Linux/C/C 必备!快来关注,在这里看见另一种可能!开发内功修炼公众号「开发内功…

emmc固件开发_UP2开发板简易开箱(二)

在 老狼 的x86开源硬件群里面抽中了一个UP2开发板,时间已经过去半年多了,实在惭愧,其中一部分原因是菜,菜是原罪。现接上一位抽中UP2的大佬 Jiaao Bai 的文章,本文就叫UP2开发板简易开箱(二)。一…

MATLAB —— 向量,矩阵,数组

MATLAB —— 向量,矩阵,数组 目录 MATLAB —— 向量,矩阵,数组 一、向量 1、向量定义 2、引用向量元素 3、向量运算 二、矩阵 1、矩阵定义 2、引用矩阵 3、矩阵运算 三、数组 一、向量 1、向量定义 向量是数字的一维数…

as的使用技巧及注意点

都是在项目中总结的,经过实践的,在flex2 as3下使用的。as调jsExternalInterface.call("js函数名",参数:数组);(可以接收返回值)js调asas:ExternalInterface.addCallback("js中使用的函数名&…

vue基础(学习官方文档)

基础 介绍 是什么 是一套用于构建用户界面的渐进式框架声明式渲染 <div id"app">{{ message }}</div>var app new Vue({el: #app,data: {message: Hello Vue!} })vue 实例 var vm new Vue({// 选项 })一个 Vue 应用由一个通过 new Vue 创建的根 Vue 实…

用GPIO口模拟串口通信,它真的来了

你是否遇到过某个MCU串口不够的情况&#xff1f; 这时我们可以考虑用GPIO去模拟&#xff0c;如何具体实现呢&#xff1f;首选我们需要了解串口的传输协议&#xff0c;UART使用异步模式工作&#xff0c;不需要时钟信号&#xff0c;其一般格式为&#xff1a;起始位数据位校验位停…

地壳中元素含量排名记忆口诀_在地球46亿年的历史中,氮气始终是含量最高的气体,为什么?...

人每时每刻都要呼吸&#xff0c;呼吸是生命得以存在的基础。不过人类赖以生存的氧气并不是地球上含量最高的气体&#xff0c;地球上含量最高的气体是氮气。在地球的大气之中&#xff0c;氮气的含量占到了78%&#xff0c;而氧气的含量排名第二&#xff0c;约为21%。我们经常会提…

MATLAB —— 绘图

MATLAB —— 绘图 目录 MATLAB —— 绘图 一、绘图 二、代数 三、转换函数 一、绘图 plot(x, y)&#xff1a;y f(x); 绘制图形 xlabel,ylabel&#xff1a;分别沿x轴&#xff0c;y轴生成标签 title&#xff1a;在图形上生成标题 grid on&#xff1a;将网格线放在图形上…

Cisco无线AP的配置

无线接入点&#xff08;AP&#xff09;在无线网络中充当用户的中心通信点&#xff0c;可以连接有线和无线网络。使用Web浏览器和命令行接口(CLI)都可以完成配置。 一般来说&#xff0c;AP可以配置两个接口 以太网接口和无线端口。 a&#xff1a;配置方式 1&#xff1a;控…

逆袭之旅.DAY08东软实训.多态~

2018年7月4日 转载于:https://www.cnblogs.com/twinkle-star/p/9262075.html

现在的年轻人,正在努力的改变着一些东西

这是前天朋友圈发的一个截图&#xff0c;内容也是从朋友圈来的&#xff0c;很认同这观点&#xff0c;今天的文章不会写很多内容&#xff0c;希望听到读者们对这样内容的想法。发出来后&#xff0c;除了一个当老板的朋友持反对外&#xff0c;大部分是赞同的&#xff0c;不过&…

我们是怎样发出声音的?

文&#xff1a;贰沐编辑&#xff1a;贰沐/子鱼提出“群体免疫”&#xff08;herd immunity&#xff09;的英国首相鲍里斯约翰逊&#xff08;Boris Johnson&#xff09;&#xff0c;上月底新冠确诊&#xff0c;这周初病情加重被送进ICU&#xff0c;英国的疫情也确实越来越严重。…

python3进阶开发-第一个仿博客园的项目(1)

首先我们要设计一下表结构&#xff1a; UserInfo(用户信息表) --------》一对一 -----------》Blog(博客信息表) UserInfo(用户信息表) ---------》一对多 -----------》Article UpDown(点赞表) UserInfo(用户信息表) ---------》一对多 -----------》Article Comment…

mac 安装nodejs_阿里开源——用于前端和nodejs的轻量级任务管理和构建工具Dawn

介绍Dawn 取「黎明、破晓」之意&#xff0c;原为「阿里云业务运营团队」内部的前端构建和工程化工具&#xff0c;现已完全开源。它通过 pipeline 和 middleware 将开发过程抽象为相对固定的阶段和有限的操作&#xff0c;简化并统一了开发人员的日常构建与开发相关的工作。Githu…

华为pap和chap的配置。

PAP 验证举例 1. 组网需求 如图1-2所示&#xff0c;路由器Quidway1 和Quidway2 之间用接口Serial3/0/0 互连&#xff0c;要求路 由器Quidway1 用PAP方式验证路由器Quidway2。 3. 配置步骤 (1) 配置路由器Quidway1&#xff1a; [Quidway]aaa [Quidway-aaa]local-user quidway2 p…

Linux C简单的web服务器

Linux C简单的web服务器 目录 Linux C简单的web服务器 一、基础类型重命名 二、包裹函数&#xff08;wrap.h/wrap.c 主要是网络通讯和多线程的包裹函数&#xff09; 三、服务端程序&#xff08;web_server.h/web_server.c&#xff09;—— 使用EPOLL高并发机制 四、HTTP解…

.NET面试题系列(七)IIS

应用程序池的集成模式和经典模式的区别 应用程序池模式会影响服务器处理托管代码请求的方式。 如果托管应用程序在采用集成模式的应用程序池中运行&#xff0c;服务器将使用 IIS 和 ASP.NET 的集成请求处理管道来处理请求。 如果托管应用程序在采用经典模式的应用程序池中运行&…

大学城美好生活组图

离开学校一段时间了&#xff0c;但这里还有很好的回忆................... 以下是广州大学城分享的点点滴滴&#xff0c;享受一下生活吧......................... 广州大学城&#xff0c;位于广州番禺区珠江出海口的江心岛上&#xff0c;与享誉中西方国家的、培育了大批国、共…

C语言设计模式——命令模式

C语言设计模式——命令模式 好处&#xff1a;让代码清晰明了&#xff0c;容易添加和删除&#xff0c;易维护。 哪些地方会用到命令模式&#xff1f;&#xff08;列出几个常见的例子&#xff09; 1、按键处理&#xff0c;每个按键按下得到一个索引&#xff08;指的就是命令&am…