0

这个问题参考了以下问题:

我正在关注视频SAP Automation with UiPath,以使用有效凭据的用户身份通过​​ SAP 客户端自动登录。

环境细节:

  • SAP 客户端:IDES ECC 6.0 包括。EhP7

  • 主机:64 位 Intel Core i3 CPU - Windows 8 系统。

在视频之后,我有一个Attach Window包含以下两个活动的活动:

  • AClick Text的 ClickType 为CLICK_SINGLE
  • AClick Text的 ClickType 为CLICK_DOUBLE

Selector EditorUI Explorer标识的元素如下:

<wnd ctrlid='76836616' />
<wnd ctrlid='100' title='SAP&apos;s Advanced Treelist' />

<wnd ctrlid='76836616' />
<wnd ctrlid='5002' title='myContainer' />
<wnd ctrlid='1008' />
<ctrl name='SAP_IDES' role='list item' />

正如您所看到的ctrlid,这两个元素都是相同的,但有些是动态的。然而,前几次处决是完美的。

在经过相当长的时间后尝试执行工作流时,问题就开始了。我遇到了一个错误:

Error {"message":"Click Text 'SAPTreeList': Cannot find the UI element corresponding to this selector: <wnd ctrlid='90279688' /><wnd ctrlid='100' title='SAP&apos;s Advanced Treelist' />","level":"Error","logType":"Default","timeStamp":"2019-02-06T13:16:44.295729+05:30","fingerprint":"bec67d2a-14d1-4b93-ac06-03156aea69fe","windowsIdentity":"AtechM-03\\AtechM_03","machineName":"ATECHM-03","processName":"LearningUiPath","processVersion":"1.0.0.0","jobId":"e7f88d9e-e485-4eee-8a54-7450771238f3","robotName":"ATECHM_03","machineId":0,"fileName":"Main"}

因此,从错误消息中可以清楚地看出,这selector不是一个有效的选择器。

使用Selector EditorUI Explorer我发现了ctrlid'76836616'到的变化'79865432'。所以我尝试使用部分选择器。观察到UiPath随机:

  • 标识省略<wnd ctrlid='76836616' />但在执行时显示错误的元素:

    Error {"message":"Click Text 'SAPTreeList': Cannot find the UI element corresponding to this selector: <wnd omit:ctrlid='76836616' /><wnd ctrlid='100' title='SAP&apos;s Advanced Treelist' />","level":"Error","logType":"Default","timeStamp":"2019-02-27T11:59:39.2811258+05:30","fingerprint":"752fe27b-16f4-4e7b-95c0-f1e8a6b49e7b","windowsIdentity":"AtechM-03\\AtechM_03","machineName":"ATECHM-03","processName":"LearningUiPath","processVersion":"1.0.0.0","jobId":"b6ba7310-749c-4c28-a9d3-d1db0c6c7dec","robotName":"ATECHM_03","machineId":0,"fileName":"SAP_UserList_BOT"}
    
  • 将部分选择器中带有通配符的元素标识为. 这适用于 4-5 轮执行。但随后也会更改执行失败的位置。<wnd ctrlid='7*' />'76836616''88068312'

所以我的问题是我如何适应不时变化的动态并且是 UiPath 的强制选择器?ctrlid

4

1 回答 1

4

UI 路径有一个锚基础活动,当没有可靠的选择器时可以使用它。它是一个锚点容器和一个动作活动,它试图通过使用其他 UI 元素作为锚点来定位您的 UI 元素。您可以同时使用查找元素查找图像活动作为锚点。

例如,您可以使用输入的标签作为输入的锚点,因为标签不太可能更改。

请记住,锚基础活动在后台不起作用

您可以通过尝试完成此页面中的挑战来测试锚定基础活动的效率/可靠性。http://www.rpachallenge.com/在您的案例中,rpachallenge 页面上输入的名称和 id 属性也会在每次提交时更改。

于 2019-02-27T07:58:10.297 回答