当前位置: 首页 > Web前端 > HTML

如何使用SAP智能机器人流程自动化自动化Excel

时间:2023-03-28 14:46:58 HTML

机器人流程自动化(RPA)是一种解决方案,允许用户在企业中自动化重复的、基于规则的业务流程。与需要将流程步骤硬编码到系统中的传统自动化解决方案不同,RPA利用当今机器学习和人工智能的最新进展,通过观察真实用户如何完成流程来学习如何自动化任务。要了解RPA解决方案的工作原理,请将其视为录制宏。一旦记录完成,RPA机器人就可以自主执行任务,不仅可以处理复杂的任务,还可以处理任务中的异常,不断积累知识以响应不断变化的输入条件,并利用自动化应用程序的UI变化。有关RPA工作原理的更易于理解的示例,请考虑电子邮件和短信应用程序中的预测文本功能。当我们输入邮件、短信等时,应用程序会记住我们使用的某些语法和单词,然后在以后输入时自动根据这些给出建议。RPA所做的一切努力,都是为了让终端用户从繁琐、重复、繁琐的手工劳动中解放出来,从而可以从事其他技术附加值更高的事情。这也是智慧企业所倡导的智慧工作。而不是努力工作的指导方针。除了常见的使用编程语言操作Excel文件外,SAP新发布的SAP智能机器人流程自动化(简称SAPiRPA)提供了强大的企业级自动化流程解决方案,无需编程即可使用,操作Excel一样灵活就像使用编程语言一样。我们来看一个具体而简单的例子,使用SAPIntelligentRoboticProcessAutomation操作一个Excel文件,向里面的单元格写入一个字符串,设置背景色然后关闭。打开SAPIntelligentRoboticProcessAutomationDesktopStudio,导入SAP预置的nodejs脚本库文件进行Excel操作。在库文件中选择ExcelIntegration。从下图可以看出,除了Excel,SAPiRPA还支持Word、Outlook等Office中的其他应用。创建一个名为jerryExcel的新工作流,并在工作流的活动面板中输入seq。找到Sequence类型的Flow控件。此控件允许我们定义工作流中的一系列步骤。将Sequence控件拖到工作流编辑区,双击定义需要执行的详细步骤。ExcelLib预设了很多围绕Excel的操作,比如InitExcel、OpenExcel、CloseExcel等,每个操作对应一段nodejs代码。比如将InitExcel拖到Sequence控件的Activities列表中,保存后,马上会看到自动生成的nodejs代码。ExcelLib中的每一步都对应一段nodejs代码。这样,SAPIntelligentRoboticProcessAutomationDesktopStudio的用户即使没有编程基础,也可以开发出可以操作Excel的自动化工作流。上图中的InitExcel步骤是所有Excel操作的工作流都必须执行的初始化步骤。初始化完成后,将OpenExcel步骤拖入SequenceActivities中,指定要打开的Excel文件路径,DesktopStudio中会有红色提示。维护本地Excel文件的绝对路径:第三步,设置打开的Excel第一行第一列的值为'HelloJerry':第四步,设置第一行第一列的背景色:修改然后保存Excel作为另一个文件。执行该项目,您将在临时文件夹中看到另一个Excel文件。这个例子很简单,让我们看看它是如何工作的。切换到脚本面板,在第45行打开Excel的代码处设置断点,然后逐步调试:触发断点后,我们可以观察到任务栏出现Excel应用程序窗口提示,但没有任何显示:在taskmanager中可以看到通过参数/automation-Embedding启动了应用:我们要单步进入ctx.excel.file.open方法,发现断点并没有停在open方法中,而是执行直接在该方法中,任务栏上的应用程序标题由Excel改为open方法打开的文件名:1.xlsx。从上述任务管理器中观察到的/automation和embedding参数,我们已经可以判断出SAPiRPA操作Excel的实现原理与Jerry的文章中使用ABAP操作Excel的几种方法中提到的第一种方法是一致的,即,通过OLE操作Excel。如果一定要追根究底,可以到SAPiRPASDK安装目录,打开excel.js文件,找到open方法的实现,发现它调用了_excelApp的WorkBooks.Open方法object:而_excelApp对象在初始化方法中。通过GetObject从OLE对象Excel.Application中获取:还记得Jerry的文章如何使用ABAP操作Excel中提到的ABAPOLE实现源码吗?获取Excel应用对象也是同样的方法,甚至连编码方式都完全一样。说完了JavaScript操作Excel的话题,我再提一下目前流行的另一个JavaScript操作Excel的开源库Node-xlsx,它是基于OfficeOpenXML协议来解析Excel文件的。ABAP也有相应的基于OfficeOpenXML的实现:CL_XLSX_DOCUMENT。与SAPiRPA采用的OLE解决方案相比,这种方式的优点是避免了对Excel应用程序的依赖,多用于Excel在服务器端处理任务。总结本文首先给出企业级机器人流程自动化解决方案(简称RPA)的诞生原因和适用场合,然后以Excel文件的自动化操作为例介绍SAPiRPA解决方案的使用步骤详细。