IMAGE PROCESSING APPARATUS, IMAGE PROCESSING METHOD, AND COMPUTER PROGRAM PRODUCT

Abstract
A controller combines a code image created by encoding a paper ID and an image representing an electronic document, causes a printing unit to print the code image on a paper, causes a code-image reading unit to read the code image printed on the paper by the printing unit, acquires the paper ID, and collates the paper ID before encoding and the decoded paper ID. When the paper IDs do not coincide with each other or when the paper ID cannot be acquired, the controller causes an NG recording unit to perform NG recording on the paper and causes a paper-conveying-path switching unit to switch a discharge destination of the paper to a garbage tray and discharge the paper.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS

The present application claims priority to and incorporates by reference the entire contents of Japanese priority document, 2007-038237 filed in Japan on Feb. 19, 2007.


BACKGROUND OF THE INVENTION

1. Field of the Invention


The present invention relates to a technology for acquiring an electronic document through a network and printing an image using the acquired electronic document.


2. Description of the Related Art


Conventionally, a technology for barcoding identification information formed by numerals, characters, and the like and printing the identification information on paper together with a document has been developed (see, for example, Japanese Patent Application Laid-Open No. 2004-181945). In Japanese Patent Application Laid-Open No. 2004-181945, the identification information to be barcoded is, for example, a name and an ID of a patient. In such a technology, it is possible to obtain the identification information by reading the barcode printed on the paper and decoding the barcode. However, when printing of the barcode is poor, it may be impossible to read the barcode or a result of the decoding may be different from the original identification information. In recent years, a technology for collating, for each page, information obtained by reading a printed barcode using a camera and decoding the barcode with information before being barcoded and, when a result of the collation indicates that both the pieces of information do not coincide with each other, outputting an unreadability code has been developed (see, for example, Japanese Patent Application Laid-open No. 2006-79571). According to such a technology, it is possible to prevent a print failure by excluding a print, a collation result of which indicates barcoded information and information before being barcoded do not coincide with each other, and printing a print, a collation result of which indicates barcoded information and information before being barcoded coincide with each other.


However, in the technologies described above, when information related to the information barcoded for each page is associated with the barcoded information and separately stored in storing means, it is likely that a correspondence relation between these pieces of information is not taken into account. Therefore, for example, when the barcode for each page is made unusable because of a print failure of the barcode, it is likely that inconsistency occurs in the correspondence relation between the barcoded information and the information associated with the barcoded information.


SUMMARY OF THE INVENTION

It is an object of the present invention to at least partially solve the problems in the conventional technology.


According to an aspect of the present invention, there is provided an image processing apparatus including an information control unit that issues identification information with respect to predetermined information stored in a storing unit and manages the predetermined information in association with the identification information; a code-image creating unit that encodes the identification information, with which the predetermined information stored in the storing unit can be identified, to create a code image; a first printing unit that creates a print image using a print object electronic document and prints the code image created by the code-image creating unit on a paper medium together with the print image; a code-image reading unit that reads the code image by scanning the paper medium printed by the first printing unit; a code acquiring unit that acquires read identification information using the code image read by the code-image reading unit; a collating unit that collates the read identification information acquired by the code acquiring unit and the identification information that the code-image creating unit encodes to create the code image; and a second printing unit that prints, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, a predetermined image on the paper medium. The information control unit updates, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, the predetermined information stored in the storing unit. The first printing unit prints, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, the code image, which the code-image creating unit creates by encoding the identification information, on a new paper medium together with the print image.


Furthermore, according to another aspect of the present invention, there is provided an image processing method that includes information controlling including issuing identification information with respect to predetermined information stored in a storing unit and manages the predetermined information in association with the identification information; code-image creating including encoding the identification information, with which the predetermined information stored in the storing unit can be identified, to create a code image; first printing including creating a print image using a print object electronic document, and printing the code image created at the code-image creating on a paper medium together with the print image; code-image reading including reading the code image by scanning the paper medium printed at the first printing; code acquiring including acquiring read identification information using the code image read at the code-image reading; collating the read identification information acquired at the code acquiring and the identification information that is encoded at the code-image creating to create the code image; and second printing including printing, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, a predetermined image on the paper medium. The information controlling includes updating, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the predetermined information stored in the storing unit. The first printing includes printing, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the code image that is created at the code-image creating by encoding the identification information on a new paper medium together with the print image.


Moreover, according to still another aspect of the present invention, there is provided a computer program product comprising a computer-usable medium having computer-readable program codes embodied in the medium that when executed cause a computer to execute information controlling including issuing identification information with respect to predetermined information stored in a storing unit and manages the predetermined information in association with the identification information; code-image creating including encoding the identification information, with which the predetermined information stored in the storing unit can be identified, to create a code image; first printing including creating a print image using a print object electronic document, and printing the code image created at the code-image creating on a paper medium together with the print image; code-image reading including reading the code image by scanning the paper medium printed at the first printing; code acquiring including acquiring read identification information using the code image read at the code-image reading; collating the read identification information acquired at the code acquiring and the identification information that is encoded at the code-image creating to create the code image; and second printing including printing, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, a predetermined image on the paper medium. The information controlling includes updating, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the predetermined information stored in the storing unit. The first printing includes printing, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the code image that is created at the code-image creating by encoding the identification information, on a new paper medium together with the print image.


The above and other objects, features, advantages and technical and industrial significance of this invention will be better understood by reading the following detailed description of presently preferred embodiments of the invention, when considered in connection with the accompanying drawings.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram of the structure of an overall image processing system according to an embodiment of the present invention;



FIG. 2 is a block diagram of a hardware configuration of a multifunction peripheral MFP according to the embodiment;



FIG. 3 is a schematic diagram of a hardware configuration and the functional structure of the multifunction peripheral MFP according to the embodiment;



FIG. 4 is a block diagram of the functional structure of the multifunction peripheral MFP according to the embodiment;



FIG. 5 is a block diagram of the structure of a service resource management service (SRMS) 200 according to the embodiment;



FIG. 6 is a diagram of the data structure of a service-information table 300A according to the embodiment;



FIG. 7 is a diagram of the data structure of a trust-relationship-information table 300B according to the embodiment;



FIG. 8 is a block diagram of the structure of a paper ID service (PIDS) 201 according to the embodiment;



FIG. 9 is a diagram of the data structure of a paper-information table 301A according to the embodiment;



FIG. 10 is a block diagram of the structure of an electric ID service (EIDS) 202 according to the embodiment;



FIG. 11 is a diagram of the data structure of an electronic information table 302A according to the embodiment;



FIG. 12 is a flowchart of a procedure of basic processing of simple object access protocol (SOAP) communication performed by using a SOAP message in a Web service according to the embodiment;



FIG. 13 is a flowchart of a procedure of service-registration processing realized by a service registration function according to the embodiment;



FIG. 14 is a flowchart of a procedure of service-change processing realized by a service change function according to the embodiment;



FIG. 15 is a flowchart of a procedure of service-deletion processing realized by a service deletion function according to the embodiment;



FIG. 16 is a flowchart of a procedure of a service-acquisition processing realized by a service acquisition function according to the embodiment;



FIG. 17 is a flowchart of a procedure of trust relationship establishment processing realized by a trust relationship establishment function according to the embodiment;



FIG. 18 is a schematic diagram of a relation among multifunction peripherals MFP that form a trust relationship in the image processing system shown in FIG. 1;



FIG. 19 is a diagram of a state of a service-information table 300A_3 of a multifunction peripheral MFP3 that has the trust relationship explained above in the image processing system according to the embodiment;



FIG. 20 is a diagram of a state of a service-information table 300A_7 of a multifunction peripheral MFP7 that has the trust relationship explained above in the image processing system according to the embodiment;



FIG. 21 is a flowchart of a procedure of trust relationship cancellation processing realized by a trust relationship cancellation function according to the embodiment;



FIG. 22 is a flowchart of a procedure of synchronization realized by a synchronization function according to the embodiment;



FIG. 23 is a flowchart of a procedure of service-inquiry processing realized by a service inquiry function according to the embodiment;



FIG. 24 is a flowchart of a procedure of service-retrieval processing realized by a service retrieval function according to the embodiment;



FIG. 25 is a flowchart of a procedure of paper-registration processing realized by a paper registration function according to the embodiment;



FIG. 26 is a flowchart of a procedure of paper-information-change processing realized by a paper change function according to the embodiment;



FIG. 27 is a flowchart of a procedure of paper-deletion processing realized by a paper deletion function according to the embodiment;



FIG. 28 is a flowchart of a procedure of paper-acquisition processing realized by a paper acquisition function according to the embodiment;



FIG. 29 is a flowchart of a procedure of electronic information registration processing realized by an electronic information registration function according to the embodiment;



FIG. 30 is a flowchart of a procedure of electronic information change processing realized by an electronic information change function according to the embodiment;



FIG. 31 is a flowchart of a procedure of electronic information deletion processing realized by an electronic information deletion function according to the embodiment;



FIG. 32 is a flowchart of a procedure of electronic information acquisition processing realized by an electronic information acquisition function according to the embodiment;



FIG. 33 is a flowchart of a procedure of operations of a print application 100 realized by a driver print function according to the embodiment;



FIG. 34 is a flowchart of a procedure of operations of the print application 100 realized by the driver print function according to the embodiment;



FIG. 35 is a flowchart of a procedure of operations of the print application 100 realized by the driver print function according to the embodiment;



FIG. 36 is a flowchart of a procedure of operations of the print application 100 realized by a scan print function according to the embodiment;



FIG. 37 is a flowchart of a procedure of operations of a scan application 101_5 in reprinting paper, which is printed by a multifunction peripheral MFP1, using a multifunction peripheral MFP5 according to the embodiment;



FIG. 38 is a flowchart of a procedure of operations of a scan application 101_6 in reprinting the paper, which is reprinted by the multifunction peripheral MFP5, again using a multifunction peripheral MFP6;



FIG. 39 is a flowchart of a procedure of operations of the scan application 101_6 in reprinting the paper, which is reprinted by the multifunction peripheral MFP5, again using the multifunction peripheral MFP6; and



FIG. 40 is a flowchart of a procedure of operations according to a modification of the embodiment.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Exemplary embodiments of the present invention are explained in detail below with reference to the accompanying drawings.



FIG. 1 is a block diagram of the structure of an overall image processing system according to an embodiment of the present invention. As shown in the figure, for example, there are three offices J1, J2, and J3. In the respective offices, there are in-house systems SYM1, SYM2, and SYM3 connected to intranets NT1, NT2, and NT3, respectively. These in-house systems SYM1, SYM2, and SYM3 are connected to one another through the Internet NT0 to constitute the image processing system. In the in-house system SYM 1, three multifunction peripherals MFP1, MFP2, and MFP3 and one personal computer PC1 are connected. In the in-house system SYM2, two multifunction peripherals MFP4 and MFP5 and one personal computer PC2 are connected. In the in-house system SYM3, three multifunction peripherals MFP6, MFP7, and MFP8 are connected. The multifunction peripherals MFP1 to MFP8 and the personal computers PC1 and PC2 are allocated with IP addresses that can uniquely identify the multifunction peripherals and the personal computers. The multifunction peripherals MFP1 to MFP8 and the personal computers PC1 and PC2 are capable of communicating with each other according to network protocols such as HTTP, FTP, and UDP. Various known technologies can be used for establishment of such a network. A technology used for establishment of the network is not limited in the present embodiment. In the following explanation, when it is unnecessary to distinguish the in-house systems SYM1 to SYM3, the in-house systems SYM1 to SYM3 are simply referred to as in-house system SYM with “1” to “3” of the reference signs omitted. When it is unnecessary to distinguish the personal computers PC1 and PC2, the personal computers PC1 and PC2 are simply referred to as personal computer PC with “1” and “2” of the reference signs omitted. When it is unnecessary to distinguish the multifunction peripherals MFP1 to MFP8, the multifunction peripherals MFP1 to MFP8 are simply referred to as multifunction peripheral MFP with “1” to “8” of the reference signs omitted.


In the image processing system according to the present embodiment, when the multifunction peripheral MFP prints an electronic document on paper as an image, the multifunction peripheral MFP issues a paper ID (identification information) that can uniquely identify the paper to the paper, prints a code image obtained by encoding the paper ID on the paper, and stores paper information including a print condition for the paper and information specifying an electronic document as a print source of the paper in association with the paper ID. The paper information is associated with the paper ID. On the other hand, when the multifunction peripheral MFP copies such paper, the multifunction peripheral MFP scans the code image printed on the paper, decodes the code image to acquire the paper ID, and acquires the paper information associated with the paper ID. The multifunction peripheral MFP acquires the electronic document as the print source using the paper information and prints an image on the paper using the acquired electronic document. In printing the image on paper, the multifunction peripheral MFP issues a paper ID that can uniquely identify the paper to the paper, prints a code image obtained by encoding the paper ID on the paper, and stores paper information including the paper ID of a copy source in association with the issued paper ID.


The personal computer PC has the structure of a general computer including a central processing unit (CPU) that controls the entire personal computer PC, a read only memory (ROM) that stores various control programs, various data, and the like, a random access memory (RAM), a hard disk (HD) that stores various application programs and various data, a communication unit that controls data communication with an external apparatus, and a bus that connects the CPU, the ROM, the RAM, the HDD, and the communication unit (all of these components are not shown in the figure). A display unit such as a monitor and an operation unit such as a keyboard (both the units are not shown in the figure) are connected to the personal computer PC through wire or wireless connecting means. A printer driver is stored in the ROM of the personal computer PC. When the printer driver is started by the CPU, the personal computer PC transmits a print command to the multifunction peripheral MFP in the same in-house system SYM through the communication unit.



