設定ガイド: メールと添付ファイルの保存
Agent がメールを読み取った後、次のことができます。
- Save Mail で各メールを
.emlファイルとして保存する - Save Mail Attachments で添付ファイルをフォルダーに保存する
どちらのアクティビティも、Get Outlook Mail Messages、Get IMAP Mail Messages、Get POP3 Mail Messages、Get Exchange Mail Messages で取得したメールに使用できます。
社内の Exchange Server からメールを読み取る場合は、まず Exchange (EWS) の設定 で Get Exchange Mail Messages を設定してから、このガイドを続けてください。
1. 必要な情報
| 情報 | 入手先 | 例 |
|---|---|---|
| メール | 取得アクティビティの Messages 出力 | mailList |
| File Path (Save Mail) | .eml で終わるフル パス。フォルダーはあらかじめ存在している必要があります | "C:\Mails\invoice.eml" |
| Folder Path (Save Mail Attachments) | 添付ファイルの保存先フォルダー。存在しない場合は作成されます | "C:\Mails\Attachments" |
| Filter (任意) | 保存するファイル名のパターン (ステップ 2.4 参照) | "(?i)\.pdf$" |
2. ワークフローを作成する
ステップ 2.1: メールを読み取る
- 任意の取得アクティビティ (例: Get Outlook Mail Messages) を追加します。
- その Messages 出力のボックスをクリックし、Ctrl+K を押して
mailListと入力します。変数 パネルで、型がList<MailMessage>で、スコープが For Each ループも含む Sequence であることを確認します。
ステップ 2.2: メールを 1 通ずつ処理する
- 取得アクティビティの下に For Each アクティビティをドラッグします。
- Foreach に
item、in にmailListを設定します。 - プロパティ パネルで TypeArgument を
System.Net.Mail.MailMessageに設定します。一覧にない場合は 型の参照... をクリックし、MailMessageを検索します。
ステップ 2.3: Save Mail
このアクティビティのすべての設定: Save Mail
- Save Mail を For Each ループの Body にドラッグします。
- 次のように入力します。
-
Mail Message:
item -
File Path (必須): フル パスとファイル名。例:
"C:\ArchivedEmails\mail_" + DateTime.Now.ToString("yyyyMMdd_HHmmssfff") + ".eml"
-
- フォルダー (例では
C:\ArchivedEmails) はあらかじめ存在している必要があります。存在しない場合、アクティビティは失敗します。必要に応じて、ループの前にフォルダーを作成するアクティビティを追加するか、手動で作成してください。 - 同じ名前のファイルは上書きされます。
- ファイル名にメールの件名を使う場合、
\ / : * ? " < > |などの文字が含まれるとアクティビティが失敗します。上の例では件名の代わりに日時を使用しています。
ステップ 2.4: Save Mail Attachments
このアクティビティのすべての設定: Save Mail Attachments
- Save Mail Attachments を For Each ループの Body にドラッグします。
- 次のように入力します。
-
Message (必須):
item -
Folder Path: 例
"C:\ArchivedEmails\Attachments"。フォルダーが存在しない場合は作成されます。空の場合、ファイルはプロジェクト フォルダーに保存されます。同じ名前のファイルは上書きされます。 -
Filter (任意): 特定のファイルだけを保存します。空の場合はすべての添付ファイルを保存します。
- PDF ファイルのみ:
"(?i)\.pdf$" - PDF と Excel ファイル:
"(?i)\.(pdf|xlsx|xls)$"
(
(?i)を付けると大文字と小文字を区別しないため、INVOICE.PDFも一致します。) - PDF ファイルのみ:
-
Attachments (出力、任意): 保存されたファイルのパスを受け取る
IEnumerable<String>型の変数。
-
完成したワークフロー

ワークフローの例: メールを mailList に取得し、フォルダーを作成してから、各 item について、メールを .eml ファイルとして保存し、添付ファイルを保存します。