Accessセレクターでidxが可変となる場合

UIPATHでaceessのセレクターで悩んでします。
起動ごとにidxの値が異なる場合、どのように対応すればよいでしょうか。

WEB系で同様の事象があった場合,
idx=’*'としましたが
accessではセレクターの編集からはidxの項目に対してチェックを外す項目がありませんでした。

ご教示お願いします。

セレクターの編集
ではなく、パラメーターにあるテキストボックスの中の文字列を直接編集出来ませんか?

ありがとうございます。

グレーアウトとなり編集不可です。

こんにちは
ACCESSにアタッチしている状態で、
最上位のSelecterタグがグレーアウトしているという事でしょうか。
アタッチの外から該当のActivitiesのElementを指定すればグレーアウトせず
編集が可能となるのでお試しください。

トピックのインデックスが変わるパターンですが、
UIExplorerを使用してElementを指定してみてください。
指定した際にセレクターエディターに黒文字となっているSelecterタグが指定にほぼ必須の項目となります。

次に下位に指定されているSelecterタグを選択し、
UIExplorerの右側にある「選択していない項目」を開いてください。
開いた未指定のタグにチェックを入れるとidxが消えたり、そのタグに属したidxに変更されます。
ここでidxを消したり不要なタグを外したり、実際に指定できるか確認しながら調整を行えば汎用的なSelecterが作成できます。

後は作成したSelecterを該当Activitiesのセレクターエディターに張り付けて動作確認を行ってください。

1 Like

時間経過し確認すること申し訳ございません。

ご教示いただいた「ActivitiesのElementを指定すればグレーアウト」というのは
具体的にどのような操作になるのでしょうか。

色々試していますがうまくいかないため改めてお聞きする次第です。

matrix99999様の提示いただいた図からアプリケーションを開く「OpenApplication」、もしくはウィンドウにアタッチ「WindowScope」を使用し、
そのスコープ内で配置したActivitiesのSelectorEditorかと推測します。

上記2点と思われるスコープの範囲外でmatrix99999様が指定されるActivitiesを配置し、
そのActivitiesのElement(Selector)を再度指定すればグレーアウトが消えるはずです。

スコープ内部に配置したActivitiesのSelectorにはスコープで指定したSelectorが自動で付与され、
その箇所は変更ができない仕様となっています。

1 Like

画像を見る限り、idxの部分の3を、直接、*に置き換えできる様に見えますが。
idxの数値をワイルドカードにすると動かなくなる場合があるのでお勧め出来ないと思いつつ、一旦、それでやってみて、もし、動作しない場合は前述のUIExplorerの使用をお勧めします。

2 Likes

@matrix99999 さん
こんにちは。

>idxの値が異なる場合、idx=’*'としました
ClickアクティビティのSelector Editorの左下にある「Open in Ui Explorer」をクリックし、
< wnd cls=‘NetUIHWND’ idx=‘3’ / > の :heavy_check_mark: を外せば大丈夫かと思います。

添付頂いた画像を拝見すると
< ctrl name=‘すべての Access オブジェクト’ role=‘menu button’ / >
の「すべての Access オブジェクト」に * を使用していますが、
こちらは可変させる箇所になりますか?

>グレーアウトとなり編集不可

おそらく、このClickアクティビティがAttach WindowのDo内にあり、
Attach WindowのSelectorに< wnd app=‘msaccess.exe’ cls=‘OMain’ title=‘Access*’ / >
と入っているかと思います。

その為、Clickアクティビティではこの部分が変更できませんが、
Attach WindowのSelectorを変更して頂くと、ClickアクティビティのSelectorも
変わるものと思われます。

ご確認よろしくお願いいたします。

1 Like

ありがとうございます。
添付頂いた画像を拝見すると
< ctrl name=‘すべての Access オブジェクト’ role=‘menu button’ / >
の「すべての Access オブジェクト」に * を使用していますが、
こちらは可変させる箇所になりますか?
>この箇所でなく、idxの値が可変になりますのでそれを臨機に対応したく思っています。

可変させない(しない)ところまで * にしなくても問題ないと思いますよ :blush:

1 Like