FIG. 2 is a block diagram of the electrical structure of the multifunction peripheral MFP. As shown in FIG. 2, in the multifunction peripheral MFP, a controller 10 and an engine unit (engine) 60 are connected by a peripheral component interconnect (PCI) bus. The controller 10 is a controller that controls the entire multifunction peripheral MFP, rendering, communication, and input from a not-shown operation unit. The engine unit 60 is a printer engine or the like connectable to the PCI bus. The engine unit 60 includes a scanning unit such as a scanner and also includes a printing unit such as a black and white plotter, a one-drum color plotter, or a four-drum color plotter (both the scanner unit and the printing unit are not shown in the figure). An engine unit 40 includes, in addition to a so-called engine section of the plotters and the like, an image processing section for error diffusion, gamma conversion, and the like. The multifunction peripheral MFP also includes an operation panel 20 in which an operation device to which operation from the user is inputted and a display device that displays information are integrally formed. The operation panel 20 is connected to an application specific integrated circuit (ASIC) 16. A CPU 11 included in the controller 10 has a timing function and measures a present date and time. A detailed electrical structure of such a multifunction peripheral MFP is disclosed in, for example, Japanese Patent Application Laid-Open No. 2006-177990. Therefore, explanation of the detailed electrical structure is omitted. Functions realized by the CPU 11 executing various programs stored in a read only memory (ROM) 12a, i.e., the functional structure of the multifunction peripheral MFP is explained below.



FIG. 3 is a schematic diagram of a hardware configuration and the functional structure of the multifunction peripheral MFP according to the present embodiment. The multifunction peripheral MFP includes a housing tray 70 that houses paper, a paper discharge tray 71 and a garbage tray 72 to which the paper is discharged, a paper conveying mechanism (not shown) that conveys the paper along a paper conveying path 73, an NG recording unit 74, a paper-conveying-path switching unit 75, and a code-image reading unit 76. Reference numeral 61 denotes a printing unit of the engine unit 60. The paper discharge tray 71 is a discharge destination of normally printed paper. The garbage tray 72 is a discharge destination of print failure paper and unprintable paper. The code-image reading unit 76 reads a code image, which is printed on the paper by the printing unit 61, by scanning the paper and passes the read code image to the controller 10. The NG recording unit 74 is recording means for forming an image on the paper under the control by the controller 10. The NG recording unit 74 includes recording means such as a stamp that forms characters such as “NG” or a mark “X”. The paper-conveying-path switching unit 75 is provided downstream the NG recording unit 74 on the paper conveying path 73 and has a function of switching a discharge destination of printed paper to the paper discharge tray 71 or the garbage tray 72 under the control by the controller 10.


The controller 10 has an image combining function, an encoding function, a data collating function, and a decoding function. The controller 10 combines, using the image combining function, a code image created by encoding a paper ID using the encoding function and an image representing an electronic document. The controller 10 causes the paper conveying mechanism to convey the paper housed in the housing tray 70 to the printing unit 61 and causes the printing unit 61 to print the code image on the paper. The controller 10 causes the paper conveying mechanism to convey the paper, on which the code image is printed by the printing unit 61, to the code-image reading unit 76, causes the code-image reading unit 76 to read the code image printed on the paper using the decoding function, and acquires the paper ID. The controller 10 collates the paper ID (identification information) before being encoded with the decoded paper ID (read identification information). When these pieces of information do not coincide with each other or when the paper ID cannot be acquired by the decoding function, the controller 10 causes the NG recording unit 74 to apply NG recording, which indicates that the code is deficient, to the paper conveyed to the NG recording unit 74 by the paper conveying mechanism. The controller 10 causes the paper-conveying-path switching unit 75 to switch the discharge destination of the paper to the garbage tray 72 and discharge the paper. These functions of the controller 10 are explained in detail below.



FIG. 4 is a block diagram showing a functional structure of the multifunction peripheral MFP. Functions of the multifunction peripheral MFP are roughly divided into an application layer M1, a service/module layer M2, and a database layer M3. The application layer M1 has the print application 100 and a scan application 101. The service/module layer M2 has a service resource management service (SRMS) 200, a paper ID service (PIDS) 201, and an electric ID service (EIDS) 202 as information processing services (hereinafter simply referred to as “services”). The service/module layer M2 further has an encoder 203, a decoder 204, and a repository 205 as modules. The database layer M3 has a service database (DB) 300, a paper-information DB 301, an electronic-information DB 302, and an electronic-document DB 303 that store electronic documents. The DBs 300 to 303 are stored in the HDD or the like.


The print application 100 acquires a print object electronic document using the SRMS 200, the PIDS 201, the EIDS 202, and the encoder 203 and prints the electronic document using the printing unit. The print application 100 prints an image using the printing unit according to a print command from the scan application 101. The scan application 101 acquires an electronic document as a print source with respect to scanned print object paper using the SRMS 200, the PIDS 201, the EIDS 202, and the decoder 204 and passes the electronic document to the print application 100 together with a print command.


The SRMS 200 manages information concerning the respective services of the SRMS 200, the PIDS 201, and the EIDS 202 using the service DB 300. The PIDS 201 manages information concerning a printed paper using the paper-information DB 301. The EIDS 202 manages information concerning a print object electronic document using the electronic-information DB 302 and the repository 205. The repository 205 manages an electronic document stored in the electronic-document DB 303. The repository 205 is a known document management system having a function of managing an electronic document. Therefore, explanation of details of the repository 205 is omitted. However, the repository 205 has functions of acquiring an electronic document, registering the electronic document in the electronic-document DB 303, and updating or deleting the electronic document stored in the electronic-document DB 303. The EIDS 202 performs processing for a body of an electronic document (registration, update, deletion, and acquisition of the electronic document) using these functions of the repository 205. The registration of the electronic document in the electronic-document DB 303 means the start of storage of the electronic document in the electronic-document DB 303. Registration of other information in the other DBs has a similar meaning.


The respective services of the SRMS 200, the PIDS 201, and the EIDS 202 perform various kinds of processing according to a processing command from the application layer M1 and a processing command from an external apparatus through SOAP communication. The SRMS 200 receives processing commands from the SRMSs 200 of the other multifunction peripherals MFP through UDP communication and performs various kinds of processing according to the processing commands.


The structure of detailed functions of the respective services and the respective modules and the structure of the respective databases are explained below. For convenience of explanation, in the respective multifunction peripherals MFP1 to MFP8, “1” to “8” of the reference signs MFP1 to MFP8 are attached to, together with underlines, the ends the reference numerals of the print application 100, the scan application 101, the SRMS 200, the PIDS 201, the EIDS 202, the encoder 203, the decoder 204, the repository 205, the service DB 300, the paper-information DB 301, the electronic-information DB 302, and the electronic-documents DB 303. Specifically, the multifunction peripheral MFP1 has a print application 100_1, a scan application 101_1, an SRMS 200_1, a PIDS 201_1, an EIDS 202_1, an encoder 203_1, a decoder 204_1, a repository 205_1, a service DB 300_1, a paper-information DB 301_1, an electronic-information DB 302_1, and an electronic-document DB 303_1. The same holds true for the multifunction peripherals MFP2 to MFP8 and respective units explained below. In the following explanation, when it is unnecessary to distinguish these components, the underlines and the reference numerals “1” to “8” are omitted.


The SRMS 200 is a function of managing service information. FIG. 4 is a block diagram of the structure of the SRMS 200. The SRMS 200 has an interface section SR1 and a processing function section SR2. The interface section SR1 has nine interfaces. As shown in FIG. 5, the respective interfaces are interfaces for service registration, service change, service deletion, service acquisition, trust relationship establishment, trust relationship cancellation, synchronization, service retrieval, and service inquiry. Among the interfaces, the interfaces for service registration, service change, service deletion, service acquisition, trust relationship establishment, trust relationship cancellation, synchronization, and service retrieval are interfaces that can use a Web service. The Web service is one of services of network communication extremely often used presently and is a mechanism for transmitting structured data called standardized simple object access protocol (SOAP) message to a network or receiving the data from the network. As programming methods incorporating this mechanism, NET Framework (registered trademark) of Microsoft (registered trademark) in the C language/C_language/Basic language, AXIS of Apache in the Java (registered trademark) language, and the like are famous. These programming methods are often used. In the present embodiment, the mechanism of the Web service may be established using any one of the programming methods. The interface for the service inquiry is an interface that uses user datagram protocol (UDP) communication. UDP is a transport layer protocol for realizing datagram communication in TCP/IP. Similarly, the processing function section SR2 includes nine processing sections, i.e., a service-registration processing section SR20, a service-change processing section SR21, a service-deletion processing section SR22, a service-acquisition processing section SR23, a trust-relationship-establishment processing section SR24, a trust-relation-cancellation processing section SR25, a synchronization processing section SR26, a service-retrieval processing section SR27, and a service-inquiry processing section SR28. Functions of the interface for service inquiry of the interface section SR1 and the service-inquiry processing section SR28 and functions of the interface for service retrieval of the interface section SR1 and the service-retrieval processing section SR27 have a broadcast function and transmit data to a large number of communication partners.


The interfaces of the interface section SR1 are connected to the processing sections SR20 to SR28 of the processing function section SR2 in the order explained above, respectively. When a request for processing is received from the external apparatus or the application layer M1, the interfaces pass parameters used for the processing to the processing sections corresponding to the requested processing, receive results of the processing performed by using the parameters from the corresponding processing sections, and return the processing results to the request source of the processing. When the parameters are passed from the corresponding interfaces, the respective processing sections access the service DB 300, execute the processing using the parameters, and return processing results to the corresponding interfaces.


The service DB 300 has a service-information table 300A that stores service information representing the SRMS 200, service information representing the PIDS 201, and service information representing the EIDS 202 as records, respectively, and a trust-relationship-information table 300B that stores trust relationship information explained later.



FIG. 6 is a diagram of an example of the data structure of the service-information table 300A. In the service-information table 300A, service information representing the SRMS 200, service information representing the PIDS 201, and the service information representing the EIDS 202 are stored for each service ID. The service ID is an ID that can uniquely identify each of the kinds of service information. The SRMS 200 issues the service ID when the SRMS 200 registers each of the kinds of service information in the service-information table 300A according to a service registration function explained later. Specifically, the service ID includes a combination of a UUID of a service and a local ID explained below. Each of the kinds of service information stored in the service-information table 300A includes, as shown in FIG. 6, “name”, “explanation”, “name space”, “version”, “uniform resource identifier (URI)”, “UUID of a service”, “local ID”, “master UUID”, “registration date and time”, and “update date and time” as data. “Name” and “explanation” are character strings issued to allow the user to understand what the service is. “Name” is represented as, for example, “SRMS”, “PIDS”, or “EIDS”. “Name space” is a character string that can uniquely identify a service. “Name space” is a character string for allowing the user to identify that, even if names of services are the same, the services are different if name spaces of the services are different. “Name space” is represented as, for example, “jp.co.ricoh.srms”. “Version” is a character string indicating a version of the service. “URI” is a character string indicating where in the network the service exists. For example, “URI” of a PIDS 201_5 of the multifunction peripheral MFP5 shown in FIG. 1 is represented as “http://192.168.1.15/ids/”.


“UUID of a service” is an ID for globally and uniquely identifying the respective services of the SRMS 200, the PIDS 201, and the EIDS 202. “UUID of a service” is, for example, a GUID, which is an object class ID used in Windows (registered trademark), and a MAC address allocated to a network card. A technology for issuing a UUID to a service is already known. As such a technology, there are a large number of technologies. In the present embodiment, any one of the technologies may be used. As timing of the issuance, the UUID is issued when programs for realizing the functions of the SRMS 200, the PIDS 201, and the EIDS 202 are installed in the multifunction peripheral MFP. The UUID is not changed until the programs are uninstalled from the multifunction peripheral MFP. “Local ID” is an ID for uniquely identifying service information in an identical SRMS 200. “Local ID” makes it possible to globally and uniquely identify the service information according to a combination with the UUID of a service. “Master UUID” (management identification information) is a UUID issued to the SRMS 200 that manages the service information. “Master UUID” (management identification information) is used when a synchronization function explained later is realized. “Registration date and time” and “update data and time” respectively indicate a date and time when the service information is registered in the service-information table 300A and a date and time when the service information is updated.



FIG. 7 is a diagram of an example of a data structure of the trust-relationship-information table 300B. In the trust-relationship-information table 300B, a UUID of the SRMS 200 that forms a trust relationship is stored as trust relationship information. Forming the trust relationship is sharing service information with the SRMSs 200 of the other multifunction peripherals MFP and making it possible to synchronize the service information. Details of the trust relationship are explained later.



FIG. 8 is a block diagram of the structure of the PIDS 201. The PIDS 201 is a function of managing paper information. The paper information is information concerning printed paper. The function of the PIDS 201 further has an interface section PI1 and a processing function section PI2. The interface section PI1 has four interfaces. The respective interfaces are interfaces for paper registration, paper change, paper deletion, and paper acquisition. All of these interfaces are interfaces that can use the Web service. Similarly, the processing function section PI2 includes four processing sections, i.e., a paper-registration processing section PI20, a paper-change processing section PI21, a paper-deletion processing section PI22, and a paper-acquisition processing section PI23.


The interfaces of the interface section PI11 are connected to the processing sections in the order explained above, respectively. When a request for processing is received from the external apparatus or the application layer M1, the interfaces pass parameters used for the processing to the processing sections corresponding to the requested processing, receive results of the processing performed by using the parameters from the corresponding processing sections, and return the processing results to the request source of the processing. When the parameters are passed from the corresponding interfaces, the respective processing sections access the paper-information DB 301, execute the processing using the parameters, and return processing results to the corresponding interfaces. The processing performed by the respective processing sections PI20 to PI23 is explained in detail later.


The paper-information DB 301 has a paper-information table 301A that stores paper information concerning one piece of printed paper as one record.



