Использование регулярного выражения в Blue Prism Application Modeller

Я использую Blue Prism 5 для автоматизации задачи в SAP. Я обнаружил, что визуально один и тот же элемент управления на одном из экранов шпионит с разными идентификаторами. Глядя на эти идентификаторы, я подозреваю, что клиент SAP на самом деле отображает разные поля в этот момент, но для моей задачи это логически эквивалентно.

Примером этого являются эти три идентификатора, которые отслеживаются с одного и того же места в диалоговом окне, отображающем название города, но для адресов разных людей:

/app/con[0]/ses[0]/wnd[0]/usr/subSCREEN_3000_RESIZING_AREA:SAPLBUS_LOCATOR:2036/subSCREEN_1010_RIGHT_AREA:SAPLBUPA_DIALOG_JOEL:1000/ssubSCREEN_1000_WORKAREA_AREA:SAPLBUPA_DIALOG_JOEL:1100/ssubSCREEN_1100_MAIN_AREA:SAPLBUPA_DIALOG_JOEL:1101/tabsGS_SCREEN_1100_TABSTRIP/tabpSCREEN_1100_TAB_01/ssubSCREEN_1100_TABSTRIP_AREA:SAPLBUSS:0028/ssubGENSUB:SAPLBUSS:7016/subA05P01:SAPLBUA0:0400/subADDRESS:SAPLSZA7:0600/subCOUNTRY_SCREEN:SAPLSZA7:0601/ctxtADDR2_DATA-CITY1
/app/con[0]/ses[0]/wnd[0]/usr/subSCREEN_3000_RESIZING_AREA:SAPLBUS_LOCATOR:2036/subSCREEN_1010_RIGHT_AREA:SAPLBUPA_DIALOG_JOEL:1000/ssubSCREEN_1000_WORKAREA_AREA:SAPLBUPA_DIALOG_JOEL:1100/ssubSCREEN_1100_MAIN_AREA:SAPLBUPA_DIALOG_JOEL:1101/tabsGS_SCREEN_1100_TABSTRIP/tabpSCREEN_1100_TAB_01/ssubSCREEN_1100_TABSTRIP_AREA:SAPLBUSS:0028/ssubGENSUB:SAPLBUSS:7016/subA05P01:SAPLBUA0:0400/subADDRESS:SAPLSZA7:0600/subCOUNTRY_SCREEN:SAPLSZA7:0601/txtADDR2_DATA-CITY1
/app/con[0]/ses[0]/wnd[0]/usr/subSCREEN_3000_RESIZING_AREA:SAPLBUS_LOCATOR:2036/subSCREEN_1010_RIGHT_AREA:SAPLBUPA_DIALOG_JOEL:1000/ssubSCREEN_1000_WORKAREA_AREA:SAPLBUPA_DIALOG_JOEL:1100/ssubSCREEN_1100_MAIN_AREA:SAPLBUPA_DIALOG_JOEL:1101/tabsGS_SCREEN_1100_TABSTRIP/tabpSCREEN_1100_TAB_01/ssubSCREEN_1100_TABSTRIP_AREA:SAPLBUSS:0028/ssubGENSUB:SAPLBUSS:7016/subA05P01:SAPLBUA0:0400/subADDRESS:SAPLSZA1:0300/subCOUNTRY_SCREEN:SAPLSZA1:0301/ctxtADDR1_DATA-CITY1

Как видите, в основном они одинаковы и отличаются только ближе к концу.

Я думаю, что это возможность использовать регулярное выражение в Blue Prism Application Modeller. Поэтому я попытался настроить его как таковой. Результат на следующем скриншоте:

Скриншот из Blue Prism Object Studio

Я, очевидно, пробовал несколько разновидностей RegExpr и вариаций выражения, но не смог найти этот элемент управления.

Может кто-нибудь сказать мне, что я здесь делаю не так? Это синтаксис выражения или я полностью неправильно понимаю функцию RegExpr?

Мой обходной путь - это слежение за каждым вариантом отдельно и этап ожидания, который ищет их всех.

Спасибо, что прочитали, и буду благодарен за любой совет по этому поводу.


person Marian Aldenhövel    schedule 13.10.2018    source источник
comment
Для ясности: вы хотите получить ctxtADDR2_DATA-CITY1, txtADDR2_DATA-CITY1 и ctxtADDR1_DATA-CITY1 или просто ctxtADDR1, txtADDR2, ctxtADDR2 *?   -  person lucas_7_94    schedule 13.10.2018
comment
попробуйте c*txtADDR\d_DATA-CITY1   -  person Suncatcher    schedule 13.10.2018
comment
Вы пробовали использовать подстановочный знак? Выражение будет *DATA-CITY*. Почему вы сняли флажок ComponentType? Также вам следует перейти на 6, если вы можете, 5 сейчас немного устарело.   -  person Jerry    schedule 25.10.2018


Ответы (1)


Насколько мне известно, режим регулярного выражения не работает в SAP.

Я считаю, что ваш обходной путь правильный, и я бы предложил это в такой ситуации.

Альтернативой является подключение к SAP API с использованием этапов кодирования, но это сложный вопрос.

person Andrzej Kaczor    schedule 14.10.2018