Functionality Questions : Looking to Buy

The product I work on currently allows business users to upload mailmerge Word documents (v2003 and 2007) to our system. After running some processes, they request 1 or more documents to be mailmerged with data from our system which is merged and converted to PDF on a server then returned to the end user via our web application.
We are doing this via Word automation on the server. I am fully aware that this is frowned upon by Microsoft and others and isn’t technically supported, but that is what we have. Due to this, we have a couple of issues that we contantly deal with. The first is stability which is mainly due to Word flaking out on the server and popping up message boxes which then locks the instance into memory. The 2nd is that we cannot mailmerge with more than 255 fields. We use a tab delimited data file which is suppose to support more than 255 fields, but Word will only process without a popup if it is 255 fields or less.
We would like to replace Word on the server for the processing with the Aspose.Words product. The technical questions I have that I couldn’t find answers to on the site are the following:

  1. Does Aspose support conditional field codes, i.e. if conditions, in the word document? Our users code in IF conditions to hide and show data based on values in the merge document. Some of these are complicated and nested (ifs within ifs) several levels deep. This is why we have had to stick to Word automation up till now.
  2. Can documents be saved as PDF after mailmerge?
  3. Is the SDK fully thread safe? This will be running on a server that processes numerous mailmerge jobs at a time.

Thank you in advance for your prompt response.


Thank you for your interest in Aspose.Words.

  1. Yes, Aspose.Words supports IF fields conditional evaluation. Please see the following link for more information:
  2. Sure, you can save the output document as PDF. Please follow the link to learn more:
  3. Yes, Aspose.Words is multithread safe as long as only one thread works on a document at a time. It is a typical scenario to have one thread working on one document. Different threads can safely work on different documents at the same time.
    Please let me know if you need more information, I will be glad to help you.
    Best regards.