Custom SharePoint Designer workflow action for extracting InfoPath attachment fields

I've been meaning to post this for at least a month but I've been so busy with work that I've had no time to sit down and write this until now. But better late than never, I guess.

A little more than a year ago, I developed a browser-enabled InfoPath form that was used on a public-facing MOSS site so that site visitors could submit their photographs to the organization's yearly photo contest. Along with capturing the photo metadata (title, location, date, etc), one of the fields on the form was for the photo itself, captured through the use of the attachment control. The photo contest reviewers wanted to be able to have a quick and easy way to review the photos and the photo metadata so the original thought was to submit the photo to a document library and use property promotion to display the photo along with the metadata. Unfortunately, we quickly found out that the attachment control could not be promoted to a property. So I wrote a web service instead that would accept this form, extract out the attachment, and save the attachment directly into a picture library (and copy the photo metadata as well). That way, the users were able to see the photo and its metadata as soon as they opened the library.

A few months ago, someone again approached me with similar requirements. They were building a form that would have an attachment field that they'd need to extract to put into another library. Well, that was enough right there to make me realize that I needed to build something that would enable users to build these types of solutions themselves. I didn't want to have to keep writing things over and over to support these types of requirements. I also wanted to remove myself out of the process; they were already at 90% of the entire solution since they were building these forms already, they just needed the last 10% of being able to extract the attachment.

So what I ended building instead was a new workflow activity that could be used in SharePoint Designer as a workflow action. Basically, the action can be used as part of a workflow created in SharePoint Designer that will allow the user to add a step in their workflow for extracting out the attachment and saving it somewhere else. When the action is added to the SPD workflow, it looks like the following:

The 'attachment field name' is where the user specifies the name of the attachment control field in the InfoPath form. The link 'the item' is the SharePoint list item this action should work against. This is going to typically be the current item. The 'document library' is where you want the item to be stored to and the 'filename' parameter is the filename to save the attachment as (this can be driven dynamically as well from metadata of the item or some variable). The sentence '(use attachment name instead: Yes)' actually gives you the opportunity to use the actual filename of the file that was attached, rather than having to specify the filename yourself. When a user attaches a document to an InfoPath form, part of what is stored is the actual file's filename. Though that is not available through SharePoint, it can be extracted out by code, which I do inside of the custom action. By specifying 'Yes' for this field, this indicates the action to ignore the filename parameter and use the attachment's filename instead. The workflow designer can also specify whether or not the file should overwrite any existing file in the document library with the same filename. Finally, when the attachment has been extracted and saved, the action returns the item's new id which can be bound to a variable in the SPD workflow.

As an example of how this works, I created a sample New Hire InfoPath Form. The form contains an attachment field for an employee photo. The forms are submitted to my 'New Hire Forms' document library. Here is a sample of the form as it's been filled out:

Now, let's say that as part of this scenario, I want to give others the ability to be able to reuse that employee photo for other purposes (who knows what for, just go along with the example :)). But other people shouldn't be allowed to look at this form because it could potentially hold sensitive information. I need to move this photo out of this form and into another, less-restricted library. So I created a 'Team Photos' Picture Library for this purpose. Now, all I have to do is create a workflow to do the photo extraction. I can create a workflow and attach it to my New Hire Forms document library and configure it to start automatically when a new item is added. Then, I can configure my new workflow as follows:

I have three actions here. The first action is my custom extraction action. I configured it to pull the photo from the 'employeePhoto' field using the current item in the New Hire Forms document library. I save this photo to the Team Photos picture library (and instead of specifying a filename, I'll just use the attachment's filename). I will overwrite the picture if it already exists. Finally, I store the id of the newly added item in the Team Photos library to the workflow variable 'new item id'.

The second action is actually an Update List Item action. I use this action to grab the last name of the employee (from the New Hire Forms item) and save it to the description field of the item I just saved in the picture library. That's why saving the id is important because you can use it to reference to later or make cross references to (which I'll get into in a second). The following is the configuration of this action:

Obviously, I could have created a workflow variable that was a concatenation of the first name, last name, department, etc and used that to fill out the description but this is just for demonstration purposes.

