a-watanabe
(Ai Watanabe)
1
皆様
お世話になります。
表題の件ですが、Outlook送信メールを削除したいのですが削除の条件を以下の条件で設定したいと思います。
1.本日送付したメールのみ削除したい。(日によって1通の日もあれば50通の日もあり件数はバラバラです)
この場合は「Exchange メール メッセージを削除」のプロパティにどのような条件を設定すればよいでしょうか。
メールメッセージの取得はできております。変数:Msgdateと名前で格納しております。
また、メールメッセージの取得時に本日の日付のみ取得する方法はありますか。
メッセージの取得で本日の日付のみ取得できれば削除は何も考えずに繰り返し処理で削除するだけになるとも考えました。
以上、お力添えいただけたら幸甚です。
よろしくお願い致します。
cheez_RPA
(いわさき りょうすけ (UiPath Japan MVP 2019 - 2021))
2
Outlook上のメールを削除したい場合は、直接削除するのではなく「削除済みアイテム」へ移動させる方法しか無いようです。また「Exchange メール メッセージを削除」アクティビティは、Exchange サーバーを利用している環境でなければ利用できません。
取得したメールのコレクションから、ロボット実行日に送信したものをフィルタするには、次のようにします。ここで、取得したメールのコレクションを messages
とします。
messages.Where(Function(msg) DateTime.Parse(msg.Headers("Date")).Date.Equals(Today))
上記を、「繰り返し(コレクションの各要素)」のコレクションを指定する位置に入力して、Body 内で移動処理を実装すれば期待通りの動作になるかと思います。
a-watanabe
(Ai Watanabe)
3
@cheez_RPA様
ご回答いただきありがとうございます。
ですが、
このようにエラーになってしまいます。
エラー内容は、 です。
私も取得したメールを messages
で格納しました。
エラーの解決方法はおわかりになるでしょうか。
ご回答いただけたら幸いです。
以上、どうぞよろしくお願いいたします。
cheez_RPA
(いわさき りょうすけ (UiPath Japan MVP 2019 - 2021))
4
messages.Where(Function(msg) DateTime.Parse(msg.Headers("Date")).Date.Equals(Today))
こちらをそのまま「繰り返し(コレクションの各要素)」アクティビティのコレクションに指定してください。
「Outlook メール メッセージを移動」アクティビティでは、上記アクティビティの「要素」に記載されている変数を、「メールメッセージ」プロパティに設定してください。
a-watanabe
(Ai Watanabe)
5
@cheez_RPA様
お世話になります。
ご返信ありがとうございます。
単純なミスをしていて大変お恥ずかしい限りです。
上記のように入力したところ型が違うとのことです。
こちら解決方法はございますか。
以上、どうぞよろしくお願いいたします。
cheez_RPA
(いわさき りょうすけ (UiPath Japan MVP 2019 - 2021))
6
「繰り返し(コレクションの各要素)」アクティビティの「TypeArgument」プロパティ(型を指定できる項目)で、型に System.Net.Mail.MailMessage
を指定してください。
起きているエラーは、item
が現状 Object
型として扱われていて、「Outlook メール メッセージを移動」アクティビティが「型が違うよ、変換できないよ」といっている状態です。ですので、「これはメールの型だよ」といってあげるために、上記の手順を実施するというわけです。
a-watanabe
(Ai Watanabe)
7
@cheez_RPA様
お世話になります。
丁寧なご説明ありがとうございます。
無事に行いたい動きが出来ました。
とても感謝しております!!
今後ともよろしくお願いします。
1 Like
system
(system)
Closed
8
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.