【初心者向け】UiPathによるRPA実装17 メールひな型ファイルの作成とUiPathでの読み込み

これまで「google検索結果を取得して、その結果を上司に報告する」というテーマのもと、自動化処理の方法を説明してきました。前々回までの記事では、検索結果のExcelファイル化までの自動化処理を、そして前回はトピック的に、「Selector」という概念の概要を説明しました。

さて、残る処理は、作成したファイルを上司に提出するのみですが、どうせなら提出処理も自動化したいですよね。

そこで、今回と次回の2回でメール送信の自動化方法を紹介して、設定したテーマへの対応作業を完了までもっていきたいと思います。

今回は、メール送信の準備段階として、送信するメールのひな型をテキストファイルで準備しておいた上で、そのファイルをUiPathで読み込む方法について紹介します。

<スポンサーリンク>

送信メールの準備作業

メールひな型の作成

まずは、送信するメール文面のひな型を作成しておきましょう。ひな型はメモ帳を使って作成します。

今回の例では、ファイル名を”メールひな型.txt”とし、文面は以下画面の通りで行きたいと思います。

なお、文面の中には”{0}”というよく分からない部分がありますね。実はUiPathで読み込むテキストファイル上に”{数字}”という記載を入れることで、この部分にVariableを入れた文面を作ることができます。やり方については後ほど説明させて頂きますので、まずはこのファイルを作成して下さい。作成後は、これまで使用してきたプロジェクトフォルダの直下に保存して下さい。

ひな型ファイルの読み込み

さて、今作成したメールひな型のテキストファイルをUiPathに読み込んでみましょう。

UiPathでテキストファイルを読み込むためには、「Read Text File」というActivityを使用します。さっそくActivitiesペインでこのActivityを検索して、中央の領域にドラッグ&ドロップしてみましょう。

そしてこのActivityに対して必要な設定を1つずつ行っていきましょう。

まずは、表示されるボックスに、読み込むファイル名を入力します。今回の例では”メールひな型.txt”ですね。

次に、読み込んだファイルの中に書かれた文字列全てを格納するVariableを作成しましょう。

UiPathウインドウの下でVariableの一覧を開き、String型のVariableを追加します。名称はここでは”sentence”としておきます。また、Scopeについては、このVariableをプログラム全体で使えるよう、Sequenceとしておきましょう。

次に読み込んだ文字列のエンコーディング方式の指定をしますが、その前に「エンコーディング」について簡単に説明しておきます。

皆さんは普段、PC上で普通に日本語を読んだり書いたりしていますが、実は日本語のような人間が読み書きできる言語(自然言語と言います)をコンピュータがそのまま理解することはできません。

ではどのように理解しているかというと、各文字を数字(2進数)に置き換えて認識しているのです。(例えば、今からお話しする”Shift-JIS”というエンコーディング方式では、日本語の”あ”は、コンピュータで”1000001010100000″(2進数)という数字にて認識されています。

とすると、文字と数字の対比表のようなものが必要になりますね。この対比表にはいくつか種類があるのですが、どの対比表を使うかをエンコーディング方式と言います。

そして、Windowsのメモ帳で文字を書いたときには”Shift-JIS”というエンコーディング方式が使われます。そのため、UiPathに対して「読み込む文字列のエンコーディング方式は”Shift-JIS”だよ」ということを教えてあげる必要があります。

ここで、Read text file Activityのプロパティーを見てみて下さい。「Encoding」と書かれた行がありますね。

ここにエンコーディング方式を指定してやればよいのです。今回は”Shift-JIS”と入力します。

これで、「Shift-JIS」を使って書かれた、「メールひな型.txt」の内容を読み込み、「sentence」Variableに格納するという設定が完了しました。

読み込んだファイル内容の出力

ここで、正しくメールひな型ファイルが読み込まれたかを確認するための処理を追加したいと思います。ひとまずOutputペインに出力を表示するWrite Line Activityを使います。

これまでと同様、ActivitiesペインからWrite Line Activityを選択し、中央の領域にドラッグ&ドロップして下さい。

そして、表示されるボックスに出力する文字列を指定するのですが、1つ気を付ける点があります。

メールひな型の中に、”{0}”という箇所があったことを覚えていますでしょうか。実はメールひな型の文章中のこの部分を、任意のVariableの内容に置き換えることができるのです

下の画像では文字が切れてしまっていますが、ここでは

String.Format(sentence, searchWord)

とWrite Lineのボックス内に記入しています。かっこ内には2つVariableが入っています。1つ目は元となる文字列で、今回はメールひな型の文面ですね。そして2つ目は、”{0}”箇所を置き換える文字列を指定します。今回の場合はSearchWord、つまり、検索ワードですね。

テスト実行

それでは、ここまでの処理を実際に動かしてみましょう。

Outputペインにメールひな型の文面が表示されていれば、自動化は成功です。”{0}”も検索ワードに置き換わっているか、確認してみて下さい。

終わりに

今回の自動化処理はうまくできましたでしょうか。ここ数回説明してきたExcelの整形処理などと比較すると、割と簡単だったのではないかと思います。

次回はいよいよこのメールひな型を使って、Excelファイルを上司に送信するという処理を自動化したいと思います。