Lastly, the third action is again an Update List Item action. With this action, I update the current item I'm executing this workflow against so that I can add a cross-reference to the photo that I just extracted and stored somewhere else. One of the columns in the New Hire Forms document library is a lookup column called Employee Photo. I configured the lookup column to point to the Team Photos picture library with the referencing being the ID of the picture item. Then, I just configured the action in my workflow as follows:

That's it for the workflow. Finally, when it runs, here's what I get:

 

In my New Hire Forms library, you can see the workflow has finished executing and there is a link under Employee Photo to the photo that was extracted. And here's the Team Photos picture library with the extracted photo:


 

 

So, that's pretty much to it. I think from this example, it's easy to see the value of taking some time and really thinking about coming up with custom workflow activities. Custom workflow activities exposed as SharePoinw Designer workflow actions can really enable your users to build their own solutions, possibly in ways you wouldn't have imagined yourself. That's normally how I try to envision solutions. When someone asks me to build something, I ask myself, can I build something else that will allow them to create their own solution now and in the future.

I attached the SharePoint solution file (.wsp) below as well as the VS2008 project files.

In the future, if I see there's enough interest (through comments), I can go into a discussion of the code.

DeviantPointWorkflowActivities.wsp (7.20 kb)   - Once this solution has been deployed, you need to activate the DeviantPoint Custom Workflow Activities web application feature. Repeat - web application feature, not site collection, not site.

DeviantPoint.SharePoint.Workflow.zip (499.49 kb)

Comments (68) -

Shweta
Shweta
6/9/2009 8:44:47 AM #

Hi,
Thanks for Sharing such useful information.
I am working on a project and I want to remove the attachment from the browser based Infopath form and store it in document library.
I was trying to installsolution file but its giving error.
Can you let me know how to trouble shoot it.

Thanks,
Shweta

bart_tubalinal
bart_tubalinal
6/9/2009 8:56:52 AM #

Shweta,

Sure thing. How are you trying to install the solutionfile? The stsadm command should be:

stsadm -o addsolution -filename c:\deviantpointworkflowactivities.wsp

Then you can deploy it (and activate it to the appropriate web applications) using Central Administration. What is the error you're getting?

BXT

Shweta
Shweta
6/9/2009 9:31:59 AM #

I tried throught stsadm and getting error as "Object reference not set to an instance of the object".

Thanks,
Shweta

bart_tubalinal
bart_tubalinal
6/9/2009 12:36:16 PM #

you need to make sure that you're logged in as a farm administrator for you to run that command. See here for details: techdhaan.wordpress.com/.../

Shweta
Shweta
6/10/2009 3:28:29 AM #

Thanksa lot. I asked my administrator to add the solution and it worked fine.
Appreciate your help.

Shweta


bart_tubalinal
bart_tubalinal
6/10/2009 4:36:12 AM #

No problem.

BXT

Shweta
Shweta
6/11/2009 4:14:22 AM #

I was able to remove the single attachment using this solution but was not able to remove multiple attachment.
Is it possible to remove multiple attachment using this solution. If not is any work around possible to do it.


Thanks,
Shweta.

bart_tubalinal
bart_tubalinal
6/11/2009 8:17:49 AM #

Hi Shweta,

This action is per attachment field so if you have multiple attachment fields in your form, add as many corresponding instances of this action to map against each attachment field.

BXT.

Shweta
Shweta
6/11/2009 9:25:37 AM #

I have attachment in a repeating section.So i cannot map the attachment to instances of this action to it.

Thanks.

bart_tubalinal
bart_tubalinal
6/11/2009 3:04:49 PM #

Hi Shweta,

This action, as-is, would not work for an attachment control that is in a repeating section. Frankly, I didn't think about that situation. It would require a change to the code. It wouldn't be difficult. The change would be made in the ExtractInfoPathAttachmentActivity class. In the Execute method, on line 251, rather than calling SelectSingleNode on the xml document, you should call SelectNodes instead. Then, you just need to iterate through the XmlNodeList object that is returned and process each node the way I was processing the single node in the existing code. The only thing to make sure of, I would say, is making sure to use an appropriate filename for each attachment (this is when the 'use attachment filename instead' option comes in handy).

BXT

Shweta
Shweta
6/12/2009 4:31:02 AM #

Thanks for your time. I will try this option.

Thanks,
Shweta.

Shweta
Shweta
6/16/2009 8:40:37 AM #

