配列のデータをclipboardにsetする

type into で文字入力をあるシステムで行っています。
特殊な項目(wordが開き入力)でtype into で行うと途中から2バイト文字になったりします。
再現性は不明です。
type into のoption:delaybetweenkeysで入力速度を調整しましたが不安定です。

入力値は、配列の値で、clipboardに保管し、貼り付けを考えています。
配列のデータをclipboardにsetする方法教えてください。

You can use Set to Clipbaord activity

Regards,
Karthik Byggari

1 Like

1つ補足を。

Set To Clipboardの入力値はString型です。
String型の配列(String[] 型)を結合したければ、

String.Join(Environment.NewLine, String型配列)

のように記載すれば結合できます。

上記は区切り文字に改行をつけています。
単純に結合するだけなら Environment.NewLine をただの空白値(“”)にしてもいいですし、カンマ( “,”)にすればCSVのような形式で出力できます。

1 Like

ありがとうございます。
本来はtype intoで処理すべきところclipboardを利用して行いました。
理由としては、uipath studioで作成したworkflowをpublishしてローカル環境で実行した場合は、問題ありませんでした。
しかし、ロボット専用マシンでオーケストレータに接続してパッケージをダウンロードして実行した場合、処理スピードが速く感じ他にもtypeintoの処理が文字落ち等が発生しました。
ローカル環境で実行した場合した場合とオーケストレータから受け取りロボット専用マシンで動作する場合動作の違いがあるのでしょうか。
今、type intoに関しては、プロパティのwaitforreadyがinteractiveであるものをcompleteにしたりdelaybetweenkeysを調整したりしてロボット専用機で確実に動作させるようにしています。
質問と回答からはずれましたがご教示いただければと思います。
いつも申し訳ございません。

UiPath Studioはどうしても、デバッグ用の機能(変数一覧に値を表示したり、ストップがかけられるようにしている等)があるので、スペックが同じであればロボット単体での実行のほうが早くなると思います。
それをテストするのであれば、UiPath Studioでローカル側にPublishして、ロボットトレイのほうから実行してみると良いかもしれません(毎回やると手間がかかりますが、一通りワークフローが出来たあとの検証としてなら大きな手間にはならないと思います)

Type Intoの処理落ちは、DelayBetweenKeysプロパティで打鍵速度を(擬似的に)調節できます。デフォルト(未設定)だと10msなので、それを目安に少し値を大きめに取る(速度を下げる)と安定するかもしれません。

1 Like

ありがとうございます。
開発機とロボット専用機は同一スペックです。
オーケストレータにワークフローをpublishする前に、ご教示された開発環境でpublishしてローカルのロボットトレイで実行して問題なければ、オーケストレータに移行するようにしています。

同一スペックながら、ロボット専用機での処理と、開発機でpublishしてローカルで動作させると処理速度が異なるのはロボット専用機は動作に必要な機能のみに限定されているからでしょうか。
どのように検証してオーケストレータにもっていくか悩んでいます。
すごく難しく感じ対応も手探りが続いています。