SAP Build 2-PDF数据提取与决策

news2024/11/30 2:51:06

0. 安装desktop agent

在后续过程中发现要预先安装desktop agent,否则没法运行自动化流程…

0.1 agent下载

参考官方文档说明
https://help.sap.com/docs/build-process-automation/sap-build-process-automation/create-user-in-rbsc-download-repository?locale=en-US
在这里插入图片描述
转到Control tower,选中agents update的磁贴在这里插入图片描述
go to rbsc portal
在这里插入图片描述
转到Control tower,选中agents的磁贴
在这里插入图片描述
点击go to download page,转到下载页面
在这里插入图片描述
官方文档是这么说的,但是跳转过后出现的是500页面没法配置,很奇怪
在这里插入图片描述
好恶心,最后根据这个QA找到了答案
https://community.sap.com/t5/sap-teched-discussions/sap-teched-2022-ai180-ad182-prerequisites-setup-desktop-agent-3-rbsc-portal/m-p/12624541
可以通过https://tools.hana.ondemand.com/#cloud 下载trial版本的desktop agent
用个人邮箱注册的BTP就没办法进入RBSC Portal,SID注册的根据上述QA所答应该可以进入Portal
在这里插入图片描述

0.2 agent安装

版本是3.24.54
在这里插入图片描述
直接就装了,也不问我装哪儿
在这里插入图片描述
在这里插入图片描述
装完就在右下角默认启动了
在这里插入图片描述

0.3 agent注册

回到SAP Build的control tower,选择agent desktop
点击register agent,随后copy and close注册链接
在这里插入图片描述
回到桌面右下角desktop agent图标,add tenant
在这里插入图片描述
输入描述信息和刚刚拷贝的链接并保存
在这里插入图片描述
最后注册完就这样,然后激活该tenant
在这里插入图片描述
随后跳转到登录页,登录BTP试用账号即可
在这里插入图片描述
登录完成会自动关闭页面,回到desktop agent发现已经Active了(没active等会,需要点时间去connect)
在这里插入图片描述
在这里插入图片描述
回到SAP Build也能看到连接的设备了
在这里插入图片描述

0.4 agent 拓展

安装完desktop agent后,会给浏览器安装一个拓展程序,注意查看右上角图标,要启用这个拓展程序
在这里插入图片描述
在这里插入图片描述

1. 数据提取

看了SAP Build的数据提取示例,用了一张PDF发票作为模板给SAP Build学习,后续同类型的发票SAP Build自己就能识别到发票内容

1.1 新建流程

新建一个process,不明白可以回头参考SAP Build 1的内容
(不知道为啥编辑页面变成中文了,但其他的都是英文,SAP Build的语言有点奇怪)
触发器还是使用表格,表格中提供文件的本地路径即可
在这里插入图片描述
在这里插入图片描述

1.2 新建自动化

新建自动化,代理版本不要选错了
在这里插入图片描述
代理版本选错了也可以通过设置修改
在这里插入图片描述
在这里插入图片描述
创建完成先保存一下
在这里插入图片描述

1.3 新建发票数据结构

转到概览,新建数据类型
在这里插入图片描述
在这里插入图片描述
参考电信发票,创建了如下数据结构
在这里插入图片描述
在这里插入图片描述

1.3 设置自动化传入传出参数

打开自动化流程
在这里插入图片描述
右侧设置输入输出,输入使用文件路径即可,输出选择自定义的发票类型
在这里插入图片描述
再次保存

1.4 新建发票模板

概览页面新建文件模板
在这里插入图片描述
创建新模板
在这里插入图片描述
选择待识别的发票文件作为模板,喂给SAP Build学习
在这里插入图片描述
SAP 应该是对发票有特殊扫描,直接选发票就好了
在这里插入图片描述
针对发票,SAP预先设置了发票的数据模式,字段结构可以直接使用
选择新建,把模式映射到我们之前定义的数据类型上
在这里插入图片描述
在这里插入图片描述
根据之前的数据结构,一个个把变量名填入就行,记得设置变量类型
在这里插入图片描述
最后一步点击添加即可
在这里插入图片描述
在这里插入图片描述

1.5 配置模板映射

打开模板编辑器,等待SAP 扫描完毕,扫描结束就是下面这样,点击编辑按钮进行mapping
在这里插入图片描述
SAP把所有有可能的文本都扫描出来了,选中需要的文本就会进行字段分配,编辑值获取需要的结果,这里本来SAP扫描的是【开票日期2022年10月02日】,我手工删除了不必要的字段,只保留了年月日
在这里插入图片描述
依葫芦画瓢一个个设置就好了
在这里插入图片描述
最后映射完结果就长这样,保存即可
在这里插入图片描述

1.6 编辑自动化