Hi
I cannot find line no 251 ro execute method in ExtractInfoPathAttachmentActivity class. Can you please mail me the source code.

bart_tubalinal
bart_tubalinal
6/17/2009 12:47:06 AM #

Shweta,

It is definitely there. Without an Execute method, the activity wouldn't work at all. Believe me, the lines are there. The files are in the DeviantPoint.SharePoint.Workflow.zip file. Just download that instead of me emailing it to you. If you already did, are you sure you're looking at the source code or are you looking at the designer? Make sure you're in source code view.

BXT

Dave
Dave
6/18/2009 6:10:23 AM #

I installed the wsp without problem, looks like a good solution for what I am wanting to accomplish.  I had already created my InfoPath form with four FILE ATTACHMENT controls but when I go to publish it to a document library, I get a Base64 error.  Publishing the form to the document library without the attachment controls leaves me with no column to select utilizing your workflow solution.  Any ideas of what I need to do here?

Thanks;

Dave

bart_tubalinal
bart_tubalinal
6/18/2009 12:17:32 PM #

Dave,

Sounds to me as if there's a problem with the InfoPath form you're attempting to publish. The workflow doesn't have anything to do with the publishing of the form. What is the exact error you're getting?

- BXT

Shweta
Shweta
6/26/2009 9:35:57 AM #

Dave are you trying to promote the attachment field to SharePoint form library. If so do not promote the attachment field. In the workflow you just need to give the name of the attachment field.I have tried doing it and it works.

Shweta.

Mike Elder
Mike Elder
7/23/2009 3:16:59 AM #

Thanks for this solution - it's working great for me and was exactly what I was looking for!

One query though, I'd like to use workflow to email a link of the document that was copied out of the form but I've been unsuccessful so far.  I think I need to use the new item id variable but nothing I've tried so far has worked.

Any advice gratefully received!

Cheers
Mike

Mike Elder
Mike Elder
7/23/2009 3:36:04 AM #

Thanks for this solution - exactly what I was looking for.

I have a query however, I'd like to be able to use workflow to email a link to the document that has been saved from the form.  I think I have to use new item id variable to achieve this but everthing I have tried so far hasn't worked.

Any advice/guidance on this gratefully received.

Cheers
Mike

Jason
Jason
8/5/2009 3:19:58 AM #

Kudos on this awesom contribution to the community!

This workflow activity works very well. Is there a clever way to still use it if the attachment is optional? Right now the workflow will stop when there is no attachment. I have a situation where I am extracting an optional attachment to a document library where the attachment type can vary. I would like to use a structured naming convention and append the correct extension to the document added to the attachment library. Will I have to delve into the source code if I need to get the attachment mime type/extension?

Thanks,
Jason.

bart_tubalinal
bart_tubalinal
8/11/2009 3:19:58 AM #

Mike,

Sorry, I've been very busy with work so I haven't had any time to post or respond to comments (I've only just now had time to even review and approve the comments). With regards to emailing a link to the new document, that's pretty easy to do. You're right, you will need the ID of the item we save off to the picture library. Save that off into a variable in your SPD workflow. Then, add a Send Email activity and in the body, you could write the link out to the picture library like "http://mossserver/picturelibrary/DispForm.aspx?ID=" and after the equal sign, use the "Add lookup to Body" button (in the Define Email Message dialog of the Send Email activity) to add a reference to the variable that is holding the ID (Source: Workflow Data, Field: {variable_name}).

BXT

bart_tubalinal
bart_tubalinal
8/11/2009 3:37:35 AM #

Jason,

You would have to change the code to determine that no attachment was added. The attachment is part of (embedded in) the InfoPath form itself, so there's no field in SharePoint that would indicate that an attachment was added into the form. However, in the code you could determine that (simply by checking if the attachment field's length is 0). You could then expose that as a boolean property of the activity (HasAttachment or whatever) which could then be used by workflows.

As far as correct extension, that is also available in the code. The original filename of the file is saves as part of the attachment field of the InfoPath document and is available as the AttachmentName property of the decoder. Again, this is something you could expose as a property of the activity so it can be further used by workflows.

BXT

Yvonne
Yvonne
9/1/2009 11:12:55 AM #

Bart,

