Create a button on Infopath for users to export form to PDF - sharepoint

Currently I have created a travel request form using Sharepoint 2013 and Infopath 2013 that once you submit the form, it creates a line item on the list as well as workflows to their managers for approval.
Once the managers have approved the form, on the form itself there is a field called "Approver" and "Approved On" that shows when and who have approved the form.
I want the users to be able to open the form and have a button to export the approved form to PDF. Is this possible?
Thanks for all the help!

You may want to move this to http://sharepoint.stackexchange.com, a sister site of StackOverflow.
What I always recommend (as I work in the InfoPath / PDF business) is to attach a simple workflow to the associated forms library using a workflow tool of your choice (SharePoint Designer, Nintex Workflow, VS Workflows).
Make sure you export the relevant InfoPath status field to SharePoint so you can read the column's content in your workflow. In your workflow check if the status field is 'Approved' and if it is run a PDF Conversion action.
Now, for the big trick, the 'PDF Conversion' Action. No such action comes with SharePoint out of the box, but it is available from third parties. Google for the appropriate search terms, e.g. "Batch convert infopath using workflow" and you will find several solutions. (Disclaimer, I cannot link directly as one of the solutions you will find is one that I worked on)

Probably it will be interesting for you to use already existing business solution - PDF Share Forms. It is PDF form integration to SharePoint with bi-directional data synchronization (form field contents synchronizes with SharePoint columns automatically both directions). Support for archival, versioning, form flattening, workflows. Filled in form could be sent to a person, who filled it in, etc. www.pdfshareforms.com for more info
(I work for PDF Share Forms)

Related

Filling out an Infopath form with the aid of a complex sharepoint workflow

I have a big Infopath form which is part of a complex workflow that involves collecting input and signatures from various users, as well as approvals.
Currently, that same workflow is being done manually — the Infopath form is actually a PDF form and the workflow steps are performed by the actual users who fill out the form, emailing it afterwards to whoever they think it may concern.
I'm on the process of automatizing this using our Sharepoint Server infrastructure, so the first thing was translating the PDF form to an Infopath one. The second would be to produce a Sharepoint workflow that would implement the business process of getting that form properly filled.
So my question is: is it possible to implement a Sharepoint Workflow that sends the full form to the correct users based on the information gathered by the form itself? Ideally, the form would be passed around using the rules defined in the workflow process, users would fill whatever necessary, submit the form and the workflow would continue based on whatever is filled. This form would not only be the initiator form, but the form to be handled in all the workflow tasks.
Breaking the form apart is not desirable as this would confuse our users, and some of them need the overview provided by the full form view. Also, I'd like to use Sharepoint as the form distributor, instead of the email service, if possible.
Any pointers in how to do this would be greatly appreciated.
This is possible.
Here are the pointers in brief:
Create a content type with your infopath form as item form
Create a visual studio workflow that is associated to your content
type
In the code of the workflow you can implement any rules of
processing the form. you're able to get the form data from the list
item you workflow runs in context of.

Creating an item in a SharePoint Form Library from a SharePoint Designer Workflow

