WO2016056224A1 - Information processing apparatus, information processing system, information processing method, and program - Google Patents

Information processing apparatus, information processing system, information processing method, and program Download PDF

Info

Publication number
WO2016056224A1
WO2016056224A1 PCT/JP2015/005067 JP2015005067W WO2016056224A1 WO 2016056224 A1 WO2016056224 A1 WO 2016056224A1 JP 2015005067 W JP2015005067 W JP 2015005067W WO 2016056224 A1 WO2016056224 A1 WO 2016056224A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
information
receiving
identification information
process flow
Prior art date
Application number
PCT/JP2015/005067
Other languages
French (fr)
Inventor
Ayumi Mihara
Original Assignee
Ricoh Company, Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Company, Ltd. filed Critical Ricoh Company, Ltd.
Publication of WO2016056224A1 publication Critical patent/WO2016056224A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1207Improving or facilitating administration, e.g. print management resulting in the user being informed about print result after a job submission
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1259Print job monitoring, e.g. job status
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1268Job submission, e.g. submitting print job order or request not the print data itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1275Print workflow management, e.g. defining or changing a workflow, cross publishing

Definitions

  • the present invention relates to an information processing apparatus, an information processing system, an information processing method, and a program.
  • work flow system there is a system (hereinafter referred to as "work flow system") in which a predefined work flow can be executed for image data scanned from a document by an image forming apparatus, or for data input by another means, or the like.
  • a work flow is defined in such a way that data flow in accordance with a user's work flow.
  • a work flow includes a combination of processing units including, for example, data inputting processes, zero or more data-processing processes for the input data, and outputting processes of the data input by the inputting processes or data generated by execution of one or more data-processing processes.
  • a range of the work flow which can be monitored or managed is not the entire work flow, but a part of the work flow after process target data are input to the work flow system. It is difficult for the work flow system to monitor a status of the work when the data have not been input to the work flow system yet.
  • the present invention has been made in view of the above, and it is an objective of the present invention to make it possible to monitor the process status related to the target data before the data have been input to the system.
  • an information processing apparatus includes a receiving unit configured to, upon receiving a reservation request of a process flow execution, return identification information of the reservation request to a transmission source of the reservation request; a storage processing unit configured to store in a storage unit state information indicating a state of the process flow associated with the identification information returned by the receiving unit; an extracting unit configured to, upon receiving data including the identification information, extract the identification information from the data; and an execution unit configured to execute the predefined process flow related to the data.
  • the execution unit according to progress of the process flow, updates the state information stored in the storage unit associated with the identification information extracted by the extracting unit.
  • Fig. 1 is a drawing illustrating a configuration example of an information processing system according to an embodiment of the present invention.
  • Fig. 2 is a drawing illustrating a hardware configuration example of a flow management server according to an embodiment of the present invention.
  • Fig. 3 is a drawing illustrating a functional configuration example of a client terminal, an image forming apparatus, and a flow management server according to an embodiment of the present invention.
  • Fig. 4 is a sequence diagram illustrating an example of a procedure which is performed when printing a hospitalization consent form.
  • Fig. 5 is a drawing illustrating an example of reservation request data.
  • Fig. 6 is a drawing illustrating a configuration example of a reservation job information storage unit.
  • Fig. 7 is a drawing illustrating an example of response data for the reservation request.
  • Fig. 8 is a sequence diagram illustrating an example of a procedure which is performed related to the hospitalization consent form after the necessary information is entered.
  • Fig. 9 is a flowchart illustrating an example of
  • Fig. 1 is a drawing illustrating a configuration example of an information processing system 1 according to an embodiment of the present invention.
  • the information processing system 1 includes a flow management server 10, one or more client terminals 20, one or more image forming apparatuses 30a, 30b, etc., a document management server 50, a mail server 60, a file server 70, and the like.
  • the apparatuses are connected to each other via a network (regardless of wired or wireless) including a LAN (Local Area Network), the Internet, etc.
  • a network regardless of wired or wireless
  • LAN Local Area Network
  • the flow management server 10 is a computer which executes a predefined work flow related to data received via a network.
  • a work flow is, for example, a flow of a process (a process flow) which is realized by any combination of one or more processing units (tasks) each of which accomplishes a closed function independently or individually. It should be noted that the above processing unit may be applied to an activity in typical work flow terminology.
  • the client terminal 20 is, for example, a computer including a PC (Personal Computer) used for inputting print instructions of document data of forms such as an application form, etc.
  • PC Personal Computer
  • the forms are not limited to a fixed form or an atypical form; the forms can be any form as long as it requires some entry or affixing of a seal by a human.
  • the image forming apparatus 30a is a printer, a multifunction peripheral, or the like which is used as a printing destination of document data of the forms.
  • the image forming apparatus 30b is a scanner, a multifunction peripheral, or the like which is used for reading (scanning) images from the forms which have been printed by the image forming apparatus 30a and on which entries are added, and sending the scanned image data to the flow management server 10 as input data of the work flow. It should be noted that the image forming apparatus 30a and the image forming apparatus 30b may be a single image forming apparatus.
  • the document management server 50 is a computer with a database which stores data by associating the data with their attribute information.
  • the document management server 50 is an example of an output destination of execution results of the work flow executed by the flow management server 10. In the case where the document management server 50 is the output destination, the output data are stored in the database of the document management server 50.
  • the mail server 60 has a similar function as a typical mail server.
  • the mail server 60 is an example of the output destination of the execution results of the work flow executed by the flow management server 10.
  • the output data are attached to email and transmitted to a mail address destination set in the executed work flow.
  • the mail server 60 may be an input source of data which are the process target of the work flow.
  • the data which are attached to email with a predetermined mail address destination may be a process target of the work flow.
  • the file server 70 is a computer which stores and maintains files shared on the network.
  • the file server 70 is an example of the output destination of the execution results of the work flow executed by the flow management server 10.
  • the data output to the file server 70 are stored in a folder of the file server 70.
  • the file server 70 may be an input source of data which are the process target of the work flow.
  • the file stored in a predetermined folder of the file server 70 may be transmitted to the flow management server 10.
  • Fig. 2 is a drawing illustrating a hardware configuration example of a flow management server 10 according to an embodiment of the present invention.
  • the flow management server 10 includes, for example, a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, and an interface device 105.
  • a program which realizes a process in the flow management server 10 is provided by a recording medium 101 such as a CD-ROM, etc.
  • a recording medium 101 such as a CD-ROM, etc.
  • the program is read from the recording medium 101 and installed in the auxiliary storage device 102 via the drive device 100.
  • the program is not always required that the program is installed from the recording medium 101, but it may be downloaded from another computer via a network.
  • the auxiliary storage device 102 stores not only the installed program but also necessary files, data, etc.
  • the memory device 103 reads and stores the program from the auxiliary storage device 102 in the case where there is a program start-up instruction.
  • the CPU 104 performs functions of the flow management server 10 according to the program stored in the memory device 103.
  • the interface device 105 is used for an interface for connecting with the network.
  • the flow management server 10 may be a computer system including a plurality of computers.
  • Fig. 3 is a drawing illustrating a functional configuration example of a client terminal, an image forming apparatus, and a flow management server according to an embodiment of the present invention.
  • the client terminal 20 includes, for example, a reservation request unit 21 and a print control unit 22. These units are realized by processes which one or more programs installed in the client terminal 20 (e.g., printer driver) cause a CPU of the client terminal 20 to perform.
  • a reservation request unit 21 e.g., printer driver
  • the reservation request unit 21 transmits a notification that the document data will be printed to the flow management server 10.
  • the notification corresponds to a reservation request of a work flow job execution related to a form output from the image forming apparatus 30a by having the document data printed.
  • a work flow job is reserved which should be performed afterwards related to the paper document.
  • the work flow job means a performing unit of a work flow. For example, in the case where the same work flow is performed a plurality of times, each job performed at a different time is a different job.
  • a work flow job is referred to as a "flow job".
  • the reservation request unit 21 also receives identification information (hereinafter, referred to as "reservation ID”) corresponding to the reservation request which information is returned from the flow management server 10 according to the reservation request.
  • reservation ID identification information
  • the print control unit 22 generates print data for the document data of the print target and transmits the print data to the image forming apparatus 30a. It should be noted that when the print control unit 22 generates the print data (e.g., PDL (Page Description Language) data) for the document data of the print target, the print control unit 22 embeds a reservation ID into the print data. For example, the client terminal 20 generates the print data in such a way that, when printing the print data, a character string, a bar code, a two-dimensional code, or a background pattern indicating the reservation ID is printed on the form.
  • PDL Physical Description Language
  • the image forming apparatus 30b includes, for example, a read control unit 31 and an execution request unit 32. These units are realized by processes which one or more programs installed in the image forming apparatus 30b cause a CPU of the image forming apparatus 30b to perform.
  • the read control unit 31 controls reading of an image from a paper document (in the present embodiment, a form in which entries are provided).
  • the execution request unit 32 transmits to the flow management server 10 an execution request of a flow job related to the image data showing an image read by the read control unit 31.
  • the flow management server 10 includes, for example, a reservation accepting unit 14, a state monitoring unit 15, a job entering unit 11, a flow execution control unit 12, and a processing unit 13. These units are realized by processes which one or more programs installed in the flow management server 10 cause a CPU of the flow management server 10 to perform.
  • the flow management server 10 also uses storage units such as a job queue 121, a flow definition storage unit 122, and a reserved job information storage unit 123. These storage units can be realized by using, for example, the auxiliary storage device 102, or storage devices connected to the flow management server 10 via a network.
  • the reservation accepting unit 14 receives a reservation request of a flow job from the client terminal 20.
  • the reservation accepting unit 14 generates a reservation ID for the reservation request according to the reservation request of the flow job, and returns the reservation ID to the transmission source of the reservation request (the client terminal 20).
  • the reservation accepting unit 14 also stores in the reserved job information storage unit 123 a value associated with the reservation ID, indicating "reservation” as information indicating a state (progress state) of the flow job (strictly speaking, the flow job has not occurred yet at the reservation timing) related to the reservation ID.
  • the reserved job information storage unit 123 stores, for each of the reserved flow jobs, the time when the reservation is made for the flow job, the state information of the flow job, and the like. It should be noted that the flow job for which the reservation request is made is referred to as "reserved job”.
  • the state monitoring unit 15 determines an existence or a non-existence of a reserved job whose state satisfies a predetermined condition by referring to the reserved job information storage unit 123. For example, the state monitoring unit 15 determines an existence or a non-existence of a reserved job whose execution has not been started for a predetermined period since the reservation was made. In the case where a reserved job which satisfies the predetermined condition is detected, the state monitoring unit 15 reports the existence of the reserved job to a preset notification destination.
  • the flow definition storage unit 122 stores flow definition data.
  • the flow definition data are data in which flow definitions are recorded.
  • the flow definition is definition information related to a process flow of a work flow.
  • one piece of flow definition data corresponds to one work flow. Therefore, flow definition data are created for different work flows whose processes are different from each other.
  • the job entering unit 11 receives an execution request for a flow job of a work flow related to any of the flow definition data generated in advance, and input data for the flow job; and enters job information related to the flow job into the job queue 121.
  • the job entering unit 11 tries to extract a reservation ID from the input data for the execution request related to the reserved job.
  • the job queue 121 stores entered job information using, for example, an FIFO (First-In First-Out) method.
  • the job information includes, for example, job definition data generated based on a copy of the flow definition data related to the execution target flow job, process target data such as image data transmitted from the image forming apparatus 30b, and information including meta information of the flow job.
  • the meta information is attribute information related to process units included in the entire flow job or the work flow related to the flow job.
  • the meta information includes, for example, a name of a user who has instructed execution of the flow job, a size of the process target data, and execution date and time of the flow job. It should be noted that the job information for one flow job may be managed by, for example, storing in one folder.
  • the flow execution control unit 12 takes out job information from the job queue in accordance with the storing order into the job queue 121, and controls execution of the flow job based on the job information taken out from the job queue. For example, the flow execution control unit 12 calls, in the order defined in the flow definition data included in the job information taken out from the job queue, the corresponding processing unit 13.
  • Each processing unit 13 performs a corresponding process unit (activity) included in the work flow. For example, one process unit is performed by one processing unit 13. Therefore, a work flow is realized by connections of process units performed by one or more processing units 13 whose process contents are different from each other. However, it should be noted that the same process unit may appear more than once in one work flow.
  • one or more process units included in a work flow which is performed by the flow management server 10 are roughly divided into input processes, intermediate processes, output processes, and rule processes.
  • the input processes are, for example, a process for inputting input data for the work flow from an external apparatus such as the image forming apparatus 30, etc.
  • the intermediate processes are, for example, a data processing process for the data which are the process target of the flow job.
  • a data processing process for the data which are the process target of the flow job.
  • an image correction process an OCR (Optical Character Recognition) process, a bar code recognition process, an image conversion process, a translation process, etc.
  • OCR Optical Character Recognition
  • the output processes are for outputting data generated by the flow job in a form which is available for a user.
  • the form which is available for a user includes not only a form which can be directly used by a user such as a printing form on a paper, but also a form which can be used by a user via an application program such as an electronic storing form.
  • a delivery process to a folder of a predetermined computer can be listed.
  • a predetermined mail address may be a delivery destination.
  • the image forming apparatus 30b as an input source of image data or another image forming apparatus which is different from the image forming apparatus 30b may be a delivery destination. In this case, printing the delivered data may be performed by the image forming apparatus of the delivery destination.
  • FIG. 3 as an example of the processing unit 13, an OCR processing unit 13a, a mail delivery processing unit 13b, and a folder delivery processing unit 13c are shown.
  • the OCR processing unit 13a performs an OCR process for process target data.
  • the mail delivery processing unit 13a performs a mail delivery process for process target data.
  • the mail delivery process is for sending email to which the process target data are attached to a predetermined destination.
  • the folder delivery processing unit 13c performs a folder delivery process for process target data.
  • the folder delivery process is for sending the process target data to a predetermined folder destination.
  • each of the processing units 13 may be realized by a process which a corresponding independent program module causes the CPU 104 to perform.
  • a program module which causes the flow management server 10 (CPU 104) to function as a processing unit 13 is referred to as "plug-in".
  • the processing unit 13 performs the intermediate processes, the stop processes, or the output processes.
  • the input processes are performed by the job entering unit 11.
  • various external apparatuses which serve as an input source of data.
  • an input method of the data (a data obtaining method or a data receiving method of the flow management server 10) may be different.
  • the actual function of the job entering unit 11 for accepting a flow job execution request may be implemented by the plug-in.
  • the job entering unit 11 may be implemented in such a way that the plug-in can be added.
  • Fig. 4 is a sequence diagram illustrating an example of a procedure which is performed when printing a hospitalization consent form.
  • step S101 when a user of the client terminal 20 (e.g., a nurse) selects document data of a blank hospitalization consent form as a print target and inputs a print instruction to the client terminal 20, the client terminal 20 performs a print process (S102). During the print process, steps S103-S108 are performed.
  • a user of the client terminal 20 e.g., a nurse
  • steps S103-S108 are performed.
  • step S103 the reservation request unit 21 of the client terminal 20 transmits data (hereinafter, referred to as "reservation request data") indicating a reservation request of a flow job for the document data (hospitalization consent form) of the print target to the flow management server 10 (S104).
  • reservation request data data indicating a reservation request of a flow job for the document data (hospitalization consent form) of the print target
  • Fig. 5 is a drawing illustrating an example of the reservation request data d1.
  • parameters such as a UserName, a UserID, and a FlowID are included.
  • a value of the UserName and a value of the UserID indicate a user name of the user of the client terminal 20 and a user ID of the user, respectively.
  • the flowID is identification information for a corresponding kind of work flow whose execution reservation is requested by the reservation request data d1 (hereinafter, referred to as "flow ID").
  • the flow ID may not be included in the reservation request data d1.
  • the user name, the user ID, and the flow ID may be, for example, together with the print instruction, input by the user.
  • the reservation request data d1 are received by the reservation accepting unit 14. Upon receiving the reservation request data d1, the reservation accepting unit 14 issues (generates) a reservation ID for the reservation request indicated by the reservation request data d1 (S104). The reservation accepting unit 14 stores a record including the reservation ID in the reserved job information storage unit 123.
  • Fig. 6 is a drawing illustrating a configuration example of the reservation job information storage unit 123.
  • one record corresponds to one reserved job.
  • Each record includes a reservation ID, a user name, a status, reservation date and time, registration date and time, start date and time, and the last update date and time.
  • the reservation ID is issued for the reservation request of the reserved job.
  • the user name is included in the reservation request of the reserved job.
  • the status is state information of the reserved job. A value of the status is, for example, any one of "reserved", “waiting for a process”, “processing”, “complete”, and “error”.
  • "Reserved” is a state in which the reservation request has been made, but job information of the reserved job has not been registered in the job queue 121.
  • “Waiting for a process” is a state in which the job information of the reserved job has been registered in the job queue 121 according to the execution request of the reserved job, but the execution of the reserved job based on the job information has not been started yet.
  • Processing is a state in which the job information of the reserved job has been taken out from the job queue 121, and the reserved job is being executed based on the job information.
  • Complete is a state in which the execution of the reserved job has been completed.
  • Error is a state in which an error has occurred during the execution of the reserved job and the execution of the reserved job has been stopped.
  • Reservation date and time is date and time when the reservation request for the reserved job is received. Therefore, in step S104, the record including the reservation ID, the user name, the status ("reservation"), and the reservation date and time is stored in the reserved job information storage unit 123.
  • a record in the top row is an example of the record registered in step S104.
  • the registration date and time is date and time when the execution request of the reserved job is received by the job entering unit 11 and the job information of the reserved job is registered in the job queue 121. In other words, the registration date and time is when the status of the reserved job is updated to "waiting for a process".
  • the start date and time is when the job information of the reserved job is taken out from the job queue 121 and the execution of the reserved job is started based on the job information. In other words, the start date and time is when the status of the reserved job is updated to "processing".
  • the last updated date and time is when the status of the record is last updated after the start date and time. For example, the last updated date and time is when the status is updated to "complete" or "error".
  • reservation request data d1 are associated with the reservation ID and, for example, stored in the auxiliary storage device 102 as a file.
  • the reservation accepting unit 14 returns response data including the reservation ID to the client terminal 20 as a transmission source of the reservation request.
  • Fig. 7 is a drawing illustrating an example of the response data for the reservation request.
  • the response data d2 shown in Fig. 7 includes parameters such as Accept, ReservationID, etc.
  • a value of Accept indicates whether the reservation request is normally accepted or not; "true” indicates that the reservation request is normally accepted, and "false” indicates that the reservation request is rejected.
  • a value of ReservationID is issued in response to the reservation request.
  • the response data d2 is received by the reservation request unit 21 of the client terminal 20. Further, the print control unit 22 generates print data of the document data of the print target (S106). At this time, the print control unit 22 generates the print data in such a way that a character, a figure, or the like which indicates the reservation ID included in the response data d2 will be printed on paper.
  • the printing which indicates the reservation ID can be any form as long as it is expected by the job entering unit 11 of the flow management server 10.
  • the print control unit 22 transmits the generated print data to the image forming apparatus 30a (S107).
  • the image forming apparatus 30a prints the hospitalization consent form on printing paper based on the print data (S108), in which form necessary information needs to be supplied.
  • a character string, a bar code, a two-dimensional code, a background pattern, or the like indicating the reservation ID is printed.
  • the hospitalization consent form in which the necessary information is supplied is submitted to a reception desk of the hospital.
  • a procedure which is performed on the hospitalization consent form in which the necessary information is supplied will be described.
  • Fig. 8 is a sequence diagram illustrating an example of a procedure which is performed related to the hospitalization consent form after the necessary information is supplied.
  • hospitalization consent form when simply referring to "hospitalization consent form", it means a hospitalization consent form in which necessary information is supplied.
  • the read control unit 31 of the image forming apparatus 30b controls reading of an image from the hospitalization consent form, and generates image data indicating the image.
  • the execution request unit 32 of the image forming apparatus 30b transmits an execution request of a reserved job including the image data to the flow management server 10 (S202).
  • patient information patient's name, etc.,
  • the meta information may be input to the image forming apparatus 30b by a user when the user instructs the scan execution.
  • the execution request includes, in addition to the image data and the meta information, a flow ID of a work flow to be executed. Therefore, in order to execute an unreserved flow job, it is necessary for a user to specify a flow ID of the execution target.
  • the user may input whether there is a reservation or not when the user instructs performing the scan execution.
  • the flow ID may be always included in the execution request of a flow job. In this case, the flow ID may not be included in the reservation request data d1. In other words, a flow ID may not be specified at the time of a flow job reservation.
  • the execution request of the flow job is received by the job entering unit 11 of the flow management server 10.
  • the job entering unit 11 extracts a reservation ID from image data included in the execution request (S203).
  • the reservation ID is extracted from the image data according to the embedded form of the reservation ID. For example, when the reservation ID is in the form of a bar code or a two-dimensional code and is synthesized with the image, the reservation ID is extracted from the bar code or the two-dimensional code. Also, when the reservation ID is in the form of a character string and is synthesized with the image, the reservation ID is extracted by an OCR process.
  • the job entering unit 11 may try extracting a reservation ID for all execution requests.
  • the target of the execution request may be determined to be a reserved flow job, and in the case where a reservation ID is not extracted, the target of the execution request may be determined to be a non-reserved flow job.
  • the extracted reservation ID is referred to as "target reservation ID”.
  • the job entering unit 11 generates job information related to a flow job according to the execution request and stores the job information in the job queue 121 (S204).
  • the job information includes flow definition data, image data, meta information, etc.
  • the image data and the meta information are included in the execution request of the flow job.
  • the flow definition data are obtained from the flow definition storage unit 122 based on the flow ID included in the execution request of the flow job.
  • the job entering unit 11 obtains from the flow definition storage unit 122 flow definition data corresponding to the target reservation ID stored in the auxiliary storage device 102, etc., associated with the target reservation ID, and includes the flow definition data along with the target reservation ID in the job information.
  • the job entering unit 11 after storing the job information in the job queue 121, updates the value of the status of the record including the target reservation ID in the reserved job information storage unit 123 (Fig. 6) to "waiting for a process", and stores current date and time as the registration date and time of the record.
  • the flow execution control unit 12 upon detecting that the job information is stored in the job queue 121, obtains the job information (hereinafter, referred to as "target job information") (S205).
  • the target job information is removed from the job queue 121.
  • the flow execution control unit 12 executes the process units in the order defined in the flow definition data included in the target job information (S206, S207). Executing a certain process unit is realized by calling a processing unit 13 corresponding to the process unit. In the case where a plurality of process units are defined in the flow definition data, steps S206 and S207 are repeated as many times as the number of the process units.
  • the flow execution control unit 12 first calls the OCR processing unit 13a.
  • the OCR processing unit 13a performs an OCR process on a predetermined part of the image data (image data read from the hospitalization consent form) included in the target job information, and extracts a character string from the hospitalization consent form. The extracted character string is included in the target job information.
  • the flow execution control unit 12 calls the folder delivery processing unit 13c.
  • the folder delivery processing unit 13c transmits the character string and the image data included in the target job information to, for example, a predetermined folder of the file server 70. It should be noted that a description checking process may be included between the OCR process and the folder delivery process.
  • the description checking process determines whether necessary information is described in the hospitalization consent form in an appropriate format or not. In other words, in the description checking process, regarding the character string extracted by the OCR process, whether necessary information is described in an appropriate format or not is checked. In the case where a description checking process is included in a work flow, a plug-in implementing the description checking process may be added as a processing unit 13.
  • the flow execution control unit 12 updates the value of the status of the record including the target reservation ID in the reserved job information storage unit 123 (Fig. 6) to "complete", and stores current date and time as the last update date and time of the record.
  • FIG. 9 is a flowchart illustrating an example of a procedure of a reservation job state monitoring process.
  • the state monitoring unit 15 every time a predetermined time elapses (Yes in S301), by referring to the reserved job information storage unit 123, determines whether there is a reserved job which satisfies a predetermined condition (S302). For example, it is determined whether there is a reserved job whose status value is still "reserved", whose registration date and time is blank, and an elapsed time from the reservation date and time exceeds a predetermined time.
  • the above condition is for detecting an existence of a flow job whose execution request has not been accepted even after the predetermined time has elapsed from the reservation.
  • the above condition is for detecting that necessary work has not been done for the hospitalization consent form in the form of a paper document including that the printed hospitalization consent form is left alone, that the hospitalization consent form in which the necessary information is supplied has not been scanned by the image forming apparatus 30b, or the like.
  • the above predetermined time may be different for each flow ID related to corresponding reserved job because it may be possible that a period required from a reservation to an execution request may be different for each flow ID (that is, each work flow kind).
  • the period from reservation to execution request is from when a form of the scanning target is printed out and necessary information is supplied, until when scanning of the form is performed.
  • the predetermined time for each flow ID may be stored, for example, in the auxiliary storage device 102, and may be stored in corresponding flow definition data.
  • the state monitoring unit 15 reports an existence of a reserved job to a predetermined report destination (S303).
  • a predetermined report destination For example, information related to the reserved job (reservation ID, user name, etc.,) stored in the reserved job information storage unit 123 may be transmitted to the predetermined report destination.
  • the predetermined report destination may be a mail address of a user related to the user name according to the reserved job, or a mail address of the user's boss. Also, the predetermined report destination may be another destination. It should be noted that each user's mail address may be separately stored in the auxiliary storage device 102, or the like.
  • a state can be managed for a flow job which is related to image data generated based on a form whose image data has not been taken into a virtual space (hospitalization consent form before computerization).
  • a form whose image data has not been taken into a virtual space (hospitalization consent form before computerization).
  • a reservation ID is issued, and the form is associated with the printed form (for example, the reservation ID is printed on the form in a predetermined format). Therefore, based on the image data scanned from the form, the reservation ID can be automatically extracted. As a result, the scanned image data can be automatically determined to correspond to one flow job of all reserved flow jobs.
  • the present embodiment can be applied to various forms other than the hospitalization consent form.
  • the present embodiment can be applied to a paper document for which an approved stamp of a boss is needed, and on image data scanned from which, a predetermined work flow should be performed.
  • a transmission of a reservation request of a flow job may be triggered by other than the printing of the document data.
  • the reservation request unit 21 of the client terminal 20 upon receiving email including a predetermined character string, or email from a predetermined transmission source address, may transmit the reservation request of the flow job related to the email.
  • the client terminal 20 embeds into the email a reservation ID returned from the flow management server 10 in response to the reservation request.
  • the reservation ID may be embedded as a character string, or may be converted to an image before being embedded.
  • the email is transferred to, for example, a mail address (hereinafter, referred to as "flow address") which is planned as a destination of the execution request of the flow job, it is detected by the job entering unit 11 that the email is received by the mail server 60, and then, the flow management server 10 performs the flow job related to the email.
  • a status, or the like, stored in the reserved job information storage unit 123 associated with the reservation ID embedded in the email is updated according to the progress of the performed flow job related to the email.
  • the job entering unit 11 can detect that the email is received by the mail server 60 by referring to the mail server 60 to see whether the email for the flow address is received.
  • the flow ID of the work flow performed for the email may be identified, for example, based on the flow address.
  • the reservation request of the flow job may be made at a different timing.
  • the reservation accepting unit 14 is an example of a receiving unit, storage processing unit, and an extracting unit.
  • the reserved job information storage unit 123 is an example of a storage unit.
  • the reservation ID is an example of identification information of a print notification.
  • the flow execution control unit 12 is an example of an execution unit.
  • the flow management server 10 is an example of an information processing apparatus or a first information processing apparatus.
  • the client terminal 20 is an example of a second information processing apparatus.
  • the reservation request unit 21 is an example of a print notification unit.
  • the print control unit 22 is an example of a print data transmission unit.
  • the execution request unit 32 is an example of a process request unit.
  • Information processing system 10 Flow management server 11 Job entering unit 12 Flow execution control unit 13 Processing unit 14 Reservation accepting unit 15 State monitoring unit 13a OCR processing unit 13b Mail delivery processing unit 13c Folder delivery processing unit 20 Client terminal 21 Reservation request unit 22 Print control unit 30a, 30b Image forming apparatus 31 Read control unit 32 Execution request unit 50 Document management server 60 Mail server 70 File server 100 Drive device 101 Recording medium 102 Auxiliary storage device 103 Memory device 104 CPU 105 Interface device 121 Job queue 122 Flow definition storage unit 123 Reserved job information storage unit B Bus
  • Patent document 1 Japanese Laid-Open Patent Application No. 2007-257089

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Facsimiles In General (AREA)

Abstract

An information processing apparatus includes a receiving unit configured to, upon receiving a reservation request related to an execution of a process flow, return identification information corresponding to the reservation request to a transmission source of the reservation request; a storage processing unit configured to associate the identification information returned by the receiving unit with state information indicating a state related to the process flow, and store in a storage unit the state information indicating the state related to the process flow associated with the identification information returned by the receiving unit; an extracting unit configured to, upon receiving data including the identification information, extract the identification information from the data; and an execution unit configured to execute the predefined process flow related to the data. The execution unit, according to a progress of the process flow, updates the state information stored in the storage unit associated with the identification information extracted by the extracting unit.

Description

INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING SYSTEM, INFORMATION PROCESSING METHOD, AND PROGRAM
The present invention relates to an information processing apparatus, an information processing system, an information processing method, and a program.
For example, there is a system (hereinafter referred to as "work flow system") in which a predefined work flow can be executed for image data scanned from a document by an image forming apparatus, or for data input by another means, or the like. In the work flow system, a work flow is defined in such a way that data flow in accordance with a user's work flow.
A work flow includes a combination of processing units including, for example, data inputting processes, zero or more data-processing processes for the input data, and outputting processes of the data input by the inputting processes or data generated by execution of one or more data-processing processes.
By applying a work flow system to work which uses documents, not only is automation of the work facilitated, but also it becomes easier to monitor progress of the work.
However, a range of the work flow which can be monitored or managed is not the entire work flow, but a part of the work flow after process target data are input to the work flow system. It is difficult for the work flow system to monitor a status of the work when the data have not been input to the work flow system yet.
The present invention has been made in view of the above, and it is an objective of the present invention to make it possible to monitor the process status related to the target data before the data have been input to the system.
In order to solve the above problem, an information processing apparatus according to the present invention includes a receiving unit configured to, upon receiving a reservation request of a process flow execution, return identification information of the reservation request to a transmission source of the reservation request; a storage processing unit configured to store in a storage unit state information indicating a state of the process flow associated with the identification information returned by the receiving unit; an extracting unit configured to, upon receiving data including the identification information, extract the identification information from the data; and an execution unit configured to execute the predefined process flow related to the data. The execution unit, according to progress of the process flow, updates the state information stored in the storage unit associated with the identification information extracted by the extracting unit.
It becomes possible to monitor the process status related to the target data before the data have been input to the system.
Fig. 1 is a drawing illustrating a configuration example of an information processing system according to an embodiment of the present invention. Fig. 2 is a drawing illustrating a hardware configuration example of a flow management server according to an embodiment of the present invention. Fig. 3 is a drawing illustrating a functional configuration example of a client terminal, an image forming apparatus, and a flow management server according to an embodiment of the present invention. Fig. 4 is a sequence diagram illustrating an example of a procedure which is performed when printing a hospitalization consent form. Fig. 5 is a drawing illustrating an example of reservation request data. Fig. 6 is a drawing illustrating a configuration example of a reservation job information storage unit. Fig. 7 is a drawing illustrating an example of response data for the reservation request. Fig. 8 is a sequence diagram illustrating an example of a procedure which is performed related to the hospitalization consent form after the necessary information is entered. Fig. 9 is a flowchart illustrating an example of a procedure of a reservation job state monitoring process.
In the following, according to the drawings, embodiments of the present invention will be described. Fig. 1 is a drawing illustrating a configuration example of an information processing system 1 according to an embodiment of the present invention. In Fig. 1, the information processing system 1 includes a flow management server 10, one or more client terminals 20, one or more image forming apparatuses 30a, 30b, etc., a document management server 50, a mail server 60, a file server 70, and the like. The apparatuses are connected to each other via a network (regardless of wired or wireless) including a LAN (Local Area Network), the Internet, etc.
The flow management server 10 is a computer which executes a predefined work flow related to data received via a network. A work flow is, for example, a flow of a process (a process flow) which is realized by any combination of one or more processing units (tasks) each of which accomplishes a closed function independently or individually. It should be noted that the above processing unit may be applied to an activity in typical work flow terminology.
The client terminal 20 is, for example, a computer including a PC (Personal Computer) used for inputting print instructions of document data of forms such as an application form, etc. The forms are not limited to a fixed form or an atypical form; the forms can be any form as long as it requires some entry or affixing of a seal by a human.
The image forming apparatus 30a is a printer, a multifunction peripheral, or the like which is used as a printing destination of document data of the forms. The image forming apparatus 30b is a scanner, a multifunction peripheral, or the like which is used for reading (scanning) images from the forms which have been printed by the image forming apparatus 30a and on which entries are added, and sending the scanned image data to the flow management server 10 as input data of the work flow. It should be noted that the image forming apparatus 30a and the image forming apparatus 30b may be a single image forming apparatus.
The document management server 50 is a computer with a database which stores data by associating the data with their attribute information. The document management server 50 is an example of an output destination of execution results of the work flow executed by the flow management server 10. In the case where the document management server 50 is the output destination, the output data are stored in the database of the document management server 50.
The mail server 60 has a similar function as a typical mail server. In the present embodiment, the mail server 60 is an example of the output destination of the execution results of the work flow executed by the flow management server 10. In the case where the mail server 60 is the output destination, the output data are attached to email and transmitted to a mail address destination set in the executed work flow. The mail server 60 may be an input source of data which are the process target of the work flow. For example, the data which are attached to email with a predetermined mail address destination may be a process target of the work flow.
The file server 70 is a computer which stores and maintains files shared on the network. In the present embodiment, the file server 70 is an example of the output destination of the execution results of the work flow executed by the flow management server 10. For example, the data output to the file server 70 are stored in a folder of the file server 70. The file server 70 may be an input source of data which are the process target of the work flow. For example, the file stored in a predetermined folder of the file server 70 may be transmitted to the flow management server 10.
Fig. 2 is a drawing illustrating a hardware configuration example of a flow management server 10 according to an embodiment of the present invention. The flow management server 10 includes, for example, a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, and an interface device 105.
A program which realizes a process in the flow management server 10 is provided by a recording medium 101 such as a CD-ROM, etc. When the recording medium 101 which stores the program is set in the drive device 100, the program is read from the recording medium 101 and installed in the auxiliary storage device 102 via the drive device 100. However, it is not always required that the program is installed from the recording medium 101, but it may be downloaded from another computer via a network. The auxiliary storage device 102 stores not only the installed program but also necessary files, data, etc.
The memory device 103 reads and stores the program from the auxiliary storage device 102 in the case where there is a program start-up instruction. The CPU 104 performs functions of the flow management server 10 according to the program stored in the memory device 103. The interface device 105 is used for an interface for connecting with the network.
It should be noted that the flow management server 10 may be a computer system including a plurality of computers.
Fig. 3 is a drawing illustrating a functional configuration example of a client terminal, an image forming apparatus, and a flow management server according to an embodiment of the present invention.
In Fig. 3, the client terminal 20 includes, for example, a reservation request unit 21 and a print control unit 22. These units are realized by processes which one or more programs installed in the client terminal 20 (e.g., printer driver) cause a CPU of the client terminal 20 to perform.
According to a print instruction of document data, the reservation request unit 21 transmits a notification that the document data will be printed to the flow management server 10. The notification corresponds to a reservation request of a work flow job execution related to a form output from the image forming apparatus 30a by having the document data printed. In other words, in the present embodiment, in the case where document data managed in a virtual space are output to the real world as a paper document, before it becomes difficult to track the whereabouts of the paper document in the virtual space, a work flow job is reserved which should be performed afterwards related to the paper document. It should be noted that the work flow job means a performing unit of a work flow. For example, in the case where the same work flow is performed a plurality of times, each job performed at a different time is a different job. Hereinafter, a work flow job is referred to as a "flow job".
The reservation request unit 21 also receives identification information (hereinafter, referred to as "reservation ID") corresponding to the reservation request which information is returned from the flow management server 10 according to the reservation request.
The print control unit 22 generates print data for the document data of the print target and transmits the print data to the image forming apparatus 30a. It should be noted that when the print control unit 22 generates the print data (e.g., PDL (Page Description Language) data) for the document data of the print target, the print control unit 22 embeds a reservation ID into the print data. For example, the client terminal 20 generates the print data in such a way that, when printing the print data, a character string, a bar code, a two-dimensional code, or a background pattern indicating the reservation ID is printed on the form.
Also, in Fig. 3, the image forming apparatus 30b includes, for example, a read control unit 31 and an execution request unit 32. These units are realized by processes which one or more programs installed in the image forming apparatus 30b cause a CPU of the image forming apparatus 30b to perform.
The read control unit 31 controls reading of an image from a paper document (in the present embodiment, a form in which entries are provided). The execution request unit 32 transmits to the flow management server 10 an execution request of a flow job related to the image data showing an image read by the read control unit 31.
Also, in Fig. 3, the flow management server 10 includes, for example, a reservation accepting unit 14, a state monitoring unit 15, a job entering unit 11, a flow execution control unit 12, and a processing unit 13. These units are realized by processes which one or more programs installed in the flow management server 10 cause a CPU of the flow management server 10 to perform. The flow management server 10 also uses storage units such as a job queue 121, a flow definition storage unit 122, and a reserved job information storage unit 123. These storage units can be realized by using, for example, the auxiliary storage device 102, or storage devices connected to the flow management server 10 via a network.
The reservation accepting unit 14 receives a reservation request of a flow job from the client terminal 20. The reservation accepting unit 14 generates a reservation ID for the reservation request according to the reservation request of the flow job, and returns the reservation ID to the transmission source of the reservation request (the client terminal 20). The reservation accepting unit 14 also stores in the reserved job information storage unit 123 a value associated with the reservation ID, indicating "reservation" as information indicating a state (progress state) of the flow job (strictly speaking, the flow job has not occurred yet at the reservation timing) related to the reservation ID. In other words, the reserved job information storage unit 123 stores, for each of the reserved flow jobs, the time when the reservation is made for the flow job, the state information of the flow job, and the like. It should be noted that the flow job for which the reservation request is made is referred to as "reserved job".
The state monitoring unit 15 determines an existence or a non-existence of a reserved job whose state satisfies a predetermined condition by referring to the reserved job information storage unit 123. For example, the state monitoring unit 15 determines an existence or a non-existence of a reserved job whose execution has not been started for a predetermined period since the reservation was made. In the case where a reserved job which satisfies the predetermined condition is detected, the state monitoring unit 15 reports the existence of the reserved job to a preset notification destination.
The flow definition storage unit 122 stores flow definition data. The flow definition data are data in which flow definitions are recorded. The flow definition is definition information related to a process flow of a work flow. In the present embodiment, one piece of flow definition data corresponds to one work flow. Therefore, flow definition data are created for different work flows whose processes are different from each other.
The job entering unit 11 receives an execution request for a flow job of a work flow related to any of the flow definition data generated in advance, and input data for the flow job; and enters job information related to the flow job into the job queue 121. The job entering unit 11 tries to extract a reservation ID from the input data for the execution request related to the reserved job.
The job queue 121 stores entered job information using, for example, an FIFO (First-In First-Out) method. The job information includes, for example, job definition data generated based on a copy of the flow definition data related to the execution target flow job, process target data such as image data transmitted from the image forming apparatus 30b, and information including meta information of the flow job. The meta information is attribute information related to process units included in the entire flow job or the work flow related to the flow job. The meta information includes, for example, a name of a user who has instructed execution of the flow job, a size of the process target data, and execution date and time of the flow job. It should be noted that the job information for one flow job may be managed by, for example, storing in one folder.
The flow execution control unit 12 takes out job information from the job queue in accordance with the storing order into the job queue 121, and controls execution of the flow job based on the job information taken out from the job queue. For example, the flow execution control unit 12 calls, in the order defined in the flow definition data included in the job information taken out from the job queue, the corresponding processing unit 13.
Each processing unit 13 performs a corresponding process unit (activity) included in the work flow. For example, one process unit is performed by one processing unit 13. Therefore, a work flow is realized by connections of process units performed by one or more processing units 13 whose process contents are different from each other. However, it should be noted that the same process unit may appear more than once in one work flow.
In the present embodiment, one or more process units included in a work flow which is performed by the flow management server 10 are roughly divided into input processes, intermediate processes, output processes, and rule processes. The input processes are, for example, a process for inputting input data for the work flow from an external apparatus such as the image forming apparatus 30, etc.
The intermediate processes are, for example, a data processing process for the data which are the process target of the flow job. As an example of an intermediate process, an image correction process, an OCR (Optical Character Recognition) process, a bar code recognition process, an image conversion process, a translation process, etc., can be listed.
The output processes are for outputting data generated by the flow job in a form which is available for a user. The form which is available for a user includes not only a form which can be directly used by a user such as a printing form on a paper, but also a form which can be used by a user via an application program such as an electronic storing form. As an example of an output process, a delivery process to a folder of a predetermined computer can be listed. Also, a predetermined mail address may be a delivery destination. Also, the image forming apparatus 30b as an input source of image data or another image forming apparatus which is different from the image forming apparatus 30b may be a delivery destination. In this case, printing the delivered data may be performed by the image forming apparatus of the delivery destination.
In Fig. 3, as an example of the processing unit 13, an OCR processing unit 13a, a mail delivery processing unit 13b, and a folder delivery processing unit 13c are shown. The OCR processing unit 13a performs an OCR process for process target data. The mail delivery processing unit 13a performs a mail delivery process for process target data. The mail delivery process is for sending email to which the process target data are attached to a predetermined destination. The folder delivery processing unit 13c performs a folder delivery process for process target data. The folder delivery process is for sending the process target data to a predetermined folder destination.
It should be noted that each of the processing units 13 may be realized by a process which a corresponding independent program module causes the CPU 104 to perform. Hereinafter, a program module which causes the flow management server 10 (CPU 104) to function as a processing unit 13 is referred to as "plug-in".
Now, among the input processes, the intermediate processes, the stop processes, and the output processes, the processing unit 13 performs the intermediate processes, the stop processes, or the output processes. The input processes are performed by the job entering unit 11. In the input processes, there are various external apparatuses which serve as an input source of data. Also, depending on the external apparatus, an input method of the data (a data obtaining method or a data receiving method of the flow management server 10) may be different. In order to flexibly respond to this kind of situation, the actual function of the job entering unit 11 for accepting a flow job execution request may be implemented by the plug-in. In other words, the job entering unit 11 may be implemented in such a way that the plug-in can be added.
In the following, procedures performed in the information processing system 1 will be described. It should be noted that, in the following, it is assumed that the information processing system 1 is used in a certain hospital. Also, it is assumed that a hospitalization consent form for the hospital is an example of a form described above.
Fig. 4 is a sequence diagram illustrating an example of a procedure which is performed when printing a hospitalization consent form.
In step S101, when a user of the client terminal 20 (e.g., a nurse) selects document data of a blank hospitalization consent form as a print target and inputs a print instruction to the client terminal 20, the client terminal 20 performs a print process (S102). During the print process, steps S103-S108 are performed.
In step S103, the reservation request unit 21 of the client terminal 20 transmits data (hereinafter, referred to as "reservation request data") indicating a reservation request of a flow job for the document data (hospitalization consent form) of the print target to the flow management server 10 (S104).
Fig. 5 is a drawing illustrating an example of the reservation request data d1. In the reservation request data d1 shown in Fig. 5, parameters such as a UserName, a UserID, and a FlowID are included. A value of the UserName and a value of the UserID indicate a user name of the user of the client terminal 20 and a user ID of the user, respectively. The flowID is identification information for a corresponding kind of work flow whose execution reservation is requested by the reservation request data d1 (hereinafter, referred to as "flow ID"). However, the flow ID may not be included in the reservation request data d1. It should be noted that the user name, the user ID, and the flow ID may be, for example, together with the print instruction, input by the user.
The reservation request data d1 are received by the reservation accepting unit 14. Upon receiving the reservation request data d1, the reservation accepting unit 14 issues (generates) a reservation ID for the reservation request indicated by the reservation request data d1 (S104). The reservation accepting unit 14 stores a record including the reservation ID in the reserved job information storage unit 123.
Fig. 6 is a drawing illustrating a configuration example of the reservation job information storage unit 123. In the reservation job information storage unit 123 shown in Fig. 6, one record corresponds to one reserved job. Each record includes a reservation ID, a user name, a status, reservation date and time, registration date and time, start date and time, and the last update date and time.
The reservation ID is issued for the reservation request of the reserved job. The user name is included in the reservation request of the reserved job. The status is state information of the reserved job. A value of the status is, for example, any one of "reserved", "waiting for a process", "processing", "complete", and "error". "Reserved" is a state in which the reservation request has been made, but job information of the reserved job has not been registered in the job queue 121. "Waiting for a process" is a state in which the job information of the reserved job has been registered in the job queue 121 according to the execution request of the reserved job, but the execution of the reserved job based on the job information has not been started yet. "Processing" is a state in which the job information of the reserved job has been taken out from the job queue 121, and the reserved job is being executed based on the job information. "Complete" is a state in which the execution of the reserved job has been completed. "Error" is a state in which an error has occurred during the execution of the reserved job and the execution of the reserved job has been stopped.
Reservation date and time is date and time when the reservation request for the reserved job is received. Therefore, in step S104, the record including the reservation ID, the user name, the status ("reservation"), and the reservation date and time is stored in the reserved job information storage unit 123. In Fig. 6, a record in the top row is an example of the record registered in step S104.
The registration date and time is date and time when the execution request of the reserved job is received by the job entering unit 11 and the job information of the reserved job is registered in the job queue 121. In other words, the registration date and time is when the status of the reserved job is updated to "waiting for a process". The start date and time is when the job information of the reserved job is taken out from the job queue 121 and the execution of the reserved job is started based on the job information. In other words, the start date and time is when the status of the reserved job is updated to "processing". The last updated date and time is when the status of the record is last updated after the start date and time. For example, the last updated date and time is when the status is updated to "complete" or "error".
It should be noted that the reservation request data d1 are associated with the reservation ID and, for example, stored in the auxiliary storage device 102 as a file.
Further, the reservation accepting unit 14 returns response data including the reservation ID to the client terminal 20 as a transmission source of the reservation request.
Fig. 7 is a drawing illustrating an example of the response data for the reservation request. The response data d2 shown in Fig. 7 includes parameters such as Accept, ReservationID, etc. A value of Accept indicates whether the reservation request is normally accepted or not; "true" indicates that the reservation request is normally accepted, and "false" indicates that the reservation request is rejected. A value of ReservationID is issued in response to the reservation request.
The response data d2 is received by the reservation request unit 21 of the client terminal 20. Further, the print control unit 22 generates print data of the document data of the print target (S106). At this time, the print control unit 22 generates the print data in such a way that a character, a figure, or the like which indicates the reservation ID included in the response data d2 will be printed on paper. The printing which indicates the reservation ID can be any form as long as it is expected by the job entering unit 11 of the flow management server 10.
Further, the print control unit 22 transmits the generated print data to the image forming apparatus 30a (S107). The image forming apparatus 30a prints the hospitalization consent form on printing paper based on the print data (S108), in which form necessary information needs to be supplied. At this time, on the hospitalization consent form, a character string, a bar code, a two-dimensional code, a background pattern, or the like indicating the reservation ID is printed.
Afterwards, by a patient who is going to be hospitalized, or the like, the necessary information is supplied in the hospitalization consent form. The hospitalization consent form in which the necessary information is supplied is submitted to a reception desk of the hospital. Next, a procedure which is performed on the hospitalization consent form in which the necessary information is supplied will be described.
Fig. 8 is a sequence diagram illustrating an example of a procedure which is performed related to the hospitalization consent form after the necessary information is supplied. In the description of Fig. 8, when simply referring to "hospitalization consent form", it means a hospitalization consent form in which necessary information is supplied.
For example, at the reception desk, when the image forming apparatus 30b is instructed to scan the hospitalization consent form (S201), the read control unit 31 of the image forming apparatus 30b controls reading of an image from the hospitalization consent form, and generates image data indicating the image. Further, the execution request unit 32 of the image forming apparatus 30b transmits an execution request of a reserved job including the image data to the flow management server 10 (S202). In the execution request, for example, patient information (patient's name, etc.,) related to the hospitalization consent form may be included as meta information. The meta information may be input to the image forming apparatus 30b by a user when the user instructs the scan execution.
It should be noted that in the case where the image forming apparatus 30b transmits an execution request of a non-reserved flow job, the execution request includes, in addition to the image data and the meta information, a flow ID of a work flow to be executed. Therefore, in order to execute an unreserved flow job, it is necessary for a user to specify a flow ID of the execution target.
The user may input whether there is a reservation or not when the user instructs performing the scan execution. Alternatively, regardless of whether there is a reservation or not, the flow ID may be always included in the execution request of a flow job. In this case, the flow ID may not be included in the reservation request data d1. In other words, a flow ID may not be specified at the time of a flow job reservation.
The execution request of the flow job is received by the job entering unit 11 of the flow management server 10. In the case where the execution request is that of a reserved job, the job entering unit 11 extracts a reservation ID from image data included in the execution request (S203). The reservation ID is extracted from the image data according to the embedded form of the reservation ID. For example, when the reservation ID is in the form of a bar code or a two-dimensional code and is synthesized with the image, the reservation ID is extracted from the bar code or the two-dimensional code. Also, when the reservation ID is in the form of a character string and is synthesized with the image, the reservation ID is extracted by an OCR process.
It should be noted that, in the case where it is not distinguishable whether there is a reservation or not regarding the execution request of a flow job, the job entering unit 11 may try extracting a reservation ID for all execution requests. In the case where a reservation ID is extracted, the target of the execution request may be determined to be a reserved flow job, and in the case where a reservation ID is not extracted, the target of the execution request may be determined to be a non-reserved flow job. Hereinafter, the extracted reservation ID is referred to as "target reservation ID".
Next, the job entering unit 11 generates job information related to a flow job according to the execution request and stores the job information in the job queue 121 (S204). The job information includes flow definition data, image data, meta information, etc. The image data and the meta information are included in the execution request of the flow job. The flow definition data are obtained from the flow definition storage unit 122 based on the flow ID included in the execution request of the flow job. However, in the case where the flow ID is not included in the execution request of the reserved job, the job entering unit 11 obtains from the flow definition storage unit 122 flow definition data corresponding to the target reservation ID stored in the auxiliary storage device 102, etc., associated with the target reservation ID, and includes the flow definition data along with the target reservation ID in the job information.
It should be noted that, in the case where the target reservation ID is extracted, the job entering unit 11, after storing the job information in the job queue 121, updates the value of the status of the record including the target reservation ID in the reserved job information storage unit 123 (Fig. 6) to "waiting for a process", and stores current date and time as the registration date and time of the record.
Further, the flow execution control unit 12, upon detecting that the job information is stored in the job queue 121, obtains the job information (hereinafter, referred to as "target job information") (S205). The target job information is removed from the job queue 121. The flow execution control unit 12, in the case where the reservation ID is included in the target job information, updates the value of the status of the record including the reservation ID in the reserved job information storage unit 123 (Fig. 6) to "processing", and stores current date and time as the start date and time of the record.
Further, the flow execution control unit 12 executes the process units in the order defined in the flow definition data included in the target job information (S206, S207). Executing a certain process unit is realized by calling a processing unit 13 corresponding to the process unit. In the case where a plurality of process units are defined in the flow definition data, steps S206 and S207 are repeated as many times as the number of the process units.
For example, in the case where "OCR process" and "folder delivery process" are defined in this order in the flow definition data, the flow execution control unit 12 first calls the OCR processing unit 13a. The OCR processing unit 13a performs an OCR process on a predetermined part of the image data (image data read from the hospitalization consent form) included in the target job information, and extracts a character string from the hospitalization consent form. The extracted character string is included in the target job information. Further, the flow execution control unit 12 calls the folder delivery processing unit 13c. The folder delivery processing unit 13c transmits the character string and the image data included in the target job information to, for example, a predetermined folder of the file server 70. It should be noted that a description checking process may be included between the OCR process and the folder delivery process. The description checking process determines whether necessary information is described in the hospitalization consent form in an appropriate format or not. In other words, in the description checking process, regarding the character string extracted by the OCR process, whether necessary information is described in an appropriate format or not is checked. In the case where a description checking process is included in a work flow, a plug-in implementing the description checking process may be added as a processing unit 13.
When the execution of the process unit defined as the last execution target in the flow definition data (in the above example, the folder delivery process) is completed, the flow execution control unit 12 updates the value of the status of the record including the target reservation ID in the reserved job information storage unit 123 (Fig. 6) to "complete", and stores current date and time as the last update date and time of the record.
Next, a procedure which is performed by the state monitoring unit 15 will be described. Fig. 9 is a flowchart illustrating an example of a procedure of a reservation job state monitoring process.
The state monitoring unit 15, every time a predetermined time elapses (Yes in S301), by referring to the reserved job information storage unit 123, determines whether there is a reserved job which satisfies a predetermined condition (S302). For example, it is determined whether there is a reserved job whose status value is still "reserved", whose registration date and time is blank, and an elapsed time from the reservation date and time exceeds a predetermined time. The above condition is for detecting an existence of a flow job whose execution request has not been accepted even after the predetermined time has elapsed from the reservation. In other words, the above condition is for detecting that necessary work has not been done for the hospitalization consent form in the form of a paper document including that the printed hospitalization consent form is left alone, that the hospitalization consent form in which the necessary information is supplied has not been scanned by the image forming apparatus 30b, or the like. It should be noted that the above predetermined time may be different for each flow ID related to corresponding reserved job because it may be possible that a period required from a reservation to an execution request may be different for each flow ID (that is, each work flow kind). The period from reservation to execution request is from when a form of the scanning target is printed out and necessary information is supplied, until when scanning of the form is performed. The predetermined time for each flow ID may be stored, for example, in the auxiliary storage device 102, and may be stored in corresponding flow definition data.
In the case where there is a reserved job which satisfies the predetermined condition (Yes in S302), the state monitoring unit 15 reports an existence of a reserved job to a predetermined report destination (S303). For example, information related to the reserved job (reservation ID, user name, etc.,) stored in the reserved job information storage unit 123 may be transmitted to the predetermined report destination. The predetermined report destination may be a mail address of a user related to the user name according to the reserved job, or a mail address of the user's boss. Also, the predetermined report destination may be another destination. It should be noted that each user's mail address may be separately stored in the auxiliary storage device 102, or the like.
As described above, according to the present embodiment, a state can be managed for a flow job which is related to image data generated based on a form whose image data has not been taken into a virtual space (hospitalization consent form before computerization). As a result, for example, as described referring to Fig. 9, it can be detected that necessary work has not been done for the form.
Also, when each form is printed, a reservation ID is issued, and the form is associated with the printed form (for example, the reservation ID is printed on the form in a predetermined format). Therefore, based on the image data scanned from the form, the reservation ID can be automatically extracted. As a result, the scanned image data can be automatically determined to correspond to one flow job of all reserved flow jobs.
It should be noted that in the case where the form has high confidentiality, a background pattern, etc., indicating that no copying is allowed may be printed on the form.
Also, the present embodiment can be applied to various forms other than the hospitalization consent form. For example, in a company, the present embodiment can be applied to a paper document for which an approved stamp of a boss is needed, and on image data scanned from which, a predetermined work flow should be performed.
Furthermore, a transmission of a reservation request of a flow job may be triggered by other than the printing of the document data. For example, the reservation request unit 21 of the client terminal 20, upon receiving email including a predetermined character string, or email from a predetermined transmission source address, may transmit the reservation request of the flow job related to the email. The client terminal 20 embeds into the email a reservation ID returned from the flow management server 10 in response to the reservation request. The reservation ID may be embedded as a character string, or may be converted to an image before being embedded. Afterwards, the email is transferred to, for example, a mail address (hereinafter, referred to as "flow address") which is planned as a destination of the execution request of the flow job, it is detected by the job entering unit 11 that the email is received by the mail server 60, and then, the flow management server 10 performs the flow job related to the email. At this time, a status, or the like, stored in the reserved job information storage unit 123 associated with the reservation ID embedded in the email is updated according to the progress of the performed flow job related to the email. It should be noted that the job entering unit 11 can detect that the email is received by the mail server 60 by referring to the mail server 60 to see whether the email for the flow address is received. Also, the flow ID of the work flow performed for the email may be identified, for example, based on the flow address. Also, the reservation request of the flow job may be made at a different timing.
It should be noted that, in the present embodiment, the reservation accepting unit 14 is an example of a receiving unit, storage processing unit, and an extracting unit. The reserved job information storage unit 123 is an example of a storage unit. The reservation ID is an example of identification information of a print notification. The flow execution control unit 12 is an example of an execution unit. The flow management server 10 is an example of an information processing apparatus or a first information processing apparatus. The client terminal 20 is an example of a second information processing apparatus. The reservation request unit 21 is an example of a print notification unit. The print control unit 22 is an example of a print data transmission unit. The execution request unit 32 is an example of a process request unit.
As described above, embodiments of the present invention have been described in detail. The present invention is not limited to the specific embodiments and various variations and modifications can be made within the scope of the present invention described in the claims.
The present application is based on and claims the benefit of priority of Japanese Priority Application No. 2014-206884 filed on October 8, 2014, the entire contents of which are hereby incorporated by reference.
1 Information processing system
10 Flow management server
11 Job entering unit
12 Flow execution control unit
13 Processing unit
14 Reservation accepting unit
15 State monitoring unit
13a OCR processing unit
13b Mail delivery processing unit
13c Folder delivery processing unit
20 Client terminal
21 Reservation request unit
22 Print control unit
30a, 30b Image forming apparatus
31 Read control unit
32 Execution request unit
50 Document management server
60 Mail server
70 File server
100 Drive device
101 Recording medium
102 Auxiliary storage device
103 Memory device
104 CPU
105 Interface device
121 Job queue
122 Flow definition storage unit
123 Reserved job information storage unit
B Bus
Patent document 1: Japanese Laid-Open Patent Application No. 2007-257089

Claims (12)

  1. An information processing apparatus comprising:
    a receiving unit configured to, upon receiving a reservation request related to an execution of a predefined process flow, return identification information corresponding to the reservation request to a transmission source of the reservation request;
    a storage processing unit configured to associate the identification information returned by the receiving unit with state information indicating a state related to the process flow, and store the state information in a storage unit;
    an extracting unit configured to, upon receiving data including the identification information, extract the identification information from the data; and
    an execution unit configured to execute the process flow related to the data, wherein
    the execution unit, according to progress of the process flow, updates the state information stored in the storage unit associated with the identification information extracted by the extracting unit.


  2. The information processing apparatus according to Claim 1, wherein
    the receiving unit, upon receiving a print notification of document data indicating a form, returns identification information corresponding to the print notification to a transmission source of the print notification,
    the storage processing unit, associating the identification information returned by the receiving unit with state information indicating a state related to the form, stores the state information in a storage unit,
    the extracting unit, upon receiving image data indicating an image read from the form on which the identification information is printed by an image forming apparatus, extracts the identification information from the image data, and
    the execution unit executes the predefined process flow related to the image data and, according to the progress of the process flow, updates the state information stored in the storage unit associated with the identification information extracted by the extracting unit.


  3. The information processing apparatus according to Claim 1 or 2, further comprising:
    a notification unit configured to, in the case where the state information indicating the state is not updated even when a predetermined period has elapsed since the state information was stored in the storage unit, transmit information stored in the storage unit associated with the state information to a notification destination.


  4. The information processing apparatus according to Claim 3, wherein
    the receiving unit or the extracting unit receives information indicating a kind of the process flow which is to be executed for the data, and
    the predetermined period varies depending on the kind of the process flow indicated by the information received by the receiving unit or the extracting unit.


  5. An information processing system comprising a first information processing apparatus, a second information processing apparatus connected to the first information processing apparatus via a network, and one or more image forming apparatuses,
    the first information processing apparatus including
    a receiving unit configured to, upon receiving a reservation request related to an execution of a predefined process flow from the second information processing apparatus, return identification information corresponding to the reservation request to a transmission source of the reservation request,
    a storage processing unit configured to associate the identification information returned by the receiving unit with state information indicating a state related to the process flow, and store the state information in a storage unit,
    an extracting unit configured to, upon receiving an execution request of the process flow from one of the image forming apparatuses, extract the identification information from image data included in the execution request, and
    an execution unit configured to execute the process flow related to the image data, wherein
    the execution unit, according to progress of the process flow, updates the state information stored in the storage unit associated with the identification information extracted by the extracting unit.


  6. The information processing system according to Claim 5, the second information processing apparatus including
    a print notification unit configured to, upon receiving a print instruction of document data indicating a form, transmit a print notification of the document data to the first information processing apparatus, and receive identification information corresponding to the print notification from the first information processing apparatus, and
    a print data transmission unit configured to generate print data of the document data in such a way that the identification information received by the print notification unit is printed, and transmit the print data to one of the image forming apparatuses,
    the one of the image forming apparatuses including
    a read control unit configured to control reading of image data from the form printed based on the print data, and
    a process request unit configured to transmit an execution request of the process flow including the image data, wherein
    the receiving unit, upon receiving the print notification of the document data indicating the form, returns identification information corresponding to the print notification to a transmission source of the print notification,
    the storage processing unit associates the identification information returned by the receiving unit with state information indicating a state related to a process related to the form, and stores the state information in the storage unit,
    the extraction unit, upon receiving image data indicating an image read by the one of the image forming apparatuses from the form on which the identification information is printed, extracts the identification information from the image data, and
    the execution unit executes the predefined process flow related to the image data and, according to the progress of the process flow, updates the state information stored in the storage unit associated with the identification information extracted by the extracting unit.


  7. The information processing system according to Claim 5 or 6, further comprising:
    a notification unit configured to, in the case where the state information indicating the state is not updated even when a predetermined period has elapsed since the state information was stored in the storage unit, transmit information stored in the storage unit associated with the state information to a notification destination.


  8. The information processing system according to Claim 7, wherein
    the receiving unit or the extracting unit receives information indicating a kind of the process flow which is to be executed for the data, and
    the predetermined period varies depending on the kind of the process flow indicated by the information received by the receiving unit or the extracting unit.


  9. An information processing method for a first information processing apparatus, a second information processing apparatus connected to the first information processing apparatus via a network, and one or more image forming apparatuses to perform, the information processing method comprising:
    a receiving step of, by the first information processing apparatus, upon receiving a reservation request related to an execution of a predefined process flow from the second information processing apparatus, returning identification information corresponding to the reservation request to a transmission source of the reservation request,
    a storage processing step of associating the identification information returned by the receiving unit with state information indicating a state related to the process flow, and storing the state information in a storage unit,
    an extracting step of, upon receiving an execution request of the process flow from one of the image forming apparatus, extracting the identification information from image data included in the execution request, and
    an execution step of executing the process flow related to the image data, wherein
    the execution step, according to progress of the process flow, updates the state information stored in the storage unit associated with the identification information extracted in the extracting step.


  10. The information processing method according to Claim 9, the method further comprising:
    a print notification step of, by the second information processing apparatus, upon receiving a print instruction of document data indicating a form, transmitting a print notification of the document data to the first information processing apparatus, and receiving identification information corresponding to the print notification from the first information processing apparatus, and
    a print data transmission step of generating print data of the document data in such a way that the identification information received by the print notification unit is printed, and transmitting the print data to one of the image forming apparatuses,
    a read control step of, by the one of the image forming apparatuses, controlling reading of image data from the form printed based on the print data, and
    a process request step of transmitting an execution request of the process flow including the image data, wherein
    the print notification step includes, upon receiving a print instruction of document data indicating the form, transmitting a print notification of the document data to the first information processing apparatus, and receiving identification information corresponding to the print notification from the first information processing apparatus,
    the receiving step includes, upon receiving the print notification of the document data indicating the form, returning identification information corresponding to the print notification to a transmission source of the print notification,
    the storage processing step includes associating the identification information returned by the receiving unit with state information indicating a state related to a process related to the form, and storing the state information in the storage unit,
    the extraction step includes, upon receiving image data indicating an image read by the one of the image forming apparatuses from the form on which the identification information is printed, extracting the identification information from the image data, and
    the execution step includes executing the predefined process flow related to the image data and, according to the progress of the process flow, updating the state information stored in the storage unit associated with the identification information extracted in the extracting step.


  11. The information processing method according to claim 9 or 10, further comprising:
    a notification step of, in the case where the state information indicating the state is not updated even when a predetermined period has elapsed since the state information was stored in the storage unit, transmitting information stored in the storage unit associated with the state information to a notification destination.


  12. The information processing method according to Claim 11, wherein
    the receiving step or the extracting step includes receiving information indicating a kind of the process flow which is to be executed for the data, and
    the predetermined period varies depending on the kind of the process flow indicated by the information received in the receiving step or the extracting step.
PCT/JP2015/005067 2014-10-08 2015-10-05 Information processing apparatus, information processing system, information processing method, and program WO2016056224A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014206884A JP2016076137A (en) 2014-10-08 2014-10-08 Information processing device, information processing system, information processing method, and program
JP2014-206884 2014-10-08

Publications (1)

Publication Number Publication Date
WO2016056224A1 true WO2016056224A1 (en) 2016-04-14

Family

ID=55652860

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2015/005067 WO2016056224A1 (en) 2014-10-08 2015-10-05 Information processing apparatus, information processing system, information processing method, and program

Country Status (2)

Country Link
JP (1) JP2016076137A (en)
WO (1) WO2016056224A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004220529A (en) * 2003-01-17 2004-08-05 Japan Research Institute Ltd Workflow system
JP2009205477A (en) * 2008-02-28 2009-09-10 Fujitsu Ltd Medical management device, medical management method, and medical management program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004220529A (en) * 2003-01-17 2004-08-05 Japan Research Institute Ltd Workflow system
JP2009205477A (en) * 2008-02-28 2009-09-10 Fujitsu Ltd Medical management device, medical management method, and medical management program

Also Published As

Publication number Publication date
JP2016076137A (en) 2016-05-12

Similar Documents

Publication Publication Date Title
RU2421778C2 (en) Print managing server, print managing method, programme, and recording medium
US10180814B2 (en) User terminal, image processing device and cloud server to identify plural user information to execute an image processing job upon validating an user information
US20120099149A1 (en) Printing system and printer
JP6241085B2 (en) Data management system, operation management program, data management method, and data management apparatus
US10289828B2 (en) Image forming apparatus, image forming system, method for controlling image forming system, and storage medium
JP6194667B2 (en) Information processing system, information processing method, program, and recording medium
KR20150138372A (en) Information processing system, information processing method and non-transitory computer readable information recording medium
JP2016185703A (en) Multifunctional printer, method and system
US8984623B2 (en) Image processing system, image processing apparatus and computer-readable recording medium
US20140078542A1 (en) Print control apparatus and print control method
JP2014149562A (en) Image processing device and image processing system
US20180203655A1 (en) Information processing system, information processing method, and recording medium
JP6303505B2 (en) Information processing system, information processing method, device, and program
JP2019185657A (en) Image forming system and image forming method
US9652187B1 (en) Image forming system that ensures continuous use of print resources and image forming method
JP2009294792A (en) Information processing apparatus, its control method, information processing system, and control program
JP6579013B2 (en) Information processing system, information processing apparatus, information processing method, and program
US9423992B2 (en) Management system and control method
EP3048522B1 (en) Method of outputting content through network, and apparatus and system for performing the method
WO2016056224A1 (en) Information processing apparatus, information processing system, information processing method, and program
US10754592B2 (en) Information processing system and information processing apparatus
JP5515481B2 (en) Document processing apparatus, document processing system, and program
JP2017021654A (en) Document management server and system
JP2005050017A (en) Document file management device, document file management method and data structure
JP2008181219A (en) Host output processing system, host output processing method, host output processing program, and recording medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15848204

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15848204

Country of ref document: EP

Kind code of ref document: A1