Is it possible to get InfoPath to retrieve the names of attachments on list items in a list?  Our users have been adding attachments to lists and I need to get just the names of the attachments to come over into InfoPath.  Is this possible without Visual Studio or SharePoint Designer?

Shailaja
Shailaja
9/7/2009 6:09:52 AM #

Great work! Instead of sending the attachment to another document library, how would I go about downloading the file to local file system?

I would like to do it through a workflow as I would like to download the attachment to the local filesystem as an infopath form gets submitted. Thank you!

Lisa
Lisa
10/1/2009 5:40:57 PM #

Hi there,

I am attempting to do exactly what is described above.  I inherited an InfoPath form where the code was imbedded in the file attach control.  I unknowingly deleted the exisiting control when error messages were signling off.  My thinking is that this extraction should operate from Sharepoint Designer workflows.  I understand the need to create a custom activity but am brand new to using Visual Studio.  Could you lead me in the right direction to create a custom activity in Visual Studio?

Lisa
Lisa
10/1/2009 6:03:54 PM #

Yes, code would be great.  I am really new to Visual Studio and would like to just get this fixed and on with life....

James
James
10/15/2009 1:59:17 PM #

Thanks for this solution, it took a bit of searching until I came across it, but ecstatic that it was exactly what I was looking for.

I have got this setup and working but it doesn't remove the attachment from the InfoPath form so I end up with the attachment in both the form and where I extracted it to. Is this how it is meant to work? Is there a way to use a workflow to remove the attachment after it has been extracted?

Thanks,
James

sara
sara
11/6/2009 6:55:24 AM #

Great post !!!

Developing custom workflow action is very easy, try this,

sarangasl.blogspot.com/.../...low-actions-for.html

Balazs
Balazs
11/9/2009 1:19:53 AM #

Hello,

this would be exactly what I am looking for...I have WSS 3.0 and deployed your solution ... if I go to central administration -> manage web application features -> then I see the "deviantpointworkflowactivities" as "active" .... but however, when I open the sharepoint website through Microsoft Office SharePoint Designer (English or German) I cannot find the required activity which should be available? Can somebody help me here? thx

BR,
Balazs

JasonL
JasonL
11/9/2009 5:19:18 AM #

Bart,

I got everything to work just fine.  Thank you for the solution...it was exactly what i was looking for.  

How would I go about deleting the attachment from the document library if I delete it from the infopath form.

Thanks,
Jason

JasonL
JasonL
11/9/2009 10:14:17 AM #

This post is exactly what I was looking for.  Any way to update the workflow to extract the attachments out of a repeating table in infopath.  I have a need to attach different documents and the number of documents will vary from form to form.  

Jason

poze9
poze9
11/10/2009 8:45:31 AM #

BXT,
   Thank you for the post it is very helpful.  I have one question that I am hoping that you can help with.  I have a infopath form with 2 file attachment controls in it.  One called attFileAttachment1 and attFileAttachment2.  I have created a workflow as you described above but added some conditions that I aren't working.  A user filling out the form may or may not have 2 attachments so I have to test via conditions if that field is empty...I thought.  Basically what I need to do is.

If there is an attachment in attFileAttachment1 then go through your process.
If there is an attachment in attFileAttachment2 then go through your process.

What is happening is it doesn't test correctly that there is data "an attachemnt" in the 2nd attachment field.

I have tried.  if attFileAttachment1 is not and attFileAttachment2 is empty then just process attFileAttachment1
If attFileAttachment1 is not empty and attFileAttachment2 is not empty then process both.

The workflow errors out if there is no attachemtn in attFileAttachment2 and I don't know how to test to see if there is data in there.......

Does this make sense?  I have tried on 1 step and individual steps.

Thanks for the help,


poze9
poze9
11/13/2009 4:23:06 AM #

Any feedback on my last post ?  How to test for a 2nd attachment if it's empty ?

Mahak
Mahak
12/3/2009 11:26:47 PM #

A very helpful and life saver post. I am really glad it solved my problem.
Thanks a lot.

Balazs
Balazs
12/10/2009 9:03:10 PM #

Hello,

I got this feature working now on WSS 3.0 but have troubles on MOSS 2k7 (64bit environment)... when I launch my workflow I am running into the following error: "there is no file with url DocLibraryDestination\attachment.xls" ... have somebody an idea? thx

BR,
Balazs

Nancy
Nancy
12/16/2009 3:12:04 AM #

