Choose your language

Choose your login

Contact us

Data access and custom reports

This page applies to:

The default, PaperCut NG/MF installation stores data in an internal database. The database is Apache Derby - an open source database written by IBM and based on their DB2 Cloudscape Database. The internal database is optimized for embedded use, is very robust, ACID compliant, and scales well. The internal database, however, is not designed for multi-application access. To access the data from an external source, such as a reporting program, consider running PaperCut NG/MF on an external database (RDBMS) designed for multi-user and multi-application user access. Common database solutions include Microsoft SQL Server, Oracle, PostgreSQL, and MySQL. For more information see Deployment on an external database (RDBMS) .

The PaperCut NG/MF data structure is relatively simple and people with Crystal Reports, MS Access, JasperSoft Studio, or SQL experience should have no problems extracting data or writing custom reports. Report developers should keep in mind:

  • Access the data only in read-only mode. Modifying data directly underneath the application can cause unpredictable behavior.

  • Always test any custom reports after an upgrade as the underlying data format might have changed. PaperCut Software developers try to minimize data structure changes but they are expected to occur in major upgrades.

You can find a database schema diagram in the PaperCut NG/MF knowledge base located at Database Schema Diagrams .

Plain text print log

In addition to storing print log information in the database, a real-time, plain text log is also written into the directory:

[app-path]/server/logs/print-logs

The log file is in a tab delimited format and a new log is created for each day. Files are named with the format printlog_yyyy_mm_dd.log and files are archived for 30-days. The tab delimited file can be easily imported into programs, such as Microsoft Excel, Microsoft Access. or other databases.

FieldDescription
Field 1Date in format yyyy-MM-dd\th:mm:ss a/p
Field 2Server Name
Field 3Printer Name
Field 4User who printed the document
Field 5Account charged (usually the user's personal account but could be a shared account)
Field 6Client/Workstation Name
Field 7Document name
Field 8Total number of pages
Field 9Total number of color pages
Field 10Number of copies (this has already been used to calculate the total pages).
Field 11Cost
Field 12Duplex status
Field 13Grayscale status (Color mode)
Field 14Paper Size (e.g. Letter, A4)
Field 15Paper Height in Millimetres (divide by 24.5 for inches)
Field 16Paper Width in Millimetres (divide by 24.5 for inches)
Field 17Print job size in KB
Field 18Printer Language
Field 19Cost Adjustments (comma separated)
Field 21Job Type (PRINT)

Comments