FIG. 9 is a diagram of an example of the data structure of the paper-information table 301A. Paper information is stored in the paper-information table 301A for each paper ID. The paper ID is an ID that can uniquely identify, for each print object paper, the paper. The PIDS 201 issues the paper ID when the PIDS 201 registers paper information in the paper-information table 301A using a paper registration function explained later. Specifically, the paper ID includes a combination of a UUID of the PIDS 201 and a local ID explained below. For example, when images are printed on three pieces of paper in one print processing, three paper IDs are issued and associated with the three pieces of paper. The paper information stored in the paper-information table 301A includes “name”, “explanation”, “UUID of a PIDS”, “local ID”, “registration date and time”, “update date and time”, “link to an original document”, and “print condition” as data. “Name” and “explanation” are character strings issued to allow the user to understand what the paper is. “UUID of a PIDS” is a UUID of the PIDS 201 that manages the paper information. A method of issuing the UUID is the same as that in the case of the SRMS 200. “Local ID” is an ID for uniquely identifying the paper information in an identical PIDS 201. “Local ID” makes it possible to globally and uniquely identify the paper information according to a combination with the UUID of the PIDS 201. “Registration data and time” indicates a date and time when the paper information is registered in the paper-information table 301A. “Update date and time” indicates a date and time when the paper information registered in the paper-information table 301A is updated. “Link to an original document” indicates information indicating which electronic document is printed to obtain the paper, i.e., information specifying an electronic document as a print source or indicates information indicating which paper is copied to obtain the paper, i.e., information specifying paper as a copy source. The information specifying an electronic document is, for example, a combination (an electronic ID) of a UUID of the EIDS 202 and a local ID issued by the EIDS 202 explained later. The information specifying paper is, for example, a combination (a paper ID) of the UUID of the PIDS 201 and a local ID issued by the PIDS 201. Consequently, in copying certain paper, when the paper is scanned, it is possible to specify which one is paper as a copy source. Moreover, by referring to “link to an original document” in paper information concerning the paper, it is possible to finally acquire information specifying an electronic document as a print source and acquire the electronic document. “Print condition” is, for example, a size of paper, aggregation, allocation, enlargement/reduction, and the like set by the user as a condition in printing the paper. “Print condition” is passed from the printer driver of the personal computer PC.



FIG. 10 is a block diagram of the structure of the EIDS 202. The EIDS 202 is a function of managing electronic information. The electronic information is information concerning an electronic document. Details of the electronic information are explained later. The EIDS 202 has an interface section EI1 and a processing function section EI2. The interface section EI1 has four interfaces. In FIG. 10, the respective interfaces are interfaces for electronic information registration, electronic information change, electronic information deletion, and electronic information acquisition. All of these interfaces are interfaces that can use the Web service. Similarly, the processing function section EI2 includes four processing sections, i.e., an electronic-information-registration processing section EI20, an electronic-information-change processing section EI21, an electronic-information-deletion processing section EI22, and an electronic-information-acquisition processing section EI23.


The interfaces of the interface section EI1 are connected to the processing sections in the order explained above, respectively. When a request for processing is received from the external apparatus or the application layer M1, the interfaces pass parameters used for the processing to the processing sections corresponding to the requested processing, receive results of the processing performed by using the parameters from the corresponding processing sections, and return the processing results to the request source of the processing. When the parameters are passed from the corresponding interfaces, the respective processing sections perform processing for a body of the electronic document using the repository 205, access the electronic-information DB 302, execute the processing using the parameters, and return processing results to the corresponding interfaces. In this way, the EIDS 202 manages the electronic information and manages the body of the electronic document in cooperation with the repository 205.


The electronic-information DB 302 has an electronic information table 302A that stores electronic information as one record.



FIG. 11 is a diagram of an example of the data structure of the electronic information table 302A. Electronic information is stored in the electronic information table 302A for each electronic ID. The electronic ID is an ID that can uniquely identify the electronic information. The EIDS 202 issues the electronic ID when the EIDS 202 registers the electronic information in the electronic information table 302A. Specifically, the electronic ID includes a combination of a UUID of the EIDS 202 and a local ID explained below. The electronic information stored in the electronic information table 302A includes “name”, “explanation”, “UUID of an EIDS”, “local ID”, “registration date and time”, “update date and time”, and “link to a repository” as data. “Name” and “explanation” are character strings issued to allow the user to understand what the electronic document is. “UUID of an EIDS” is a UUID of the EIDS 202 that manages the electronic information. A method of issuing the UUID is the same as that in the case of the SRMS 200. “Local ID” is an ID for uniquely identifying the electronic information in an identical EIDS 202. “Local ID” makes it possible to globally and uniquely identify the electronic information according to a combination with the UUID of the EIDS 202. “Registration data and time” and “update date and time” indicate a date and time when the electronic information is registered in the electronic information table 302A and a date and time when the electronic information is updated, respective. “Link to a repository” indicates a link to the electronic document and indicates, for example, an ID and a file pass that the repository 205 issues to the electronic document.


The encoder 203 according to the present embodiment can be constituted by using various arbitrary known technologies. The encoder 203 converts a designated character string or byte array into a one-dimensional barcode or a two-dimensional code image. As the one-dimensional barcode, there are codes such as Code39, EAN-8, EAN-13, NW-7, and Code128. As the two-dimensional code image, there are codes such as QR, DataMatrix, and PDF417. In the present embodiment, any one of the codes may be used. The codes have known parameters for creating code images, respectively. In the present embodiment, the encoder 203 correctly sets parameters corresponding to an encode object code and creates a code image.


The decoder 204 according to the present embodiment can be constituted by using various arbitrary known technologies. The decoder 204 restores an original character string or byte array from a code image created by the encoder 203. The decoder 204 has a detect function of specifying a position where a code image exists in one arbitrary image. When an image appearing in the specified position is inputted to the decoder 204 as a code image, the decoder 204 restores an original character string or byte array from the code image. A known technology can be used for the detect function as well.


The print application 100 has two functions corresponding to a difference in a print command source. Specifically, the print application 100 has a driver print function and a scan print function. The driver print function is a function of receiving a print command from the printer driver of the personal computer PC and printing an image according to the print command. Moreover, the driver print function reads, when a code image is printed on paper together with the electronic document, the code image printed on the paper and collates a paper ID obtained by decoding the code image and an original paper ID of the code image. When these paper IDs do not coincide with each other or when the code image itself cannot be read, the driver print function performs NG recording on the paper and discharges the paper to the garbage tray 72. The scan print function is a function of receiving a print command from the scan application 101 that scans copy object paper in the multifunction peripheral MFP and printing an image according to the print command.


When copy object paper is set on the multifunction peripheral MFP and a print command is inputted by the user on the operation panel 20 of the multifunction peripheral MFP, the scanning unit scans the paper to scan a code image printed on the paper. The scan application 101 acquires the code image and acquires a paper ID decoded from the code image by the decoder 204. The scan application 101 acquires, based on the paper ID, paper information stored in the paper-information DB 301 using the function of the PIDS 201. The scan application 101 acquires, based on the paper information, electronic information stored in the electronic-information DB 302 using the function of the EIDS 202. The scan application 101 acquires an electronic document stored in the electronic-document DB 303 using the electronic information. The scan application 101 passes a print command including the electronic document, the paper ID, and a print condition to the print application 100.



FIG. 12 is a flowchart of a procedure of basic processing of SOAP communication performed by using a SOAP message in the Web service. In FIG. 12, for convenience of explanation, a communication partner of the SRMS 200 is represented as a client. However, the client is any one of the multifunction peripherals MFP other than the multifunction peripheral MFP and the personal computer PC.


First, the client requests the interface section SR1 of the SRMS 200 to establish a session (Step S1). The establishment of a session can be performed by using a module provided by NET Framework or AXIS explained above. The interface section SR1 can manage a session using the module. However, in this procedure, the interface section SR1 passes information to any one of the processing sections of the processing function section SR2 and the processing section independently manage the session. In such a technology, when the request for establishment of a session is received from the client, the interface section SR1 requests the processing function section SR2 to establish a session (Step S2). The processing function section SR2 receives the request for establishment of a session from the interface section SR1. The processing function section SR2 issues a session ID for managing the session and generates session information including information such as a term of validity of the session (Step S3). The processing function section SR2 transmits the session ID to the interface section SR1 (Step S4). The interface section SR1 receives the session ID. The interface section SR1 generates session information for managing the session ID and transmits the session ID to the client (Step S5). The client receives the session ID (Step S6). As a result, a session is established between the client and a server. While the session is established, the SRMS 200 can perform the respective kinds of processing explained above.


The client requests the interface section SR1 to execute the respective kinds of processing (Step S7). The interface section SR1 accesses an interface corresponding to the request from the client and requests the processing section (hereinafter, “object processing section”) corresponding to the interface among the processing sections SR20 to SR28 of the processing function section SR2 to execute the processing (Step S8). When parameters are required for the execution of the processing, the client transmits, in requesting the execution of the processing, the parameters to the interface section SR1 serializing with a SOAP message. The interface section SR1 deserializes the SOAP message transmitted from the client to obtain the parameters and, in requesting the object processing section to execute the processing, passes the parameters to the object processing section. The client may pass, in requesting the execution of the processing, the session ID obtained at the time of the establishment of the session to the Web server. The interface section SR1 collates the session ID received from the client and session information held by the interface section SR1 and judges, for example, whether a session corresponding to the session ID exists and a term of validity of the session has not been expired. When there is no problem, the interface section SR1 passes the parameters passed by the client to the object processing section and waits for completion of the processing.


On the other hand, the object processing section executes the processing according to the processing execution request from the interface section SR1 (Step S9) and returns a processing result to the interface section SR1 through an interface corresponding to the object processing section (Step S10). The interface section SR1 receives the processing result from the object processing section. The interface section SR1 transmits the processing result to the client (Step S11). The client receives the processing result (Step S12). In finishing the session, the client requests the interface section SR1 to cancel the session (Step S13). The interface section SR1 deletes the session information managed by the interface section SR1 and requests the object processing section to cancel the session (Step S14). The object processing section deletes the session information in the same manner (Step S15) and transmits a deletion result indicating success of the deletion to the interface section SR1 (Step S16). The interface section SR1 transmits the deletion result to the client (Step S17). The client receives the deletion result (Step S18) and finishes the session between the client and the server. In finishing the session, according to the method used in establishing the session, the session may be managed by the module provided by NET Framework or AXIS or the object processing section may independently manage the session.


Details of operations of the respective interfaces performed at Steps S8 and S11 and operations of the respective processing sections performed at Steps S9 and S10 according the processing execution request at Step S7 are explained below.


The service registration is a function of registering service information in the service-information table 300A stored in the service DB 300. FIG. 13 is a flowchart of a procedure of service-registration processing realized by the service registration function. First, the service-registration processing section SR20 receives service information from the client through the interface section SR1 (Step S20). The service-information-registration processing section SR20 checks a maximum value of a local ID of service information stored in the service-information table 300A (Step S21). For example, when the maximum value is “10”, the service-information-registration processing section SR20 issues “11” as a new local ID and sets “11” in a local ID of the received service information (Step S22). The service-information-registration processing section SR20 sets a value of an UUID of the SRMS 200 including the processing section SR20 in a master UUID of the received service information (Step S23). As a result, a service ID, which is a combination of the UUID of the SRMS 200 and the local ID, is issued and associated with the service information. The UUID of the SRMS 200 has been issued during installation and stored in a storage device such as an HDD 18. The service-registration processing section SR20 acquires a present date and time using the timing function of the CPU 11 and sets the present date and time in a registration date and time and an update date and time of the received service information (Step S24). The service-information-registration processing section SR20 registers the service information, in which the respective kinds of information are set, in the service-information table 300A (Step S25). Subsequently, the service-registration processing section SR20 returns the UUID of the SRMS 200 and the issued service ID to the client as a request source through the interface section SR1 (Step S26).


The service change is a function of changing service information registered in the service-information table 300A to new service information. FIG. 14 is a flowchart of a procedure of service-change processing realized by the service change function. The service-change processing section SR21 receives service information from the client through the interface of service change of the interface section SR1 (Step S40). The service-change processing section SR21 retrieves, referring to the service-information table 300A, a record of service information with which a value of a UUID of a service of the received service information coincides (Step S41). When a relevant record is not present (“NO” at Step S42), the service-change processing section SR21 returns error information indicating that “designated service information is not present” to the client as a request source (Step S49). When a relevant record exists (“YES” at Step S42), the service-change processing section SR21 judges, referring to a master UUID of the record, whether the value coincides with a value of the UUID of the SRMS 200 (Step S43). When the values of the UUIDs do not coincide with each other (“NO” at Step S43), because the relevant record is service information acquired from the SRMSs 200 of the other multifunction peripherals MFP by the synchronization function explained later, the service-change processing section SR21 of the SRMS 200 cannot change the service information. Therefore, the service-change processing section SR21 returns error information indicating that “the service information is not service information managed by the SRMS” to the client (Step S48). When the values of the UUIDs coincide with each other (“YES” at Step S43), the service-change processing section SR21 sets a local ID, the master UUID, and a registration date and time of the record in the received service information (Step S44). This is for the purpose of preventing the local ID, the master UUID, and the registration date and time from being changed. The service-change processing section SR21 acquires a present date and time using the timing function of the CPU 11 and sets the present date and time in an update date and time of the received service information (Step S45). The service-change processing section SR21 updates (overwrites) the service-information table 300A with the service information in which the respective kinds of information are set as explained above (Step S46). Subsequently, the service-change processing section SR21 returns information indicating success of the processing to the client through the interface section SR1 (Step S47).


The service deletion is a function of deleting service information registered in the service-information table 300A. FIG. 15 is a flowchart of a procedure of service-deletion processing realized by the service deletion function. The service-deletion processing section SR22 receives a UUID of a deletion object service from the client through the interface section SR1 (Step S60). The service-deletion processing section SR22 retrieves, referring to the service-information table 300A, a record of service information with which a value of the received UUID coincides (Step S61). When a relevant record is not present (“NO” at Step S62), the service-deletion processing section SR22 returns error information indicating that “designated service information is not present” to the client as a request source (Step S67). When the relevant record exists (“YES” at Step S62), the service-deletion processing section SR22 judges, referring to a master UUID of the relevant record, whether the master UUID coincides with a value of the UUID of the SRMS 200 (Step S63). When the values of the UUIDs do not coincide with each other (“NO” at Step S63), the service-deletion processing section SR22 returns error information indicating that “the service information is not service information managed by the SRMS” to the client (Step S66). When the values of the UUIDs coincide with each other (“YES” at Step S63), the service-deletion processing section SR22 deletes the record from the service-information table 300A (Step S64). Subsequently, the service-deletion processing section SR22 returns success information indicating success of the processing to the client through the interface section SR1 (Step S65).