I deployed the solution successfully; however when I select the custom action from within SharePoint Designer, the action and its corresponding options do not appear. I am very frustrated- all steps appear to have executed correctly and global deployment is indicated as successful. I then ran iis reset on all servers.

Do you have any ideas as to why I am not seeing the action appear in SPD? Thank you!

Nancy
Nancy
12/16/2009 3:35:03 AM #

Missed this: "Once this solution has been deployed, you need to activate the DeviantPoint Custom Workflow Activities web application feature. Repeat - web application feature, not site collection, not site."

Sorry. it's working fine now!

Nancy
Nancy
12/16/2009 4:34:24 AM #

I spoke too soon.... now that I have the workflow action running successfully, I am having the same problem s Dave (comment at 6/18/2009 6:10:23 AM) above.

You replied that "The workflow doesn't have anything to do with the publishing of the form." But this is not the case- in the first part of your custom Action ("extract ____"), that blank space is where you must place the name of the field holding the attachment. If that is not a promoted field, you can't select it and the workflow will fail.

Within InfoPath, the file attachment control is NOT a promotable property when publishing a form to SharePoint.

If the File Attachment field (titled "employeePhoto" in your example/screenshot) is not promotable, how can we extract it?

You stated, "The first action is my custom extraction action. I configured it to pull the photo from the 'employeePhoto' field using the current item in the New Hire Forms document library."

How were you able to make that field present and selectable in your workflow if Base64 field types (which File Attachment is) cannot be promoted to SharePoint?

Nancy
Nancy
12/16/2009 4:58:54 AM #

Another comment.... you state above ", we quickly found out that the attachment control could not be promoted to a property. So I wrote a web service instead that would accept this form, extract out the attachment, and save the attachment directly into a picture library (and copy the photo metadata as well)."

Is this not part of your custom workflow? Please update with explanation of how we can make this work. Thank you!

Joe
Joe
12/17/2009 5:16:34 AM #

Thanks for the awesome solution. I don't have an extract action available. How do I build this into the workflow?

Joe
Joe
12/17/2009 6:52:33 AM #

Does this work for uploading multiple files?

bart_tubalinal
bart_tubalinal
12/23/2009 2:19:18 PM #

Nancy,

Where it says "Extract ____", the name of the field I'm talking about isn't a SharePoint column. It doesn't expect you to put the name of the SharePoint column there, it expects you to put the name of the field in your InfoPath form. If you named the attachment field in your InfoPath form as "MyAttachment", then you just need to type in the word "MyAttachment" for that parameter in "Extract ___". So that will look like: Extract MyAttachment.

BXT

bart_tubalinal
bart_tubalinal
12/23/2009 2:22:15 PM #

All,

My apologies if I have not answered your question. I really have hardly any time to look over the comments. I pretty much only moderate these comments for spam. Please do not expect me to answer all of your questions. I just don't have the time to do so. The code is there for you to look at, debug yourself, and fix as necessary if it doesn't suit your particular scenario. Do not rant and rave on here like Nancy did. You all have minds, please use it.

BXT

Nancy
Nancy
1/8/2010 1:14:52 AM #

My apologies- it was not my intention to "rant and rave." My skill set is limited and I am not able to make modifications or debug with the ease most of your users/readers do. I was so excited to find a possible solution to this issue, and then when it did not work for me, I got upset but that is not your fault or your problem. Sorry for the bad impression and thank you again for the work that you did and for sharing it.

Andrea Campi
Andrea Campi
2/28/2010 10:34:39 PM #

Hi all,
I deployed this very good solution and it works fine. I'm having some problem with MS Office 2007 file having new extensions like .docx or .xslx. Anyone noticed about this problems?
THx

Andrea

Aaron
Aaron
3/4/2010 4:55:10 AM #

When I perform the following stsadm.exe command nothing shows up in the features for activation.

stsadm -o addsolution -filename c:\deviantpointworkflowactivities.wsp

What must I do further to get this wsp working on our site?

thanks!

Aaron
Aaron
3/4/2010 6:08:28 AM #

Everyone...when publishing the form to a SharePoint 2007 Form Library how do you get the attachment field into the form library?  The InfoPath Publisher is giving me the following error:  The selected field cannot be promoted because it's data type is not supported:  base64Binary.  

