概要
設定ファイル(.xlsx)を作り、実行時最初に読み込ませることで、
項目値が固定値として実行ファイル内に固定されることなく、実行ユーザーごとに任意に設定できるようにする方法です。
例えば
・処理対象フォルダ/ファイルが実行ユーーごとに変わるとき
・ログインユーザー名、パスワードが変わるとき
・保存先フォルダを実行ユーザーにて指定したいとき
などを想定しています。
想定シナリオ
とあるウェブサービスにログインする
設定ファイルを作る
パラメータとして設定したい項目をA列に記載
B列には実行ユーザーにて指定したいパラメータ値を任意に入力
ファイル名は設定ファイルらしき名前をつけ任意の場所に保存
UiPathで変数を作成
設定ファイルにて設定した各種パラメータ項目を格納する変数を作成する
UiPathにて設定ファイル読み込み機構を作成
- ファイルを参照 を設置
ファイル選択ダイアログが表示され、実行ユーザーが任意に設定ファイルを選択できるようになります。
- Excelアプリケーションスコープ セルを読み込み を設置
Excelアプリケーションスコープには先ほど「ファイルを参照」にてファイルパスを入れる予定の変数「configfile」を指定
セルを読み込みには
設定ファイル内のシート名、読み込み対象セル(B列)を指定し、さきほど作成した各値を入れるための変数を出力結果に指定する
これを設定シートにて指定した項目分作成
変数に入れた各値を実行時に利用する
各アクティビティにて設定ファイルから取得した値を格納した変数を使います。
ブラウザ:URL
ログインID:ID
パスワード:PASS
最後に
複数人で同じシナリオファイルを利用していると、windowsのログインユーザーごとにユーザーフォルダを区別されているとフォルダ/ファイルのパス系を求めるアクティビティでは固定値を使えないことがあります。
設定ファイルなんて用意しなくてもシナリオ内でうまく解決できる方法はいくらでもあると思いますが、手っ取り早く解決するにはこの手法がシンプルで後にも分かりやすいかと思います。
※例としてログインIDとPASSを設定ファイル内のパラメータ値として利用していますが、セキュリティ的に設定ファイル内にIDとパスのベタ書きはお勧めしません。
設定ファイルにパスワードつけて保存し、シナリオ実行時にパスワード入力させる処理をいれる
もしくはログイン情報は別途都度入力を求めるなどがいいかと思います。