Автоматизация SAP через Citrix: почему селекторы UiPath не срабатывают и что помогает
Автоматизация SAP через Citrix: почему селекторы UiPath не срабатывают в виртуальных сессиях и какие подходы на практике остаются действительно стабильными.
Screen scraping быстро сочли шагом назад. Это оправдано только тогда, когда у системы нет интерфейса. Когда это применимо, а когда нет.

У screen scraping плохая репутация, и чаще всего заслуженно. Когда программный робот кликает по экранным формам вместо того, чтобы получать данные через интерфейс, это редко бывает чистым решением. Тем не менее в среднем бизнесе есть процессы, где именно это единственный путь. Решающий вопрос не в том, выглядит ли метод устаревшим, а в том, есть ли у целевой системы пригодный интерфейс.
Screen scraping обозначает автоматизированное считывание и управление приложением через его экранный интерфейс: робот перемещает указатель мыши, заполняет поля и считывает значения с экрана, точно так же, как это делал бы человек. Интеграция через API обходит интерфейс и обращается напрямую к интерфейсу данных системы.
Microsoft формулирует это различие в документации Power Automate предельно кратко: через API приложению говорят, что делать, через интерфейс ему это показывают (Виды автоматизации процессов, Microsoft Learn). Лишь один из этих способов является соглашением. Интерфейс — это обещание производителя, что поля и форматы останутся неизменными. Экранная форма таким обещанием не является.
Рекомендация однозначна, и исходит она от самих производителей RPA. Microsoft советует выбирать автоматизацию на основе API для каждого приложения с доступным API-коннектором, поскольку интерфейсы должны оставаться стабильными даже при изменении приложения.
По данным производителя, Power Automate охватывает более 380 приложений с готовыми API-коннекторами, к которым добавляются самостоятельно созданные коннекторы для любой системы с доступным API (Microsoft Learn). Таким образом, автоматизация через интерфейс — это не равноценная альтернатива интеграции через API, а задокументированный аварийный выход. Тот, кто сразу хватается за робота, покупает затраты на обслуживание, которые никто не заказывал.
Расплатой за это становятся затраты на обслуживание, и они хорошо задокументированы. Автоматизации через интерфейс зависят от селекторов, то есть от технического описания того, где находится элемент управления и как он называется. Если это описание меняется, робот больше не находит элемент, и выполнение прерывается.
Для неконтролируемых десктоп-потоков Microsoft перечисляет шесть факторов, которые могут сделать селектор непригодным: разрешение экрана и масштабирование DPI, обновления приложения, версия операционной системы, размер окна, состояние элемента и права вошедшего пользователя (Устранение неполадок неконтролируемого выполнения, Microsoft Learn). Ни один из этих пунктов не связан с бизнес-процессом. Процесс остается таким же правильным, автоматизация спотыкается об упаковку.
UiPath описывает ту же проблему с другой стороны: классические селекторы опираются на жесткие атрибуты и иерархии, поэтому уже измененная подпись, динамический ID элемента или новая тема останавливают автоматизацию. Сам производитель оценивает связанные с этим затраты на обслуживание как высокие (О семантических селекторах, UiPath Docs). При интеграции через API ни одной из этих проблем не существует. Интерфейсу нет дела до разрешения экрана.
Screen scraping — правильное средство, когда у системы нет пригодного интерфейса и управлять ею можно только через экран. Microsoft четко формулирует это условие в лицензионной документации: RPA нужен для приложений, для которых не существует ни готового коннектора, ни API, на основе которого можно было бы построить собственный.
На практике это относится к пяти ситуациям:
Последний пункт регулярно упускают из виду: этот подход — легитимная переходная технология. Проблемой он становится только тогда, когда мост превращается в постоянное состояние и уже никто не помнит, зачем он там стоит. Сам вопрос выбора инструмента мы разобрали в нашем практическом сравнении n8n и Power Automate.
Тогда в расчет нужно включить и лицензионные расходы, которые отпадают при варианте с API. В Power Automate каждой машине, неконтролируемо выполняющей десктоп-потоки, требуется лицензия Process, а для Microsoft 365 дополнительно лицензия Unattended (Microsoft Learn). С точки зрения лицензирования робот — это еще один пользователь. Компоненты лицензий UiPath мы разобрали в статье лицензии UiPath для среднего бизнеса.
Перед любым решением о внедрении RPA стоит проверка, которая обычно занимает полчаса и регулярно делает робота ненужным. Часто интерфейс есть, просто он называется иначе. Прояснить это помогают четыре вопроса:
Если решение все же принимается в пользу робота, обоснование должно быть зафиксировано письменно. Для одной муниципальной администрации мы представили именно такую проверку в июле 2026 года и не рекомендовали делать RPA основой стратегии автоматизации: да как точечное дополнение, нет как основа. Инструмент был не плох, он просто не подходил для задачи. Эта проверка и есть подлинное содержание консалтинга по интерфейсам и интеграции.
Web scraping считывает содержимое веб-страниц, как правило через исходный HTML-код, и для этого не нужен видимый интерфейс. Screen scraping управляет приложением так, как его видит человек, и охватывает настольные программы, терминальные и Citrix-сессии.
Технически да, с точки зрения договора зависит от условий. Некоторые производители ПО исключают автоматизированное управление в своих условиях использования или привязывают его к дополнительным лицензиям. Перед созданием робота следует проверить лицензионные условия целевой системы, в сомнительных случаях — с юридической консультацией.
Нет, но риск нельзя устранить программным путем. Обновление, которое меняет только бизнес-логику, оставляет робота нетронутым. Как только смещаются подписи, структура окна или ID элементов, селекторы хватаются за пустоту. Тот, кто использует RPA, поэтому закладывает обслуживание в план заранее, а не рассматривает его как внештатную ситуацию.
Они смягчают ее, но не устраняют. Такие производители, как UiPath, работают над селекторами, которые распознают элемент по его значению, а не по положению. Это снижает затраты на обслуживание, но не меняет того факта, что автоматизация зависит от интерфейса, стабильность которого никто не гарантирует по договору.
Основатель NordFlux. Семь лет опыта, от веба и SEO до автоматизации в масштабах концерна, сегодня прагматично для среднего бизнеса и с немецким суверенитетом данных.
Сертификаты
Автоматизация SAP через Citrix: почему селекторы UiPath не срабатывают в виртуальных сессиях и какие подходы на практике остаются действительно стабильными.
SAP сама называет RPA-ботов в рамках Digital Access. Что это значит для RPA в SAP и Business One, и когда собственный стек SAP оказывается более коротким путём.
Studio, Robots, Orchestrator, Platform Units: что среднему бизнесу действительно нужно от UiPath, сколько это стоит и когда выгоднее другой инструмент.
Screen scraping кажется единственным вариантом при отсутствии интерфейса, но редко оказывается самым дешёвым. Мы целенаправленно проверяем вашу системную среду на наличие доступных API и там, где интерфейса действительно нет, создаём надёжное RPA-решение, которое выдержит и следующее обновление.