Solved

Inserting an "Edit Item" URL in an email within a site workflow

  • 14 March 2023
  • 6 replies
  • 631 views

Badge +1

Hi all, I need some help some from the Nintex community and am relatively new to Nintex.

 

I have created a Nintex site workflow in Sharepoint 2013 which is scheduled to run each day and looks for any items in a custom list which are 15 days overdue and sends an email notification to the assigned person of that item the item with the url to bring them to the “edit item” page for that specific item.

 

 My issue is that I cannot figure out how to include the “edit item URL” for a specific item in that list. I have done this a lot for list workflows, but because it is a site workflow I just cannot figure out how to capture the URL and insert it. 

 

Below is the entire workflow and my explanation of each section:

 

  1. I look for the date which is 15 days earlier than today and store it in a variable. 
  2.  I set a variable to when a specific item’s status in the workflow is labelled as “In Progress” 
  3. Query List - I look into my list (RBB - Request for Information Tracker) and i filter for the following fields:
    1. Anything that was created before 15 days ago using the date variable i created in number 1 above. 
    2. Anything that has a status which aligns to my status variable captured in number 2 above. 
    3. Anything that hasn’t already had a reminder. 
  • I then store the ID number and the Customer Name in collection variables. 

 

  1. For Each item, I then target the collection variable containing the ID number and store result in a VARID List item variable

 

  1. This Update item simply updates the “1st Reminder sent?” field from No to “Yes”, which will prevent another reminder from going out the following day the workflow runs. I disabled it so while I'm testing it doesn't update the field every time. 
  2.  I then Query another list for each item which filters for any ID that is equal to the IDs stored within the VARID List variable. This query then looks for the ID, the Customer name and the URL path for each item and stores them in collection variables. 
  1. This is where i am stuck. This “Build String” item is using the same approach i use for list workflows, where it captures the “EditForm” url. However this is not working. 

 

  1. Send Notification is the email that i want to be sent to the assigned person (which is a field in the list), and which includes the URL that brings the receiver to the “editform” page. Obviously as per the screenshot it does not even include the URL which was built in step 7, but that is only because I tried it and it does not return a valid link. 

I am hoping someone can recommend the right approach to being able to capture the editform URL properly and which i can then insert in the body of the email in Step 8. 

 

I appreciate the community’s time and support in advance!

 

icon

Best answer by bamaeric 14 March 2023, 17:51

View original

6 replies

Userlevel 5
Badge +13

It looks like you’re on the right track. Try writing the editItemLink variable in a “Log in History List” action after your Build String action to see what value you get. You can use this to see what the actual URL is in the history when you run an instance of the workflow and help you troubleshoot your issue.

Badge +1

It looks like you’re on the right track. Try writing the editItemLink variable in a “Log in History List” action after your Build String action to see what value you get. You can use this to see what the actual URL is in the history when you run an instance of the workflow and help you troubleshoot your issue.

 

Thanks for your help Bamaeric! Here is what i see in the history log when i run the workflow after adding the “Log in History List”. It finds the top level site but doesn’t find the list itself. 

 

 

Userlevel 5
Badge +13

The list name may not be returning/correct because it is a site workflow and does not have any context to recognize the list. You might need to hardcode the list name in the URL string in the Build String action to get it to work.

You can add an extra “Log in History List” action to see what value is returning for the ListName.

Badge +1

The list name may not be returning/correct because it is a site workflow and does not have any context to recognize the list. You might need to hardcode the list name in the URL string in the Build String action to get it to work.

You can add an extra “Log in History List” action to see what value is returning for the ListName.

 

Thank you. Where would I place that additional “Log in history list” action? When i go to that specific list in my browser, i do see the list name in the path ie. 

https://team.global.XXXX/sites/XXXXX/formsandlists/Lists/RBB%20%20Request%20for%20Information%20Tracker/AllItems.aspx

 

Could i use the section in orange highlighted above? If so, how would  i incorporate that into the string? 

 

Thanks!

Userlevel 5
Badge +13

You could place the “Log in history list” action before the “Build String” action (or anywhere you choose). Then add the ListName context variable in that action to see what value is actually being returned.

Previously, I was suggesting you hardcode the List Name in the URL of the Text value in the “Build String” action. So it would look something like this:

{Common:WebURL}/Lists/RBB%20%20Request%20for%20Information%20Tracker/EditForm.aspx?ID={ItemProperty:ID}

Badge +1

You could place the “Log in history list” action before the “Build String” action (or anywhere you choose). Then add the ListName context variable in that action to see what value is actually being returned.

Previously, I was suggesting you hardcode the List Name in the URL of the Text value in the “Build String” action. So it would look something like this:

{Common:WebURL}/Lists/RBB%20%20Request%20for%20Information%20Tracker/EditForm.aspx?ID={ItemProperty:ID}

 

IT WORKED!! I hardcoded the URL as you outlined above and then for the item ID, i pulled in the txtcurrentid variable from my query in step 6, ending up with this as a result:

 

{Common:WebUrl}/Lists//RBB%20%20Request%20for%20Information%20Tracker/EditForm.aspx?ID={WorkflowVariable:txtcurrentid15}

 

Thanks for your help!

Reply