PDF
No edit summary
(Automatically adding template at the end of the page.)
 
(3 intermediate revisions by 2 users not shown)
Line 1: Line 1:
MDriven reports are created with open document text (odt) or open document spreadsheet formats (ods).
MDriven reports are created with open document text (odt) or open document spreadsheet formats (ods).


If you need to convert the odt to PDF there are online services available. If you rather do this your self you can buy a third party library that has this ability or you can simply automate word (for odt) and have it save your odt as PDF.
If you need to convert the odt to PDF, there are online services available. If you would rather do this yourself, you can buy a third-party library that has this ability or you can simply automate Word (for odt) and have it save your odt as a PDF.


'''Please note''' that this solution with automating Microsoft Word only works well in a client that can access Word locally, like the WPF client. If you want to do conversion to PDF server-side in Turnkey och the MDrivenServer we recommend an on line service or a .Net component rather than trying to call Word. This is because the Word components don't work well being called from inside IIS.
'''Please note''' that this solution with automating Microsoft Word only works well in a client that can access Word locally, like the WPF client. If you want to convert to PDF server-side in Turnkey och the MDrivenServer, we recommend an online service or a .net component rather than trying to call Word. This is because Word components don't work well being called from inside IIS.


Here is an example of using a [[Serverside PDF|third party component]].
Here is an example of using a [[Serverside PDF|third-party component]]:
     Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();         
     Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();         
     foreach (var file in files)         
     foreach (var file in files)         
Line 31: Line 31:
         app.Quit();
         app.Quit();
       }
       }
For using C# code in Turnkey, look at [[CodeDress]]
To use C# code in Turnkey, look at [[CodeDress|CodeDress.]]
[[Category:Reports]]
[[Category:Reports]]
{{Edited|July|12|2024}}

Latest revision as of 15:44, 10 February 2024

MDriven reports are created with open document text (odt) or open document spreadsheet formats (ods).

If you need to convert the odt to PDF, there are online services available. If you would rather do this yourself, you can buy a third-party library that has this ability or you can simply automate Word (for odt) and have it save your odt as a PDF.

Please note that this solution with automating Microsoft Word only works well in a client that can access Word locally, like the WPF client. If you want to convert to PDF server-side in Turnkey och the MDrivenServer, we recommend an online service or a .net component rather than trying to call Word. This is because Word components don't work well being called from inside IIS.

Here is an example of using a third-party component:

   Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application();        
   foreach (var file in files)        
   {          
     if (System.IO.Path.GetExtension(file.FileName.ToLower()) == ".odt" )          
     {            
            if (File.Exists(file.FileName)) // Protect againts doublettes
            {
              _Document doc = word.Documents.Open(file.FileName);
              doc.Activate();
              string newfile;
              if (pdf)
              {
                newfile = System.IO.Path.ChangeExtension(file.FileName, ".pdf");
                doc.SaveAs2(newfile, WdSaveFormat.wdFormatPDF);
              }
              object oMissing = System.Reflection.Missing.Value;
              doc.Close(ref oMissing, ref oMissing, ref oMissing);
              File.Delete(file.FileName);
              file.FileName = newfile;
            }
        
        }
        Microsoft.Office.Interop.Word._Application app = word.Application;
        app.Quit();
      }

To use C# code in Turnkey, look at CodeDress.

This page was edited 100 days ago on 02/10/2024. What links here