Uniface User Forum

  • 1.  Print a form to PDF

    Posted 12-04-2018 13:54


    Is there a way to configure a Print Job that allow me to print a form or a report directly into a preset directory with the Microsoft Print to PDF?

    Thanks and regards

  • 2.  RE: Print a form to PDF

    Posted 12-07-2018 14:42

    Hi Alejandro,

    Microsoft Print to PDF is an interactive printer asking where you want your PDF file to be saved; AFAIK it does NOT fit your needs!

    To print directly to a PDF file without ANY interaction we are using GhostscriptPDF printer coming for free with Ghostscript together with another free package "Multi File Port Monitor" to define where the PDF file must be saved and which name should have. It works and it is quite fast!

    Hope it helps!


  • 3.  RE: Print a form to PDF

    Posted 12-10-2018 03:38

    Hi Gianni, thanks for the info

    I found this guide on how to install the printer: https://kutana.fogbugz.com/?W2013 but when I run the Uniface form the PDF file is always empty. Could I be missing something?


  • 4.  RE: Print a form to PDF

    Posted 12-10-2018 10:01

    Hi Alejandro,

    I've taken a look to the link you provided. It's essentially the same thing we are configuring but 2 items are different for us:
    1) We are using the printer driver provided with Ghostscript instead of Ricoh printer used in your documentation. The driver is called ghostpdf and it is available in the lib subdir of your ghostscript installation. When you install the printer browse to the ghostscript lib subdir and you will find it!
    2) In "Multi File Port Monitor" we are configuring the file name to be generated as %t.pdf. With this configuration the PDF file is assuming as name the instance name of your printing Uniface component; in this way any Uniface application can easily recognize the PDF file is generating and its name can be uniquely driven by the programmer to avoid any overwriting.

    About PDF file with size equal 0 (zero), defining your PDF generation you should take in consideration the asyncronous execution of printing jobs on ALL platforms:
    when a printjob is executed is taken in charge from spooling subsystem; when your Uniface application is getting back control to your ProcScript it does NOT mean your PDF is already completed. You should wait a little bit for its completition (convertion from PS to PDF is taking place); syncronization between the two subsystems (your Uniface application and spooling subsystem) is up to you and could be implemented in many different ways. It is a best practice to include this waiting stage in a global proc to be generically called to "print to PDF file".

    With this configuration a shared printer on a server can be easily used at LAN level.

    Hope again it helps...


  • 5.  RE: Print a form to PDF

    Posted 07-19-2019 15:36

    Question: How did you set your print device to use GhostPDF?  (I have created the driver and the multi-file port monitor).  Then I created a print model called PostScript, using P_X11, but I'm unsure what to put in the Print queue and/or print options?


  • 6.  RE: Print a form to PDF

    Posted 07-20-2019 17:43

    Hi Joanne,

    to use GhostPDF: you should define:
    - a Uniface PrintAttributeModel with the standard Uniface Windows driver P_MSWINX, PRINTMAN with /NODIALOG;
    - printing should be directed to the printer  configured using Postscript driver available with Ghostscript AND MultiFilePortMonitor;

    That's all!