SAP'ı Citrix üzerinden otomatikleştirmek: UiPath seçicileri neden başarısız olur ve ne yardımcı olur
SAP'ı Citrix üzerinden otomatikleştirmek: UiPath seçicileri sanal oturumlarda neden başarısız olur ve pratikte gerçekten hangi yaklaşımlar kararlı kalır.
SAP'ı Citrix üzerinden otomatikleştirmek, UiPath projelerinde neredeyse her zaman aynı noktada başarısız olur: seçiciler. Bir Citrix oturumunda robot gerçek bir SAP penceresi görmez, yalnızca uzak masaüstünün akışa alınmış bir görüntüsünü görür. Bir seçicinin eriştiği kontrol öğeleri ve öznitelikleri, yerel bilgisayarda değil sunucuda bulunur. Tam da bu yüzden SAP, Citrix, VMware veya Remote Desktop üzerinden çalıştığı anda klasik seçici yaklaşımı işe yaramaz hale gelir. Bu yazı bunun nedenini ve pratikte hangi yaklaşımların kararlı kaldığını gösteriyor.
UiPath seçicileri Citrix üzerinden neden çalışmıyor?
UiPath seçicileri Citrix üzerinden çalışmaz çünkü sanal bir oturum yalnızca pikselleri iletir, bir kullanıcı arayüzü iletmez. Yerel robot, uzaktaki SAP arayüzünün bir video görüntüsünü alır, ancak altındaki pencerelere, alanlara ve kimliklere erişimi yoktur. UiPath, kendi belgelerinde sanal masaüstülerinin robotun gerekli seçicileri güvenilir şekilde tanımasını neredeyse imkansız hale getirdiğini belirtir. Yerel bir SAP kurulumunda temiz, benzersiz bir seçici olacak şey, Citrix üzerinden basitçe mevcut değildir.
Bu sorunun tek bir vaka olmadığını UiPath Community Forumu gösteriyor. «Citrix SAP automation», «Not able to generate SAP selectors» ve «Citrix, Remote-Desktop Problems with Selectors» gibi konu başlıkları yıllardır orada tekrar tekrar ortaya çıkıyor. Soru nadiren seçicilerin bozulup bozulmadığıdır, daha çok onların neyle değiştirileceğidir.
Görüntü ve OCR tanıma Citrix üzerinden neden bu kadar sık bozuluyor?
Görüntü ve OCR tanıma, alışılagelmiş acil çıkış yoludur, ancak tek başına bir temel olarak kırılgandır. Birçok ekip, görünen tek yol gibi göründüğü için «Click Image» ve OCR ekran kazımaya başvurur. Forumdaki örüntü tekrar eder: Bugün tanınan bir görüntü ertesi gün bir «selector not found» istisnası tetikler ve OCR okuyucu aynı metni bazen doğru, bazen yanlış okur. Bunun nedeni robot değil, oturumun kendisidir.
- Çözünürlük ve ölçekleme: DPI ölçeklemesi değişirse veya bir pencere birden fazla monitör arasında kayarsa, tıklama konumu kayar. UiPath bunu tam olarak Citrix için bilinen bir sınırlama olarak belirtir.
- Render kalitesi: Citrix oturumunun renk derinliği, sıkıştırması ve yazı tipi yumuşatması, tanımanın dayandığı görüntüyü değiştirir.
- Oturum davranışı: Arka planda otomasyon, Citrix oturumunu yaklaşık 30 dakikalık boşta kalma süresinden sonra kesebilir ve Citrix için UiPath uzantısı her Receiver veya Workspace güncellemesinden sonra yeniden yüklenmelidir.
- Bakım yükü: Gartner analistleri, bir RPA ekibinin yalnızca mevcut robotların bakımına ayırdığı zaman payını çalışma süresinin yüzde 30 ila 40'ı olarak belirtiyor. Görüntü tabanlı Citrix botları bu aralığın üst ucunda yer alıyor.
Citrix üzerinden güvenilir şekilde ne çalışır? Computer Vision
Tek tek görüntü karşılaştırmalarından daha güvenilir olan, özellikle sanal ortamlar için geliştirilmiş UiPath Computer Vision'dır. Bir seçici aramak yerine Computer Vision, oturum görüntüsünü bir sinir ağına gönderir. Bu ağ, ekran metnini kendi OCR'ı üzerinden tanır, alanlar, düğmeler ve tablolar gibi öğeleri sınıflandırır ve bunları çoklu bir çapa sistemiyle benzersiz şekilde konumlandırır. Yani bir öğe, tek bir kaydedilmiş görüntü üzerinden değil, komşu etiketler ve alanlarla olan ilişkisi üzerinden bulunur.
Bu çapa ilkesi, «Click Image»'dan farkıdır. Düzen hafifçe kayarsa veya çözünürlük değişirse, katı bir görüntü karşılaştırmasının bozulacağı yerde çapa referansı korur. Bu nedenle Citrix üzerinden SAP için Computer Vision, genellikle salt OCR ekran kazımaya kıyasla daha sağlam standarttır.
En kararlı kaldıraç: Citrix görüntüsü yerine doğrudan SAP'a hitap etmek
Otomasyon, Citrix görüntüsünü tamamen atlayıp doğrudan SAP'a hitap ettiğinde en kararlı hale gelir. SAP bunun için resmi bir arayüz sunar: SAP GUI Scripting. Etkinken robot, SAP arayüzünü pikseller yerine kendi script nesneleri üzerinden kontrol eder ve bu, çözünürlükten ve render kalitesinden bağımsızdır. Sunucu tarafında RZ11 işlemi üzerinden sapgui/user_scripting parametresi TRUE değerine ayarlanarak etkinleştirilir; ayrıca scripting'in SAP GUI istemcisinde de izinli olması gerekir.
Belirleyici mimari adım genellikle başka bir şeydir: robotu SAP'ın gerçekten çalıştığı yere taşımak. Yerel bilgisayardan Citrix oturumu boyunca otomasyon yapmak yerine, UiPath robotu SAP arayüzünün yerel olarak kurulu olduğu sunucu veya Citrix oturumunun içinde çalışır. Böylece Citrix sınırı ortadan kalkar, gerçek seçiciler ve SAP GUI Scripting yeniden çalışır ve kırılgan görüntü tanıma gereksiz hale gelir. Bunun mümkün olup olmadığı BT ortamına bağlıdır. Mümkün olduğu yerde bu en güvenilir yoldur.
NordFlux, Citrix üzerinden SAP otomasyonuna nasıl yaklaşıyor?
NordFlux, yöntemi araca göre değil, ortama göre belirler. İlk robottan önce üç şeyi netleştiririz: SAP yalnızca Citrix üzerinden yayınlanan bir uygulama olarak mı çalışıyor, yoksa robotun birlikte çalışabileceği bir sunucu var mı? SAP GUI Scripting etkinleştirilebilir mi? Ve değilse, hangi öğeler Computer Vision ile güvenilir şekilde sabitlenebilir? Ancak bundan sonra sürecin SAP GUI Scripting, Computer Vision veya bir kombinasyon üzerinden çalışıp çalışmayacağı belli olur.
Pratikte bu genellikle şu anlama gelir: BT'nin izin verdiği yerde SAP GUI Scripting, mutlaka Citrix görüntüsü üzerinden geçmesi gereken kısımlar için Computer Vision ve her hafta yeniden bozulan salt bir «Click Image» botunun bilinçli olarak kullanılmaması. Bu ön değerlendirme bir gün sürer ve görüntü tabanlı Citrix otomasyonunun aksi takdirde sürekli yarattığı bakım döngüsünden tasarruf sağlar.
UiPath seçicileri Citrix üzerinden başarısız olur çünkü oturum yalnızca bir görüntü sağlar. SAP otomasyonu ancak SAP'a doğrudan hitap ettiğinizde (SAP GUI Scripting) veya öğeleri tek tek ekran görüntülerine güvenmek yerine Computer Vision ile sabitlediğinizde güvenilir hale gelir.
Klasik RPA ile SAP'ın kendi otomasyonu arasındaki temel karar hakkında daha fazlasını makalemizde okuyabilirsiniz: RPA, SAP veya SAP Process Automation. Bir süreci yalnızca tıklayarak değil, denetimli bir iş akışı olarak devretmek isterseniz, şuna bir göz atın: Yapay Zeka Ajanları.
Sıkça sorulan sorular
UiPath seçicileri neden bir Citrix ortamında bozulur?
Çünkü bir Citrix oturumu yalnızca uzak masaüstünün bir görüntüsünü iletir. Kontrol öğeleri ve öznitelikleri sunucuda bulunur ve yerel robot için erişilemez durumdadır. Bu nedenle seçici hedef öğeleri bulamaz ve otomasyon başarısız olur.
Citrix üzerinden SAP otomasyonu için OCR yeterli mi?
Basit çıktılar için OCR yeterli olabilir, ancak tek başına bir temel olarak kırılgandır. Oturumun çözünürlüğü, DPI ölçeklemesi ve renk derinliği görüntüyü değiştirir, bu nedenle aynı tanıma bazen çalışır bazen çalışmaz. Çapa sistemine sahip Computer Vision veya doğrudan SAP GUI Scripting daha kararlıdır.
SAP GUI Scripting nedir ve neden yardımcı olur?
SAP GUI Scripting, SAP'ın resmi otomasyon arayüzüdür. Robot, SAP arayüzünü pikseller yerine script nesneleri üzerinden kontrol eder ve bu nedenle Citrix oturumunun görüntü kalitesinden bağımsızdır. Sunucu tarafında RZ11 parametresi sapgui/user_scripting üzerinden ve ayrıca SAP GUI istemcisinde etkinleştirilir.
SAP, Citrix üzerinden görüntü tanıma olmadan otomatikleştirilebilir mi?
Evet, robot SAP'ın yerel olarak kurulu olduğu sunucu veya Citrix oturumunun içinde çalışıyorsa. O zaman Citrix sınırı ortadan kalkar, gerçek seçiciler ve SAP GUI Scripting yeniden çalışır ve görüntü tanıma gereksiz hale gelir.
NordFlux UG (haftungsbeschränkt)
NordFlux, kuruluşlar için dijital çalışanlar kurar: tekrar eden işleri üstlenen otomasyonlar ve KI ajanları. Kontrol sizde kalır.
Otomasyon veya KI hakkında somut sorularınız mı var?
Ücretsiz bir ön analizde durumunuzu doğrudan görüşürüz. Bağlayıcı değildir.