I cannot select the Attachment Field in the workflow because the InfoPath Publisher won't allow that field uploaded to SharePoint.

Help...please.

bart_tubalinal
bart_tubalinal
3/16/2010 4:28:54 AM #

Aaron,

That error is correct, you can't promote an attachment field to a SharePoint column. But just because you can't promote the attachment field doesn't mean the attachment field will be removed when you publish the form. Property promotion just means that the InfoPath field gets mapped to a SharePoint field, i.e. can be displayed (and sometimes edited) through the SharePoint Web UI rather than having to view or edit it using InfoPath or InfoPath Forms Services.

BXT

John
John
4/13/2010 4:41:34 AM #

Hello
I try to put your solution in my sharepoint, but I can not see the same thing as you.

I execute with the commande "stsadm -o addsolution -filename {WSPFILENAME}" and deploy on the central admin) my solution is deployed.
When I run SPD for workflow creation, I do not see the new action in the step.

Have I missed something? or activate?

thank you.

JoeZ
JoeZ
4/21/2010 8:58:47 AM #

Hi,
I installed this according to directions and I'm happy to say that it works great.  Thanks for sharing!!

One bit of caution. This Workflow Activity does not like document libraries where the name has changed. To test, I set up a library and changed the name, then set up a workflow to copy attachments there. Had an error saying that it could not locate the file.

FYI, I'm using WSS 3.0.

Be sure to put your extracted attachments in a doc library that hasn't been renamed and it works fine.

Thanks again,
Joe

poze9
poze9
4/26/2010 6:25:31 AM #

I have tried to deploy the wsp and I never see it show up in the central admin under web applcation features....Am I missing something ?

o addsolution -filename "c:\Deploy\DeviantPointWorkflowActivities.wsp"
stsadm -o deploysolution -name DeviantPointWorkflowActivities.wsp -url "http://homeplate.devdissy.local"; -allowgacdeployment -immediate  

This is the code that I am using

poze9
poze9
4/26/2010 6:26:23 AM #

I take that back...this is the code...I missed some during the copy and paste.

stsadm -o addsolution -filename "c:\Deploy\DeviantPointWorkflowActivities.wsp"
stsadm -o deploysolution -name DeviantPointWorkflowActivities.wsp -url "http://homeplate.dbacks.local"; -allowgacdeployment -immediate

bart_tubalinal
bart_tubalinal
4/26/2010 9:06:09 AM #

Poze9,

You're lucky I checked the comments today, I usually don't have any time to look at the comments and answer them. Don't bother using the deploysolution STSADM command. There have been issues people have reported with that regarding web app-scoped solutions. Just deploy the solution through Central Admin by going to Operations -> Solution Management. Select this solution and click Deploy.

- Bart

réglage couleurs
réglage couleurs
4/29/2010 6:19:00 PM #

This is really very useful code!!!!!!!

Katherine
Katherine
5/4/2010 11:26:54 AM #

Hi,

First of all, thank you so much. This is incredible and I'm really glad I found this solution. But, I would really like to be able to extract multiple attachments from a repeating control. I read through the conversation you had with Shweta, and the solution you described is exactly what I am looking for. Unfortunately, I don't have the programming knowledge to be able to modify your existing code. Have you by any chance made these changes yourself? If so, can you post the code?

Thank you,
Katherine

Shabbir
Shabbir
5/19/2010 9:48:02 AM #

Hi Bart,

Thanks for the superb piece of code that i was looking for. I have successfully installed the wsp and activated in my web application. But the problem is I don't see the activity in the Actions list. Can you please help me in doing that I know its been very long that you have wrote this code but really appreciate your help.

Thanks
Shabbir

zeb
zeb
7/1/2010 2:24:14 PM #

This is awesome - a very useful workflow action.
However, I've come across the situation when someone attaches a file that includes illegal characters, so the image then fails to upload to the image library. I thought I might be able to solve this by specifying the filename dynamically (rather than using the original attachment filename), but then I run into the problem of not knowing what the file extension should be. For example, I can use the user's username, say 'jbsmith', but it should really be 'jbsmith.jpg' or 'jbsmith.png'. Without the file extension it will upload successfully, but then behaves a bit differently in the library. You lose some of the library functionality in terms of opening and editing the image details, and previewing etc.

