First insight into its manifold capabilities
There are different ways to access the list of pending jobs. The command "kjobviewer -d danka_infotec_IS2027" f.e opens a first window, showing the jobs for the named printer only. From there, you can go everywhere. You can switch to a view to see all queued jobs of all printers in a single list, or you can select the jobs of any other printer. Checkout the button showing a printer icon to navigate through the different queues. "kjobviewer -a" starts the window in the "all jobs for all printers"-mode, "kjobviewer --help" shows all available options. Once open, all icons show "tooltips", if you park the mouse for a short moment over it.
kjobviewer in reality is much more than its humble name suggest. Of course one can view jobs in the different queues waiting for print. But it can also manipulate jobs in many different ways. It has quickly evolved in the recent months to become more of a general Print Spool and Queue Management System than a mere "viewer".
kjobviewer works with all supported spoolers or print subsystems. The kjobviewer feature details are, again, you guessed it, dependent on the print subsystem in use. Like with other modules, not all spoolers provide the same amount of information about jobs, or the same level of user of administrator interaction. CUPS in this field too is the most feature-complete system for "doing something with jobs that are sent away already and wait for print, possibly on a remote print server".
kjobviewer: pending jobs for all printers (job billing info in
right column)
With kjobviewer you can...
Note, that some of these manipulations require job ownership or root access.
kjobviewer showing completed jobs, sorted by job size (no. of
pages).
kjobviewer can retrieve detailed information even about past and completed jobs. This requires to set CUPS to "PreserveJobHistory True". If you additionally set "PreserveJobFiles True", you can even re-print old jobs without sending them anew across the network!
So kjobviewer is a great tool for users and admins as well as printshop operators and managers to run their daily tasks. It is on par with some very expensive commercial software applications that run in the Windows world of enterprise printing.
kjobviewer is automatically started if you print a job. It remains in the background, only visible as a small printer icon in kicker. Click on the icon to open a window with a list of jobs.
kjobviewer starting from "minicli" applet.
To start kjobviewer manually, type its name into a terminal window (like konsole) or into the "Mini-CLI" that opens upon [ALT]+[F2]. You need to give a parameter to the command:
Once started, the view can always be extended to all printers or limited to one specific by using the printer icon with the little arrow in the toolbar.
If you have the KDEPrint Printing Manager opened (with the viewing option to "Show Printer Details" activated), selecting a printer and opening the tab called "Jobs" gives you the kjobviewer window as an embedded part of the KDE Printing Manager. It is then restricted to the view of the highlighted printer.
You can use all visible column headers to sort the order of the visible jobs. Clicking on "Owner" groups together all jobs belonging to the same owner, clicking on Job-ID sorts in the order of the numerical job id (while a second click will just reverse this order). This is very useful if you are searching for a particular job in a long list.
NOTE: the order of processing for the jobs is always according to the "job-priority"-value, and, if this is equal for multiple jobs, the order of the "Job-ID".
kjobviewer is not only good for screening the queued up jobs. You can also "manipulate" the order of the jobs, put them on hold, re-start them, cancel them completely, move jobs to a different destination and do various other things. However, not all sorts of manipulations are possible for all print subsystems.
kjobviewer provides the most feature-rich presentation of your joblists if it deals with CUPS printjobs.
If you are using a different print subsystem, and miss some of the features presented here, this is most likely because this feature is not present in that print subsystem at all. In some cases, kjobviewer might not yet have it implemented at the present time and possibly supports it at a later stage.
You can use kjobviewer to access printers on any remote CUPS server to query for jobs. Of course, this is subordinate to your granted access rights for this server's resources... If used in the "embedded" form in the Printer Manager, you can even edit remote jobs queued on a remote server, after you logged into this server using the "System Options" button.
pending jobs in kjobviewer: moving highlighted job to different
printer.
You can move any queued job to a different printer. Highlight the job in question and rightclick: you will see a context-menu of allowed actions. One is the entry "Move to Printer..."
NOTE: You need to have sufficient access rights to conduct the action (like owning the job, being allowed to use the new printer, not having overdone with possible job-quotas set on the new printer, etc.).
CUPS supports the restart of completed jobs on printers that are defined on the *local* host. However, this requires the enabling of the "PreserveJobHistory On" *plus* the "PreserveJobFiles On" directive in the CUPS configuration, otherwise it will not work. (You will see a "Requested Operation could not be completed" error message). Also, it is a feature unique to CUPS and not supported by other print subsystems.
Depending on access rights, with CUPS you can edit job attributes of a pending job. Right-click on a pending job (not in the state of "processing") and select "Edit Attributes". All options are accessible, just like if you send the job initially.
Taskbar icons in kjobviewer are "active", if the related action is possible -- otherwise they are "grayed out". The icons are associated with "tooltips". Tooltips explain what the icons mean (if you can't guess it). A tooltip appears, if you "park" the mouse over an icon for a short moment.
All icons from kjobviewer toolbar.
The icons are, from left to right:
If a particular action is not possible or not allowed, the icon is "grayed out". For job-specific actions you need to have the job highlighted first, before the icons become active.
You can list the jobs for different specific printers in separate windows. You can also have all jobs of all printers in one window. (You can not yet create a joint view of the jobs from a few selected printers in one window; this feature might appear in a future release).
All views of job lists are presented as a table with different headings.
Possible headings are:
As you might expect, you can sort those lists according to your needs. Long lists might have hundreds of jobs enumerated from dozens of different users. Imagine you want to see all queued jobs by one Michael Goffioul. Clicking on the column heading "Owner" will aggregate all jobs associated with the same job owners together. So Michael's jobs are easily identifiable. Now you can easily select one of them to give it a higher priority, cancel it or whatever action is wanted. -- Jobs could also be sorted according to their size in kBytes or their amount of pages (completed jobs only).
The job IPP report gives an overview on the IPP attributes that have been assigned to the selected job. You can also print this report for further reference. The IPP report may be useful for troubleshooting and accounting purposes. Imagine you want to know when exactly the job was sent to printing, when it was called from the queue for processing, and when it was finished. Look for the attributes "time-at-creation", "time-at-processing" and "time-at-completion". These are the new official names as defined in the new IPP standard protocol for the purpose of logging the timings of printjobs.
Many other jobsettings can be extracted by KDEPrint from the Job-IPP-report. [NOTE: Job-IPP-reports are only available when using CUPS.]
Job IPP Report: IPP attribute on "page-selection" is
highlighted.
Job IPP Report: IPP-attributes on "job-billing" and
"job-hold-until" highlighted.
The "Edit Job Attributes" dialog lets you change a job's print settings. Imagine you sent this one long printjob to printing, when you discover, that you had set it to simplex, but had meant to print it duplex. This dialog is for you! Use it to change your print settings without going back to your original document (which you'd need to send a second time over the network, while deleting the first shot.)
Also, after moving the job from one print queue to another, there is the need to at least check-control, but often also adapt the print settings to your new target device.
In some cases you will want to re-schedule a printjob for later printing (like when you have checked that the right paper is loaded, or for the late office hours, when you are pretty sure that there won't be someone else, claiming more karma than you, to get print priority over your running job...)
Right-click job and select "Edit Attributes" to change job
settings "a posteriori" while it waits on server for print.
Every CUPS (or, more general, IPP) printjob has a "job-billing" information tagged to it. This would often be just an "empty string". But you can use it to connect a billing account to every (or some) printjobs sent. The next version of KDEPrint will probably include a module that provides nicely formated reports and statistics from the CUPS page_log. At present, you need to use other tools for this.
Imagine a professional printing department in some large organization (as you often see in government bodies or large companies). They have many users printing to a central reproduction department, where digital monster network printers are running all day. In there, one or more operators handle the incoming jobs, assign target printers to them, load papertrays, unload output trays, deliver the finished products and do some amount of book-keeping. The job-billing option is visible in kjobviewer, and may even be edited by an administrator after the job is queued. It later will also appear in the CUPS page_log file (normally in the /var/log/cups/-directory), that counts every single page that is processed by the "pstops" filter.