SAP上で日本語入力ができない。文字化けする。

表題の通りですが、SAP上のテキストボックス(開発画面)に日本語入力を試みた所、文字化けを起こしてしまいました。

UiPathでSAPを操作する際、「スクリプトからguiに接続しようとしています」というメッセージが出ますが、"中止"を選択し画像認識で入力させています。

半角英字、半角数字は文字化けを起こしませんので、2バイト文字入力時に何か起きているようです。
Type intoアクティビティ使用時にこの現象は発生します。
文字コードが原因かと思ったのですが、Type intoには文字コードを設定するプロパティもなく…
set to clipboard + ctl+vで入力する場合は文字化けは起こらないようです。

原因の検討がつきますでしょうか?
よろしくお願いします。

1 Like

Type Intoは標準設定だと「キーボード入力」を再現するのですが、日本語の文字は通常の方法では再現できないため、何かしら特殊な値を設定しているはずです。それがSAP上では正しく動作しないのだと思います。
(「スクリプトからGUIに接続しようとしています」と出る時点で、擬似的な入力を検知していることははっきりわかります)

GUIに対してセレクターが引けるならSet Textを試してみる手もありますが、それができないのであれば、Set to Clipboardを使うしかないように思えます。

2 Likes

Set textを利用した所、残念ながらTextを挿入することができませんでした。
画像認識ですと、テキストボックスを指定するという事は出来ず、どうしても画像認識でテキストボックスの位置をクリックする→テキストを挿入するという過程を踏まなければなりません。
set textは把握しているわけではありませんが、UI要素に対して挿入を行うアクティビティだと思っているので、UI要素がセレクタで指定できていない事が原因なのかなと考えています。(現状のセレクタはGUI接続を中止している影響か、個別要素を識別できていないので、SAPの画面全体を指定しています)
GUIを直接セレクタで指定したいところですが、現段階で影響がわからずに足踏みしてしまっています…

Honoka様がおっしゃる通り、GUI要素が指定できないのならばSet to clipboardとSend Hotkeyを組み合わせるしか道はなさそうですね。