1. Field of the Invention
The present invention relates to an image forming apparatus.
2. Description of the Related Art
When a printing job (printing data) is sent from a host apparatus such as a personal computer (PC) or the like to an image forming apparatus such as a multi function printer (MFP), a laser printer (LP) or the like, if only A3-sized paper is installed in a designated tray although the printing data is designated to be printed on A4-sized paper of by a printing condition of a print job, for example, the printing operation cannot be performed.
Similarly, for example, when staples are not installed although the printing job includes a printing condition such that the printed documents are to be stapled, for example, the printing operation cannot be performed.
In such cases, the image forming apparatus reports to a user that a printing operation is suspended because an occurrence of an error is detected to have the user input an additional instruction, such as to use papers in another tray for continuing the printing operation, to cancel the stapling of the printed document or the like, to continue the printing operation.
In Patent Document 1, an image forming apparatus by which the number of printing pages is appropriately determined before a printing operation is started to preserve productivity, is disclosed.
[Patent Document 1] Japanese Laid-open Patent Publication No. H11-231730
However, once an error has occurred, especially in a mechanical part of the image forming apparatus, for the image forming apparatus which just reports that the printing operation is suspended because of the occurrence of an error is detected, the image forming apparatus cannot continue a subsequent printing job. Thus, such an error interferes with not only the printing job for which the error is detected, but also potentially other printing jobs, until the user comes in front of the image forming apparatus to remove the cause for the error.
Further, the image forming apparatus as disclosed in Patent Document 1 can only deal with the shortage of paper.
The present invention is made in light of the above problems, and provides an image forming apparatus capable of preventing a state in which printing operations including a subsequent printing job cannot be performed because of an occurrence of an error by a preceding printing job.
According to an embodiment, there is provided an image forming apparatus including a data interpreting unit configured to interpret a printing condition of an entirety of a printing job when starting the printing job; and a job control unit configured to determine whether an occurrence of an error for the print job is predicted based on the interpretation of the printing condition of the entirety of the printing job by the data interpreting unit, and terminate the printing job when the occurrence of an error is predicted based on the interpretation of the printing condition of the entirety of the printing job by the data interpreting unit and store data of the printing job in an memory area.
Other objects, features and advantages of the present invention will become more apparent from the following detailed description when read in conjunction with the accompanying drawings.
Before describing of the present invention, the related example will be explained in detail with reference to
When the printing data is received (step S1), a printing condition for an entirety of a printing job is interpreted (step S2) and then data for each of the pages is interpreted to be drawn (step S3).
Then, it is determined whether the last page is drawn (step S4), and when the last page is not yet drawn (No in step S4), the process goes back to step S3 for a next page.
Further, after the data for a single page is interpreted and drawn (step S3), the drawn page is started to be printed (step S5), and whether an error occurs during printing (while printing) is detected (step S6).
When an error occurs during printing, the occurrence of the error is reported to a user and printing is suspended (step S7).
Then, when an instruction by the user is accepted (step S8), the printing operation is canceled when the user instructs to reset the printing job. At this time, the printing job is stored in a memory device and the printing job is terminated (step S9).
When the cause of the error is removed by the instructions from the user or by the user (for example, papers are supplied when the error is a shortage of papers), or when the printing condition is changed so that the error is removed (for example, the designated tray in which papers are in short supply is changed to another in the printing condition when the error is a shortage of papers or the like) and continuation of the printing operation is instructed, the printing operation is restarted (step S10), and the process goes back to monitoring an occurrence of an error during printing (step S6).
When any error occurs during printing, the paper is ejected (step S11), and when all of the pages are printed (ejected), the printing job is terminated (step S12).
The invention will be described herein with reference to illustrative embodiments. Those skilled in the art will recognize that many alternative embodiments can be accomplished using the teachings of the present invention and that the invention is not limited to the embodiments illustrated for explanatory purposes.
It is to be noted that, in the explanation of the drawings, the same components are given the same reference numerals, and explanations are not repeated.
The image forming apparatus 1 may be a multi function printer (MFP), a laser printer (LP) or the like. As shown in
The image forming apparatus 1 includes a data receiving control unit 101, a printer control unit 103, an image drawing unit 108, a memory control unit 109, and an engine control unit 110, which are functional units actualized by software (a computer program) operated on computer hardware installed in the image forming apparatus 1.
The data receiving control unit 101 includes a data receiving unit 102. The printer control unit 103 includes a job control unit 104, a page control unit 105, a data control unit 106, and a data interpreting unit 107.
The image forming apparatus 1 further includes a user interface 111, a memory area 112 (memory unit), and an engine 115.
The memory area 112 is composed of a received data storing area 113 (HOSTBUF) and a suspended data storing area 114 (DATABOX).
The data receiving control unit 101 has a function to control an operation of receiving data from the host apparatus 3. The data receiving unit 102 has a function of processing received data.
The printer control unit 103 has a function to control a printing operation by the engine 115. The job control unit 104 has a function to control processing the printing job of printing a document composed of a single page or plural pages. The page control unit 105 has a function to control processing each of the pages included in a printing job. The data control unit 106 has a function to control data related to printing. The data interpreting unit 107 has a function to interpret content of data.
The image drawing unit 108 has a function to form image data based on a document to be printed included in a printing job.
The memory control unit 109 has a function to control reserving and releasing memory used for processing of printing or the like.
The engine control unit 110 has a function to control the engine 115.
The user interface 111 is an input/output device such as a control panel or the like and has a function to accept an input operation by a user and report information to the user.
The memory area 112 is composed by a memory device such as a memory, a Hard Disk Drive (HDD), or the like. The received data storing area 113 is an area in which data received from the host apparatus 3 is stored. The suspended data storing area 114 is an area in which data of a printing job for which printing is suspended or canceled is stored.
The engine 115 is a mechanical unit such as an electrophotographic printer or the like.
In
The job control unit 104 determines whether an occurrence of an error is predicted based on the interpretation of the printing condition of the entirety of the printing job by the data interpreting unit 107 (step S103).
When the occurrence of an error is predicted (YES in step S103), the job control unit 104 terminates the printing job without performing a printing operation and stores the printing job in the suspended data storing area 114 (step S104). When a subsequent job exists, the job control unit 104 starts processing the subsequent job.
When the occurrence of an error is not predicted in step S103 (NO in step S103), under the control of the job control unit 104, the page control unit 105 controls the data interpreting unit 107 to interpret print data of a single page and controls the image drawing unit 108 to draw image data for the single page (step S105).
Then, the job control unit 104 determines whether an occurrence of an error is predicted or not based on the interpretation and drawing result of the single page (step S106).
When the occurrence of an error is predicted (YES in step S106), the job control unit 104 cancels the further printing operation for the printing job and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S107). When a subsequent job exists, the job control unit 104 starts processing the subsequent job.
When the occurrence of an error is not predicted (NO in step S106), the job control unit 104 determines whether the last page of the printing job is drawn (step S108), and when the last page of the printing job is not yet drawn (NO in step S108), the process goes back to step S105. The printer control unit 103 stores and controls the number of drawn pages.
When it is determined that the last page of the printing job is drawn in step S108 (YES in step S108), the printing job is terminated when all of the pages are printed (step S112).
Further, when the occurrence of an error is not predicted in step S106 (NO in step S106), the job control unit 104 controls the page control unit 105 to start printing of the drawn page (step S109), and monitors whether an error occurs during printing (step S110).
When an occurrence of an error is detected during printing (YES in step S110), the job control unit 104 cancels further printing of the printing job, and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S107).
When the occurrence of an error is not detected during printing (NO in step S110), the engine 115 ejects a paper (step S111), and when all of the pages are printed (ejected), the job control unit 104 terminates the printing job (step S112). When a subsequent printing job exists, the job control unit 104 starts processing the printing job.
An example of an error which is predicted to occur in step S103 after the printing condition of the entirety of the printing job is interpreted may be, when an image forming apparatus does not have a mechanism to staple documents although the printing job includes a printing condition such that the printed documents are to be stapled, for example. In this example, the job control unit 104 determines that an occurrence of an error is predicted when the printing job includes the printing condition such that the printed documents are to be stapled and information that a function capable of stapling documents is active is not included in device management information of the image forming apparatus 1, which may be stored in the memory area 112.
An example of an error which is predicted to occur in step S106 after the interpretation and drawing of the single page may be a case when the paper size of the single page is different from the paper size of papers installed in a tray designated in a printing condition included in the printing job. In this example, the job control unit 104 determines whether the designated paper size is the same as that of the papers installed in the designated tray based on information about the designated paper size for the pages and the designated tray in the printing condition included in the printing job and information about the paper size of papers installed in the designated tray in the device management information, and determines that an occurrence of an error is predicted when the paper sizes are not the same.
An example of an error which occurs during printing in step S110 may be that the remaining number of papers becomes zero during printing or the like. In this example, the job control unit 104 determines that the occurrence of an error is detected during printing when the remaining number of papers of the designated tray becomes zero in the device management information.
These errors are just examples and the errors are not limited to these. Any errors by which the printing operation cannot be continued anymore so that it is necessary for the printing operation to be terminated are included.
Further, a user can input an instruction via the user interface 111 to reprint based on the printing job which is stored in the suspended data storing area 114 by the prediction or the detection of the occurrence of an error, similar to the case for a printing job which the user causes to be stored in the memory area 112.
For example, if any printing job is automatically stored when an occurrence of an error is predicted or detected, when an occurrence of an error is predicted or detected after three pages are already printed where a printing job includes printing of five pages and the printing operation is canceled and the printing job is stored, the three papers, which are already printed, are left in a feeding tray or the like in the image forming apparatus. At this time, the three printed papers and printed papers by a subsequent printing job may be mixed, so that a user may mistakenly pick up the papers. In such a case, the stored printing job may need to be performed again, so that three pages which have already printed need to be re-printed. Therefore, according to this example, for the printing job for which at least one page is already printed (paper is ejected), the printing job is not stored even when an error occurs, thereby preventing the above problem.
In
When the occurrence of an error is predicted (YES in step S203), the job control unit 104 terminates the printing job without performing a printing operation and stores the printing job in the suspended data storing area 114 (step S204).
When the occurrence of an error is not predicted in step S203 (NO in step S203), under the control of the job control unit 104, the page control unit 105 controls the data interpreting unit 107 to interpret print data of a single page and controls the image drawing unit 108 to draw image data for the single page (step S205).
Then, the job control unit 104 determines whether an occurrence of an error is predicted based on the interpretation and drawing result of the single page (step S206).
When the occurrence of an error is predicted (YES in step S206), the job control unit 104 determines whether at least one page of the printing job is already ejected (printed) (step S207). The printer control unit 103 or the engine control unit 110 stores and controls the number of ejected pages.
When no page is ejected (NO in step S207), the job control unit 104 cancels the further printing operation for the printing job and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S208).
When the occurrence of an error is not predicted (NO in step S206) or when at least one page of the printing job is already ejected (YES in step S207), the job control unit 104 determines whether the last page of the printing job is drawn (step S209), and when the last page of the printing job is not yet drawn (NO in step S209), the process goes back to step S205. When it is determined that the last page of the printing job is drawn in step S209 (YES in step S209), the printing job is terminated when all of the pages are printed (step S217).
Further, when the occurrence of an error is not predicted (NO in step S206) or when at least one page of the printing job is already ejected (YES in step S207), the job control unit 104 controls the page control unit 105 to start printing of the drawn page (step S210), and monitors whether an error occurs during printing (step S211).
When an occurrence of an error is detected during printing (YES in step S211), the job control unit 104 determines whether at least one page of the printing job is already ejected (printed) (step S212).
When no page is ejected (NO in step S212), the job control unit 104 cancels the further printing operation for the printing job and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S208).
When at least one page of the printing job is already ejected (YES in step S212), the job control unit 104 reports the occurrence of the error to the user and terminates (suspends) the printing operation (step S213).
Then, the job control unit 104 receives an instruction from the user (step S214). When the instruction is to reset the printing job, the job control unit 104 cancels the further printing operation for the printing job and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S208).
When the cause of the error is removed by the user or the instruction of the user, for example, the printing condition is changed so that, the error is removed, and the continuation of the printing operation is instructed, the job control unit 104 restarts the printing operation (step S215) and monitors whether there is an occurrence of an error during printing (step S211).
When the occurrence of an error is not detected during printing (NO in step S211), the engine 115 ejects a paper (step S216), and when all of the pages are printed (ejected), the job control unit 104 terminates the printing job (step S217).
For the second exemplified operation shown in
In
When the occurrence of an error is predicted (YES in step S303), the job control unit 104 terminates the printing job without performing a printing operation and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S304).
When the occurrence of an error is not predicted in step S303 (NO in step S303), under the control of the job control unit 104, the page control unit 105 controls the data interpreting unit 107 to interpret print data of a single page and controls the image drawing unit 108 to draw image data for the single page (step S305). Then, the job control unit 104 determines whether an occurrence of an error is predicted based on the interpretation and drawing result of the single page (step S306).
When the occurrence of an error is predicted (YES in step S306), the job control unit 104 cancels the further printing operation for the printing job and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S307).
When the occurrence of an error is not predicted (NO in step S306), the job control unit 104 determines whether the last page of the printing job is drawn (step S308), and when the last page of the printing job is not yet drawn (NO in step S307), the process goes back to step S305. When it is determined that the last page of the printing job is drawn in step S308 (YES in step S308), the printing job is terminated when all of the pages are printed (step S312).
Further, when it is determined that the last page of the printing job is drawn without the occurrence of an error is being predicted, in step S308 (YES in step S308), the job control unit 104 controls the page control unit 105 to start printing of the drawn pages (step S309), and monitors whether an error occurs during printing (step S310).
When an occurrence of an error is detected during printing (YES in step S310), the job control unit 104 cancels further printing of the printing job, and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S307).
When the occurrence of an error is not detected during printing (NO in step S310), the engine 115 ejects a paper (step S311), and when all of the pages are printed (ejected), the job control unit 104 terminates the printing job (step S312).
Further, in this example, when the occurrence of an error is detected after the printing operation is started (YES in step S310), the printing operation is canceled and the printing job is stored (step S307). However, in this example as well, similar to that explained in the second exemplified operation with reference to
For the third exemplified operation shown in
For the third exemplified operation shown in
Further, the predetermined number of pages for which an occurrence of an error is to be predicted may be set for each of the printing conditions (item and number for each condition) in a table (not shown in the drawings, but similar to that shown in
The image forming apparatus 1 stores the table as shown in
With this, for a protocol for which a printing order is important, the predetermined number of pages for which an occurrence of an error is to be predicted may be set smaller or set zero, while for a protocol which may be used at an office or the like where a large number of people commonly use the image forming apparatus 1 and many printing jobs are sent to the image forming apparatus 1 at the same time, the predetermined number of pages for which an occurrence of an error is to be predicted may be set larger.
In
When the occurrence of an error is predicted (YES in step S403), the job control unit 104 terminates the printing job without performing a printing operation and stores the printing job in the suspended data storing area 114 (step S404).
When the occurrence of an error is not predicted in step S403 (NO in step S403), under the control of the job control unit 104, the page control unit 105 controls the data interpreting unit 107 to interpret print data of a single page and controls the image drawing unit 108 to draw image data for the single page (step S405). Then, the job control unit 104 determines whether an occurrence of an error is predicted based on the interpretation and drawing result of the single page (step S406).
When the occurrence of an error is predicted (YES in step S406), the job control unit 104 determines whether at least one page of the printing job is already ejected (printed) (step S407).
When no page is ejected (NO in step S407), the job control unit 104 cancels the further printing operation for the printing job and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S408).
When the occurrence of an error is not predicted (NO in step S406) or when at least one page of the printing job is already ejected (YES in step S407), the job control unit 104 refers to the table as shown in
When the predetermined number of pages or the last page of the printing job is not yet drawn (NO in step S409), the process goes back to step S405.
When it is determined that the predetermined number of pages or the last page of the printing job is drawn in step S409 (YES in step S409), the job control unit 104 determines whether the last page of the printing job is drawn (step S410), and when the last page of the printing job is not yet drawn (NO in step S410), the process goes back to step S405. When it is determined that the last page of the printing job is drawn in step S410 (YES in step S410), the printing job is terminated when all of the pages are printed (step S414).
When the predetermined number of pages or the last page of the printing job is drawn in step S409 without the occurrence of an error is being predicted, (YES in step S409), the job control unit 104 controls the page control unit 105 to start printing of the drawn page (step S411), and monitors whether an error occurs during printing (step S412).
When an occurrence of an error is detected during printing, the job control unit 104 cancels further printing of the printing job, and stores the printing job in the suspended data storing area 114 to terminate the printing job (step S408).
When the occurrence of an error is not detected during printing (NO in step S412), the engine 115 ejects a paper (step S413), and when all of the pages are printed (ejected), the job control unit 104 terminates the printing job (step S414).
Further, in this example, when the occurrence of an error is detected after the printing operation is started (YES in step S412), the printing operation is canceled and the printing job is stored (step S408). However, in this example as well, similar to that explained in the second exemplified operation with reference to
In
Thereafter, as shown in
In this example, the “auto reprinting time” is automatically set by the image forming apparatus 1. Alternatively, the “auto reprinting time” may be previously set by a user and stored in the image forming apparatus 1. For example, “auto reprinting time” may be set as “5 minutes after a print job is stored because of an occurrence of an error”, or “2 hours after a print job is stored because of an occurrence of an error”.
For a printing job, for which it is assumed that a user may be near (in front of) the image forming apparatus 1, an occurrence of an error is not predicted, and when an error occurs during printing, the printing operation is terminated and the error is reported to the user. In this case, when the user is near the image forming apparatus 1, the user can immediately respond to remove the error. When, on the other hand, the printing job is automatically stored although the user is near the image forming apparatus 1, it is necessary for the user to do something like inputting an instruction via the user interface 111 or the like to print the printing job. Therefore, for a case when the user is likely to be near the image forming apparatus 1, it is better not to automatically store the printing job.
The printing job for which a user may be in front of the image forming apparatus 1 may be,
a printing of a stored image data,
a printing of a file stored in a medium,
a printing in which setting information for the image forming apparatus 1 is designated, or the like.
These printing jobs are just examples and the printing jobs are not limited to these. Any printing jobs for which it can be assumed that a user is in front of the image forming apparatus 1 are included.
When the job control unit 104 detects that the printing job is the above kind of printing job, the job control unit 104 moves to a mode in which an occurrence of an error is not predicted and performs a similar process explained above with reference to
According to the embodiment, whether an error is likely to occur for a printing job is predicted before an actual printing operation for the printing job is started, and when the occurrence of an error is predicted, the printing operation is canceled and the printing job is stored in the image forming apparatus 1. Therefore, the likelihood that the printing operation for the image forming apparatus 1 is suspended because of an occurrence of an error can be decreased, so that a subsequent printing job, for which an error is not likely to occur, can be printed.
Further, the present embodiment may further includes a program by which functions and operations of the image forming apparatus 1 of the embodiment may be actualized or a non-transitory computer-readable recording medium having recorded thereon such an program that causes a computer to execute such functions and operations.
The present invention is not limited to the specifically disclosed embodiments, and variations and modifications may be made without departing from the scope of the present invention.
The present application is based on Japanese Priority Application No. 2011-51276 filed on Mar. 9, 2011, the entire contents of which are hereby incorporated herein by reference.
Number | Date | Country | Kind |
---|---|---|---|
2011-051276 | Mar 2011 | JP | national |