回到自动化页面
在这里插入图片描述
右侧搜索extract,找到extract data(template),拖拽至流程中
在这里插入图片描述
选中extract data(template),添加文档模板,选择从当前项目中选择模板
在这里插入图片描述
模式和模板都使用之前创建的
在这里插入图片描述
最后选择添加即可
在这里插入图片描述
输入参数是文件路径,默认会将提取的结果提取到输出参数extractData中
在这里插入图片描述
找到之前预定义的发票结构,拖拽至流程中
在这里插入图片描述
从提取到的数据中,找到需要的数据依次对抬头赋值即可
在这里插入图片描述
行项目有点难弄,我怎么也没办法通过for each直接对es_invoice-item的行项目直接通过index添加,所以最后新建了一个gs_invoice_item的变量,将for each的结果放到gs_invoice_item[0]中,再将gs_invoice_item[0]添加到es_invoice-item下
不知道是不是我的姿势不对,可能有其他我不知道的方法

下图不正确,可以使用add item 控件直接赋值
在这里插入图片描述
我之前把add item控件的输入输出弄反了,所以一直弄不出来
在这里插入图片描述
最后放一个log查看提取的结果
在这里插入图片描述

1.7 测试

点击左上角的三角形可以测试
在这里插入图片描述
输入参数,点击test测试即可
在这里插入图片描述
然后就到加载页面了,应该是要把云端的package下载到安装desktop agent的本地电脑上,然后下载巨慢巨慢巨慢
在这里插入图片描述
折腾了一晚上,完全没办法运行,一直报错无法下载,查看日志也不说到底啥原因,很无语
在这里插入图片描述
在这里插入图片描述
第二天,关闭科学上网软件,重新运行机器人成功
模板的识别率貌似有待提高,我做了两个pdf,一个是作为模板上传的pdf,一个是ps后的pdf
PS后的发票加了一行行项目,改了一个开票日期和合计金额
在这里插入图片描述
只识别第一张pdf发票的时候还算正常,行项目也取出来了,只是购方名称和开票日期这俩字段把不必要的汉字也取出来了
下面的json是第一个发票log的结果

{
	"type": "automationActivity",
	"name": "irpa_core.log",
	"label": "Log Message",
	"inputs": [
		{
			"item": [
				{
					"desc": "*电信服务*电信业务使�费",
					"unit": "项",
					"quantity": 1,
					"price": 185
				}
			],
			"total_price": 185,
			"invoice_no": 36587586,
			"payer": "称:XX",
			"invoice_date": "开票日期:2022年10月02日"
		},
		{
			"key": "Info",
			"value": 0
		},
		null
	],
	"containerInstanceUid": "306d170e-95a5-4c59-ba32-12f93a372b4d",
	"parentInstanceUid": "306d170e-95a5-4c59-ba32-12f93a372b4d",
	"stepId": "13",
	"line": 19,
	"file": "pDFInvoiceExtraction.js"
}

识别第二张ps的发票就有点问题了,行项目一个没取出来,其他的问题跟第一张发票一样,不知道是不是我ps水平有限

{
	"type": "automationActivity",
	"name": "irpa_core.log",
	"label": "Log Message",
	"inputs": [
		{
			"item": [],
			"total_price": 585,
			"invoice_no": 36587586,
			"payer": "称:XX",
			"invoice_date": "开票日期: 2023年10月02日"
		},
		{
			"key": "Info",
			"value": 0
		},
		null
	],
	"containerInstanceUid": "cb2a76a5-d90a-4c34-8e61-f473b8003ffb",
	"parentInstanceUid": "cb2a76a5-d90a-4c34-8e61-f473b8003ffb",
	"stepId": "13",
	"line": 19,
	"file": "pDFInvoiceExtraction.js"
}

即使我在模板处上传了第二张发票并做了标注,自动化的结果也没有发生改变,官方文档感觉不是很清楚,可能我自己也没读明白
https://help.sap.com/docs/build-process-automation/sap-build-process-automation/document-information-extraction-process-automation?locale=en-US&q=document%20template%20editor
在这里插入图片描述

2. 决策

决策是一个复杂的if-else 集合,相比嵌套的if-else使用决策可以简化显示,逻辑更清晰
下述场景使用决策表决定应收邮件的审批人

2.1 新建决策树

流程中插入决策树
在这里插入图片描述
在这里插入图片描述

2.2 添加输入输出参数

添加输入输出参数,输入为发票信息,输出为决策树判断后输出的审批人邮箱
在这里插入图片描述

2.3 新建规则

