I am trying to change the body of the email which is generated by a custom SP2010 workflow. I'm using SPD2013 and I am able to get as far as the String Builder which contains the body text of the email. I've tried using %CurrentItem:ID% as well as %CurrentList:ID%. They both return a number, but unfortunately this number does not match the item ID number in the actual list. Not sure where this number is coming from...all I can think is I'm not referencing the correct source and/or field.

Any help is much appreciated...I'm new to SPDspd


Alright, so I've set the dropdowns accordingly (see above), but I still get a different number. I've also added screenshots of that, so you can see. Thanks for your help!

Email: enter image description here

SharePoint List:enter image description here

EDIT 2: Found the list which is bringing in the wrong ID number. Now I just need to figure out how to reference the correct list...since the workflow's associated list is not the list I want to reference.


The screenshot you attached is essentially saying in pseudo-SQL for better understanding:

SELECT ListItemID from CurrentList where (ListItemID = CurrentItemID)

In other words, you are just getting the current Item's ID. If the source list is different, select it in the first drop-down menu, otherwise the last drop-down value is wrong "Current Item:ID", which means you are running this workflow from outside of the list that you want to retrieve items from.

If you are running the workflow against the same list that you want to change items in, all you need to do is just use the "Update Item" action in SPD to change the value of the current item to whatever you want the body to say.

Otherwise if it's another item in the same list, you need to find that item using the method that you attached. Will the listitem always be the same? If not, how is the workflow supposed to know which item to find? You need to have some way to tie the workflow back to the listitem that you are trying to find.


So you are saying retrieve:

ID from Master Data Change Request List

but the next section you have to fill out is the where clause so to speak. Leaving it like this in theory will retrieve every ID of every list item.

What you are looking for is:

Find the List Item:

Field: ID

Value: CurrentItem:ID

So essentially you are saying where ListItemID = CurrentItemID (ListItem of the Master Data Change Request List)

Does that make sense?

  • Alright, thanks. I get most of that. The list item I'm trying get the ID from is being generated through an InfoPath form. So the user fills out the form, clicks submit, and the form is converted into a list item. When I'm looking at the list, I see a column with "ID" heading. That is what I'm trying to get to. I believe the CurrentItem is the correct data source, because as you can see in the String Builder dialog, it is being used there successfully. – gerrits Dec 11 '14 at 19:37
  • Updated the screenshot. So after I pick the list "Master Data Change Request List", then I set the field to "ID". What would I fill in for the bottom "Field" and "Value"? I assume it will be "ID" but then not sure what to do with the Value field. – gerrits Dec 11 '14 at 19:47
  • See my edit @gerrits – Mike Dec 11 '14 at 20:21
  • Got it thanks. See my edit. Hope I understood correctly – gerrits Dec 11 '14 at 21:12
  • What list is the Workflow running under? – Mike Dec 11 '14 at 21:45

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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