This application is based on and claims priority under 35 USC 119 from Japanese Patent Application No. 2009-064785 filed Mar. 17, 2009.
1. Technical Field
The present invention relates to a storage medium storing a print management program, a print management apparatus, and a printer system.
2. Related Art
Conventionally, there have been known a print control apparatus that prevents repetitive print failures and a print control system that copes with cases where printing is aborted.
According to an aspect of the invention, there is provided a print management apparatus that includes: a first storage component that stores a print history associated with a print data identifier for identifying print data and a printing parameter to be used to perform printing based on the print data; a second storage component that stores an alert history associated with the print data identifier and alert information; a first control component that performs a control operation to store the print history of the print job data into the first storage component, when the print data identifier of the print job data containing the print data, the print data identifier, and the printing parameter is not stored in the first storage component; a second control component that performs a control operation to store an alert history including a printing parameter stored as alert information in the first storage component into the second storage component, when the print data identifier of the print job data is stored in the first storage component, and a printing parameter stored in the first storage component is not the same as a printing parameter of the print job data; a select component that prompts a user to select a print continue command or a print abort command, when the print data identifier of the print job data is stored in the second storage component; and a print control component that controls the printing, based on the select result of the select component.
Exemplary embodiments of the present invention will be described in detail based on the following figures, wherein:
The following is a description of exemplary embodiments of the present invention, with reference to the accompanying drawings.
As shown in
Each computer 12 includes a CPU (Central Processing Unit) 18 that performs various kinds of control operations, a ROM 20 that stores various kinds of control programs to be executed by the CPU 18 and stores various kinds of data, a RAM (Random Access Memory) 22 that is temporarily used as the work storage area in various operations, a driver 23 that performs data and command reading/writing on a storage medium such as a CD-ROM, an OS (Operating System), a printer driver that sets the various functions of the printer 16, a storage device 24 that stores various application programs, and a keyboard and a mouse. The computer 12 also includes a network interface 32 that is connected to an input device 26 that inputs various kinds of information such as a print continue command and a print abort command, a display device 28 that displays various kinds of information such as an alert dialog, and a network 30. When communications with the printer server 14 and the printer 16 are performed via the network 30, the network interface 32 exchanges various kinds of information with the printer server 14 and the printer 16. Those components of the computer 12 are electrically connected via a system bus 34.
The printer server 14 includes a CPU 36 that performs various kinds of control operations, a ROM 38 that stores various kinds of control programs to be executed by the CPU 36 and various kinds of data, a RAM 40 that is temporarily used as the work storage area in various kinds of operations, a driver 42 that performs data and command reading/writing on a storage medium such as a CD-ROM, a storage device 44 that stores the later described print history table, the later described print failure table, and the likes, and a network interface 46 that is connected to the network 30 and exchanges various kinds of information with the computer 12 and the printer 16 when communications with the computer 12 and the printer 16 are performed via the network 30. Those components of the printer server 14 are electrically connected via a system bus 48.
The printer 16 includes a CPU 50 that performs various kinds of control operations, a ROM 52 that stores various kinds of control programs to be executed by the CPU 50 and various kinds of data, a RAM 54 that is temporarily used as the work storage area in various kinds of operations, a driver 56 that performs data and command reading/writing on a storage medium such as a memory card, a printer engine 57 that forms an image on a recording medium based on print job data designating a print job, a storage device 58 that stores a device controller for controlling the operation of the printer engine 57, a display panel 60 that displays various kinds of information, and a network interface 62 that is connected to the network 30 and exchanges various kinds of information with the computer 12 and the printer server 14 when communications with the computer 12 and the printer server 14 are performed via the network 30. Those components of the printer 16 are electrically connected via a system bus 64.
The later described processing routine program illustrated in
Referring now to
First, the user 1 transmits a print command from the computer 12A to the printer server 14 to collectively print a 2-page ledger sheet A onto one paper sheet (hereinafter referred to as “2UP”printing). In this case, the printer server 14 performs print control on the printer 16, and the printer 16 performs 2UP printing with the use of the data of the ledger sheet A.
After performing the 2UP print command on the computer 12A, the same user 1 transmits a 1UP print command to print the same ledger sheet A, or transmits a print command to print the same ledger sheet A with a different parameter. In such a case, the printer server 14 receives the 1UP print command to print the ledger sheet A. Having received the print command to print the same ledger sheet A with a different number of UP sheets, the printer server 14 determines that the previously transmitted 2UP print command to print the ledger sheet A is a wrong print command, and stores the data indicating the wrong print command into the print failure table. The printer server 14 then performs print control on the printer 16 to perform 1UP printing. When print commands with different parameters are issued for the same ledger sheet as described above, the printer server 14 determines that the former print command is a wrong print command, since there is a high probability that the latter print command is the command to correct the former print command that is a wrong command.
Under the print control of the printer server 14 based on the latter print command, the printer 16 performs 1UP printing. In this manner, 2UP printing and 1UP printing are both performed for the ledger sheet A, and the data indicating that the 2UP print command is a wrong print command is stored into the print failure table.
The other user 2 next transmits a print command from the computer 12B to the printer server 14 to perform 2UP printing for the same ledger sheet A. Since a print command to perform 2UP printing for the ledger sheet A is stored as a wrong print command in the print failure table, the print server 14 transmits a message to the effect that there is a possibility of a wrong print command to the computer 12B, and displays this message on the display device 28. In this manner, the printer server 14 prompts the user 2 to select either a print continue command or a print abort command. The printer server 14 then performs print control, according to the selected command.
The operation of the printer system 10 is now described in greater detail.
Referring now to
In step 100, a check is made to determine whether a print command containing user ID has been received from an application. When such a print command has been received, print data and the parameter for performing printing based on the print data (hereinafter referred to as the printing parameter) are obtained from the application in step 102.
When such a print command is determined not to have been received in step 100, the operation is put into a stand-by state until a print command is received.
In step 104, a print data identifier for identifying the print data obtained in step S102 is attached to the user ID obtained in step 100 and the print data and the printing parameter obtained in step 102. In this manner, print job data is generated.
In step 106, the print job data generated in step 104 is transmitted to the printer server 14.
In step 108, a check is made to determine whether the later described alert message has been received from the printer server 14. When the alert message has been received, a failed print alert dialog is displayed on the display device 28 in step 110.
When the alert message is determined not to have been received in step 108, a check is made to determine whether a predetermined period of time has passed in step 112. When the predetermined period of time has passed, the CPU 18 determines that there is no alert history in the print failure history table of the printer server 14, and ends the operation. When the predetermined period of time has not passed yet, the CPU 18 determines that an alert history is still being searched for in the print failure history table of the printer server 14, and the operation returns to step 108.
The display device 28 displays an alert message such as “there is a possibility of wrong print! Please check the following setting: 2UP assignment”, a print command button, and an alert dialog showing a return button (see
When the print continue command is determined not to have been received in step 114, the operation moves on to step 118, and a check is made to determine whether a print abort command has been input by the user pressing the return button. When the print abort command has been input, the print abort command is transmitted to the printer server 14 in step S120, and the operation comes to an end. When the print abort command has not been input, the operation returns to step 114, and the determining procedures of steps 114 through 118 are repeated until one of the commands is input.
Referring now to
In step 200, a check is made to determine whether print job data has been received from the computer 12. When print job data has not been received, the CPU 36 stands by until print job data is transmitted.
When print job data has been received, the print failure table is searched for the alert information (alert history) corresponding to the print data identifier and the printing parameter contained in the print job data received from the computer 12 in the step 202.
In the print failure table, the print data identifiers (such as “DI ledger sheet 01.pdf” and “report material.doc”) are associated with printing parameters (such as “document orientation: vertical”, and “N-UP number: 2”), and printing parameters that differ between previously received print job data and later received print job data are stored as the alert information, as shown in Table 1. In the example shown in Table 1, while the number of N-UP as the printing parameters of the former received print job data is 2, the number of N-UP as the printing parameter of the latter received print job data is 1. Accordingly, “N-UP number: 2” is stored as the alert information, as the command to perform 2UP printing is determined to be a wrong print command.
In step 204, a check is made to determine whether the alert history has been searched from the print failure table in step 202. When the alert history has not been searched, a print history storing process (described later) is carried out in step 212.
When the alert history has been searched, the alert history is obtained from the print failure table in step 206.
In step 208, an alert message to that effect that there is a possibility of a print failure is transmitted to the computer 12.
A print continue command or a print abort command is transmitted from the computer according to the alert message. In step 210, a check is made to determine whether a print continue command has been received from the computer 12. When a print continue command has been received, a print history storing process (described later) is carried out in step 212. Print control is then performed on the printer 16 in step 216, and the operation comes to an end.
When a print continue command has not been received in step 210, a check is made to determine whether a print abort command has been received from the computer 12 in step 214. When a print abort command has been received, the operation comes to an end. When a print abort command has not been received in step 214, the operation returns to step 210, and the determining procedures of steps 214 and 210 are repeated until either of the two commands is input.
Referring now to
In step 300, the print history table shown in Table 2 is searched for the print history having the user ID and the print data identifier contained in print job data received from the computer 12. In the print history table, user IDs for identifying users, the times at which print job data are received, print data identifiers, and printing parameters contained in the print job data are associated with one another and are stored.
In step 302, a check is made to determine whether the print history searched for in step 300 exists in the print history table. When the print history does not exist, the user ID, the reception time, the print data identifier, and the printing parameter of the print job data received from the computer 12 are associated with one another and are stored into the print history table in step 314.
When the print history exists in step 302, the print history is obtained from the print history table in step 304.
When two or more print commands are issued for the same print job within a predetermined period of time, there is a high probability that the two or more print commands are issued within the predetermined period of time because the previous print command is inappropriate. When only one print command is issued for one print job within the predetermined period of time, there is a high probability that the one print command is appropriate. Accordingly, in step 306, a check is made to determine whether the received print job data is a print history stored into the print history table within the predetermined period of time, based on the time data in the print history obtained in step 304. When the reception time of the print job data is a predetermined amount of time or more past the previous reception time, the print command is determined to be an appropriate print command. The operation then moves on to step 314, and the data is stored into the print history table as described above.
When the print history obtained in step 304 is determined to be a print history stored into the print history table within the predetermined period of time since the reception of the print job data in step 306, the print command might be an inappropriate print command (a wrong print command). Therefore, the operation moves on to step 308.
In step 308, a check is made to determine whether the printing parameters contained in the print job data received from the computer 12 differ from the printing parameters contained in the print history obtained in step 304. When the printing parameters are the same, the print commands are determined to be appropriate print commands, though two or more print commands are issued for the print job within the predetermined period of time. The printing parameters contained in the print history obtained in step 304 are also determined to be appropriate printing parameters. The operation then moves on to step 314.
When the printing parameters contained in the print job data received from the computer 12 in step 308 are determined to differ from the printing parameters contained in the print history obtained in step 304, the printing parameters contained in the print history obtained in step 304 are determined to be inappropriate parameters. In step 310, the difference between the printing parameters contained in the print job data received from the computer 12 and the printing parameters contained in the print history obtained in step 304 is computed.
In step 312, the print data identifier and the printing parameters of the print history obtained from the print history table in step 304, and the printing parameters that differ from the printing parameters of the print history and have already been stored in the print history table (the printing parameters of the print job data previously designated by a print command) are stored as alert information into the print failure table, with the alert information being associated with the print data identifier.
In step 314, the time of reception from the computer 12, the printing parameters of the received print job data, and the likes are associated with the print data identifier, and are stored into the print history table.
Through the above operation, failure information is shared among network users, and printing is performed with printing parameters suitable for each document.
Next, a second exemplary embodiment is described. In the second exemplary embodiment, the storage device that is provided in the printer server to store the print history table and the print failure table in the first exemplary embodiment is provided in a printer, and the print history is managed in the printer. In
As shown in
The device controller that controls the operation of a printer engine 57, and the print history table and the print failure table described in the first exemplary embodiment are stored in a storage device 52 in the printer 16.
The later described processing routine illustrated in
Next, the operation of the printer system 10 is described in greater detail.
Referring now to
Accordingly, in step 106 of
Referring now to
Accordingly, in step 216 of
Referring now to
The printer system in accordance with this exemplary embodiment includes the same computer and the same printer as those of the second exemplary embodiment.
The printer driver for setting various functions of the OS and the printer, various application programs, the print history table and the print failure table described in the first exemplary embodiment, and the likes are stored in the storage device in the computer.
The following processing routine illustrated in
Accordingly, in step 202 of
Next, a fourth exemplary embodiment is described. In the fourth exemplary embodiment, a check is made by the printer server to determine whether information set as select unnecessary information is contained in print job data received from the computer. In
The structure of the printer system 10 in accordance with this exemplary embodiment is the same as the structure of the first exemplary embodiment, and therefore, explanation of the structure of the printer system 10 is omitted herein.
Next, the operation of the printer system 10 is described in detail.
The procedures according to the computer processing program to be executed by the CPU 18 of the computer 12 are the same as those of the first exemplary embodiment, and therefore, explanation of them is omitted herein.
Referring now to
Accordingly, in step 504 of
This exemplary embodiment may be applied to the second exemplary embodiment and the third exemplary embodiment.
When this exemplary embodiment is applied to the third exemplary embodiment, if a print command is not obtained in step 100 of the third exemplary embodiment, a check is made to determine whether the print data identifier, the user ID, or the application name is to be set as the select unnecessary information in step 500. When the print data identifier, the user ID, or the application name is to be set as the select unnecessary information, the print data identifier, the user ID, or the application name is set in step 502, and the operation returns to step 100. When the print data identifier, the user ID, or the application name is not to be set in step 500, the operation returns to step 100. When a print command is obtained in step 100, the print data identifier for identifying the print data is attached to the print data and the printing parameters, so as to generate print job data in step 104. After the print job data is generated in step 104, a check is made to determine whether the file name or the user ID set beforehand in step 502 or the application name set beforehand in step 502 is newly added to the print job data in step 504.
Next, a fifth exemplary embodiment is described. In the fifth exemplary embodiment, the printer server determines whether the alert history searched from the print failure table contains information that is set beforehand as the select unnecessary information. In
In the printer system 10 in accordance with this exemplary embodiment, a print failure table that stores alert information associated with user IDs, print data identifiers, and printing parameters as shown in Table 3 is used in place of the print failure table stored in the storage device 44 of the first exemplary embodiment.
Next, the operation of the printer system 10 in accordance with the fifth exemplary embodiment is described in detail.
The operation according to the computer processing program to be executed by the CPU 18 of the computer 12 is the same as that of the first exemplary embodiment, and therefore, explanation of the operation is omitted herein.
Referring now to
Accordingly, in step 604 of
In this exemplary embodiment, the procedure to determine whether the print job data received from the computer 12 contains the preset user ID in step 604 is applied to the first exemplary embodiment. However, this procedure may also be carried out in any of the second through fourth exemplary embodiments.
Next, a sixth exemplary embodiment is described. In the sixth exemplary embodiment, the printer server determines whether the print history searched from the print history table contains information that is set beforehand as the select unnecessary information. In
The structure of the printer system 10 in accordance with this exemplary embodiment is the same as that of the first exemplary embodiment, and therefore, explanation of the structure is omitted herein.
Next, the operation of the printer system 10 in accordance with the sixth exemplary embodiment is described in detail.
The operation according to the computer processing program to be executed by the CPU 18 of the computer 12 is the same as that of the first exemplary embodiment, and therefore, explanation of the operation is omitted herein.
Referring now to
Accordingly, in
Referring now to
Accordingly, in step 704 of
In this exemplary embodiment, a check is made to determine whether the preset user ID is contained. However, an IP address or a MAC address may be set, and a check may be made to determine whether the preset IP address or the preset MAC address is newly added to print job data received from the computer. When the preset IP address or the preset MAC address is contained, the alert history is not stored into the print failure table.
In this exemplary embodiment, the procedure to determine whether the preset user ID is contained in step 704 is applied to the first exemplary embodiment. However, this procedure may also be carried out in any of the second through fifth exemplary embodiments.
By carrying out the above procedures, the print job data of a user that does not benefit from print failure information is not stored as print failure information.
In each of the first through sixth exemplary embodiments, the use of the print failure information that has been stored over a predetermined period of time among the print failure information stored in the print failure table may be prohibited.
In each of the first through sixth exemplary embodiments, after the differences between the printing parameters contained in print job data received from the computer 12 and the printing parameters contained in the print history are computed, a check may be made to determine whether the number of different parameters is a predetermined number or less. When the number of different parameters is the predetermined number or less, an alert history may be stored into the print failure table.
In each of the first through sixth exemplary embodiments, the program for performing the operation of the computer, the program for performing the operation of the printer server, the program for performing the print history storing process, and the program for performing the operation of the printer are stored in a ROM in advance. However, the invention is not limited to that arrangement, and those programs may be stored in a computer-readable recording medium such as a CD-ROM, a MD, a MO, a DVD-ROM, a flexible disk, a memory card, or a DAT.
In each of the first through sixth exemplary embodiments, a dialog is displayed on the display device, so as to prompt a user to select a print continue command or a print abort command. However, a user may be prompted to select a print continue command or a print abort command through voice guidance or the like, and print control may be performed according to the selected command.
In each of the first through sixth exemplary embodiments, when there is a difference between printing parameters, the print command is determined to be a wrong print command if print job data is again received within a predetermined period of time since the print job data is received last time. However, if print job data is again received within a predetermined period of time since the print job data is received last time, the print command may be determined to be a wrong print command.
Number | Date | Country | Kind |
---|---|---|---|
2009-064785 | Mar 2009 | JP | national |