3

I'm trying to incorporate functionality in one of my lists that will allow users to submit candidate resumes for open jobs that appear in the list. My initial thought was to just have a hyperlink column and place a 'mailto:' link there...simple enough. However, I'd like to have, at minimum, a reference to which job was being applied for when the email is sent.

After some searching, I've found a way using SPD to build a URL string that links back to the list item in question (essentially it's a link to the list, and the list item ID is retrieved and appended to the end of the URL. Using that, I've also built the next step in the workflow to produce the email, addressed to the appropriate recipient, with the desired information in the subject and body (job title, ref #, etc.).

Is there a way to trigger this workflow by adding a hyperlink to each list item, or something similar? I don't want users needing to trigger the workflow, or the email from the ribbon. I'd prefer if it's something in-line, where they see a job in the list, and can hit a 'Refer' link or button.

Any help would be appreciated. Thanks!

(edit)

Thanks for the responses below. I think I'm good now with creating a link or button to trigger the workflow, but now the problem seems to be the workflow itself! It seems to be executing, but I'm not seeing the email get generated or sent. Is it possible to have the workflow present the user with a 'Compose Message' window so they can add comments, attachments, etc? This is really the functionality that I need.

  • You're doing this the long way around. I would use a mailto string with a subject and body: <a href='mailto:user@domain.com?subject=My Subject&body=Job Title: [Job Title]%0D%0ARef Number: [RefNo]%0D%0Aetc'>mail</a> – Erin L Apr 1 '16 at 15:03
  • If Send Email isn't working from your workflows, your outgoing email settings in Central Admin might need to be checked. – Erin L Apr 1 '16 at 15:08
  • Thanks Erin. This was my initial thought. I'm unclear on what the code after [Job Title] and [RefNo] should be. Where am I getting those strings from? – PSUlion01 Apr 1 '16 at 15:12
  • These fields are in your list, right? If so, I'll post an answer below. – Erin L Apr 1 '16 at 15:38
  • Job Role, yes, but don't have a ref #. I see where you're going with this, just curious how/where I can grab the data so it can be dropped into the email subject/body. Where the 'mailto' option was tripping me up was, I wanted to have the email contain a link back to that list item, but the item ID wasn't available from the pick list for a calculated field. Ideally the email that is sent will refer to the job using some descriptors, but also have a link to the actual item, as some items may have generic names, e.g. Business Analyst. – PSUlion01 Apr 1 '16 at 15:44
2

Add a hyperlink field, and use a workflow (run on create and change) to set the value of the field.

In the workflow, set a variable equal to mailto:user@domain.com?subject=New Candidate&body=Job Title: [%Current Item:Job Title%]%0D%0AJob Number: [%Current Item:Job Number%]%0D%0ARef Number: Job-[%Current Item:ID%], Click to send email Then Set field in current item, choose your hyperlink field, and set the value (from the fx button) to `Workflow Variables and Parameters" and your variable.

To get the info from your list (i.e. [%Current Item:Field%], select "Add or Change Lookup" and select Current Item and the field from source.

FYI, you can get the full link to the current item by selecting Workflow Context and Current Item URL.

  • Awesome...this worked great! Is it possible to insert a URL in the body of the email? I tried placing the code, but it's just rendering as plain text when the email window appears. Would like to have the link back to the list item itself if possible. – PSUlion01 Apr 1 '16 at 16:55
  • Probably, but I'd have to google it, which you can probably do yourself. – Erin L Apr 1 '16 at 17:03
  • Very well thought out Erin! – Mike Apr 1 '16 at 21:02
  • Just an update on the mailto: question above...it doesn't seem like it supports embedding links in the body of the email. Otherwise, the solution above is working great. Thanks again! – PSUlion01 Apr 6 '16 at 11:50
  • If I include a link as plain text, it's clickable in my email. However, the display text is the same as the link. So google.com will work, but you can't make it show up as "Google" as far as I can figure out. – Erin L Apr 6 '16 at 12:36
1

You can add a quick action button to the lists ribbon where a user can click to manually start a workflow.

Do you have SharePoint Designer installed?

If you do, head over to your list, and from the list ribbon, in the Customize List section select New Quick Step.

This will allow you to create a new button in the ribbon, to start a 2010/2013 workflow manually on a selected list item.

Peter Kalmstrom has a great guide, as well as a video where he shows you how to do it.

Create A SharePoint Workflow Button

1

You could use a calculated column to build out the workflow link, since the only thing that changes in the workflow initiation page url is just the ID, you could add a calculated column, insert the link into a formula like this:

=CONCATENATE("<a href='http://sharepoint/sites/sitecoll/_layouts/IniWrkflIP.aspx?List={8693bc92-48dd-431b-9c70-1056bf02f506}&ID=",ID,"&TemplateID={068a8881-aa9c-462a-b876-fd870f52abe0}'>Start Workflow</a>")

Just go to an initiation page of any of the items to grab the URL and use it in the above formula. Make sure the returned data type is Number (for some reason Number will interpret the string as HTML).

  • Thanks...this helps, but now I'm having other workflow issues (see edit to my original post). – PSUlion01 Apr 1 '16 at 14:40
  • I'd recommend starting another question on this. I'll find it and answer it, but your new issue is not related to this one. – Mike Apr 1 '16 at 14:42
  • Posted link – PSUlion01 Apr 1 '16 at 15:01

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.