Any way to get around this? I've probably missed something obvious!

Zebs

Lindsey
Lindsey
7/20/2010 6:41:22 AM #

Wow!!! Thank you this is awesome!! I've been trying to figure out how to do this and here it is ... for free... bamboo would charge $700 for this.  Anyway just wanted to say good job!! And you inspire me as a young developer Smile

Bart
Bart
7/20/2010 12:34:46 PM #

Glad you liked it Smile.

Boris
Boris
12/7/2010 4:38:47 AM #

Hello Bart,

First of all RESPECT for this amazing workflow. But I have a problem. I added the solution (with stsadm) and deployed it in Central Administration. I also activated it as a Web Application Feature. And when I start Microsoft Office Sharepoint Designer I can't find the workflow listed in the Workflow Actions List.
What am I doing wrong?

Thanks in advance,
Boris

Hannah
Hannah
3/9/2012 10:48:01 AM #

Hi,

This is a really useful action - any plans to create an updated version for SharePoint Designer 2010.  It is exactly what I need!!

Thanks,
Hannah

Andrew
Andrew
6/25/2012 10:18:13 PM #

Will this work on SP2010?

Also can it just extract the attachments from an InfoPath form and then just email those attachments to an address?

I don't need the attachments in another library.

Russell Wright
Russell Wright
9/17/2012 10:55:58 AM #

Bart--

Thanks much for the work you did on this custom action.  I installed it on my SharePoint 2010 farm and it worked as advertised on a form library.  Attempting to use it on a list form that was using an InfoPath form didn't work for me (threw an unknown error).  I also noticed that when the file was copied it was shown as created by/modified by the user who initiated the workflow (not system) which is a good thing!  

Using this allows one to get more control over the upload process, since the normal upload process to a SharePoint library doesn't use InfoPath forms.  

Great work!

Russ

Ed Boon
Ed Boon
2/4/2013 7:17:18 AM #

Hi,

I tried to upload the wsp file in SP 2010 (office 365 suite) and got the following error:

This solution contains design and elements opmaak which can't be deployed als part of the sandboxsolution. The solutionmanifest for solution 6f5aba34-d1a4-4afe-bc66-8b534e2d4bae didn't matched the manifest.xml, regel 4, teken 2: The 'ResetWebServer' attribute is not declared.

Solve the problem with SP Foundation.

Correlation-id: 9c93fb9b-ce78-5065-3768-a57719cf6646

Datum en tijd: 4-2-2013 13:11:48

Does it works in SP Enterprise SP 2010 and SP 2007

Ed Boon
Ed Boon
5/14/2013 8:50:41 PM #

Hi Bart,

I've tested the DeviantPointWorkflowActivities.wsp, but my client uses a hostheader site collection, what do I've to change to run the feature and workflow.

Look forward to hear from you,

Regards,

Ed Boon
Visioned.nl

Ed Boon
Ed Boon
7/14/2013 3:19:19 AM #

Hi Bart,

The wsp is SharePoint 2007 Moss is now working fine,  but when I set a condition based on the formstatus there will be a conflict.

Regards,

Ed

Jason Tan
Jason Tan
8/13/2013 5:59:42 PM #

Hi,

I tried this on a SharePoint 2010 list form. I keep getting erors. Does this only work on an Infopath form?

Cheers,
Jason

SB
SB
8/23/2013 9:01:36 AM #

I tried this in single attachment it works like a charm. I am working on a repeating section that will allow multiple attachments. As your blog earlier I changed SelectSingleNode to SelectNodes it throws the error  'System.XML.XMLNodeList' does not contain a definition for 'Inner Test' and no extension method 'Inner Text' accepting a first argument of type 'System.Xml.XmlNodeList' could be found(are you missing using directive or an assembly reference?)

Any thoughts on this error is really appreciated?

Kali
Kali
8/30/2013 5:33:30 AM #

Can you please expain wat needs to be changed other than  "SelectNodes " in line 251 for multiple attachments. Thank you

Pingbacks and trackbacks (1)+

Add comment

biuquote
  • Comment
  • Preview
Loading

About the author

Bart X. Tubalinal is a Solutions Architect with over 10+ years experience in building enterprise applications. He also considers himself to be, pound for pound, one of the best developers there is.

Archives

Comments

Comment RSS