失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 记录 UiPath 学习中遇到的一些问题以及解决办法

记录 UiPath 学习中遇到的一些问题以及解决办法

时间:2022-01-18 10:04:08

相关推荐

记录 UiPath 学习中遇到的一些问题以及解决办法

这里有一些入门UiPath的实例:/SharathRaju489/UiPath

-------.04.13---------

问 1.在开发中,当我们想点击那些失去焦点后隐藏的按钮时。发现我们切换到uipath studio之后,想要点击的按钮已经被隐藏,无法选中

问 1 解决方案:使用click -> attachwindows/attach browser ->click。举例我们要点击文本框(notepad)中的Format中的Font:

1:使用click,点击notepad中的Format

2:使用Attach windows,选择attach windows作用域时,先点击Indicate window on screen,再按F2,点击Format,等待3秒,选中作用域为点击Format后的区域

3:使用click,点击获取目标时,按下F2,打开notepad上的Format,目标选择Format下的font

问 1 主要技术:主要使用F2延时选中功能。使用F2延迟选中功能,可参考以下地址中的视频:内容乌鸦 ()

----------------------------------05-27 通过UiPath识别图片内容

使用OCR组件,需要下载对应的package。经过测试,中文识别不行。英文识别一般,有些字母无法识别出(如:W)

-------------------------------获取邮件中的附件

使用get outlook Mail Message组件

获取附件名称(mailItem是单个邮件的附件,里面有可能包含多个附件):

CType( mailItem.Attachments.FirstOrDefault,Attachment).Name

---------------------打开循环打开excel时,报错:Call was rejected by callee.

根本原因是在操作excel时,有其他excel进程没有关闭,只需要关闭excel进程。

第一种情况:调用Kill Process组件,需要引入包:UiPath.Core.Activities,设置ProcessName="Excel"。

第二种情况:打开的Excel中,存在透视表(pivot table)。解决办法是将透视表的“(打开excel时刷星)Refresh data when opening the file” 关掉就行,如下图。我猜测出现这个原因是数据刷新时,做了关闭excel处理时,进程没有彻底被关闭。

最后,经过测试,出现这类问题,和excel的文件类型,以及是否存在宏无关,就和透视表(piovt table)有关系,如有其他码友遇到相同问题可以@我,一起看看

---------------------uipath如何强制关闭excel的piovt table的打开时刷新选项(方向:调用VBA的形式。难点:只要涉及到打开excel,就会报错(访问被拒绝))

最终这个问题还是通过使用VBS解决了这个问题。然后使用uipath中的 invoke vbscript组件调用关闭了pivot table的自动刷新。代码有点长,请查看我的另外一个博文(vbs 关闭excel的piovt table自动刷新),有代码

---------------------通过ExtractData获取SAP列表时,报错:Inject JS script is not supported for this element. 为SAP本身设置的问题,修改SAP属性即可,按如下图设置即可(option里打开此设置)。另外,如果RPA去操作SAP时,提示:A Script is attempting to acess SAP GUI.解决办法是一样的:

----------------通过ExtractData 获取SAP中列表数据,如果获取的数据里不全,且数据中出现乱数据(我的表现为0000XXX),这是因为SAP使用的应该是懒加载,在数据未加载完成时,RPA已经执行:ExtractData。两种处理方法:1,加一个延时,2,做一个翻译,使用PGDN,翻到最后一页后再用ExtractData。推荐使用第二种,因为一般不知道数据什么时候加载完

-----------------今天遇到一个比较棘手的问题。再SAP中执行翻页操作时,当一条数据存在于当前页,但是数据只显示一半的时候,使用click组件时,无法选中,暂时不知道怎么解决这个问题

临时解决方案:还是使用PGDN(SendHotkey组件),每次翻页的时候,都去检查当前页是否有自己要的选项。如果有就:1、使用up(SendHotkey) 2、查找是否存在自己需要的选项(如没有,继续PGDN) 3、点击需要的选项

这种方法还是会有一定概率出现无法选中的问题,亲测还是能解决部分问题

-------.07.27---------- 在RPA中进行加密的问题。测试了博文:ttps:///weixin_45000314/article/details/98937190提供的三种方法可以用,但是都可以通过message明文输出。想过自己封装package方式,但是考虑到RPA是通过模拟人操作,在程序执行给输入框赋值时,都是明文。不知道有没有其他小伙伴有啥好想法,求助求助

---------------我们创建项目时,选择类型为:Template后,保存项目时,会提示错误:Could not load file or assembly 'Microsoft.windows.design.extensibility,version=4.3.1.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies.the system cannot find the file specified. 根本原因就是系统中没有找到Microsoft.windows.design.extensibility。可以通过安装.net framework(不能安装runtime)解决大部分电脑的问题。还有一种情况是安装了.net framework后依然报错,此时,我们需要手动将Microsoft.Windows.Design.Extensibility.dll注册到电脑中(网上找注册教程注册dll文件 - J.Y - 博客园 ())。

------------- 在Orchestrator中使用azure key vault(如果在orchestrator中创建凭据存储时没有AzureKeyVault选项时,下面的连接也可以解决):

/orchestrator/docs/about-credential-stores

---------------自己根据属性找到web页面的标签:<webctrl css-selector='table[jsname=NLtp9]' />

---------------Selector中,给属性添加变量 titel='{{变量}}'

---------------DataTable中存在时间列,但是列的类型为String,我们在查询时,需要将string转换成datetime格式再进行查询,解决方法如下:

1、如果项目是VB类型:dt.Select().ToList().Where(Function(row as DataRow) cDate(row("xxx"))<DateTime.Now).ToArray()或者使用Bala的DateTime ParseTo Datatable ,需要下载包:BalaReva.EasyDataTable.Activities

2、如果项目是C#类型: 还在寻求答案中。。。

--------------初始化list:new List(Of Int32)(New Int32(){1, 3, 4, 6, 7})

时间转换,月份为英文:

DateTime.Now.ToString("MMM yyyyy",CultureInfo.CreateSpecificCulture("en-GB")) ; // Nov 简写月份

DateTime.Now.ToString("MMMM yyyyy",CultureInfo.CreateSpecificCulture("en-GB")) ; // November 全写月份

如果觉得《记录 UiPath 学习中遇到的一些问题以及解决办法》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。