Troubleshooting PDL Transforms

PDL transforms is an advanced feature, so please read this section in the manual to understand how transforms work and how to write a transform.

To troubleshoot any PDL transform problem, please follow the steps listed below:

1. Open the file [app-path]/providers/print/[platform]/print-provider.conf in a text editor.

2. Set debug=on and EnableTransformTestMode=on in print-provider.conf file.

3. Restart the Print Provider.

Once the transform test mode is enabled, a .log file and .before and .after spool files are created each time a spool file is transformed by redirection. They are created under [app-path]/providers/print/[platform]/transforms/logs.

Note: This is an advanced option so remember to turn it off when you are done.

These 3 files will have names based on the spool file name. For example: On Windows C:\Windows\system32\spool\PRINTERS\00259.SPL would have 3 corresponding files 259.log, 259.before and 259.after.

Common Problems

No .log, .before or .after files.

Check that transforms are supported.

We added support for PDL Transforms in PaperCut version 14.3. See the release history here.
To check your version of the print provider, search backwards from the end of print-provider.log for “Starting print provider service. Version:” (no quotes). If the print-provider version is less than 14.3 then you will need to upgrade to 14.3 or later.
Another way of finding out whether it is supported in your version of PaperCut or not is by searching print-provider.log for “xvp” (case insensitive match, no quotes). If you cannot find this then your version of the print provider either does not support PDL transforms.

Check that transform test mode is enabled

Search print-provider.log for “TRANSFORM LOGGING IS ENABLED” (no quotes). There should be one of these messages for every print job when EnableTransformTestMode=on in print-provider.conf.
If you cannot find one of these messages for your print job then check print-provider.conf to verify that is has debug=on and EnableTransformTestMode=on and restart the print provider again.

Check that PaperCut is finding and applying your transform

Search backward from end of print-provider.log for TRANSFORM LOGGING: WORK TO DO?
There will be a message like TRANSFORM LOGGING: WORK TO DO? language=‘PostScript’,printer_name=‘sharedprinter’,printer_type=‘PaperCut Global PostScript’,target_printer_name=‘HP Color LaserJet’,target_printer_type=‘HP Color LaserJet PS’,has_work=1
If has_work=0 then there was no transform file under the transforms/system or transforms/custom directories that matched the printer language / printer type and target printer name / target printer type.
Check Appendix E. PDL Transform Language “Matching rules for running a transform script” to see why your transform is not being selected. If you cannot see why then please contract support.
If you see a log message TRANSFORM LOGGING: No transform selected which has the same fields as TRANSFORM LOGGING: WORK TO DO? then do the same as for has_work=0 above.

Redirected print job is not printing or is printing incorrectly.

Find the .log, .before and .after file for the print job.
If the .log file reports an error then try to fix it in your .transform file or contact support if you cannot. Try printing again after you have made your corrections.
If no errors are reported in the .log file then you are probably transforming the file in the wrong way. Compare the .before and .after files and try to identify the problem.
It is usually helpful to print directly to the printer being redirected to, save the spool file and compare it to the .after file. Transforms attempt to emulate direct printing so these files should match for printer language syntax and for the options being selected.

If you cannot tell why your transform did not work then submit a ticket with the .transform, .log, .before and .after files to us at ( with a description of the problem.

Categories: Troubleshooting Articles, Print Queues

keywords: global print driver