Как построить селектор на основе динамического ctrlid через UiPath? - PullRequest
0 голосов
/ 27 февраля 2019

Этот вопрос имеет ссылку на следующие вопросы:

Я слежу за видео SAP Automation с UiPath для автоматизации входа через клиент SAP в качестве пользователя с действительными учетными данными.

Сведения о среде:

  • Клиент SAP: IDESECC 6,0, включая EhP7

  • Хост-компьютер: Процессор Intel Core i3 с 64-разрядной системой Windows 8.

После видео у меня есть действие Attach Window, которое содержит два действия:

  • A Click Text ClickType как CLICK_SINGLE
  • A Click Text изClickType as CLICK_DOUBLE

Элементы, обозначенные Редактор селектора или UI 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 не был допустимым селектором.

Использование Редактор селектора и UI 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"}
    
  • Идентифицирует элемент с подстановочными знаками в частичный селектор как <wnd ctrlid='7*' />.Это работает в течение 4-5 раундов исполнения.Но тогда '76836616' также изменится на '88068312', когда выполнение не будет выполнено.

Поэтому мой вопрос заключается в том, как мне разместить динамический ctrlid, который меняет время от времени и является обязательным селектором для UiPath?

1 Ответ

0 голосов
/ 27 февраля 2019

Путь пользовательского интерфейса имеет базовую активность привязки , которую можно использовать, когда нет надежного селектора.Это контейнер для привязки и действия, которое пытается найти ваш элемент пользовательского интерфейса, используя другие элементы пользовательского интерфейса в качестве привязок.Вы можете использовать как найти элемент и найти изображение действия в качестве якорей.

Например, вы можете использовать метку для ввода в качестве привязки для вашего ввода, как оно естьменее вероятно изменение метки.

Имейте в виду, что базовая активность якоря не работает на фоне .

Вы можете проверить эффективность /надежность якорной базы деятельности, пытаясь выполнить задачу на этой странице.http://www.rpachallenge.com/ Так как в вашем случае атрибуты name и id входов на странице rpachallenge также меняются при каждой отправке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...