转到rule页签,添加规则
在这里插入图片描述
选择决策表,填写描述信息
在这里插入图片描述
假定价格和付款方作为条件
在这里插入图片描述
审批人作为结果
在这里插入图片描述
最后检查一下,没问题就创建
在这里插入图片描述
做了个简单的决策表
在这里插入图片描述
决策表的操作符官方文档如下:https://help.sap.com/docs/build-process-automation/sap-build-process-automation/operators?locale=en-US&q=document%20template%20editor
字符串用单引号括起来
在这里插入图片描述
对我来说决策表其实更像配置表,满足配置表条件时输出结果的数据
做完之后点击保存即可

2.4 测试

在流程中给决策添加输入输出的参数,输入来自上一步的发票提取结果,输出为新建的变量gv_approver
在这里插入图片描述
在这里插入图片描述
为了方便查看结果,结束之前发出邮件,在邮件中查看结果(此时会error,因为还没配置邮件服务)
配置好了就保存,然后发布,部署,部署完了从触发器获取表单的链接
在这里插入图片描述
填写文件路径,然后提交即可
在这里插入图片描述
问题又来了,流程监控器显示流程正在running而且流转到了启动自动化的步骤了,但是desktop agent丝毫没有反应
在这里插入图片描述
没有任何日志显示desktop agent接收到了流程
在这里插入图片描述
搞不明白了,切换到无人值守也无法启动,问题多多

3. 参考链接

教程(缺了sap agent的配置)
https://developers.sap.com/mission.invoice-processing-approval-spa.html
文档(不清不楚不明不白)
https://help.sap.com/docs/build-process-automation/sap-build-process-automation

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

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

相关文章

numpy创建维数组

一,numpy创建一维数组 1.1.np.array() # 创建一维数组 anp.array([1,2,3,4,5]) print(a) 1.2.np.arange() # 创建等差数组 bnp.arange(0,6,2) print(b) 1.3.np.linspace() #生成10个数,范围为[1,10],满足等差数列 y,cnp.linspace(1,2,3,end…

电商领域利器来了!港大阿里联合提出MimicBrush,对参考图模仿进行零样本图像编辑,万物皆可编辑。

阿里和港大提出的MimicBrush可以通过对参考图模仿进行零样本图像编辑。将一张图片的某一部分融合到领一张图片上去。用在电商商品展示上或者单纯的图片编辑和内容迁移很有用。从官方演示来看效果也很好。 MimicBrush,它会随机选择视频剪辑中的两帧,遮盖其…

远程桌面端口,远程桌面改端口有哪些方法

方法一:通过修改注册表 步骤一:打开注册表编辑器 按下 Windows键R 打开“运行”对话框。输入 regedit 并按 Enter 打开注册表编辑器。 步骤二:定位到远程桌面服务的端口设置 导航至第一个注册表路径:HKEY_LOCAL_MACHINE\SYSTE…

RabbitMQ安装配置,封装工具类,发送消息及监听

1. Get-Started docker安装rabbitmq 拉取镜像 [rootheima ~]# docker pull rabbitmq:3.8-management 3.8-management: Pulling from library/rabbitmq 7b1a6ab2e44d: Pull complete 37f453d83d8f: Pull complete e64e769bc4fd: Pull complete c288a913222f: Pull complet…

VD1011 单节锂离子充电电池保护 2.8V过放保护 SOT-23小封装芯片

VD1011,内置高精度电压检测电路和延迟电路以及内置MOSFET,是用于单节锂离子/锂聚合物可再充电 电池的保护IC。 本IC适合干对1节锂离子/锂聚合物可再充电电池的过充电、过放电和过电流进行保护。 VD1011具备如下特点 高精度电压检测电路 过充电检测电压 …

PyTorch计算机视觉入门:使用自己的数据集训练神经网络

前言 计算机视觉,作为人工智能领域的一个重要分支,近年来在图像识别、物体检测、图像生成等应用上取得了显著的进步。PyTorch,作为一款灵活且强大的深度学习框架,为开发者提供了便捷的工具来构建和训练计算机视觉模型。本文将指导…

【面试干货】ArrayList、Vector、LinkedList的存储性能和特性比较

【面试干货】ArrayList、Vector、LinkedList的存储性能和特性比较 1、ArrayList1.1 存储性能1.2 特性1.3 示例用法 2、Vector2.1 存储性能2.2 特性2.3 示例用法 3、LinkedList3.1 存储性能3.2 特性3.3 示例用法 4、ArrayList、Vector、LinkedList用法总结 💖The Beg…

如何在 Windows 10/11 上编辑 PDF [4 种简单方法]

PDF 在大多数设备上都易于查看,但由于其设计用于查看,因此编辑起来可能比较棘手。编辑 PDF 可能比编辑 Microsoft Office 文档更具挑战性。 不用担心,我们已经为你做好了准备。无论你是想添加、删除还是插入文本或图片,你都可以使…

操作系统复习-线程同步

