A METHOD FOR UPDATING THE STORED JOB IN MFP

Abstract

The invention relates to managing stored jobs on a user information basis in a network printing system and sharing of the same across the set of specified users. The system keeps track of individual arTd group ownership information of every file and prints the jobs stored in a storage device according user attributes and sharing permissions thus giving the access permissions of particular resource to a set of specified users. This invention provides a method to get the latest version of a job stored on the MFP without contacting the actual source of information physically and to determine whether to print the latest file or to continue with the old version of the same stored on the MFP based on the user input. The operation can be applied to a number of stored or shared jobs, based on the access permission attributes set by the original owner of the resource.

Full Text

i
FIELD OF INVENTION
The present invention relates in general to print job management and in particular to a job scheduling system which schedules job requests issued from a terminal equipment in a network and requests a job execution section to carry out print processing. Particularly the invention is about a printing system that is capable of storing a print job temporarily or permanently in the network printer with restricted access so as to generate multiple copies from a single transmission of one copy from a document generator. More specifically the invention provides a method to get the latest version of a job stored on the MFP without contacting the actual source of information physically and to determine whether to print the latest file or to continue with the old version of the same stored on the MFP based on the user input.
DESCRIPTION OF THE RELATED ART
The popularity of print systems increase rapidly due to the growth of electronic devices such as computers, facsimile machines, copiers etc. capable of generating data, which needs to be printed in the form of document. Printing systems are mostly employed in networked computer systems. A typical print system has a print control system such as a print server, and a plurality of client apparatuses connected to the network. The printing controller includes a processing device, a user interface, and a data storage device and, in turn, has one or more printers connected either directly or via a network. Upon receiving a print data from the client apparatus, the print control system processes it and sends the processed image data of each page to the print engine.
The print data from each client apparatus is referred to as a print job. A print job is usually coded in a page description language (POL) and consists of digitized image data and job attributes including job disposition information as well as job identification information such as job name. US Patent No. 5,923,013 describes 'a print control system and method for controlling the system', which manages a print job on a job basis and on a page basis. According to the above said patent when

a print job is interpreted a job description file and page data for each page are created.
A job processing system capable of improving the processing efficiency of a job when a plurality of jobs having same content output is known from US Patent 6213652 titled " Job Scheduling system for print processing". It is understood from this patent that the user equipment issues a job for a plurality of documents to a printing system by one operation and assigns attributes to the job. The attributes include the specification of collation, the designation of processing start instruction wait, the designation of exclusive processing, and the designation of password input wait etc. The printing system effects printing of the plurality of documents corresponding to attributes of the documents under control of a job-scheduling device which carries out the pausing of documents included in the job, the modification of attributes, addressing of document receiving failures, and search of a document whose format is to be converted, thereby making it possible to efficiently print the plurality of documents.
State of the art network printers are capable of storing print jobs permanently for future printing in a mass storage device (MSD) such as hard disk drive so as to allow to the production of copies later. This allows a user to store most frequently printed documents in the printer and print them without suffering from any network transfer delays. The printer stores a document and prints one or more copies of the document from an electronic transmission of a single copy of the document accompanied by a command indicating the desired disposition of the document. The document can be printed any time by selecting a particular id associated with the document.
'A multiple copy printer with print job retention' is depicted in US Patent No. 6160629. The printer includes a user interface, a controller that includes a data storage device and print engine connected to the controller. The controller is electrically connected to the user interface and the controller is configured to receive the electronic transmission of data representing a document to be printed and the desired disposition of the document and, in response to the transmission.

to cause the printer to (a) print the document at least once and store the document in the storage device, (b) store the document in the storage device and hold it there until released for printing via the user interface, or (c) copy the document to the storage device and hold it there until the document is released for printing by inputting a predefined privacy code.
A job saved in the storage device is referred to as a stored job. These stored jobs can be controlled through the user panel or a special application run on the client apparatus. In the latter case, the special commands sent from the client apparatus to the printing controller are used. Confidential documents also can be managed by including a privacy code. Information about stored jobs is displayed as a list and a user can release a stored job for printing or delete it from the storage device by viewing the displayed list of the stored jobs. To perform a desired operation on a stored job, the user should select a job from the list (and input a correct privacy code for confidential jobs), and then assign the operation with appropriate attributes.
The stored jobs are mostly controlled from the remote client apparatuses. The printing system supports means to receive and process special control commands that are submitted from the client apparatus. In order to process stored jobs of a user, the appropriate command should contain the correct user's attributes (user name and user privacy code). The user can specify stored jobs for processing by providing the list of job names.
A more secure option to keep the confidentiality of the documents is to give group permissions wherein a user can share the documents with others with limited (E.g. Read-only) permission. It gives the advantage that the user can select who should be the members of his group rather than creating global jobs viewable by all users.
SUMMARY OF THE INVENTION
The principal object of the invention is therefore to provide a method to keep track of the latest version of a job stored on the MFP without contacting the actual