The service acquisition is a function of acquiring service information registered in the service-information table 300A. The service acquisition function is subdivided into three interfaces. These interfaces are referred to as service acquisitions 1 to 3, respectively. The service acquisition 1 is a function of acquiring service information designating a UUID of a service of the service information. The service acquisition 2 is a function of acquiring a list of service information directly managed by the SRMS 200 without designating a UUID of a service of the service information. It is possible to discriminate whether the SRMS 200 directly manages service information according to whether a master UUID of the service information coincides with a value of the UUID of the SRMS 200. The service acquisition 3 is a function of acquiring a list of only service information of the SRMS 200 in the service-information table 300A. FIG. 16 is a flowchart of a procedure of service-acquisition processing realized by the service acquisition function. First, the service-acquisition processing section SR23 receives a service acquisition request from the client through the interface section SR1 (Step S80). The service-acquisition processing section SR23 discriminates a type of the requested service acquisition (Steps S81 and S87). When the service acquisition request is a request for the service acquisition 1 (“YES” at Step S81), the service-acquisition processing section SR23 receives a UUID of a service of acquisition object service information (Step S82). The service-acquisition processing section SR23 retrieves, referring to the service-information table 300A, a record of service information with which a value of the received UUID coincides (Step S83). When a relevant record is not present (“NO” at Step S84), the service-acquisition processing section SR23 returns error information indicating that “relevant service information is not present” to the client as a request source (Step S86). When a relevant record exists (“YES” at Step S84), the service-acquisition processing section SR23 returns service information as the relevant record to the client through the interface section sR1 (Step S85).


When the service acquisition request is a request for the service acquisition 2 (“NO” at Step S81 and “YES” at Step S87), unlike the case of the service acquisition 1, the service-acquisition processing section SR23 does not receive parameters such as the UUID of the service of the acquisition object service information. The service-acquisition processing section SR23 retrieves a record, a master UUID of service information of which coincides with a value of the UUID of the SRMS 20, referring to the service-information table 300A (Step S88). When a relevant record is not present (“NO” at Step S89), the service-acquisition processing section SR23 returns error information indicating that “relevant service information is not present” to the client (Step S86). When relevant records are present (“YES” at Step S89), the service-acquisition processing section SR23 forms a list of the relevant records and returns the list to the client as a service information list through the interface section SR1 (Step S90).


When the service acquisition request is a request for the service acquisition 3 (“NO” at Step S81 and “NO” at Step S87), unlike the case of the service acquisition 1, the service-acquisition processing section SR23 does not receive parameters such as the UUID of the service of the acquisition object service information. The service-acquisition processing section SR23 retrieves, referring to the service-information table 300A, a record indicating that a name space of service information is “SRMS” (e.g., jp.co.ricoh.srms) (Step S91). When a relevant record is not present (“NO” at Step S92), the service-acquisition processing section SR23 returns error information indicating that “relevant service information is not present” to the client as a request source (Step S86). When relevant records are present (“YES” at Step S92), the service-acquisition processing section SR23 forms a list of the relevant records and returns the list to the client as a service information list through the interface section SR1 (Step S93).


The trust relationship establishment is a function of registering services managed by the SRMSs 200 of the other multifunction peripherals MFP, which form a trust relationship with the SRMS 200 of the multifunction peripheral MFP, in the service-information table 300A of the multifunction peripheral MFP. Specifically, forming a trust relationship means that the SRMS 200 exchanges service information with the other SRMSs 200 and forms a relationship capable of synchronizing service information with the other SRMSs 200. FIG. 17 is a flowchart of a procedure of trust relationship establishing processing realized by the trust relationship establishment function. First, the trust-relationship-establishment processing section SR24 receives a trust relationship establishment request from the client through the interface section SR1 and receives service information of the other SRMSs 200 with which the SRMS 200 forms a trust relationship (Step S100). The trust-relationship-establishment processing section SR24 judges, referring to the service-information table 300A and referring to a UUID of a service of the service information, whether a value of the UUID is already present in the trust-relationship-information table 300B (Step S101). When a value of a relevant UUID is already present (“YES” at Step S102), the trust-relationship-establishment processing section SR24 returns error information indicating that the “a value of the UUID is already registered” to the client as a request source (Step S106). When a value of a relevant UUID is not present (“NO” at Step S102), the trust-relationship-establishment processing section SR24 registers the value of the relevant UUID in the trust-relationship-information table 300B (Step S103). The trust-relationship-establishment processing section SR24 registers service information having the relevant UUID in the service-information table 300A (Step S104). This is because it is necessary to refer to service information of a synchronization object SRMS 200 in synchronization processing explained later. Subsequently, the trust-relationship-establishment processing section SR24 returns success information indicating success of the processing to the client through the interface section SR1 (Step S105).



FIG. 18 is a schematic diagram of a relation among the multifunction peripherals MFP that form a trust relationship in the image processing system shown in FIG. 1. In the figure, the multifunction peripherals MFP connected by dotted lines form a trust relationship. For example, the multifunction peripheral MFP1 forms a trust relationship with the multifunction peripheral MFP2. The multifunction peripheral MFP 2 forms a trust relationship with the multifunction peripherals MPF1, MFP3, and MFP4. The multifunction peripheral MFP3 forms a trust relationship with the multifunction peripherals MFP2 and MFP7. The multifunction peripheral MFP4 forms a trust relationship with the multifunction peripherals MFP2 and MFP5. The multifunction peripheral MFP5 forms a trust relationship with the multifunction peripheral MFP4. The multifunction peripheral MFP7 forms a trust relationship with the multifunction peripherals MFP3 and MFP8. The multifunction peripheral MFP 8 forms a trust relationship with the multifunction peripheral MFP7. The multifunction peripheral MFP6 does not form a trust relationship with the other multifunction peripherals MRP1 to MFP5.



FIG. 19 a diagram of a state of a service-information table 300A_3 of the multifunction peripheral MFP3 that has the trust relationship explained above in the image processing system. FIG. 20 is a diagram of a state of a service-information table 300A_7 of the multifunction peripheral MFP7 that has the trust relationship explained above in the image processing system. The multifunction peripheral MFP3 forms the trust relationship with the multifunction peripherals MFP2 and MFP7. Therefore, in the service-information table 300A of the multifunction peripheral MFP3, respective kinds of service information of an SRMS 200_2, a PIDS 201_2, and an EIDS 202_2 directly managed by the SRMS 200_2 of the multifunction peripheral MFP2 and respective kinds of service information of an SRMS 200_7, a PIDS 201_7, and an EIDS 202_7 directly managed by the SRMS 200_7 of the multifunction peripheral MFP7 are stored in addition to respective kinds of service information of an SRMS 200_3, a PIDS 201_3, and an EIDS 202_3 directly managed by the SRMS 200_3. Similarly, the multifunction peripheral MFP7 forms the trust relationship with the multifunction peripherals MFP3 and MFP8. Therefore, in the service-information table 300A_7 of the multifunction peripheral MFP7, respective kinds of service information of the SRMS 200_3, the PIDS 201_3, and the EIDS 202_3 directly managed by the SRMS 200_3 of the multifunction peripheral MFP3 and respective kinds of service information of an SRMS 200_8, a PIDS 201_8, and an EIDS 202_8 directly managed by the SRMS 200_8 of the multifunction peripheral MFP 8 are stored in addition to respective kinds of service information of the SRMS 200_7, the PIDS 201_7, and the EIDS 202_7 directly managed by the SRMS 200_7 of the multifunction peripheral MFP7. As explained above, in the service-information table 300A, other than service information directly managed by the SRMSs 200 in the same multifunction peripheral MFP, service information directly managed by the SRMSs 200 of the other multifunction peripherals MFP that form a trust relationship with the multifunction peripheral MFP are stored. Acquisition of service information directly managed by the other SRMSs 200 is realized by the synchronization function explained later. Consequently, the multifunction peripheral MFP can retrieve, using a function of the scan application 101 explained later, relevant service information out of not only the service information directly managed by the SRMS 200 of the multifunction peripheral MFP but also the service information directly managed by the SRMSs 200 of the other multifunction peripherals MFP and reach an electronic document as a print source using the service information. The multifunction peripheral MFP6 that forms a trust relationship with none of the other multifunction peripherals MFP1 to MFP5, MFP7, and MFP8 can retrieve the service information stored in the other multifunction peripherals MFP1 to MFP5, MFP7, and MFP8 using a service retrieval function explained later.


The trust relationship cancellation is a function of canceling a trust relationship already formed with the other multifunction peripherals MFP. Canceling a trust relationship means deleting trust relationship information of the SRMSs 200 of the other multifunction peripherals MFP registered in the trust-relationship-information table 300B. FIG. 21 is a flowchart indicating a procedure of trust relationship cancellation processing realized by the trust relationship cancellation function. First, the trust-relationship-cancellation processing section SR25 receives a UUID of the SRMS 200, trust relationship information of which is deleted, from the client through the interface section SR1 (Step S120). The trust-relationship-cancellation processing section SR25 judges whether a value of the received UUID exists in the trust-relationship-information table 300B (Step S121). When a value of a relevant UUID is not present (“NO” at Step S122), the trust-relationship-cancellation processing section SR25 returns error information indicating that “relevant trust relationship information is not present” to the client as a request source (Step S126). When a value of a relevant UUID exists (“YES” at Step S122), the relevant UUID is equivalent to the trust relationship information, the trust-relationship-cancellation processing section SR25 deletes the value of the UUID from the trust-relationship-information table 300B (Step S123). Moreover, the trust-relationship-cancellation processing section SR25 deletes all kinds of service information, the master UUIDs of which coincide with the value of the relevant UUID, from the service-information table 300A (Step S124). Subsequently, the trust-relationship-cancellation processing section SR25 returns success information indicating success of the processing to the client through the interface section SR1 (Step S125).


The synchronization is a function of exchanging service information with the SRMSs 200 of the other multifunction peripherals MFP with which the multifunction peripheral MFP forms a trust relationship, i.e., the SRMSs 200 of the other multifunction peripherals MFP, the values of the UUIDs of which are registered in the trust-relationship-information table 300B, and synchronizing the service information. FIG. 22 is a flowchart of a procedure of synchronization processing realized by the synchronization function. The synchronization processing section SR26 does not receive parameters such as a UUID of a service of service information to be synchronized. The synchronization processing section SR26 receives, referring to the trust-relationship-information table 300B, a list of UUIDs (a UUID list) of the SRMSs 200 of the other multifunction peripherals MFP with which the multifunction peripheral MFP forms a trust relationship (Step S140). The synchronization processing section SR26 applies processing explained below to each of all the UUIDs in the list. First, the synchronization processing section SR26 acquires a UUID of processing object service information referring to the service-information table 300A (Step S141). The synchronization processing section SR26 accesses the URI referring to a URI of the service information to thereby make connection to the other SRMSs 200 as synchronization objects. The synchronization processing section SR26 acquires the list of service information directly managed by the other SRMSs 200 as the synchronization objects using the service acquisition function in the other SRMSs 200 as the synchronization objects (Step S142). Subsequently, the synchronization processing section SR26 deletes all kinds of service information, values of master UUIDs of which coincide with a value of the UUID of the processing object service information, from the service-information table 300A (Step S143). The synchronization processing section SR26 registers all the kinds of service information present in the list acquired from the other SRMSs 200 as the synchronization objects in the service-information table 300A (Step S144). The synchronization processing section SR26 applies the processing at Steps S141 to S144 to all the UUIDs present in the UUID list. When the processing is finished for all the UUIDs present in the UUID list (“YES” at Step S145), the synchronization processing section SR26 retrieves service information having a master UUID that coincides with a value of a UUID not present in the UUID list from the service-information table 300A and deletes the service information from the service-information table 300A (Step S146). Consequently, the service information of the other SRMSs 200, a trust relationship of which is canceled, is deleted from the service-information table 300A. Finally, the synchronization processing section SR26 returns success information indicating success of the processing to the client as a request source through the interface section SR1 (Step S147).


The service inquiry is a function of receiving inquiries about service information from the other SRMSs 200 and returning the service information to the other SRMSs 200. FIG. 23 is a flowchart of a procedure of service-inquiry processing realized by the service inquiry function. In the service inquiry, data communication is performed by using the UDP instead of the Web service. The data communication performed by using the UDP is known. Therefore, explanation of a detailed procedure of the data communication is omitted. In a procedure explained below, the SRMS 200 of the multifunction peripheral MFP performs data communication with a client same as that in the data communication performed by using the Web service and performs processing.


The service-inquiry processing section SR28 receives a service inquiry request from the client with the UDP (Step S160). The service-inquiry processing section SR28 starts the processing. Parameters used for the processing are not included in the service inquiry request. An IP address of the client as a request source is included in the service inquiry request. Subsequently, the service-inquiry processing section SR28 acquires service information of the SRMS 200 referring to the service-information table 300A (Step S161). The service-inquiry processing section SR28 acquires the IP address included in the service inquiry request (Step S162) and returns the service information to the IP address with the UDP (Step S163). Consequently, the SRMSs 200 of the other multifunction peripherals MFP as request sources can acquire the service information of the SRMS 200.


The service retrieval is a function of inquiring the other SRMSs 200 about service information and acquiring service information of the other SRMSs 200. FIG. 24 is a flowchart of a procedure of service-retrieval processing realized by the service retrieval function.


The service-retrieval processing section SR27 receives a service retrieval request from the client using the UDP (Step S180) and starts the processing. The service-retrieval processing section SR27 does not receive parameters used for the processing. Subsequently, the service-retrieval processing section SR27 transmits, using the UDP, the service inquiry request to all IP addresses in the same in-house system SYM as the multifunction peripheral MFP having the SRMS 200, i.e., to the multifunction peripherals MFP and the personal computers PC in the same in-house system SYM (Step S181). The service-retrieval processing section SR27 transmits a UDP packet to IP addresses of all the multifunction peripherals MFP in the image processing system and receives responses only from the SRMSs 200 present in the same in-house system SYM as the multifunction peripheral MFP having the SRMS 200. On the other hand, the SRMSs 200 of the other multifunction peripherals MFP that receive the service inquiry request perform the service-inquiry processing explained above and return service information managed by the other SRMSs 200 to the SRMS 200. In an example in FIG. 23, service information is returned to the SRMS 200 from the other two SRMSs 200. As a result, the service-retrieval processing section SR27 of the SRMS 200 collects service information from the other SRMSs 200 (Step S182), forms a list of the collected service information, and returns the list to the client as a request source as a service information list (Step S183). Consequently, for example, like the multifunction peripheral MFP6 shown in FIG. 18, even when the multifunction peripheral MFP has no trust relationship with all the other multifunction peripherals MFP and, therefore, service information directly managed by the other SRMSs 200 is not stored in the service-information table 300A of the multifunction peripheral MFP, the multifunction peripheral MFP can acquire service information managed by the SRMSs 200 of the other multifunction peripherals MFP using the service retrieval function.


