Outlook Mark Email As Read individually, do this at the end of ReFramework Process workflow

Hi, I am using ReFramework where each transaction is a MailMessage.

So in my Init workflow contains the Get Outlook Mail Messages activity which captures a List of MailMesssages which are unread. My Get Transaction Workflow gets each MailMessage as a transaction item. It follows up the MailMessage transaction into the Process workflow where it performs processing steps.

How do you mark the Outlook email as read one by one when it has been processed in the Process workflow?

I want to mark the email as read only when the Process.xaml steps have been performed (As opposed to using MarkAsRead option in Get Outlook Mail Messages activity)

The purpose of this is so that if I have e.g. 30 unread emails, it won’t immediately mark all 30 as read. It marks emails as read one by one as each is being processed.

There should be some flexibility whether this is performed at the start of Process.xaml or at the end of Process.xaml


Get all of the Outlook mail messages as transactions with unchecked MarkAsRead in Init workflow.
Once the the Process.xaml steps was performed, once again use Get Outlook Mail Messages activity with checked MarkAsRead and specify a filter and set Top option to 1.
Filter sample: “@SQL=urn:schemas:httpmail:subject LIKE ‘%“+message.Subject+”%’”

Outlook Email Filter

@wusiyangjia Hi, I get this error when using your filter. How do I resolve this?


Try this “@SQL=” + “”“” + “urn:schemas:httpmail:subject” + “”“” + " like ‘%“+message.Subject+”%’"