4

The following error appears in the Workflow History when using a Retention policy to start a workflow based on the Approval workflow:

The e-mail message cannot be sent. Make sure the e-mail has a valid recipient.

The User ID for the error message is System Account.

The workflow can be started manually and it completes with no errors, including sending emails. The error only happens when the workflow is started by the Retention policy.

4 Answers 4

2

I've had this happen on SPD workflows when an email alert was set to pull from a specific field in the list. The field that the SPD workflow was supposed to pull from had been modified, and I had to go re-associate the field in the workflow with that step.
I'm not sure how you have designed your workflow, but if it feeds off of the permissions of the person initiating it, this could be the problem, or if it is supposed to notify the person who initiates when the move is complete, if it is firing off of a retention policy, it could be trying to use a system account that does not have a valid email, thus the reason it would work when initiated manually.

5
  • The workflow starts the built-in Approval process. When looking at that I noticed it sends an email to Workflow Context:Initiator which is probably causing the error.
    – Dave
    Commented Apr 8, 2011 at 20:15
  • You could try to modify the built in approval workflow using SPD and modify that step in teh process or see if it is actually working under the context of the system account and ad an email to that account.
    – Lori
    Commented Apr 8, 2011 at 20:43
  • Modifying the approval workflow to not send email to Workflow Context:Initiator has fixed the problem.
    – Dave
    Commented Apr 11, 2011 at 14:00
  • Dave your comment would be pretty useful to me right now, if you would elaborate. Commented Mar 3, 2012 at 2:07
  • Sorry, it's been awhile... all I did was edit the workflow in SharePoint Designer and changed it to send email to a user with an email address.
    – Dave
    Commented Feb 15, 2013 at 13:59
2

The Retention policy operates in the context of "Sharepoint\system" account - which typically has no email address - and thus fails.

You can set the email address of the System Account - albeit with some difficulty.

The UserInfo table in the WSS_Content database has entries for "SHAREPOINT\system" aka "System Account" - AND a blank entry for the email address - update those SQL table entries to have a correct / valid email address. (Logging in as the "System Account" "Should" let you set an address for "My Settings" via the UserDropdown (top right - My Profile, My Settings) but in my experience it doesn't...)

Another complication I have seen is that the domain account used during installation - is also listed there - i.e. there are TWO entries that need an address (I've seen other failures).

As Dave suggested - Changing the task process to use a valid account known to have an email address will fix the pro NOT use Workflow Context:Initiator - would also address the issue if you provide an Initiator that is known to have an email address...

That's also why it works when you run it manually - "Workflow Context: Initiator" - is you - with a good email address...

0

So Dave, if it's trying to send an email to Initiator then you're likely getting the error because the System Account won't have an email address.

One thing you might try is setting the outgoing email address: Central Administration >> Outgoing E-Mail Settings. However if its looking up the system account as the owner of the document I don't think this will help. Alternatively you might give the System Account an email like "[email protected]".

1
  • Thanks, I had already tried setting the outgoing email address to one that exists and it did not work. How do you give the System Account an email address?
    – Dave
    Commented Apr 11, 2011 at 14:02
0

I had similar issue, where the email recipients list was being pulled from another list. Then as per answer given above - I saw that the user initiating the workflow was not having access to other list. This solved the issue by giving permission.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.