The paper registration is a function of registering paper information in the paper-information table 301A of the paper-information DB 301. FIG. 25 is a flowchart of a procedure of paper-registration processing realized by the paper registration function. The paper-registration processing section PI20 receives paper information from the client through the interface section PI1 (Step S200). The paper-registration processing section PI20 checks a maximum value of a local ID of paper information stored in the paper-information table 301A (Step S201). For example, when the maximum value is “10”, the paper-registration processing section PI20 issues “11” as a new local ID and sets “11” in a local ID of the received paper information (Step S202). Subsequently, the paper-registration processing section PI20 sets a value of a UUID of the PIDS201 in the received paper information (Step S203). The paper-registration processing section PI20 acquires a present date and time using the timing function of the CPU 11 and sets the present date and time in a registration date and time and an update date and time of the received paper information (Step S204). As a result, a paper ID, which is a combination of the UUID of the PIDS 201 and the local ID, is issued with respect to the paper information. The paper ID is associated with the paper information. The paper-registration processing section PI20 registers the paper information, in which the respective kinds of information are set, in the paper-information table 301A (Step S205). Finally, the paper-registration processing section PI20 returns, as the paper ID, the combination of the UUID of the PIDS 201 and the local ID to the client as a request source through the interface section PI1 (Step S206).


The paper change is a function of changing paper information registered in the paper-information table 301A to new paper information. FIG. 26 is a flowchart of a procedure of paper-information-change processing realized by the paper change function. First, the paper-change processing section PI21 receives paper information from the client through the interface section PI1 (Step S220). The paper-change processing section PI21 retrieves, referring to the paper-information table 301A, a record of paper information with which a value of a combination (a paper ID) of a UUID of the PIDS 201 and a local ID of the received paper information coincides (Step S221). When a relevant record is not present (“NO” at Step S222), the paper-change processing section PI21 returns error information indicating that “relevant paper information is not present” to the client as a request source (Step S227). When a relevant record exists (“YES” at Step S222), the paper-change processing section PI21 sets a registration date and time, a local ID, and a master UUID, which are set in the record, in the received paper information (Step S223). The service-change processing section PI21 acquires a present date and time using the timing function of the CPU 11 and sets the present date and time in an update date and time of the received paper information (Step S224). The service-change processing section PI21 updates (overwrites) the paper-information table with the paper information in which the respective kinds of information are set as explained above (Step S225). Subsequently, the paper-change processing section PI21 returns information indicating success of the processing to the client as a request source through the interface section PI1 (Step S226).


The paper deletion is a function of deleting paper information registered in the paper-information table 301A. FIG. 27 is a flowchart showing a procedure of paper-deletion processing realized by the paper deletion function. First, the paper-deletion processing section PI22 receives a combination (a paper ID) of a UUID of the PIDS 201 and a local ID concerning deletion object paper information from the client through the interface section PI1 (Step S240). The paper-deletion processing section PI22 retrieves, referring to the paper-information table 301A, a record of paper information with which a value of the received combination (paper ID) of the UUID of the PIDS 201 and the local ID coincides (Step S241). When a relevant record is not present (“NO” at Step S242), the paper-deletion processing section PI22 returns error information indicating that “relevant paper information is not present” to the client as a request source (Step S245). When a relevant record exists (“YES” at Step S242), the paper-deletion processing section PI22 deletes the record from the paper-information table 301A (Step S244). Subsequently, the paper-deletion processing section PI22 returns success information indicating success of the processing to the client through the interface section PI1 (Step S244).


The paper acquisition is a function of acquiring paper information registered in the paper-information table 301A. FIG. 27 is a flowchart of a procedure of paper acquiring processing realized by the paper acquisition function. First, the paper-acquisition processing section PI23 receives a combination (a paper ID) of a UUID of the PIDS 201 and a local ID concerning acquisition object paper information from the client through the interface section PI1 together with a paper acquisition request (Step S260). The paper-acquisition processing section PI23 retrieves, referring to the paper-information table 301A, a record of paper information with which a value of the received combination (paper ID) of the UUID of the PIDS 201 and the local ID coincides (Step S261). When a relevant record is not present (“NO” at Step S262), the paper-acquisition processing section PI23 returns error information indicating that “relevant paper information is not present” to the client as a request source (Step S264). When a relevant record exists (“YES” at Step S262), the paper-acquisition processing section PI23 returns the paper information as the relevant record to the client through the interface section PI1 (Step S263).


The electronic information registration is a function of registering electronic information in the electronic information table 302A of the electronic-information DB 302 and registering an electronic document in the electronic-document DB 303 using the function of the repository 205. FIG. 29 is a flowchart of a procedure of electronic information registration processing realized by the electronic information registration function. First, the electronic-information-registration processing section EI20 receives electronic information and an electronic document from the client as a request source through the interface section EI1 (Step S300). The electronic-information-registration processing section EI20 registers the electronic document in the electronic-document DB 303 through the repository 205 using a document registration function of the repository 205. As a result, the electronic-information-registration processing section EI20 receives a document ID from the repository 205 (Step S301). The document ID is an ID that the repository 205 independently issues in order to manage the electronic document to be registered. When a document management system such as a file system of Windows (registered trademark) is used as the repository 205, the document ID may be a file path. The electronic-information-registration processing section EI20 sets the document ID received from the repository 205 in “link to a repository” in the electronic information (Step S302). Subsequently, the electronic-information-registration processing section EI20 checks a maximum value of a local ID referring to the electronic information table 302A (Step S303). For example, when the maximum value is “10”, the electronic-information-registration processing section EI20 issues “11” as a new local ID and sets “11” in a local ID of the received electronic information (Step S304). The electronic-information-registration processing section EI20 sets a UUID of the EIDS 202 in the electronic information (Step S305). As a result, an electronic information ID, which is a combination of the UUID of the EIDS 202 and the local ID, is issued with respect to the electronic information. The electronic information ID is associated with the electronic information. The electronic-information-registration processing section EI20 acquires a present date and time using the timing function of the CPU 11 and sets the present date and time in a registration date and time and an update date and time of the received electronic information (Step S306). The electronic-information-registration processing section EI20 registers the electronic information, in which the respective kinds of information are set as explained above, in the electronic information table 302A (Step S307). Finally, the electronic-information-registration processing section EI20 returns the combination (an electronic ID) of the UUID of the EIDS 202 and the local ID to the client through the interface section EI1 (Step S308).


The electronic information change is a function of changing electronic information registered in the electronic information table 302A. FIG. 30 is a flowchart of a procedure of electronic information change processing realized by the electronic information change function. First, the electronic-information-change processing section EI21 receives electronic information and a body of an electronic document from the client as a request source through the interface section EI1 (Step S320). The electronic-information-change processing section EI21 retrieves, referring to the electronic information table 302A, a record of electronic information with which a value of a combination (an electronic ID) of a UUID of the EIDS 202 and a local ID of the received electronic information coincides (Step S321). When a relevant record is not present (“NO” at Step S322), the electronic-information-change processing section EI21 returns error information indicating that “designated electronic information is not present” to the client (Step S328). When a relevant record exists (“YES” at Step S322), the electronic-information-change processing section EI21 updates the body of the electronic document stored in the electronic-document DB 303 using a document change function of the repository 205 (Step S323). Subsequently, the electronic-information-change processing section EI21 sets a registration date and time, which is set in the relevant record, in the received electronic information (Step S324). The electronic-information-change processing section EI21 acquires a present date and time using the timing function of the CPU 11 and sets the present date and time in an update date and time of the received electronic information (Step S325). The electronic-information-change processing section EI21 updates (overwrites) the electronic information table 302 with the electronic information in which the respective kinds of information are set as explained above (Step S326). The electronic-information-change processing section EI21 returns information indicating success of the processing to the client through the interface section EI1 (Step S327).


The electronic information deletion is a function of deleting electronic information registered in the electronic information table 302A. FIG. 31 is a flowchart of a procedure of electronic information deletion processing realized by the electronic information deletion function. First, the electronic-information-deletion processing section EI22 receives a combination (an electronic ID) of a UUID of the EIDS 202 and a local ID concerning deletion object electronic information from the client through the interface section EI1 (Step S340). The electronic-information-deletion processing section EI22 retrieves, referring to the electronic information table 302A, a record of electronic information with which a value of the received combination (electronic ID) of the UUID of the EIDS 202 and the local ID coincides (Step S341). When a relevant record is not present (“NO” at Step S342), the electronic-information-deletion processing section EI22 returns error information indicating that “designated electronic information is not present” to the client as a request source (Step S346). When a relevant record exists (“YES” at Step S342), the electronic-information-deletion processing section EI22 deletes, using a document deletion function of the repository 205, a body of an electronic document stored in the electronic-document DB 303 (Step S343) and deletes the record from the electronic information table 302A (Step S344). Subsequently, the electronic-information-deletion processing section EI22 returns success information indicating success of the processing to the client through the interface section EI1 (Step S345).


The electronic information acquisition is a function of acquiring electronic information registered in the electronic information table 302A. FIG. 32 is a flowchart of a procedure of electronic information acquisition processing realized by the electronic information acquisition function. First, the electronic-information-acquisition processing section EI23 receives a combination (an electronic ID) of a UUID of the EIDS 202 and a local ID concerning acquisition object electronic information from the client through the interface section EI1 together with an electronic information acquisition request (Step S360). The electronic-information-acquisition processing section EI23 retrieves, referring to the electronic information table 302A, a record of electronic information with which a value of the received combination (electronic ID) of the UUID of the EIDS 202 and the local ID coincides (Step S361). When a relevant record is not present (“NO” at Step S362), the electronic-information-acquisition processing section EI23 returns error information indicating that “designated electronic information is not present” (Step S365). When a relevant record exists (“YES” at Step S362), the electronic-information-acquisition processing section EI23 acquires a body of an electronic document stored in the electronic-document DB 303 using a document acquisition function of the repository 205. The electronic-information-acquisition processing section EI23 returns the body of the electronic document to the client through the interface EI1 together with electronic information as the relevant record (Step S364).


The print application 100 includes the driver print function and the scan print function as explained above. FIGS. 33 to 35 is a flowchart of a procedure of operations of the print application 100 according to the driver print function.


When a user inputs designation of printing of a three-page document and setting of a print condition, the personal computer PC1 receives the designation input. The printer driver of the personal computer PC1 transmits a print command including information concerning the print object document and the print condition to the print application 100_1 of the multifunction peripheral MFP1 through the intranet NT1. A procedure of processing up to this point is a known technology. Various known printer drivers that realize the procedure of such processing can be used.


The print application 100_1 receives a print command from the printer driver of the personal computer PC1 (Step S400), performs rendering using the information concerning the print object document and the print condition included in the print command, and creates an image (a rendering image) representing a print object document (Step S401). The print object document has three pages. Therefore, the print application 100_1 creates rendering images printed on three pieces of paper, respectively. Subsequently, the print application 100_1 converts the created rendering images into an electronic document of a predetermined representation format (Step S402). For example, the electronic document is data of a TIFF format (a TIFF file). This conversion is performed for registering the electronic document in the electronic-document DB 303. The print application 100_1 generates electronic information of an initial state in which the respective kinds of information are not set and sets a file name of the electronic document in “file name” in the generated electronic information. As this file name, when a file name of the electronic document is transmitted from the printer driver, the file name may be set. Alternatively, a file name issued to the electronic document by the print application 100_1 according to a predetermined method may be set. The print application 100_1 passes the generated electronic information and the electronic document to the EIDS 202_1 as parameters (Step S403). The exchange of data between the print application 100_1 and the EIDS 202_1 is performed in the identical multifunction peripheral MFP1. Therefore, the Web service is not used.


The EIDS 202_1 registers the electronic information passed from the print application 100_1 in an electronic information table 302A_1 of the electronic-information DB 302_1 using the electronic information registration function (Step S404). The EIDS 202_1 registers the electronic document in the electronic-document DB 303_1 using the document registration function of the repository 205 and returns a combination of a UUID of the EIDS 202_1 and a local ID concerning the registered electronic information to the print application 100_1 as an electronic ID (Step S405). The print application 100_1 receives the electronic ID (Step S406). The print application 100_1 generates paper information of an initial state in which the respective kinds of information are not set and sets a file name in “name” in the generated paper information (Step S407). As this file name, when a file name is transmitted from the printer driver, the file name may be set. Alternatively, a file name issued to the electronic document by the print application 100_1 according to the predetermined method may be set. The print application 100_1 sets the print condition transmitted from the printer driver in “print condition” of the paper information and sets the electronic ID (the combination of the UUID of the EIDS 202_2 and the local ID) acquired from the EIDS 202_1 in “link to an original document” of the paper information. There are the print object images for three pages, i.e., three print object images. Therefore, the print application 100_1 generates three kinds of paper information. The print application 100_1 requests the PIDS 201_1 to register paper information and passes the generated paper information to the PIDS 201_1 as a parameter (Step S408). The exchange of data between the print application 100_1 and the PIDS 201_1 is performed in the identical multifunction peripherals MFP1. Therefore, the Web service is not used.


The PIDS 201_1 issues local IDs for the respective kinds of paper information passed from the print application 100_1 and registers the paper information in a paper-information table 301A_1 of the paper-information DB 301_1 using the paper registration function (Step S409). The PIDS 201_1 returns combinations of UUIDs of the PIDS 201_1 and local IDs concerning the respective kinds of registered paper information to the print application 100_1 as paper IDs (Step S410). The three kinds of paper information are registered in the PIDS 201_1. Therefore, three paper IDs are returned to the print application 100_1. For example, these three paper IDs are referred to as a paper ID 1-1, a paper ID 1-2, and paper ID 1-3, respectively. Subsequently, the print application 100_1 receives the three paper IDs (Step S411). The print application 100_1 passes the three paper IDs to the encoder 203_1 and requests the encoder 203_1 to encode the respective paper IDs (Step S412).