互斥量 两个线程的指令交叉执行互斥量可以保证先后执行称为原子性 原子性是指一系列操作不可被中断的特性这一系列操作要么全部执行完成,要么全部没有执行不存在部分执行部分未执行的情况 互斥锁 互斥量是最简单的线程同步的方法互斥锁,处于两态之一的…

环保绩效评级:ABCD四个等级,你的企业处于哪个水平?

在当下社会,环保问题越来越受到人们的关注和重视。企业作为经济活动的重要参与者,其环保绩效评级直接关系到环境保护的成效。朗观视觉将详细解析环保绩效评级的ABCD四等级,帮助读者了解不同等级的特点和评判标准,进而引导企业提高…

利用钉钉机器人和PHP开发一款免费的网站可用性检测工具,单节点版

前言 手里有几套系统正在运维&#xff0c;需要保障正常运行&#xff0c;所以可用性检测就必不可少啦&#xff0c; 以前本来是用的阿里官方的云监控&#xff0c;但现在价格感觉太贵了&#xff0c;不划算 那就自己手搓一个简易版的监控吧。 成品效果展示 代码展示 <?php …

远程桌面端口,怎么修改远程桌面端口

修改注册表 打开注册表编辑器&#xff1a; 按下 Windows键R 或者从开始菜单选择“运行”&#xff0c;打开运行窗口。 输入 regedit 命令&#xff0c;然后点击“确定”打开注册表编辑器。 定位到远程桌面服务的端口设置&#xff1a; 在注册表编辑器中&#xff0c;按照以下路径找…

Postman接口调用详情用法Postman 的作用-测试 API帮助开发者发送各种类型的请求

本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的关注和支持!本人外号:神秘小峯 山峯 转载说明:务必注明来源(注明:作者:王文峰…

铝壳电阻的安装和使用注意事项有哪些?

铝壳电阻是一种常见的电子元件&#xff0c;广泛应用于各种电子设备中。为了确保铝壳电阻的正常工作和使用寿命&#xff0c;安装和使用过程中需要注意以下几点&#xff1a; 1. 选择合适的铝壳电阻&#xff1a;根据电路的实际需求&#xff0c;选择合适的阻值、功率和尺寸的铝壳电…

【仿真建模-anylogic】Statechart原理解析

Author&#xff1a;赵志乾 Date&#xff1a;2024-06-15 Declaration&#xff1a;All Right Reserved&#xff01;&#xff01;&#xff01; 1. 类图 2. 原理解析 2.1 核心函数 Statechart的核心函数如下&#xff1a; 函数功能Statechart(Agent owner, short maxat)构造函数&…

【算法专题--链表】反转链表II--高频面试题(图文详解,小白一看就会!!!)

目录 一、前言 二、题目描述 三、解题方法 ⭐迭代法 --- 带哨兵位&#xff08;头节点&#xff09; &#x1f95d; 什么是哨兵位头节点&#xff1f; &#x1f34d; 解题思路 四、总结与提炼 五、共勉 一、前言 反转链表II这道题&#xff0c;可以说是--链表专题--&am…

《书生·浦语大模型实战营》第4课 学习笔记:XTuner 微调 LLM:1.8B、多模态、Agent

文章大纲 1. 大模型微调简介2 快速上手2.1 环境安装2.2 前期准备2.2.1 数据集准备2.2.2 模型准备2.2.3 配置文件选择2.2.4 小结 2.3 配置文件修改2.4 模型训练2.4.1 常规训练2.4.2 使用 deepspeed 来加速训练2.4.3 训练结果2.4.4 小结 2.5 模型转换、整合、测试及部署2.5.1 模型…

消费者消费数据时报错:INVALID_REPLICATION_FACTOR

今天部署了kafka集群&#xff0c;三台服务器&#xff0c;启动后&#xff0c;生产者发送数据&#xff0c;消费者接收数据的时候报错&#xff0c;INVALID_REPLICATION_FACTOR。 查了很多资料&#xff0c;说是要改kafka下config目录的server.properties,可能是副本数太小&#xff…

Java17 --- RabbitMQ搭建集群

目录 一、使用docker搭建集群 二、使用docker安装Haproxy 三、使用springboot进行测试 3.1、创建交换机与队列关系 四、仲裁队列替代镜像队列 4.1、创建交换机与队列关系 一、使用docker搭建集群 由于contos7环境不能装rabbitmq3.13版本的&#xff0c;采用docker安装避…

Qt MaintenanceTool.exe使用镜像源更新Qt

环境&#xff1a;Windows11&#xff0c;Qt6.5&#xff0c;新版的MaintenanceTool.exe linux环境类似&#xff0c;mac环境可以看官方文档。 cmd命令窗口&#xff1a;切换到MaintenanceTool.exe所在目录&#xff0c;可以用“D:”切换到D盘&#xff0c;“cd xxxx”切换到xxxx目录…