source of information physically and to determine whether to print the latest file or to continue with the old version of the same stored on the MFP based on the user input.
It is another object of the invention to provide a method to equip the MFP to send the filenames with complete path and the date and time of it's storage so as to check whether the document is updated.
It is also an object of the invention to save the network bandwidth and storage space by reducing the unnecessary transmission of documents.
Accordingly, the invention provides a method for updating the stored job in MFP without contacting the actual source of information physically and printing the modified version based on user input, the method comprising the steps of:
a) sending user name and password for verification to the application running in user PC for authentication;
b) receiving the permission for accessing the stored job corresponding to the selected user;
c) sending the filename with complete path, date and time of it's storage to the said application for verifying whether the file is modified and receiving the reply;
d) prompting the user to input the decision on whether to get the modified version or not;
e) acquiring the latest version of the stored job from the user application through a fetch request;
f) overwriting the old file with the latest file and sending it for processing; and
g) releasing the jobs in the processing list for printing when a command to that effect is received.
Other advantages and features of the invention will become more readily apparent from the following description of the embodiments of the invention given as non-restrictive example only and represented in the accompanying drawings.

BRIEF DESCRIPTION OF ACCOMPANYING DRAWINGS
Figure 1 presents the functional block diagram showing the access of user's, stored job list through the control panel.
Figures 2a & 2b shows the flowchart representing the operation of a printing controller in selecting the stored job.
Figure 3 depicts the sequence of operations for the job processing according to the invention.
DETAILED DESCRIPTION OF THE INVENTION
The preferred embodiments of the present invention will now be explained with reference to the accompanying drawings. It should be understood however that the disclosed embodiments are merely exemplary of the invention, which may be embodied in various forms. The following description and drawings are not to be construed as limiting the invention and numerous specific details are described to provide a thorough understanding of the present invention, as the basis for the claims and as a basis for teaching one skilled in the art on how to make and/or use the invention. However in certain instances, well-known or conventional details are not described in order not to unnecessarily obscure the present invention in detail.
Before describing the various aspects and details of the present invention it will be useful to describe the context in which the invention is used. Consequently a typical printing system, which is also employed in the present invention, is briefed with reference to Figure 1. A person skilled in art will understand and appreciate that the print jobs issued by the plurality of client apparatuses are processed by the printing controller and directed to the execution section (print engine) so as to generate the print output. Creation of image data for the print jobs and managing of requests from different client apparatuses etc. are effectively handled by the

printing controller. The printing controller has a user interface, processing device and a storage device as represented. The storage device stores the print jobs received fronn different users and sends to the processing device when a print is requested. The processing device is responsible for generating the processed job to be sent to the pnnt engine for execution. It also connects to a user interface and acts as the central control of all the activities within the printing controller.
All the jobs from a particular user can be stored in the Job Storage Device and can be printed any number of times by just passing a command. The users can view the stored jobs and shared jobs by giving privacy code. It is also possible to delete the shared jobs based on permission given. (SHARE: READ/ FULL)
In the storage device, the printing system keeps a user information file that consists of user information records for all clients of the printing system. The user information record includes user attributes and the list of stored jobs. The user attributes can include a user name, a user private code, and a user priority. User name is used to access user's stored jobs and the user priority is used to decide the order of job processing. The user private key is helpful in accessing the confidential jobs. Pnnting system also supports means for maintaining the user information file. This means comprises functions to add new user, change some user information record and to delete some user information record. These functions are made available through the user interface of the printing controller or through an application run on the client apparatus.
Another advantage is that the printing system keeps a list of active users in RAM. Here the term "active user" means a user, which currently has jobs stored in the storage device. Supporting the list of active users makes it possible to save time for the management of stored jobs. A job, submitted from the client apparatus and intended to be stored in the printing system includes the user identification information, such as user name and user private code. Having stored, the job is added to the user's stored job list of the appropriate user.

A user can access the user's stored job list through the control panel by selecting the desired user name from the list of active users. The user accesses all jobs from the user's stored job list if he enters the correct user private code. Othenise, he can access only public (non-confidential) jobs from the user's stored job list. The operation of the method for accessing the document and printing is shown diagrammatically in Fig 2a & Fig 2b. It is understood from Fig 2a that the process is initiated by selecting the active user list. Then the name of the first user is displayed followed by the other users. When a particular user (say the first user) is selected then the system asks for inputting user privacy code (password). It is possible to move from one user to another for selecting the next or previous user. Access to the user's stored job list will be provided only if the password is correct. Jobs can be saved or acquired only with the correct secret code. Even otherwise the public jobs from the stored job list are viewable. That means if the password is correct then the first job from the user's job list will be displayed or else if the password is not correct then the first public job will be displayed.
There are two main operations to process stored jobs: printing additional copies and deleting from the storage device. Each of these operations can be executed on a number of jobs. The jobs that are supposed to perform the same operation must be first selected by the user. Each selected job would be added to a processing list.
The possible operations such as adding new jobs, releasing the listed jobs for printing, removing a job from the processing list, sharing, deleting the shared jobs etc. are very well depicted in Fig 2b. It is apparent that a job will be added to the processing list by a "select" operation while it will be removed by an "unselect" operation. All the jobs can be added to the processing list by a "select all" operation. The jobs in the processing list are released for printing when the print command is issued. In order to share the job username should be given. The process will be looped until another user is selected. It is possible to remove the sharing with "unshared" instruction. Also it is known to a person skilled in the art that deletion of a shared job is possible only after the sharing is removed.