The print application 100_1 causes the paper conveying mechanism of the multifunction peripheral MFP1 to sequentially convey the printed three pieces of paper to the code-image reading unit 76 and executes verify scanning (step S4000). Specifically, the print application 100_1 causes the code-image reading unit 76 to scan the paper and read the code images printed on the paper. Positions where the code images are printed on the paper (code printing positions) are positions decided in advance. The code-image reading unit 76 reads the code images printed in the positions. When the code printing positions are indefinite, the code-image reading unit 76 may scan the entire paper and retrieve the code images using a publicly-known technology to thereby read the code images printed on the paper. The print application 100_1 passes the code images acquired in this way to the decoder 204_1 and requests the decoder 204_1 to decode the code images. The decoder 204_1 decodes, using the decoding function, the code images passed from the print application 100_1 and acquires the paper IDs. The decoder 204_1 passes the paper IDs to the print application 100_1 as a decoding result (step S4001). When the code images cannot be decoded and the paper IDs cannot be acquired, the decoder 204_1 passes a decoding result indicating an error to the print application 100_1.


The print application 100_1 receives the decoding result from the decoder 204_1 (step S4002). The print application 100_1 analyzes the decoding result and discriminates whether the decoding is successful and the paper IDs could be acquired (step S4003). When a result of the discrimination is affirmative (“YES” at step S4003), the print application 100_1 collates the paper IDs acquired as the decoding result and the paper IDs acquired at step S411 (step S4004). When the paper IDs coincide with each other (“YES” at step S4004), the print application 100_1 causes the paper discharging mechanism to convey the paper to the paper discharge tray 71. When a result of the discrimination at step S4003 is negative and when the paper IDs received at step S411 and the paper IDs acquired at step S4002 do not coincide with each other (“NO” at step S4004), the print application 100_1 causes the paper conveying mechanism to convey the paper (hereinafter, “NG paper”) to the NG recording unit 74 and causes the NG recording unit 74 to apply NG recording, which indicates that there is deficiency in the codes, to the NG paper (step S4005). A position of the NG recording may be any position as long as it is seen that there is deficiency in the code images printed on the NG paper. However, the position is desirably a position overlapping the code images. The print application 100_1 causes the paper-conveying-path switching unit 75 to switch the discharge destination of the paper to the garbage tray 72 and causes the paper conveying mechanism to convey the NG paper to the garbage tray 72 (step S4006). As a result, it is possible to separately discharge NG paper having deficiency in the printed code images and paper not having deficiency in the printed code images.


In the following explanation, only one piece of paper of the second page among the pieces of paper of the first to third pages is NG paper. The print application 100_1 passes, concerning the NG paper, the paper ID acquired at step S411 to the PIDS 201_1 and requests the PIDS 201_1 to acquire paper information (step S4007). The PIDS 201_1 acquires, using the paper acquiring function, paper information corresponding to the paper ID referring to the paper-information table 301A_1 stored in the paper-information DB 301_1 and returns the paper information to the print application 101_1 (step S4009). Subsequently, the print application 100_1 passes the paper ID to the PIDS 201_1 and requests the PIDS 201_1 to delete paper information (step S4010). The PIDS 201_1 deletes, using the paper information deleting function, paper information corresponding to the paper ID referring to the paper-information table 301A_1 stored in the paper-information DB 301_1 and passes success information to the print application 100_1 (step S4011). The print application 100_1 receives the success information (step S4012). The print application 101_1 passes the paper information acquired at step S4009 to the PIDS 201_1 as parameters and requests the PIDS 201_1 to register the paper information (step S4013). The PIDS 201_1 issues, using the paper information registering function, new local IDs to the paper information passed from the print application 100_1, respectively, sets values in “registration date and time” and “update date and time” of the paper information, and registers the paper information in the paper-information table 301A_1 of the paper-information DB 301_1. The PIDS 201_1 returns a combination of the UUID of the PIDS 201_1 and the paper ID to the print application 100_1 as a new paper ID (step S4014). The print application 100_1 receives the new paper ID (step S4015). The print application 100_1 passes the paper ID to the PIDS 201_1 and requests the PIDS 201_1 to acquire new paper information corresponding to the paper ID (step S4016). The PIDS 201_1 returns, using the paper acquiring function, paper information corresponding to the paper ID to the scan application 101_1 (step S4017).


The print application 100_1 acquires the new paper information (step S4018) and acquires an ID set in “link to an original document” of the paper information. As described above, a paper ID may be set or an electronic ID may be set in “link to an original document”. Therefore, it is impossible to judge at this point which of the paper ID and the electronic ID is set. However, both the paper ID and the electronic ID are the same in that the IDs are combinations of a UUID and a local ID. Therefore, first, the print application 100_1 extracts a UUID of a service from the ID set in “link to an original document” (step S4019). It is assumed that the UUID of the EIDS 202_1 is extracted. The print application 100_1 passes the UUID to the SRMS 200_1 as a parameter and requests the SRMS 200_1 to acquire service information of the UUID (step S4020). The SRMS 200_1 acquires, using the function of the service acquisition 1, service information of the EIDS 202_1 corresponding to the SRMS 200_1 and returns the service information to the print application 100_1 (step S4021). The print application 100_1 receives the service information from the SRMS 200_1 and judges, referring to “name space” of the service information, which service the service information indicates (step S4022). The print application 100_1 judges that a service indicated by the service information is the EIDS 202. The print application 100_1 accesses the EIDS 202_1 referring to “URI” of the service information. The print application 100_1 passes the ID (the electronic ID) acquired at step S4018 to the EIDS 202_1 and requests the EIDS 202_1 to execute acquisition of electronic information corresponding to the electronic ID (step S4023). The EIDS 202_1 acquires electronic information corresponding to the electronic ID referring to the electronic information table 302A_1 stored in the electronic-information DB 302_1. The EIDS 202_1 acquires an electronic document (a TIFF file) stored in the electronic-document DB 303_1 using the document acquiring function of the repository 205_1 and returns the TIFF file to the print application 100_1 together with the electronic information (step S4024).


The print application 100_1 acquires the electronic information and the TIFF file (step S4025). Subsequently, the print application 100_1 passes the new paper ID acquired at step S4015 to the encoder 203_1 and requests the encoder 203_1 to encode the paper ID (step S4026). The encoder 203_1 encodes the paper ID to create a code image (step S4027) and passes the created code image to the print application 100_1 (step S4028). The print application 100_1 receives the code image (step S4029). The print application creates a rendering image using the TIFF file acquired at step S4025 and “print condition” set in the paper information acquired at step S4018 and performs the processing at step S416. At step S416, the print application 100_1 causes the paper conveying mechanism to convey new paper housed in the housing tray 70 to the printing unit 61 and causes the printing unit 61 to perform printing.


Consequently, it is possible to provide paper on which a code image, which is surely readable and accurately decodable, is printed and guarantee a quality of a code image to be printed. As a result, it is possible to prevent misprinting that is caused when, because of a print failure of a code image, for example, a wrong paper ID is acquired from the code image and an electronic document, which is not a print object, is acquired from the paper ID. When a code image created by encoding a paper ID has a print failure or a decoding failure, it is possible to always maintain consistency of a correspondence relation between paper IDs and paper information by deleting the paper ID and deleting paper information stored in the paper information table 301 in association with the paper ID.


In the above description, one piece of paper among a plurality of pages is NG paper. When a plurality of pieces of paper among a plurality of pages are NG paper, the processing at steps S4007 to S4019 only has to be performed for each of the pieces of paper.


As an operation according to the scan print function, for example, the scanning unit scans the paper, which is printed by the multifunction peripheral MFP1 according to the processing explained referring to FIGS. 33 to 35, according to execution of the scan application 101_5 of the multifunction peripheral MFP5 and reprints the paper according to execution of the print application 100_5 of the multifunction peripheral MFP5. FIG. 36 is a flowchart of a procedure of operations of the print application 100 according to the scan print function.


The user sets copy object paper (the paper printed by the multifunction peripheral MFP1 according to the processing explained referring to FIG. 33) in the multifunction peripheral MFP5, sets a print condition, and instructs the multifunction peripheral MFP5 to print an image. The scan application 101_5 of the multifunction peripheral MFP5 acquires a code image printed on the paper, which is a code image scanned by the scanning unit by scanning the paper. The scan application 101_5 passes a print command including a TIFF file and a paper ID obtained based on a result of the code image acquisition and the print condition set by the user to the print application 100_5. A detailed procedure of operations of the scan application 101_5 is explained later. The TIFF file is a TIFF file stored in the electronic-document DB 303 by the electronic information registration function of the EIDS 202 and acquired from the EIDS 202. The paper ID is a paper ID attached to the paper and is any one of the paper ID 1-1, the paper ID 1-2, and the paper ID 1-3.


The print application 100_5 receives the print command (Step S420). The print application 100_5 performs rendering based on the TIFF file and the print condition included in the print command and creates images (rendering images) representing a print object document (Step S421). The TIFF file is information representing the three-page document. Therefore, the print application 100_5 performs rendering page by page and creates three rendering images. The print application 100_5 generates paper information of an initial state in which the respective kinds of information are not set, sets a file name in “name” in the generated paper information, sets the print condition passed from the scan application 101_5 in “print condition” of the paper information, and sets the paper ID (any one of the paper ID 1-1, the paper ID 1-2, and the paper ID 1-3) passed from the scan application 101_5 in “link to an original document” of the paper information (Step S422). The print application 100_5 requests the PIDS 201_5 to register paper information and passes the generated paper information to the PIDS 201_5 as a parameter (Step S423). A procedure of operations at Steps S424 to S431 is substantially the same as that at Steps S409 to S416 explained above. Therefore, explanation of the procedure is omitted. However, at Steps S427 to S430, it is the encoder 203_5 that the print application 100_5 requests to encode the paper IDs.


As in the case of the driver print explained above, as a result of the processing, three print results are obtained by converting the three paper IDs issued by the PIDS 201_5 into codes and printing the paper IDs. For example, the paper IDs attached to the print results are referred to as a paper ID 5-1, a paper ID 5-2, and a paper ID 5-3, respectively, in order of the pages. In “link to an original document” of the respective kinds of paper information corresponding to these paper IDs, as explained above, any one of the paper ID 1-1, the paper ID 1-2, and the paper ID 1-3 is set. Therefore, any one of the paper ID 1-1, the paper ID 1-2, and the paper ID 1-3 can be linked to each of the paper ID 5-1, the paper ID 5-2, and the paper ID 5-3. In “link to an original document” of the respective kinds of paper information corresponding to the paper ID 1-1, the paper ID 1-2, and the paper ID 1-3, as explained at step s407, the electronic IDs are set. Therefore, it is possible to acquire a print object electronic document using the electronic IDs. Specifically, if a paper ID of a copy source is linked to a paper ID of a copy destination every time paper is copied, in copying the paper, by tracing a link of the paper information corresponding to the paper IDs, it is possible to reach paper information to which an electronic document as a print source is linked. As a result, it is possible to reach the electronic document. By interposing the paper IDs and the paper information corresponding to the paper IDs in this way, it is also possible to find when and where printing related to the electronic document is performed.


The procedure of the operations of the scan application 101 is divided into the following two cases:

  • (a) the second page (corresponding to the paper ID 1-2) of the paper printed by the multifunction peripheral MPF1 is scanned and reprinted by the multifunction peripheral MFP5; and
  • (b) the first page (corresponding to the paper ID 5-1) of the paper reprinted by the multifunction peripheral MFP5 is scanned and reprinted again by the multifunction peripheral MFP6.


As the case (a), it is assumed that paper printed in the office J1 is carried to the office J2 and reprinted by a multifunction peripheral MFP in the office J2. As the case (b), paper printed in the office J1 is carried to the office J2 and the paper reprinted by the multifunction peripheral MFP in the office J2 is further carried to the office J3 and reprinted again by a multifunction peripheral MP in the office J3. A trust relationship among the multifunction peripherals MFP is the relation shown in FIG. 18.



FIG. 37 is a flowchart of a procedure of operations of the scan application 101_5 in the case a) in scanning and reprinting the second page (corresponding to the paper ID 1-2) of the paper, which is printed by the multifunction peripheral MFP1, using the multifunction peripheral MFP5. When a power supply is turned on in the multifunction peripheral MFP5 and the scan application 101_5 is started, the scan application 101_5 causes the operation panel 20 to display items for setting a print condition and a scan button for instructing scan. The user sets the second page of the three pieces of paper, which are printed by the multifunction peripheral MFP1, in a scan unit (not shown) of the multifunction peripheral MFP5, sets a print condition in the operation panel 20, and depresses the scan button. The scan application 101_5 acquires the print condition and executes scanning of the paper set in the scan unit (Step S440). The scan application 101_5 passes a scan image obtained as a result of the scanning to the decoder 204_5 and requests the decoder 204_5 to decode the scan image (Step S441). The decoder 204_5 decodes a code image included in the scan image passed from the scan application 101_5 using the decode function and acquires a paper ID (the paper ID 1-2) (Step S442). The decoder 204_5 passes the paper ID 1-2 to the scan application 101_5 (Step S443).


The scan application 101_5 receives the paper ID 1-2 (Step S444). The scan application 101_5 extracts a UUID of the PIDS 201 from the paper ID 1-2 (Step S445). The scan application 101_5 cannot judge whether the PIDS 201 is the PIDS 201_1 only from the UUID. Therefore, the scan application 101_5 passes the UUID to an SRMS 200_5 of the multifunction peripheral MFP5 as a parameter and requests the SRMS 200_5 to acquire service information of the UUID. In other words, the scan application 101_5 requests the SRMS 200_5 to execute the service acquisition 1 (Step S446). The exchange of data between the scan application 101_5 and the SRMS 200_5 is performed in the identical multifunction peripheral MFP5. Therefore, the Web service is not used. The SRMS 200_5 retrieves the designated service information of the UUID using the function of the service acquisition 1 (Step S447). The SRMS 200_5 does not manage service information of the PIDS 201_1. Therefore, the SRMS 200_5 returns error information indicating that “designated service information is not present” to the scan application 101_5 (Step S447). The scan application 101_5 receives the error information (Step S448). The scan application 101_5 requests the SRMS 200_5 to pass a list of service information. In other words, the scan application 101_5 requests the SRMS 200_5 to execute the service acquisition 3 (Step S449). The SRMS 200_5 forms, referring to the trust-relationship-information table 300B stored in the service DB 300_5, a list of service information of the SRMSs 200 having a trust relationship with the SRMS 200_5 and passes the list to the scan application 101_5 using the function of the service acquisition 3 (Step S450). The SRMS 200_5 passes service information of the SRMS 200_5 itself and service information of an SRMS 200_4 to the scan application 101_5. The scan application 101_5 receives the list of the service information (Step S451). The scan application 101_5 passes the UUID extracted at Step S445 to the SRMS 200_4 in the list and requests the SRMS 200_4 to acquire service information of the UUID (execute the service acquisition 1) (Step S452). The multifunction peripheral MFP5 including the scan application 101_5 is the client as the request source of the processing explained referring to FIG. 12. The client and the SRMS 200_4 perform SOAP communication using the Web service. The execution of the service acquisition 1 has already been requested to the SRMS 200_5. Therefore, the scan application 101_5 does not request the SRMS 200_5 to execute the service acquisition 1.


