11
7

More than 1 year has passed since last update.

【UiPath】設定ファイルの書き方(基本編)

Last updated at Posted at 2021-07-20

はじめに

この投稿は、RPAツール「UiPath」での 設定ファイルの書き方 について記事です。

UiPathのコミュニティ「UiPath Friends」が企画する「UiPathブログ発信チャレンジ2021サマー」の 20日目の投稿でもあります。

企画の内容は こちら 。カレンダーのURLは こちら です。

設定ファイルと「固定」の話

「設定ファイルには何を書くべきなの?」という議論になると、良く「固定の値だ」とか「後で変更する可能性のある値だ」という意見が出ますが、個人的には「どちらも正解」だと思います。

設定ファイルには 「仕様的に設定ファイルに出しておいたほうが良い値」を書くもので、その例として「たとえば、固定の値」や「たとえば、後で変更する可能性のある値」が登場します。

なので「固定」という言葉にとらわれないほうが良いと思います。そもそも「固定の定義って何?」「固定のレベルってどれくらいから?」「月1回変更って変動?年1回なら固定?」というように、基準は、人によって違うものです。

tenbin.png

何を書けば良いのか分からない

最初は「設定ファイルに何を書けば良いか分からない」と思います。これは実装経験を積むにつれて自動的に身につくものなので、最初は分からなくても大丈夫です。

以下で「どういうものがあるか」の種類をあげてみます。

<設定ファイルに書く例>
1)後で変える可能性があるもの(設定ファイルに出しておけば後で変えやすい)
 - 数値   (例:エラー時にリトライする回数)
 - 文字列  (例:結果メールの送信先アドレス)
 - メッセージ(例:結果メールにセットする件名)
 - フラグ  (例:結果メールを送信するか)

2)そんなに変わらないけどプログラム(xamlファイル)中に書きたくないもの
 - URL   (例:ログインURL) ※ 「テスト環境」と「本番環境」という意味では変わる可能性が高いもの

3)設定ファイルで並べて管理したいもの
 - 数値   (例:要素が見つかるまでの待機時間)
 - メッセージ(例:エラー時の固定メッセージ)

4)ルールをもたせるもの
 - ファイル名(例:yyyyMMdd.txt 処理中に「yyyymmdd」をNow.ToString("yyyyMMdd")でReplaceする)

5)ロジックのスイッチや、書くことで処理内容を伝えるもの
 - 処理方式 (暗号ハッシュ作成方式:SHA-256)

5はあまり遭遇しませんが「その値次第で処理内容も変えてしまうような項目」を指します。何をしているかを伝える意味合いもあり、ストラテジーパターン的な要素も持ちます。

設定ファイルのシートは分けるべきか

ReFrameworkの設定ファイルでは、以下のように「Settings、Constants、Assets」と分かれています。image.png

真似をして「シートを分ける」のも良いと思います。
1つのシートにまとめて書いて進めて、項目数が多くなったら、シート分けても良いと思います。

どう書けばわかりやすいか

項目の名前は「わかりやすい」ほうが良いので、無理に英語にせず「日本語」が良いと思います。また、名前に「接頭辞」を付けると分類がしやすいです。(例:ファイルパス_注文書)

シートでは「種類や処理ブロック」ごとに項目を纏めると分かりやすくなります。場合によっては「セルの背景色」を分けても良いと思います。

Framework的な項目は「上部」に書いて、業務個別の項目は「下部」に書くなどの順番も意識すると更に読みやすいです。

エクセルという特性を利用すれば、意図的に「見やすい設定ファイル」が作れます。

また、ユーザーは「変えても大丈夫なもの」と「変えたら動かなくなるもの」の区別はつかないので、「この列は変更しないでください。」「このセルはYESまたはNOの値を設定して下さい」と注記を「大きく赤字で書く」のも良いかもしれません。

image.png

終わりに

いかがでしたでしょうか?
設定ファイルの書き方の、なにかの参考になれば幸いです。
次回はもうすこしTips的なことを書きたいと思います。

この記事が参考になったら、 LGTMをお願いします。閲覧ありがとうございました。

11
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
7