One of our Dynamics CRM customers recently came to us asking for a custom solution to automatically deliver Dynamics-rendered documents to their clients. They were already utilizing several hundred Adobe forms across SharePoint and Dynamics CRM. The requirement called for requested tasks (manual or via workflow) to produce documents rendered utilizing the information from Dynamics CRM.
Use the existing industry form templates.
Render the forms dynamically not only with CRM data, but with different signatures and images.
Generate documents on demand or via Workflow.
Email the documents to the customer.
We developed a Custom Workflow Assembly (CWA) for Dynamics CRM that could be run from a primary entity. This CWA would then use the C# .NET iText library to modify the requested Adobe document, place CRM data into the document, render the document in memory, attach it to an email activity record, and save it in CRM.
Sounds simple, huh? Actually with the right approach, it wasn’t too bad.
Adobe Acrobat Form Editor
The form fields were edited to meet predefined naming conventions so that our CWA would know where to get the CRM data.
Microsoft Dynamics CRM
Document storage for the templates, and images stored outside of CRM (although these could have also been stored in CRM as web resources).
Adobe Form Positives
iText is a widely-accepted industry standard for modifying Adobe PDF files programmatically.
The rendered form needed to still have editable fields within the document for customers to enter and submit back to the company.
Adobe Form templates are easily editable by the end user.
One of our requirements was to also leave some form fields editable for a user to edit after we were done rendering.
The combination of the Dynamics CRM SDK with iText allowed us to produce a very robust and powerful PDF rendering technology for our customer. This enabled them to greatly increase productivity without increasing headcount.