The SRMS 200_4 retrieves the designated service information of the UUID using the function of the service acquisition 1. The SRMS 200_4 does not manage service information of the PIDS 201_1. Therefore, the SRMS 200_4 returns error information indicating that “designated service information is not present” to the scan application 101_5 (Step S453). The scan application 101_5 receives the error information (Step S454). The scan application 101_5 requests the SRMS 200_4 to pass a list of service information (execute the service acquisition 3) (Step S455). The SRMS 200_4 forms, referring to the trust-relationship-information table 300B_4 stored in the service DB 300_4, a list of service information of the SRMSs 200 having a trust relationship with the SRMS 200_4 and passes the list to the scan application 101_5 using the function of the service acquisition 3. The SRMS 200_4 passes service information of the SRMS 200_4 itself and respective kinds of service information of the SRMS 200_2 and the SRMS 200_5 to the scan application 101_5 (Step S456). The scan application 101_5 receives the list of the service information (Step S457). The scan application 101_5 passes the UUID extracted at Step S445 to the SRMS 200_2 in the list as a parameter and requests the SRMS 200_2 to acquire the service information of the UUID (execute the service acquisition 1) (Step S458). Again, the multifunction peripheral MFP5 having the scan application 101_5 is the client as the request source of the processing explained referring to FIG. 12. The client and the SRMS 200_2 perform SOAP communication using the Web service. The execution of the service acquisition 1 has already been requested to the SRMS 200_4 and the SRMS 200_5. Therefore, the scan application 101_5 does not request the SRMS 200_4 and the SRMS 200_5 to execute the service acquisition 1.


The SRMS 200_2 retrieves the designated service information of the UUID using the function of the service acquisition 1 (Step S459). The SRMS 200_2 has a trust relationship with the SRMS 200_1. Therefore, the service information of the PIDS 201_1 is stored in a service-information table 300A_2 managed by the SRMS 200_2. Therefore, as a result of the retrieval, the SRMS 200_2 acquires the relevant service information of the PIDS 201_1 and returns the service information to the scan application 101_5 (Step S459). In this way, the service acquisition 1 is executed using the UUID included in the paper ID, the relevant service information is retrieved, the service acquisition 3 is executed when the service information is not obtained, the SRMS 200 having a trust relationship is retrieved, and the SRMS 200 having the trust relationship is caused to execute the service acquisition 1, and the service acquisition 1 and the service acquisition 3 are repeated until the service information is obtained. This processing is referred to as service retrieval.


The scan application 101_5 receives the service information from the SRMS 200_2. The scan application 101_5 judges, referring to “name space” of the service information, what service the service information indicates (Step S460). For example, when “jp.co.ricoh.pids” is set in “name space”, the scan application 101_5 judges that the service information indicates a PIDS. When “jp.co.ricoh.eids” is set in “name space”, the scan application 101_5 judges that the service information indicates an EIDS. Because the service information of the PIDS 201_1 is returned to the scan application 101_5, the name space is “jp.co.ricoh.pids”. Therefore, the scan application 101_5 judges that a service indicated by the service information is the PIDS 201. Then, the scan application 101_5 accesses the PIDS 201_1 referring to “URI” of the service information, passes the paper ID 1-2 acquired at Step S444 to the PIDS 201_1, and requests the PIDS 201_1 to acquire paper information (Step S461). Again, the multifunction peripheral MFP5 having the scan application 101_5 is the client as the request source of the processing explained referring to FIG. 12. The client and the SRMS 200_1 perform SOAP communication using the Web service. The PIDS 201_1 acquires paper information corresponding to the paper ID 1-2 referring to the paper-information table 301A_1 stored in the paper-information DB 301_1 and returns the paper information to the scan application 101_5 (Step S462). After acquiring the paper information, the scan application 101_5 acquires an ID set in “link to an original document” of the paper information. In “link to an original document”, a paper ID may be set or an electronic ID may be set. Therefore, at this point, it is impossible to judge which of the IDs is set. However, the paper ID and the electronic ID are the same in that both the IDs are combinations of a UUID of a service and a local ID. Therefore, first, the scan application 101_5 extracts the UUID of the service from the ID set in “link to an original document” (Step S463).


The scan application 101_5 requests, using the extracted UUID, the SRMS 200_2, service information of which is finally found in the service retrieval, to execute the service acquisition 1 (Step S464). The service retrieval is performed from the SRMS 200_2 because it is highly likely that service information corresponding to the present retrieval object UUID exists in the SRMS 200_2, which has found the service information of the PIDS 201_2 at Step S459. However, instead of starting the retrieval from the SRMS 200_2, the retrieval may be started from the SRMS 200_5 in the same manner as explained above. Service information of the EIDS 202_1 is stored in the service-information table 300A_2 managed by the SRMS 200_2 because the SRMS 200_2 and the SRMS 200_1 are in a trust relationship. Therefore, as a result of the retrieval, the SRMS 200_2 returns the service information of the EIDS 202_1 to the scan application 101_5 (Step S465).


The scan application 101_5 acquires the service information of the EIDS 202_1. The scan application 101_5 judges, referring to “name space” of the service information, which service the service information indicates (Step S466). The scan application 101_5 judges that a service indicated by the service information is an EIDS because “jp.co.ricoh.eids” is set in the name apace. Then, the scan application 101_5 accesses the EIDS 202_1 referring to “URI” of the service information, passes the ID (the electronic ID) acquired at Step S463 to the EIDS 202_1, and requests the EIDS 202_1 to execute acquisition of electronic information (Step S467). The multifunction peripheral MFP5 having the scan application 101_5 is a client as a request source of the processing explained in FIG. 12. The client and the EIDS 202_1 perform SOAP communication using the Web service. The EIDS 202_1 acquires electronic information corresponding to the electronic ID referring to the electronic information table 302A_1 stored in the electronic-information DB 302_1. The EIDS 202_1 acquires an electronic document (a TIFF file) stored in the electronic-document DB 303_1 using the document acquisition function of the repository 205_1 and returns the TIFF file to the scan application 101_5 together with the electronic information (Step S468). The scan application 101_5 acquires the electronic information and the TIFF file. The scan application 101_5 passes a print command including the TIFF file, the paper ID 1-2 obtained from the scan image at Step S444, and the print condition set by the user on the operation panel 20 to the print application 100_5 (Step S469). Then, the print application 100_5 can execute the processing at Steps S420 to S431 and obtain a print result of three pieces of paper. It is assumed that code images representing the paper ID 5-1, the paper ID 5-2, and the paper ID 5-3 are printed on the pieces of paper of the print result, respectively, in order of pages.


As explained above, in the service retrieval, the service acquisition 1 is executed using a UUID included in a paper ID, a relevant service information is retrieved, the service acquisition 3 is executed when the service information is not obtained, the SRMS 200 having a trust relationship is retrieved, and the SRMS 200 having the trust relationship is caused to execute the service acquisition 1, and the service acquisition 1 and the service acquisition 3 are repeated until the service information is obtained. Moreover, paper information is acquired using the obtained service information, an electronic ID or a paper ID is obtained from “link to an original document” of the paper information, when a paper ID is obtained, paper information corresponding to the paper ID is acquired, and the acquisition of paper information is repeated until an electronic ID is obtained. When an electronic ID is obtained, electronic information and an electronic document (a TIFF file) corresponding to the electronic ID are obtained. As a result, it is possible to perform printing using the electronic document.



FIGS. 38 to 39 are flowcharts of a procedure of operations of the scan application 1016 in scanning and reprinting a first page (corresponding to the paper ID 5-1) of the pieces of paper, which is reprinted by the multifunction peripheral MFP5 as explained above, again using the multifunction peripheral MFP6. After starting the scan application 101_6, the user sets the first page (corresponding to the paper ID 5-1) of the three pieces of paper, which is the print result obtained as a result of Step S469, in a scan unit of the multifunction peripheral MFP6, sets a print condition on the operation panel 20, and depresses the scan button to start processing. The scan application 101_6 acquires the print condition and executes scan of the paper set in the scan unit (Step S480). The scan application 101_6 passes a scan image obtained as a result of the scan to a decoder 204_6 of the multifunction peripheral MFP6 (Step S481). Processing at Steps S482 to S484 is the same as the processing at Steps S442 to S444 explained above. Therefore, explanation of the processing is omitted. Explanation of parts of the procedure same as those of the procedure of the operations explained above is also omitted.


At Step S485, the scan application 101_6 extracts a UUID of the PIDS 201 from the paper ID 5-1 passed from the decoder 204_6. The scan application 101_6 cannot judge whether the PIDS 201 is the PIDS 201_5 only from the UUID. Therefore, in the same manner as Step S446 explained above, the scan application 101_6 passes the UUID to an SRMS 200_6 of the multifunction peripheral MFP6 as a parameter and requests the SRMS 200_6 to execute the service acquisition 1 (Step S486). The SRMS 200_6 retrieves service information of the designated UUID using the function of the service acquisition 1. The SRMS 200_6 does not manage service information of the PIDS 201_5. Therefore, the SRMS 200_6 returns error information indicating that “designated service information is not present” to the scan application 101_6 (Step S487). The scan application 101_6 receives the error information (Step S488). The scan application 101_6 requests the SRMS 200_6 to pass a list of service information (execute the service acquisition 3) (Step S489). The SRMS 200_6 refers to a trust-relationship-information table 300B_6 stored in a service DB 300_6 using the function of the service acquisition 3. The multifunction peripheral MFP6 forms a trust relationship with none of the multifunction peripherals MFP1 to MFP5, MFP7, and MFP8. Therefore, service information of the other SRMSs 200 is not stored in a service-information table 300A_6 of the multifunction peripheral MFP6. Therefore, the SRMS 200_6 returns error information indicating that “designated service information is not present” to the scan application 101_6 (Step S490).


The scan application 101_6 receives the error information (Step S491). The scan application 101_6 requests the SRMS 200_6 to perform service retrieval (Step S492). Then, the SRMS 200_6 applies the service retrieval to the SRMS 200_7 and the SRMS 200_8 of the multifunction peripherals MFP7 and MFP8 connected to the intranet NT3 to which the multifunction peripheral MFP6 is connected. The SRMS 200_6 obtains a list of service information of the SRMS 200_7 and the SRMS 200_8 and returns the list to the scan application 101_6 (Step S493). The scan application 101_6 receives the list of service information (Step S494). The scan application 101_6 applies the service retrieval to all the SRMSs 200, service information of which exists in the list, in order (Step S495). First, the scan application 101_6 performs the service retrieval starting from the SRMS 200_7. The scan application 101_6 obtains service information of the SRMS 200_3 from the SRMS 200_7, obtains service information of the SRMS 200_2 from the SRMS 200_3, and obtains service information of the SRMS 200_4 from the SRMS 200_2. Service information of the PIDS 201_5 is stored in the service-information table 300A_4 managed by the SRMS 200_4 because the SRMS 200_4 and the SRMS 200_5 are in a trust relationship. Therefore, the SRMS 200_4 reads out the service information of the PIDS 201_5 from the service-information table 300A_4 and returns the service information to the scan application 101_6. As a result, the scan application 101_6 acquires the service information of the PIDS 201_5. As a result of performing the service retrieval starting from the SRMS 200_7 in the list of service information obtained at Step S494, retrieval object service information (the service information of the PIDS 201_5) is obtained. Therefore, the scan application 101_6 does not perform the service retrieval starting from the SRMS 200_8, service information of which exists in the list. If the service information of the PIDS 201_5 is not obtained as a result of performing the service retrieval starting from the SRMS 200_7, the scan application 101_6 performs the service retrieval starting from the SRMS 200_8.


The scan application 101_6 judges, referring to “name space” of the obtained service information, a service indicated by the service information (Step S496). The name space is “jp.co.ricoh.pids” because the service information of the PIDS 201_5 is returned. Therefore, the scan application 101_6 judges that the service indicated by the service information is a PIDS. Then, the scan application 101_6 accesses the PIDS 201_5 referring to “URI” of the service information, passes the ID (the paper ID 5-1) acquired at Step S484 to the PIDS 201_5, and requests the PIDS 201_5 to execute paper acquisition (Step S497). The PIDS 201_5 acquires paper information corresponding to the paper ID 5-1 referring to a paper-information table 301A-5 stored in a paper-information DB 301_5 and returns the paper information to the scan application 101_6 (Step S498). The scan application 101_6 acquires the paper information. The scan application 101_6 acquires an ID (the paper ID 1-2) set in “link to an original document” of the paper information and extracts a UUID of the service from the ID in the same manner as Step S463 (Step S499).


The scan application 101_6 performs, using the extracted UUID, service retrieval starting from the SRMS 200_4, service information of which is finally found in the service retrieval explained above (Step S500). Alternatively, the scan application 101_6 may perform the service retrieval starting from the SRMS 200_6. When the scan application 101_6 performs the service retrieval starting from the SRMS 200_4, the scan application 101_6 obtains service information of the SRMS 200_2 from the SRMS 200_4. Service information of the PIDS 201_1 is stored in the service-information table 300A_2 managed by the SRMS 200_2 because the SRMS 200_2 and the SRMS 200_1 are in a trust relationship. Therefore, the SRMS 200_2 reads out the service information of the PIDS 201_1 from the service-information table 300A_2 and returns the service information to the scan application 101_6. As a result, the scan application 101_6 acquires the service information of the PIDS 201_1. Subsequently, the scan application 101_6 judges, referring to “name space” of the obtained service information, a service of the service information (Step S501). The name space is “jp.co.ricoh.pids” because the service information of the PIDS 201_1 is returned. Therefore, the scan application 101_6 judges that the service indicated by the service information is a PIDS.