The major advantage herein is that the stored job list is reduced to a list of jobs, which belong to a particular user and the user does not need to input a privacy code for each confidential job to process it once the user's stored list is accessed. Therefore a user can execute the same operation on several jobs by selecting this operation only once and 'hence the time needed to process stored jobs is significantly reduced. In effect a user cannot get any information about confidential jobs of another user, if he does not know the correct private code. However some users with highest level of priority, such as system administrator, can control all stored jobs and they need not input the private key to access the user's job list.
This invention proposes to add an enhanced feature before the stage for adding the jobs to the processing list so as to facilitate the retrieval of the latest information from the network without physically contacting the actual source of the information. For this effect, the user interface on the client apparatus is provided with one more option called "INSYNC". It is shown in Fig 2b and elaborated in Fig 3.
Whenever user sends a command to print from client apparatus, it is checked whether the job's INSYNC feature is enabled or not. If it is enabled then the user's PC is contacted and if the file present is latest (modified after the submission of JOB for storing in MFP) then user is intimated and queried as to whether to print the latest file or continue with the old version of the same on the MFP. According to the users choice the operations will be carried out. If user chooses YES then the latest version of the job is fetched from client apparatus and stored in MFP and the same will be used for later processing. If USER chooses NO then the old version of the file stored on MFP is processed. This is accomplished due to the effect that when the user invokes the feature a field in JOB ATTRIBUTES stores this option to TRUE and the user is prompted to provide the complete path of file to be recognized on the network.

The same sequence of steps can be applicable if user processes the same from MFP panel. An application running on users PC listens to all the requests made from MFP and receives the information required for processing the requests.
The User PC and MFP are the main physical parts of the invention and they co¬ordinate with each other in a sequence such that the application running on PC keeps on listening for the requests from MFP and process the request accordingly and the MFP provides the required information needed for the application running on Users PC to serve the request.
A scenario in which MFP is communicating to PC is detailed below.
STEP 1: MFP sends User name and password if applicable.
STEP 2: Application running on User PC authenticates and if it success, it sends
SUCCESS message to MFP STEP 3: MFP sends filename with complete path and the date and time of it's
storage. STEP 4: Application verifies the file and sends MODIFIED or NOT-MODIFIED
accordingly. STEP 5: MFP prompts to user whether to get the latest version or not. If user
Presses YES then it sends a request FETCH to application running on
PC. STEP 6: Application gets the FETCH command and then it sends the latest
version to MFP for it's processing. STEP 7: MFP overwrites the old file with the latest file and sends it for processing. STEP 8: MFP sends CLOSE command.
This feature is achieved by software running on PC and is installable. The Service installed on User's PC listens for requests from a MFP. It receives the complete document path, document name and the date of last modification of document from MFP (as described in the previous steps). It then verifies the modification in the document contents based on the time stamp. If the document is modified and

the device asks for latest version it opens a connection with the device and sends the latest document.
It will also be obvious to those skilled in the art that other control methods and apparatuses can be derived from the combinations of the various methods and apparatuses of the present invention as taught by the description and the accompanying drawings and these shall also be considered within the scope of the present invention. Further, description of such combinations and variations is therefore omitted below.
Although the present invention has been fully described in connection with the preferred embodiments thereof with reference to the accompanying drawings, it is to be noted that various changes and modifications are possible and are apparent to those skilled in the art. Such changes and modifications are to be understood as included within the scope of the present invention as defined by the appended claims unless they depart there from.

WE CLAIM
1. A method for updating the stored job in MFP without contacting the actual source of information physically and printing the modified version based on user input, the method comprising the steps of:
a) sending user name and password for verification to the application running in user PC for authentication;
b) receiving the permission for accessing the stored job corresponding to the selected user;
c) sending the filename with complete path, date and time of it's storage to the said application for verifying whether the file is modified and receiving the reply;
d) prompting the user to input the decision on whether to get the modified version or not;
e) acquiring the latest version of the stored job from the user application through a fetch request;
f) overwriting the old file with the latest file and sending it for processing; and
g) releasing the jobs in the processing list for printing when a command to that effect is received.

2. The method according to claim 1 wherein the first public job from the stored job list is displayed when the password is not correct.
3. The method according to claim 1 wherein all the stored jobs are added to the processing list when the "SELECT ALL" instruction is given.
4. The method according to claim 1 wherein user name is asked and hence verified for determining whether the user of the shared job is different.
5. The method according to claim 1 wherein the group permissions are extended to a job that is currently running.

6. The method according to claim 1 wherein the user can select the group of users who can access the documents owned by him/her.
7. A method for updating the stored job in MFP without contacting the actual source of information physically and printing the modified version based on user input, substantially as herein above described and illustrated with reference to the accompanying drawings