借力VSTO打造Office App,将ERP插上翅膀

VSTO(Visual Studio Tools for Office),其含义是在强大的Visual Studio开发环境中进行Office专业开发,在其灵活易用的基础上拓展应用场景,满足不同用户的需求。本文基于真实的客户案例,讲述慧见如何通过VSTO打造企业级Office App,与ERP轻集成的同时兼顾灵活易用,深受客户赞许。

背景

东部某钢铁集团在实施ERP系统成本、资金模块过程中,遇到如下几个问题:

1、存在大量间接成本无法有效分摊到产品上,原有模式是在Excel上计算好后,直接做入财务系统,但是颗粒度比较粗。在新的成本模块中,产品核算的明细度有较大提高,但是仍不能有效支持全部间接成本的分摊,再通过手工Excel的方式,工作量不减反增,成为新的痛点。

2、资金结算中心统一支付、收款结算管理,在实现成员单位委托付款、收款业务时,允许结算中心用一张大票据支付多个结算单位的付款委托书,同样允许结算中心收到一张大票据,将金额拆分到多个结算单位的票据账户。资金模块虽然支持此功能,但是需要手工一笔笔输入资金凭证,对于资金交易众多的钢铁集团,无疑又是增加较重的工作量和管理难度。

3、集团期望能提高对账效率,无论是集团内部往来,还是外部往来。具体是:内部往来能抽取各系统之间(存在两个以上的财务系统,但是资金模块统一在一个系统)的数据,实现数据的统一;外部往来让营销人员参与对账、跟催,并形成相应的预警跟踪、邮件发送机制,及时管控客户信用风险。

4、基于Excel的财务数据分析,在随着数据量、分析维度递增的同时,速度越来越慢、效率越来越差,但是无论是固定模板的分析,还是突然偶发的数据分析,Excel短期内仍无法替代。在ERP系统升级后,如果不能满足这种分析需求,并且集团尚无实施商业智能系统的计划,可否提供替代解决方案。

关注微信公众号,获取最新文章及下载资料

解决方案

慧见在仔细分析该客户的需求后,认为这看似是一个个性问题,其实隐藏普遍共性的问题,即如何平衡ERP稳健性、严谨性与实际业务的灵活性。ERP如果过度灵活,必将带来严谨性问题,以及开发难度倍增,因为总体上ERP面向的是整体或某一产业模型,个性问题在很长一段时间会受到挑战。

慧见进一步了解到,该客户希望采取系统迭代实施的步骤,将Excel的功能挖掘到最大化,将风险和成本降至最低,并不急于引入其他大型系统。那么如何解决该客户的问题,慧见给出以下方案:

1、总体思路:开发企业级Excel App(即Excel Add-In,插件开发),充分利用集团现有Excel模板,并在此基础上进一步完善和规范化。

2、在Excel App中集成ERP系统,开发成本分摊凭证、票据拆分凭证处理模块,直接利用现有成熟的Excel模板体系,灵活快速生成凭证数据,并将其传送至ERP相应模块。

3、在Excel App中开发对账模块,为集团30万客商建立对账模型,根据客商信用评级原则进行分级管理,并能生成各种简要信息(比如:信号灯、进度条等),且能自动推送预警邮件给相应责任人。

4、在Excel App中开发自助BI模块,不仅可以对Excel数据进行多维度分析,还集成ERP系统相应模块,并将分析后的报表发送至相关决策者邮箱。这一创造性的BI自助分析功能,解决百亿级数据多维分析问题,极大突破原有Excel的限制。

Coming Soon
你在日常工作中,是否会应用电子表格构建财务模型?
你在日常工作中,是否会应用电子表格构建财务模型?
你在日常工作中,是否会应用电子表格构建财务模型?

技术框架

VSTO是一套用于创建自定义Office应用程序的Visual Studio工具包,可以用Visual Basic或者Visual C#扩展Office应用程序(例如Word、Excel、PowerPoint和Outlook)。本案例基于微软.net Core最新开发框架,在Visual Studio IDE上应用C#语言进行开发,并借助世界最知名的DevExpress控件,使得Excel App的功能得到极大增强。具有如下特点:

  • 与Excel融于一体,且启用超线程开发技术,将Excel的功能应用到极致;
  • 将DevExpress控件应用到VSTO,特别是其中最成功的Grid(表格)、Chart(图表)、TreeListGrid(树形数据表格)、DashBoard(仪表板),将数据分析、呈现的规模提升到百亿级别,且速度非常快;
  • 通过ERP API数据接口,实现与ERP系统标准数据的双向传输,并保证ERP数据的安全;
  • 在Excel App中调用SMTP、POP3功能,实现预警邮件的自动分发。

系统演示

如下视频演示系统成本分摊凭证、对账、自助BI等部分模块功能:

——欢迎预约我们,现场沟通交流。