Then, the scan application 101_6 accesses the PIDS 201_1 referring to “URI” of the service information, passes the ID (the paper ID 1-2) acquired at Step S499 to the PIDS 201_1, and requests the PIDS 201_1 to execute paper acquisition (Step S502). The PIDS 201_1 acquires paper information corresponding to the paper ID 1-2 referring to the paper-information table 301A_1 stored in the paper-information DB 301_1 and returns the paper information to the scan application 101_6 (Step S503). The scan application 101_6 acquires the paper information. The scan application 101_6 acquires an ID (an electronic ID) set in “link to an original document” of the paper information and extracts a UUID of a service (the EIDS 202_1) from the ID in the same manner as Step S463 (Step S504). The scan application 101_6 performs, using the extracted UUID, service retrieval starting from the SRMS 200_2, service information of which is finally found in the service retrieval explained above (Step S505). Service information of the EIDS 202_1 is stored in the service-information table 300A_2 managed by the SRMS 200_2 because the SRMS 200_2 and the SRMS 200_1 are in a trust relationship. Therefore, the SRMS 200_2 reads out the service information of the EIDS 202_1 from the service-information table 300A_2 and returns the service information to the scan application 101_6. As a result, the scan application 101_6 acquires the service information of the EIDS 202_1. The scan application 101_6 judges, referring to “name space” of the obtained service information, which service the service information indicates (Step S506). The scan application 101_6 judges that the service indicated by the service information is an EIDS because “jp.co.ricoh.eids” is set in the name space.


Then, the scan application 101_6 accesses the EIDS 202_1 referring to “URI” of the service information, passes the ID (the electronic ID) acquired at Step S504 to the EIDS 202_1, and requests the EIDS 202_1 to execute acquisition of electronic information (Step S507). The EIDS 202_1 acquires electronic information corresponding to the electronic ID referring to the electronic information table 302A_1 stored in the electronic-information DB 302_1. The EIDS 202_1 acquires the electronic document (the TIFF file) stored in the electronic-document DB 303_1 using the document acquisition function of the repository 205_1 and returns the TIFF file to the scan application 101_6 together with the electronic information (Step S508). The scan application 101_6 acquires the electronic information and the TIFF file. The scan application 101_6 passes a print command including the TIFF file, the paper ID 5-1 obtained from the scan image at Step S484, and the print condition designated by the user on the operation panel 20 to the print application 100_6 (Step S509). Then, the print application 100_6 can execute the processing at Steps S420 to S431 and obtain a print result of three pieces of paper. For example, the print application 100_6 can obtain a print result of three pieces of paper on which code images representing new paper IDs 6-1, 6-2, and 6-3 are printed, respectively.


Thereafter, even if paper repeatedly printed in the office J3 is printed again in any one of the offices J1 to J3, an electronic document as a print source can be obtained because the functions of service acquisition, service retrieval, service retrieval, paper acquisition, and electronic information acquisition are realized as explained above. Therefore, even if the printed paper is copied many times, the printed paper can be printed using the electronic document as the print source. Therefore, it is possible to improve convenience for the user.


The present invention is not limited to the embodiment explained above. Various modifications explained below as examples are possible.


The various programs executed by the multifunction peripheral MFP explained above may be stored in the HDD 18 instead of the ROM 12a. The various programs may be stored on a computer connected to a network such as the Internet and provided by being downloaded through the network. The various programs may be provided by being recorded in computer-readable recording media such as a compact disk-read only memory (CD-ROM), a flexible disk (FD), a compact disk-recordable (CD-R), and a digital versatile disk (DVD) as files of an installable format or an executable format.


Functions of the print application 100, the scan application 101, the encoder 203, the decoder 204, and the repository 205 explained as the functions of the multifunction peripheral MFP in the embodiment are not limited to those explained above. At least two of these functions may be combined, a part of at least one of the functions may be incorporated in the other functions, or the function may be subdivided.


According to the embodiment, a different local ID is issued for each page and a code image of a paper ID including the different local ID is created for each page. However, the same local ID may be issued to all pages included in one electronic document to issue a paper ID including the local ID. A paper ID may be issued for each predetermined number of pages. A code image may be printed on at least one piece of paper among a plurality of pieces of paper. A code image may be printed only on a first page or a specific page. An identical code image may be printed on respective pages.


Information encoded and printed on paper as a code image is not limited to the paper ID. Information associated with the information is not limited to the paper information.


The service DB 300, the paper-information DB 301, the electronic-information DB 302, and the electronic-document DB 303 included in the multifunction peripheral MFP in the embodiment may be stored in a storage device such as a hard disk or may be stored in recording media such as a CD-ROM, an FD, a CD-R, and a DVD detachably insertable in the multifunction peripheral MFP.


According to the embodiment, a new paper ID is issued to the NG paper at step S4014. However, the paper ID issued at step S410 may be used without issuing a new paper ID to the NG paper. FIG. 40 is a flowchart of a procedure of operations according to a modification of the present invention. Because steps S4000 to S4006 are the same as those in the embodiment, explanation of the steps is omitted. At step S4007′, the print application 100_1 passes, concerning the NG paper, the paper ID acquired at step S411 to the PIDS 201_1 and requests the PIDS 201_1 to change paper information. The PIDS 201_1 acquires, using the paper information changing function, paper information corresponding to the paper ID referring to the paper-information table 301A stored in the paper-information DB 301_1. The PIDS 201_1 changes values of “registration date and time” and “update date and time” of the paper information and updates the paper information stored in the paper-information DB 301_1. The PIDS 201_1 returns success information indicating the end of the processing to the print application 100_1 (step S4008′). The print application 100_1 acquires the success information (step S4009′). Subsequently, the print application 100_1 passes the paper ID acquired at step S411 to the PIDS 201_1 and requests the PIDS 201_1 to acquire the paper information updated as described above (step S4010′). The PIDS 201_1 returns, using the paper acquiring function, new paper information corresponding to the paper ID to the print application 100_1 (step S4011′). The print application 100_1 acquires the new paper information (step S4012′) and performs the processing at step S4019 and subsequent steps in the same manner as described above. Consequently, it is possible to guarantee a quality of a code image to be printed and control the number of paper IDs to be issued and the number of steps of processing. Therefore, it is possible to minimize necessary resources. When a code image created by encoding a paper ID has a print failure or a decoding failure, it is possible to always maintain consistency of a correspondence relation between paper IDs and paper information by changing paper information stored in the paper information table 301 in association with the paper ID.


Furthermore, according to the embodiment, reprinting is automatically performed by applying the processing at steps S4007 to S4029 and S416 to the NG paper. However, the NG paper does not always have to be automatically reprinted. In such a case, after step S4006 in FIG. 34, only the processing at steps S4010 to S4012 has to be performed. For example, when an instruction is received from the user via the operation panel 20, the processing at steps S4007 to S4029 and S416 may be performed. Consequently, it is possible to always maintain consistency of a correspondence relation between paper IDs and paper information.


Moreover, according to the embodiment, the NG recording at step S4005 is applied to the NG paper and the NG paper is discharged to the garbage tray 72 at step S4006. However, only one of the NG recording and the discharge to the garbage tray 72 may be performed.


Furthermore, according to the embodiment, the multifunction peripheral MFP is connected to the other multifunction peripherals MFP through the network NT. However, the multifunction peripheral MFP does not have to be connected to the other multifunction peripherals MFP.


As described above, according to an aspect of the present invention, when a code image in which identification information associated with predetermined information is encoded is printed on paper, a print failure of the code image printed on the paper is discriminated by collating the identification information acquired by reading the code image with identification information before being encoded. When a print failure of the code image is discriminated, the print failure of the code image can be notified to a user by printing a predetermined image on the paper. Moreover, when a print failure of the code image is discriminated, consistency of a correspondence relation between the identification information and the predetermined information can be maintained by deleting the predetermined information associated with the identification information before being encoded in the code image.


Furthermore, according to another aspect of the present invention, when a print failure of the code image is discriminated, consistency of a correspondence relation between the identification information and the predetermined information can be maintained by updating the predetermined information stored in the storing means in association with the identification information before being encoded in the code image.


Although the invention has been described with respect to specific embodiments for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art that fairly fall within the basic teaching herein set forth.

Claims
  • 1. An image processing apparatus comprising: an information control unit that issues identification information with respect to predetermined information stored in a storing unit and manages the predetermined information in association with the identification information;a code-image creating unit that encodes the identification information, with which the predetermined information stored in the storing unit can be identified, to create a code image;a first printing unit that creates a print image using a print object electronic document and prints the code image created by the code-image creating unit on a paper medium together with the print image;a code-image reading unit that reads the code image by scanning the paper medium printed by the first printing unit;a code acquiring unit that acquires read identification information using the code image read by the code-image reading unit;a collating unit that collates the read identification information acquired by the code acquiring unit and the identification information that the code-image creating unit encodes to create the code image; anda second printing unit that prints, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, a predetermined image on the paper medium, whereinthe information control unit updates, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, the predetermined information stored in the storing unit, andthe first printing unit prints, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, the code image, which the code-image creating unit creates by encoding the identification information, on a new paper medium together with the print image.
  • 2. The image processing apparatus according to claim 1, wherein the information control unit issues the identification information and manages the predetermined information stored in the storing unit and the identification in association with each other,the information control unit issues, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, new identification information with respect to the predetermined information and registers the predetermined information in the storing unit anew in association with the new identification information,the code-image creating unit encodes the new identification information issued by the information control unit to create a code image, andthe first printing unit prints the code image, which the code-image creating unit creates by encoding the new identification information, on a new paper medium together with the print image.
  • 3. The image processing apparatus according to claim 1, wherein the predetermined information includes date and time information indicating a date and time when the predetermined information stored in the storing unit is updated, andthe information control unit updates, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, the date and time information included in the predetermined information stored in the storing unit.
  • 4. The image processing apparatus according to claim 1, wherein the second printing unit prints, when the code-image reading unit cannot read the code image, the predetermined image on the print medium.
  • 5. The image processing apparatus according to claim 1, further comprising a paper-conveying-path switching unit that switches a discharge destination of the paper medium, on which the first printing unit prints the code image, to a first tray or a second tray, wherein the first printing unit switches, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, the discharge destination of the paper medium to the second tray with the paper-conveying-path switching unit.
  • 6. The image processing apparatus according to claim 1, wherein the predetermined information is paper information for specifying the paper medium to be printed and includes print condition information indicating print conditions in printing the code image on the paper medium and one of paper information for specifying a paper medium as a copy source of the paper medium and electronic information for specifying the print object electronic document.
  • 7. The image processing apparatus according to claim 1, wherein the second printing unit prints, when the identification information and the read identification information do not coincide with each other as a result of the collation by the collating unit, the predetermined image over the code image.
  • 8. An image processing method comprising: information controlling including issuing identification information with respect to predetermined information stored in a storing unit and manages the predetermined information in association with the identification information;code-image creating including encoding the identification information, with which the predetermined information stored in the storing unit can be identified, to create a code image;first printing including creating a print image using a print object electronic document, andprinting the code image created at the code-image creating on a paper medium together with the print image;code-image reading including reading the code image by scanning the paper medium printed at the first printing;code acquiring including acquiring read identification information using the code image read at the code-image reading;collating the read identification information acquired at the code acquiring and the identification information that is encoded at the code-image creating to create the code image; andsecond printing including printing, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, a predetermined image on the paper medium, whereinthe information controlling includes updating, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the predetermined information stored in the storing unit, andthe first printing includes printing, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the code image that is created at the code-image creating by encoding the identification information on a new paper medium together with the print image.
  • 9. The image processing method according to claim 8, wherein the information controlling includes issuing the identification information, andmanaging the predetermined information stored in the storing unit and the identification in association with each other,when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the information controlling includes issuing new identification information with respect to the predetermined information and registers the predetermined information in the storing unit anew in association with the new identification information,the code-image creating includes encoding the new identification information issued at the information controlling to create a code image, andthe first printing includes printing the code image that is created at the code-image creating by encoding the new identification information on a new paper medium together with the print image.
  • 10. The image processing method according to claim 8, wherein the predetermined information includes date and time information indicating a date and time when the predetermined information stored in the storing unit is updated, andwhen the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the information controlling includes updating the date and time information included in the predetermined information stored in the storing unit.
  • 11. The image processing method according to claim 8, wherein the second printing includes printing, when the code image cannot be read at the code-image reading, the predetermined image on the print medium.
  • 12. The image processing method according to claim 8, further comprising paper-conveying-path switching including switching a discharge destination of the paper medium, on which the code image is printed at the first printing, to a first tray or a second tray, wherein when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the first printing includes switching the discharge destination of the paper medium to the second tray using the paper-conveying-path switching.
  • 13. The image processing method according to claim 8, wherein the predetermined information is paper information for specifying the paper medium to be printed and includes print condition information indicating print conditions in printing the code image on the paper medium and one of paper information for specifying a paper medium as a copy source of the paper medium and electronic information for specifying the print object electronic document.
  • 14. The image processing method according to claim 8, wherein the second printing includes printing, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the predetermined image over the code image.
  • 15. A computer program product comprising a computer-usable medium having computer-readable program codes embodied in the medium that when executed cause a computer to execute: information controlling including issuing identification information with respect to predetermined information stored in a storing unit and manages the predetermined information in association with the identification information;code-image creating including encoding the identification information, with which the predetermined information stored in the storing unit can be identified, to create a code image;first printing including creating a print image using a print object electronic document, andprinting the code image created at the code-image creating on a paper medium together with the print image;code-image reading including reading the code image by scanning the paper medium printed at the first printing;code acquiring including acquiring read identification information using the code image read at the code-image reading;collating the read identification information acquired at the code acquiring and the identification information that is encoded at the code-image creating to create the code image; andsecond printing including printing, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, a predetermined image on the paper medium, whereinthe information controlling includes updating, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the predetermined information stored in the storing unit, andthe first printing includes printing, when the identification information and the read identification information do not coincide with each other as a result of the collation at the collating, the code image that is created at the code-image creating by encoding the identification information, on a new paper medium together with the print image.
Priority Claims (1)
Number Date Country Kind
2007-038237 Feb 2007 JP national