I'm using MOSS (SharePoint 2007) and InfoPath 2007.
I have a Form Library with an attached InfoPath form, and would like to create new items (forms) in this library during a workflow built in SharePoint designer.
I've tried using the "Create List Item" action, but it doesn't assign the correct metadata (the new item looks fine in a view of the list, but can't be used to render the form (the generic "form has been closed" error comes up if you try to view the item)).
I'm not adverse to writing my own custom WFA to do this in .NET if need be, although it'd be nice to find a simpler solution.
Can anyone provide any resources for how to achieve this in SPD, or programmatically? My searches on the topic so far have been unfruitful...
Found the solution to this, thanks to a video on YouTube: http://www.youtube.com/v/bcnC_XwCcAg&hl=en&fs=1&rel=0
For anyone else out there who (like me) might not be able to watch YouTube content where they need this information, here's the process:
Create IP form
Publish to SP Server (as doc lib)
On document library, change settings:
allow management of content types
display in browser
"Fill out" a blank version of the form and save it to the doc lib with name "template"
Open context menu for "template" form and select Download a Copy
Delete "template" form from document library
Open library in windows explorer
Open Forms dir
Paste downloaded copy of "template" form into the Forms dir (as template.xml)
Go back into doc lib settings
turn off management of content types
change template url to template.xml
press OK to save changes
Go back into advanced settings ago, and turn management of content types back on
In SPD, make a WF which uses Create List Item to put an item in that library
And that's it. Just 12 steps needed to publish an InfoPath form so that it behaves as you'd expect, and any SharePoint developer should be familiar with 12-step programs.

How does Infopath forms routing work (ie an Expense Approval form)? Is a PKI required?

I don't have an understanding on how the whole InfoPath product works. I know it can save data to Sharepoint. But here are a few bits of information I'm confused about:
If someone saves an Infopath form to SPS, is the entire form saved, or just the data?
How would an approval scenario work?
My employer wants to use as little code as possible for each form. They are currently using PKI that requires the end user to submit the form (to Access DB), sign the form, then save the form. I know this isn't ideal, but I don't have enough background to tell them what to do instead.
You could create Infopath form templates (*.xsn files) using the InfoPath 2007 form designer which is both the layout and logic (code) for the form. These forms could then be deployed into a site on a SharePoint server (that has InfoPath Form Services, which is a component of Microsoft Office SharePoint Server (MOSS) 2007).
After all of the above, any user that has access to the aforementioned SharePoint site could fill the form and submit it. And typically the filled-in data would be saved as an xml file into an InfoPath Form library on the same SharePoint site.
I didn't understand what you mean by PKI. Hope that helps...
InfoPath Form Services on MSDN
You can digitally sign your forms, section by section. This capability is built-in
Regarding showing/hiding field specific to different security roles - you can use views in InfoPath, each view targeting a different person

Workflow and Infopath

Do I need Infopath installed locally to edit forms in a workflow for sharepoint?
Authoring InfoPath forms
If a person needs to create a new Infopath form or needs to change the layout of the existing form one needs to use InfoPath client.
The form layout and data structure is saved as XML so one might try to edit it but I would recommend you not to mess with it.
Filling forms
In order to fill the forms there are two scenarios:
User fills a form via web browser (InfoPath client is not required)
User fills a form via InfoPath client
The first option does sound interesting but limitations do apply:
You must purchase MOSS Enterprise license (for difference between SharePoint editions check this: overview or details here). There is an option to purchase a dedicated Forms Server.
Infopath as web form does not support all the features as the Infopath client form
Although web forms sound very appealing, my experience taught me that most important features are not available in the web edition. Check here for detailed list.
Default workflow forms
Your original question is not clear, but if you are talking about editing default workflow forms like Approval workflow form (which is InfoPath) there is no easy way to do it.
You won't need InfoPath as long as your forms are browser-enabled and you are running on MOSS (to use the InfoPath Forms Services).
If you are on plain WSS, then you will need InfoPath installed to fill out forms.
I don't think this is necessary if the forms are stored in a SharePoint document library.
Do you mean to edit individual forms, or to design a form?
Yes you do, it will be rendered as HTML in the site, but to edit it, you need a copy of infopath.
If you are just a user, and it's a web form, then you do not need to install the software, Otherwise, you should. It depends on what form the InfoPath display.
If you are a developer, you must install it locally so as to edit the template and deploy it.

How to display list item in a workflow approval task form for the list item?

We are customizing workflow approval form to display the associated list item fields. This will help the approver to verify the list item, he is approving.
The approval form will have to be one of 2 flavors.. this is assuming that you are using Windows Workflow Foundation...
InfoPath workflow form and Windows Workflow Foundation - These are the forms that are normally used for MOSS (not WSS) workflows. In order to provide list data you will need to send the list information up to the task form using the ItemMetadata.xml and SPWorflowTaskProperties.ExtendedProperties[]. If you didn't want to send that info you can try to use VSTA in the form and retrieve said information programmatically into InfoPath.
ASPX Form - Not too many people have created custom task forms (your approval form is really a task form). This form needs to be deployed to the _Layouts directory and is quite difficult to create. I recommend searching Robert Shelton's blog as he has a great example of how to create a SharePoint aspx task form.
Ulysses

Resources