四川药械平台明细下载
本项目的起因源于四川鹭燕星火药业有限公司对集团财务中心提出的申请,要求增加药械平台的回款明细下载功能。目前的现状是,财务人员每天需要登录四川医保平台,在订单管理系统中手动复制新增的订单明细。每笔回款都需要单独打开“交易附言”这一栏,将单品明细逐条复制到表格中。如果明细包含多页内容,工作人员还必须逐页操作。完成这些步骤后,还需根据业务系统的发票号或单品进行数据匹配。整个过程耗费大量时间,严重影响工作效率。
由于四川医保平台属于公共平台,信息部无法直接在其后台增加下载功能。因此,我们需要一个高效、简单的解决方案来自动获取医保平台的数据。研究院的RPA技术可以轻松实现从医保平台自动爬取并存储数据的操作。接下来,信息部可以从这些数据中提取所需内容,最终满足四川公司的需求,实现批量下载订单并自动对账的目标。

1. 业务流程的梳理与分析¶
在项目实施的初期,我们首先与财务人员进行了深入的对接,确保对其现有操作流程有全面的了解。财务人员为我们录制了完整的视频,展示了他们在四川医保平台下载回款明细的全过程。从登录平台,到进入订单管理页面,再到复制订单信息的每一个步骤,都清晰记录。这一视频资料帮助我们准确梳理出操作的细节,确保在设计RPA时能够完整还原实际流程,避免遗漏任何关键步骤。
- 业务流程是否具体: 通过财务人员录制的视频和他们的详细讲解,我们确保了每个操作步骤都清晰、具体。明确的操作步骤是RPA顺利实施的基础,只有流程足够标准化,RPA机器人才能精准执行自动化任务。财务部门还提供了测试账号和参考文档,帮助我们进一步确保对流程的理解和预期输出的准确性。
- 技术能力与硬件设备: 在理解业务流程的基础上,我们对技术团队的能力和现有的硬件设备进行了评估,确保它们能够支持RPA的实现。由于四川医保平台是网页平台,我们需要具备浏览器操控、网页数据抓取和自动化操作的技术。同时,硬件方面需具备足够的计算和存储能力,以便有效处理和存储批量数据。
- 实施速度: 在明确了流程后,我们预计能够在几周内完成RPA机器人的开发、测试及上线。相比传统的开发流程,RPA的实施更为快速、灵活。这种敏捷的开发方式能够迅速解放财务人员的时间,提升整个部门的工作效率。
- 成本效益分析: 实施RPA的主要目的是提升效率并节省时间成本。我们通过分析当前财务人员手动操作所耗费的时间、人力成本,以及自动化可能带来的提升,对其成本效益进行了对比。自动化不仅能显著减少财务人员每天登录、复制和粘贴的时间,还能降低人工操作中的错误率,从而为企业带来显著的回报。
2. 设计¶
在设计RPA机器人时,我们着重考虑了以下几个关键方面,以确保流程的完整性和自动化的高效性。
- 数据提取和处理: 设计的首要任务是确保能够准确无误地从四川医保平台上提取数据。机器人需要使用提供的账号登录平台,经过多个页面的跳转后,进入结算管理界面。然后,自动查询自上次采集以来新增的订单记录,点击每个订单进入其细单详情页面,并将订单记录和订单细单详细信息保存下来。
- 跨系统操作: 我们与信息部进行了对接,详细约定了ERP系统中表格的字段格式。机器人提取到的数据会通过ERP数据库的接口,自动传输到对应的表格中。这种跨系统操作设计,不仅减少了手动输入的工作量,还大大提高了数据传输的准确性和速度,确保平台数据能够快速与ERP系统同步。
- 处理异常情况: 我们为每一个步骤设计了异常处理机制。当页面加载错误或操作失败时,机器人会自动进行重试操作。如果多次重试仍然无法成功,机器人会立即停止操作,并自动发送异常信息至研究院的飞书群,通知相关人员进行人工干预。这样,我们确保了在实际运行过程中,任何问题都能够及时发现并处理,避免数据处理过程中的中断或遗漏。
- 灵活性: 由于不同账号登录四川医保平台后,页面布局和信息提示可能会存在一定差异,我们在设计RPA时特别考虑了这些变化的可能性。机器人通过灵活的定位方式,能够智能判断正确的页面元素位置,确保即使页面出现细微变化,RPA也能够正常操作。
通过以上设计,我们确保了RPA机器人不仅能够高效地完成数据提取和跨系统操作,还具备处理异常和应对多种场景的能力,最终实现了自动化流程的灵活性与稳定性。
3. 开发¶
在完成RPA的设计后,接下来就是关键的开发阶段。在这个过程中,我们不仅要确保机器人能够按照预期执行任务,还需要对性能和错误处理进行优化,以确保其稳定性和高效性。
- 程序编写: 我们选择了Python作为开发语言。Python是一款开源语言,拥有丰富的工具库,可以轻松满足RPA开发中的各类需求。通过Python及其强大的网络通信工具、数据处理工具和数据库接口工具,我们可以轻松实现从登录医保平台、跳转页面到抓取订单数据的自动化操作,并将数据无缝传输到ERP系统中。
- 性能优化: 由于此次项目主要涉及网页数据的采集和处理,我们特别针对性能进行了优化。在开发过程中,我们使用了无头浏览器(headless browser)来操作网页。无头浏览器能够在后台执行网页操作,不需要图形界面的支持,从而减少了系统资源的占用,提高了运行效率。为了加快数据采集的速度,我们还采用了多线程技术,让多个订单明细可以同时处理并抓取数据包。这种并发处理方式不仅提高了数据采集的效率,还有效减少了网络开销,使整个操作更加流畅。
- 错误处理与日志记录: 除了异常处理机制,我们还增加了详尽的日志记录功能。每一个操作步骤、数据采集过程及其结果都会被详细记录,方便后续的监控和追踪。如果出现任何问题,开发团队可以通过日志快速定位问题原因并进行修复。
通过开发阶段的精细编写和优化,我们不仅确保了RPA机器人的稳定运行,还大幅提升了其性能和处理效率。机器人能够快速、准确地完成复杂的数据采集任务,并且具备良好的错误处理能力,确保整个流程顺畅进行。
4. 测试¶
在开发完RPA机器人后,我们从多个方面进行了严格检验,以确保其符合项目的预期目标。
-
模拟真实业务场景: 因为医保平台涉及登录系统,我们重点测试了机器人在不同情况下的登录表现。测试内容包括:
- 不同账号登录,确保机器人能够识别不同的用户凭证并顺利登录平台。
- 针对多次登录的情况进行模拟,检查系统是否会因频繁登录而封锁机器人,确保能够在多次尝试后依然能成功进入平台。
- 考虑到医保平台有时会出现超时或掉线情况,测试了机器人在登录失败后的重试机制,确保它能够根据设定的逻辑进行自动重试。
-
页面跳转与数据抓取测试: 在医保平台上,数据往往分布在多个页面,因此机器人需要处理多次跳转和数据分页抓取。在测试中,我们着重验证了机器人在页面间的导航和数据采集的准确性,包括:
- 页面跳转是否稳定,尤其是平台加载速度较慢时,机器人能否等待页面加载完成并抓取所有订单数据。
- 对分页数据的处理是否完整,确保即使订单记录跨多个页面,机器人也能抓取到每一条订单的细单详情。
- 针对大批量数据采集的压力测试,评估机器人在处理海量订单时的速度和稳定性。
-
数据完整性与准确性测试: 机器人采集数据的核心是确保数据的完整性和准确性。在测试过程中,我们将机器人的抓取结果与业务系统中的实际数据进行比对,重点关注以下几点:
- 检查机器人是否遗漏订单或错采集数据。
- 确认每一条订单细单中的各项字段信息是否准确,包括金额、日期、交易附言等关键数据。
- 确保机器人能够将采集到的数据按照约定的格式存储,并且可以顺利传入ERP系统的表格中。
-
异常处理与重试机制测试: 我们还测试了异常处理功能。在模拟的各种突发情况中,比如页面加载失败、网络中断等,我们验证了机器人的重试机制:
- 机器人是否能按照预定逻辑在遇到错误时自动重试,并在多次尝试失败后,将错误信息发送到飞书群,提醒相关人员进行干预。
- 错误日志的记录是否完整,确保每次错误信息都能详细记载,方便后续的维护和问题追踪。
-
性能与稳定性测试: 在测试的后期阶段,我们对机器人的性能进行了评估。通过几天的连续运行,观察其是否能够稳定采集大批量订单数据,不会因长时间操作而崩溃或卡顿。我们特别关注以下几个方面:
- 在多线程操作下,机器人能否保持数据采集的高效性。
- 是否存在内存泄漏或资源过度消耗的情况,确保系统的稳定性。
5. 部署和维护¶
在完成RPA机器人的开发和测试后,我们顺利进入了部署与维护阶段。此阶段的重点在于确保机器人能够持续、稳定地运行,完成每天从四川医保平台到ERP系统的数据采集工作,并根据业务需求不断进行维护与优化。
- 信息部的交接与后续功能支持: 在确保数据存储和更新的流程稳定后,我们与信息部进行了正式的交接。具体而言,我们将ERP表格中与医保平台数据对应的字段映射和格式要求详细传达给信息部的技术人员。通过清晰的交接文档和说明,信息部能够基于这些数据开发后续的下载和展示功能,确保财务人员可以随时调用并查看更新后的订单数据。
- 持续的沟通与问题反馈机制: 部署并不意味着项目的结束,实际上,RPA机器人需要在实际业务中长时间运行,我们与四川的财务人员保持了持续沟通。特别是,当四川医保平台的界面、账户权限或公司内部系统发生变更时,我们会及时得到反馈并迅速做出调整。
6. 衡量结果¶
在RPA机器人正式上线并运行一段时间后,我们对其整体表现进行了多维度的评估。
- 人工成本节省 根据近20天的统计,每家子公司的财务人员日均需要 5-15分钟 手工采集平台数据,而直接通过ERP下载RPA采集的数据用时不超过 5秒,由此可看到用RPA采集比财务手工采集节省了90%以上的时间。
- 错误率降低 人工操作在重复执行的过程中容易产生错误,如数据复制和粘贴错误、遗漏订单信息等。自RPA机器人上线以来,数据提取和处理的自动化显著避免了此类错误的发生。
- 系统稳定性 在运行的过程中,RPA表现出极高的稳定性,能够高效处理医保平台上的数据采集任务,没有因系统崩溃或技术问题导致中断的情况。