Image processing apparatus, method of executing a workflow, and storage medium

An image processing apparatus which is capable of transmitting document data in a proper document format to an external system. An original input section inputs document data. A document data transmission section transmits the input document data to the system. A workflow execution section executes a workflow defined as a series of processes that can include a process for inputting the document data, and a process for transmitting the document data to the external system. A document format acquisition section acquires a document format of the document data required by the system, from the system. When the workflow execution section executes the workflow including the process for transmitting the document data to the external system, a document format check section judges whether or not the document data to be transmitted satisfies the acquired document format.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates to an image processing apparatus configured to manage a workflow, a method of executing a workflow, and a storage medium, and more particularly to an image processing apparatus characterized by a technique for transferring a file of document data during execution of a workflow, from the apparatus to a system, such as a file server, connected to the apparatus via a network or the like, a method of executing the workflow, and a computer-readable storage medium storing a control program for causing a computer to execute the method.

Description of the Related Art

In recent years, an image processing apparatus (image forming apparatus) has a network function and hence can be connected to a network, such as a local area network. This means that the image processing apparatus can be connected to various external systems via the network.

Further, in recent years, in an image forming apparatus, convenient functions, such as a function of transmitting generated document data by e-mail or storing the document data in a data area called a box, are realized in addition to basic functions thereof, such as a copy function and a printing function.

Further, an image forming apparatus for use in office work usually separately uses individual functions, such as the above-mentioned copy function, transmission function and box storage function, but it also often uses some of the functions in combination.

For example, there is a case where a paper document is scanned to generate document data, and the document data is stored in a box and is further transmitted to persons concerned, by e-mail. Further, there is also a case where a plurality of document data items stored in the box are simultaneously and collectively printed (in a manner integrated in one document data item).

In the above cases, the user has to configure the individual functions, respectively. It is inconvenient for the user to have to configure the functions whenever he/she uses the image forming apparatus. To eliminate this inconvenience, there has been proposed an application which regards each of individual functions, such as the copy function, the transmission function and the box storage function, as one work item, and is capable of defining and executing a workflow in which an order of execution of a plurality of work items and settings for processing of the work items are set in advance.

Further, there has also been proposed a system which is capable of defining a workflow such that a process configuration screen for a desired work item is displayed during execution of the workflow (see e.g. Japanese Patent Laid-Open Publication No. 2007-310468). In the system disclosed in Japanese Patent Laid-Open Publication No. 2007-310468, during execution of the workflow, a process configuration screen for a work item is displayed and preset details of the process of the work item are temporarily changed thereon to execute the workflow.

Further, there has also been proposed a service processing apparatus configured to control not only the individual functions of the image forming apparatus but also a plurality of services such that processing of the services is executed in a cooperative manner by the functions (see e.g. Japanese Patent Laid-Open Publication No. 2004-287860).

Furthermore, there has also been proposed a technique in which during execution of the work item “transmission”, an attribute information file storing attribute information associated with document data is generated by scanning and is transmitted together with the document data (see e.g. Japanese Patent Laid-Open Publication No. 2003-134294).

In this technique, an application operating on the image forming apparatus executes a workflow, and transmits document data and the attribute file to an external system. The system having received the document data and the attribute file performs some processing with reference to the document data and the attribute file. Normally, document formats of document data that can be processed by the system are predetermined.

The term “document format” is intended to mean a set of elements constituting document data, including a file format, such as PDF or TIFF, a setting of color or monochrome printing, a resolution, and the number of pages. Each document format element does not always take a single fixed value but sometimes has a plurality of candidates or a range of values. Further, it is possible to specify a document format of a document data item, on a part-by-part basis, for example, as “A4 color printing on a first sheet, and A3 monochrome printing on a second sheet”.

Now, when document data in a document format different from the document format that can be processed by the system is received from the image forming apparatus, the system cannot execute associated processing normally.

For example, when color character data is input to the system in spite of the system being capable of processing only monochrome character data, or when only two pages of document data are input in spite of five pages being required, the system cannot continue processing.

Even if a workflow is defined in advance in the application that operates on the image forming apparatus such that document data in a proper document format is transmitted to the system, it sometimes occurs that the document data in the proper document format is not transmitted for one of the following reasons:(1) In executing the workflow, the document format of the document data to be transmitted is changed because the user performs from the configuration screen an operation e.g. “to select a document from a box” or “to change scan parameters”.(2) In executing the workflow, the document format required by a system as a transmission destination is changed because the user performs an operation “to change the transmission destination”.(3) The document format required by the system is changed.

SUMMARY OF THE INVENTION

The present invention provides an image processing apparatus which is capable of transmitting document data in a proper document format to an external system, a method of executing a workflow, and a computer-readable storage medium storing a program for causing a computer to execute the method.

In a first aspect of the present invention, there is provided an image processing apparatus comprising an input unit configured to input document data, a transmission unit configured to transmit the document data input by the input unit to an external system, a workflow execution unit configured to execute a workflow which is defined as a series of processes that can include a process for inputting the document data by the input unit and a process for transmitting the document data to the external system by the transmission unit, a document format acquisition unit configured to acquire a document format of the document data required by the external system, from the external system, and a document format judgment unit configured to judge, when the series of processes include the process for transmitting the document data to the external system, whether or not the document data to be transmitted by the transmission unit satisfies the document format acquired by the document format acquisition unit.

In a second aspect of the present invention, there is provided a method of executing a workflow in an image processing apparatus, comprising inputting document data, transmitting the document data input by the inputting, executing a workflow defined as a series of processes that can include a process for inputting the document data, for the inputting, and a process for transmitting the document data to the external system, for the transmitting, acquiring a document format of the document data required by the external system, from the external system, and judging, when the series of processes include the process for transmitting the document data to the external system, whether or not the document data to be transmitted by the transmitting satisfies the document format acquired by the acquiring of the document format.

In a third aspect of the present invention, there is provided a computer-readable storage medium storing a control program for causing a computer to execute a method of executing a workflow in an image processing apparatus, wherein the method comprises inputting document data, transmitting the document data input by the inputting, executing a workflow defined as a series of processes that can include a process for inputting the document data, for the inputting, and a process for transmitting the document data to the external system, for the transmitting, acquiring a document format of the document data required by the external system, from the external system, and judging, when the series of processes include the process for transmitting the document data to the external system, whether or not the document data to be transmitted by the transmitting satisfies the document format acquired by the acquiring of the document format.

According to the present invention, it is possible to transmit document data in a proper document format to an external system.

DETAILED DESCRIPTION OF THE EMBODIMENTS

FIG. 1is a diagram of a network system in which an image forming apparatus as an image processing apparatus according to an embodiment of the present invention is connected to various systems via a network.

The image forming apparatus101is connected to a desired network100, such as the Internet or an intranet. The image forming apparatus101as the image processing apparatus according to the present embodiment is a digital multifunction peripheral (MFP) equipped with a plurality of functions, such as a copy function, a printing function, a scanner function, a box function, a facsimile function and a network transmission/reception function. Although only one image forming apparatus101is shown to be connected to the network100inFIG. 1, a plurality of image forming apparatuses101may be connected to the network. Further, although in the present embodiment, the image processing apparatus is described by taking the image forming apparatus as an example, it is also possible to apply a scanner device or the like equipped with a scanner function and a facsimile function or a network transmission/reception function, to the image processing apparatus.

To the network100are connected not only the image forming apparatus101but also systems102(1),102(2),102(3) and102(4) as external systems of the image forming apparatus101. Although only four systems are shown to be connected to the network100inFIG. 1, a plurality of systems the number of which is more than four may be connected to the network100.

For simplicity of explanation, a single desired system is referred to as a “system102(X)”. Further, a single system different from the system102(X) is referred to as a “system102(Y)”.

Now, the system102(X) includes an SMB (Server Message Block) server, an FTP (File Transfer Protocol) server, a document management server, a database system, a business system, such as an ERP (Enterprise Resource Planning) system, which is closely related to office work, and a system that is assumed to be a business support system or the like.

Further, an information terminal103, such as a personal computer (PC), is also connected to the network100. Although only one information terminal103is shown to be connected to the network100inFIG. 1, a plurality of information terminals103may be connected to the network100.

As described above, the image forming apparatus101is configured such that it can be connected to various systems102(X) via the network100.

FIG. 2is a view useful in explaining how document data generated by the image forming apparatus101inFIG. 1and an attribute information file are transmitted to the system102(X).

As shown inFIG. 2, the attribute information file, which is created and stored in the image forming apparatus101, stores system information, such as the name and IP address of the image forming apparatus101that has performed scanning, or user information, such as the name of a user who has performed scanning, the name of a department to which the user belongs, and the extension number of a phone the user uses. That is, the attribute information file includes information that another system or program refers to when the system or the program performs some processing on document data generated by scanning. The system stores image data and attribute information both transmitted from the image forming apparatus101in a manner associated with each other. Although in the present embodiment, it is assumed that the attribute information file includes the above-mentioned information, the attribute information file may include information different from the above-mentioned information.

FIG. 3is a block diagram showing an example of the hardware configuration of the image forming apparatus101inFIG. 1.

Referring toFIG. 3, a transfer bus (address bus, data bus, input/output bus and control bus)300connects between the following component elements301to311.

The CPU301responsible for computation and control of the image processing apparatus101executes programs for managing the states of the respective component elements of the image forming apparatus101and controlling inputs and outputs of commands and image data items.

The RAM302is a main memory of the CPU301and serves as work areas and data areas of the programs.

The ROM303is a memory storing a procedure of an operation process executed by the CPU301. The ROM303records (stores) an operating system (OS), which is a system program for controlling the devices of the image forming apparatus101, and data, such as information required for operating the system.

The operation section (operation panel)304gives a print (copy or print) instruction to the reader section305, described hereinafter, and instructions of processing to the component elements306to311electrically connected to the reader section305. The operation section304includes a display section for displaying an operation screen, and buttons and keys for receiving operation inputs by a user. The display section may be formed by a liquid crystal display section or the like or by a liquid crystal display section having a touch panel sheet affixed thereto.

The reader section305, which is an image input device for converting an original into image data, reads (scans) an image of each sheet of the original e.g. by a CCD linear image sensor, converts the image into digital image data, and outputs the digital image data.

The printer section306is an image output device which includes a plurality of types of recording sheet cassettes and outputs image data from the reader section305as visible images on recording sheets in response to a print instruction input via the operation section304. The facsimile section307controls the facsimile function.

The file section308controls the function of a file system for managing files stored in a HDD (Hard Disk Drive)309. Further, the HDD309may store programs to be executed by the CPU301. The HDD309is provided with data areas each called a box for storage of document data. The HDD309may be replaced by an SSD (Solid State Drive) using a flash memory. The formatter section310performs various kinds of image processing for visualizing image data information. The network interface (I/F) section311is connected to the network100, for performing communication processing.

By using the component elements shown inFIG. 3, the image forming apparatus101realizes functions of copying, e-mail transmission, inputting and outputting document data to and from the box, etc. Further, when executing the above-mentioned functions, the image forming apparatus101displays screens for configuring various settings of color/monochrome printing, a print magnification, double-sided/single-sided printing, and so forth, on the operation section304. It is necessary for the user to configure settings, as required, on an associated one of the configuration screens.

FIG. 4is a block diagram of an information processing apparatus used as each of the system102(X) and the information terminal103appearing inFIG. 1.

As shown inFIG. 4, a transfer bus (address bus, data bus, input/output bus and control bus)400connects between the following component elements401to410.

The CPU401is responsible for computation and control of the image processing apparatus101.

The RAM402is a main memory of the CPU401and serves as work areas and data areas of a program being executed.

The ROM403is a memory storing a procedure of an operation process executed by the CPU401. The ROM403includes a program ROM storing an operating system (OS), which is a system program for controlling the devices of the image processing apparatus, and a data ROM for storing data, such as information required for operating the system. The programs may be stored in an HDD (Hard Disk Drive)409, referred to hereinafter.

A network interface (NETIF)404controls data transfer to/from information processing apparatuses via the network100and checks the connection state for this data transfer.

The video RAM (VRAM)405loads an image to be displayed on a screen, referred to hereinafter, of the display device (CRT)406that displays an operating state of the information processing apparatus, and controls the display of the image.

An external input controller407is for controlling an input signal from an external input device408.

The external input device408is for accepting an operation by the user. The external input device408is comprised of a keyboard420and a pointing device421, such as a mouse.

The HDD409is used for storing application programs and various kinds of data. The application programs in the present embodiment are software programs for executing various processes in the present embodiment, and so forth.

The external input/output device410includes a floppy (registered trademark) disk drive, a CD-ROM drive, and a like device which has a data recording device411inserted therein or removed therefrom, and is used for reading any of the aforementioned application programs from the data recording device411.

The data recording device411is a removable medium from which data is read by the external input/output device410, such as a magnetic recording medium, an optical recording medium, a magnetic-optical recording medium, or a semiconductor recording medium. As the magnetic recording medium, there may be mentioned e.g. a floppy (registered trademark) disk. As the optical recording medium, there may be mentioned e.g. a CD-ROM. As the magnetic-optical recording medium, there may be mentioned e.g. an MO. As the semiconductor recording medium, there may be mentioned e.g. a memory card. The external input/output device410and the data recording device411may be implemented by an external hard disk drive and a hard disk contained therein.

The application programs and data stored in the HDD409can be stored in the data recording device411for use.

FIG. 5is a block diagram of an example of functional modules of the image forming apparatus101inFIG. 1.

InFIG. 5, the modules correspond to programs executed by the image forming apparatus101, and are stored in the HDD309or the ROM303of the image forming apparatus101. The programs of the modules are loaded on the RAM302, and are executed by the CPU301. Further, inFIG. 5, database is stored in the HDD309of the image forming apparatus101.

An original input section500is executed by the CPU301of the image forming apparatus101. To prepare document data, the original input section500instructs the reader section305to scan a paper document, or reads document data scanned-in and stored in advance, from a data area i.e. a box of the HDD309to another data area.

In the present embodiment, image data obtained by scanning paper documents and image data obtained by loading PDL data are referred to as document data. Further, data files generated by application programs, such as word-processing software and spreadsheet software, and image data obtained by converting such data files are also referred to as document data.

The image forming apparatus101is also capable of having document data input therein by receiving a data file generated by an application program, as mentioned above, from the information terminal103or the like via the network, and storing the data file in the box of the HDD309.

A document edit section501is executed by the CPU301of the image forming apparatus101. The document edit section501edits document data acquired by the original input section500and document data stored in the HDD309e.g. by deleting pages of the document data or combining the document data with other document data. The editing process may include other processing on image data, such as resolution conversion, rotation, color/monochrome conversion, and format conversion thereof. Further, the document edit section501instructs the file section308via the transfer bus300to store the edited document data in a data area i.e. a box of the HDD309.

A printing section502is executed by the CPU301of the image forming apparatus101. The printing section502instructs the printer section306via the transfer bus300to print document data acquired by the original input section500or document data edited by the document edit section501, as a paper document.

A facsimile/e-mail transmission section503is executed by the CPU301of the image forming apparatus101. The facsimile/e-mail transmission section503transmits the document data acquired by the original input section500or the document data edited by the document edit section501to a designated transmission destination. A method of transmitting document data from the facsimile/e-mail transmission section503to the transmission destination includes facsimile transmission and e-mail transmission conforming to communication protocols, such as SMB (Server Message Block) protocol, FTP (File Transfer Protocol) and SMTP (Simple Mail Transfer Protocol).

Document data transmission sections (transmission connectors)504(1),504(2), . . . ,504(M) are each executed by the CPU301of the image forming apparatus101. The document data transmission sections504(1),504(2), . . . ,504(M) each transmit the document data processed by the original input section500or the document edit section501to an associated one of the systems102(1),102(2), . . . ,102(M). The communication protocols used by the document data transmission sections504(1) to504(M) for transmitting document data to the associated systems include the facsimile protocol, the e-mail protocol, the FTP and the SMB protocol.

The document data transmission section504(X) is a means for transmitting document data to a certain desired system102(X), and there are provided, respective different means for transmitting document data to the system102(X) and to the system102(Y).

The reason for providing different means for the respective systems is that the system102(X) and the system102(Y) are different from each other in communication protocol, procedure, and required parameters, for data transmission and reception. When document data is transmitted to the system102(X) together with an attribute information file attached thereto, the attribute information file is generated by the document data transmission section504(X).

An attribute value-setting section (index acquisition connector)505is executed by the CPU301of the image forming apparatus101. The attribute value-setting section505sets attributes value as attribute information required by the document data transmission section504(X), which are defined in a work item “transmission” of a workflow, described hereinafter.

It is assumed that the attribute values set by the attribute value-setting section505can be referred to by the document data transmission section504(X). When setting the attribute values, the attribute value-setting section505acquires data managed by a database system or a file server to which the attribute value-setting section505can be connected via the network100.

The system to which the attribute value-setting section505is connected to this end may be the same as or different from the system102(X) to which the document data transmission section504(X) is connected.

A document format acquisition section (document format acquisition connector)506is executed by the CPU301of the image forming apparatus101. The document format acquisition section506acquires the document format of document data required by the system102(X) with which the document data transmission section504(X) cooperates, from data managed by a database system or a file server to which document format acquisition section506can be connected via the network100.

The system to which the document format acquisition section506is connected to this end may be the same as or different from the system102(X) to which the document data transmission section504(X) is connected. Similarly, the system to which the document format acquisition section506is connected may be the same as or different from the system102(X) to which the attribute value-setting section505(X) is connected.

If the system to which the document format acquisition section506is connected is the same as the system to which the attribute value-setting section505(X) is connected, the image forming apparatus101may be configured such that the attribute value-setting section505simultaneously acquires the attribute values and the document format. In this case, the attribute value-setting section505also serves as the document format acquisition section506.

Here, the term “document format” is intended to mean a set of elements constituting document data, including a file format, such as PDF or TIFF, a setting of color or monochrome printing, a resolution, and the number of pages. Each document format element does not always take a single fixed value but sometimes has a plurality of candidates or a range of values. Further, it is possible to specify a document format of a document data item, on a part-by-part basis, for example, as “A4 color printing on a first sheet, and A3 monochrome printing on a second sheet”.

A document format check section507is executed by the CPU301of the image forming apparatus101. The document format check section507determines whether or not document data to be transmitted by the document data transmission section504(X) satisfies the document format acquired by the document format acquisition section506.

A workflow management section508is executed by the CPU301of the image forming apparatus101. The workflow is a definition of a flow of works in which while regarding each of individual functions equipped in the image forming apparatus101, such as a scanning function, an e-mail transmission function, and a box storage function, as one work item, an order of execution of a plurality of work items and settings for processing of the work items are registered in advance, so as to thereby execute them as a sequence of processes.

In the present embodiment, it is assumed that the details of processing defined by the workflow is described in the XML. In the present embodiment, the workflow can be roughly divided into a process (input process) for inputting image data, a process (editing process) for editing the image data, and a process (output process) for outputting the image data. The details of processing may be formed only by the input process and the output process depending on the workflow. The workflow management section508registers and manages, as a workflow, a flow of works in which a preset order of execution of a plurality of work items and preset settings for processing of the sequence of the work items. Therefore, the work items represent the functions of the image forming apparatus101realized by the original input section500, the document edit section501, the printing section502, etc., respectively.

A workflow management DB (Database)509stores a workflow defined by the workflow management section508.

A workflow execution section510reads out and executes the workflow stored in the workflow management DB509.

A workflow correction section511corrects processing parameters of each work item of the workflow during execution of the workflow started by the workflow execution section510. When it is determined by the document format check section507that any processing parameter(s) of a work item does not satisfy the document format, the workflow correction section511corrects the processing parameter(s) of the work item such that the processing parameters of the work item satisfy the document format.

FIG. 6is a view showing an example of a data structure indicative of a document format used in the document format check section507inFIG. 5.

Data600is acquired from the system102(X) by the document format acquisition section506, and is stored in the RAM302or the HDD309. Although the contents of the data600are represented by character strings for ease of understanding of the data structure, they may be represented by symbols or numerical values.

An item601specifies the number of sheets (pages) of the document data to be transmitted by the document data transmission section504(X). As shown inFIG. 6, a fixed value may be specified as the number, or a range of numbers of sheets, e.g. “not less than n”, “not more than n” or “n to m” may be specified. Further, if there is no limitation to the number of sheets of document data to be transmitted by the document data transmission section504(X), the number of sheets may be specified as “not specified”.

An item602specifies the size of sheets of an original (original size) of document data to be transmitted by the document data transmission section504(X). As the size of sheets, a fixed value may be specified e.g. as “A4”, or the size of a sheet may be specified on a page-by-page basis in such a manner as “A4 for 1st page and A3 for 2nd and 3rd pages”.

Further, the size of each sheet of may be specified as one selectable from a plurality of sizes, e.g. as “one of A4, A5 and A6”. Further, instead of specifying one(s) of standard sizes, such as “A4” and “letter”, there may be specified the vertical and horizontal sizes of each sheet. It should be noted that the original size602indicates the size of each page of image data to be transmitted to the system, which is determined according to the size of each corresponding sheet of the original scanned by the reader section305and a magnification applied when the original is scanned in by the reader section305. If there is no limitation to the size of sheets of document data to be transmitted by the document data transmission section504(X), the original size602may be specified as “not specified”.

An item603specifies a color mode of document data to be transmitted by the document data transmission section504(X). The settings of the color mode include “color”, “monochrome” and “not specified”. In specifying the color mode, a fixed value of e.g. “color” may be used, or the color mode may be specified on a page-by-page basis e.g. as “color for 1st page” and monochrome for 2nd and following pages”. Further, if there is no limitation to the color mode of document data to be transmitted by the document data transmission section504(X), the color mode may be specified as “not specified”.

An item604specifies the resolution of document data to be transmitted by the document data transmission section504(X). As the resolution, a fixed value of e.g. “600×600 dpi” may be specified, or a lower limit value or an upper limit value may be specified e.g. as “not lower than 200×200 dpi” or “not higher than 300×300 dpi”.

Further, the resolution may be specified as one selectable from a plurality of resolutions e.g. as “one of 100×100 dpi, 150×150 dpi and 200×200 dpi”. Furthermore, if there is no limitation to the resolution of document data to be transmitted by the document data transmission section504(X), the resolution may be specified as “not specified”.

An item605specifies the file format of document data to be transmitted by the document data transmission section504(X). As the file format, a fixed value of “PDF” may be specified, or the file format may be specified as one selectable from a plurality of file formats, e.g. as “one of TIFF, PDF and JPEG”. Furthermore, if there is no limitation to the file format of document data to be transmitted by the document data transmission section504(X), the file format may be specified as “not specified.

FIGS. 7A and 7Bare a flowchart of a workflow execution process executed by the image forming apparatus appearing inFIGS. 3 and 5.

A program for the workflow execution process is stored in the HDD309or the ROM303of the image forming apparatus101, and is loaded into the RAM302so as to be executed by the CPU301.

In a step S701, in response to a user operation, such as depression of a workflow execution button on the operation section304, the workflow execution section510starts a workflow designated by the user, and executes a process for acquiring a document format. The workflow execution section510calls the document format acquisition section506defined in the workflow.

The document format acquisition section506refers to a data file in the file server on the network100based on the SMB protocol, and acquires document format data. The document format acquisition section506stores the acquired document format data in the RAM302or the HDD309.

Although in the description of the flowchart inFIGS. 7A and 7B, a system to which the document format acquisition section506is connected is an SMB server, this is not limitative, but the system to which the document format acquisition section506is connected may be a database system or server other than the SMB server.

Further, when the document format acquisition section506also serves as the attribute value-setting section505, in the step S701, necessary attribute value data may be acquired simultaneously with acquisition of the document format data.

In a step S702(steps S703to S712), the workflow execution section510executes work items defined in the input process of the workflow in operation. In the present embodiment, it is assumed by way of example that work items “scan” and “box input” are defined in the input process of the workflow.

Further, although in the present embodiment, the work items are processes in the order of “scan” and “box input”, the work items may be processes in the order of “box input” and “scan”, or they may be processed in parallel.

Here, the “scan” is defined as causing the original input section500to instruct the reader section305to perform an original reading process for reading an original (paper document) via the transfer bus300. Further, the “box input” is defined as causing the original input section500to read document data, which has been scanned in advance, from a data area i.e. a box of the HDD309, to another data area of the RAM302or the HDD309.

In the step S703, the workflow execution section510calls the document format check (document format determination) section507. In the step S703, the document format check section507executes the following processing:

First, the document format check section507checks whether or not scan parameters to be used in a step S706, referred to hereinafter, satisfy the document format acquired in the step S701. The scan parameters indicate original reading parameters for use in scanning an original, such as “color selection”, “resolution”, “original reading size”, “magnification”, or “number of pages (i.e. number of sheets of an original)”. At this time, the document format check section507reads all the information on the work items defined in the workflow before checking the document format, and checks a page number i.e. on what number sheet the work item “scan”, i.e. the reading process is about to be executed, in the step S706, referred to hereinafter.

However, if in the workflow, a setting of “open a configuration screen during execution” is defined for a specific work item, it is sometimes impossible to determine what number page is to be scanned in the step S706.

For example, if the work item “page deletion” has the setting of “open a configuration screen during execution” set therefor, what number page of the document data is actually to be deleted cannot be finally determined before a step S713(for executing an editing process), referred to hereinafter, is completed. Only after the user has configured the parameters on the configuration screen in the step S713, it is finally determined what number page(s) of the document data is/are to be deleted. If the page(s) to be deleted is/are changed, the page numbers of the document data are also changed, so that it is not finally determined in the step S703on what number page of the document data is to be scanned in the step S706.

If it is thus impossible to determine in the step S703as to what number page of the document data is to be scanned in the step S706, the document format check section507does not check a document format specified for a specific page.

However, even in such a case, if there is an item of a document format specified for the whole document data, the document format check section507checks whether or not the scan parameters of the item to be used in the step S706satisfy the document format.

In the step S704, the workflow execution section510confirms the result of the check in the step S703. If the result of the check in the step S703shows that the scan parameters to be used in the step S706satisfy the specified document format, the workflow execution section510proceeds to the step S706.

If it is determined in the step S704that the scan parameters to be used in the step S706do not satisfy the specified document format, the workflow execution section510proceeds to the step S705.

In the step S705, the workflow execution section510calls the workflow correction section511. The workflow correction section511corrects the scan parameters defined for the work item “scan” such that the scan parameters satisfy the document format acquired in the step S701.

At this time, the workflow correction section511may display a message notifying the correction of the scan parameters on the operation section304to notify the user of the fact. Further, if no correction value is unconditionally determined because of any item of the document format specifying a range or a plurality of values, the workflow correction section511may display a scan configuration screen which enables the user to select only scan parameter values satisfying the document format, on the operation section304, to thereby prompt the user to correct the scan parameters.

In the step S706, the workflow execution section510calls the original input section500. The original input section500performs the original reading process using the scan parameters defined for the work item “scan” or the scan parameters corrected in the step S705.

In the step S707, the workflow execution section510calls the document format check section507. In the step S707, the workflow execution section510carries out the following processing:

First, the document format check section507checks whether or not the document data read in the step S706satisfies the document format acquired in the step S701. At this time, the document format check section507reads all the information on the work items defined in the workflow before checking the document format, and checks what number page of document data as an output of the whole workflow the document data read in the step S706corresponds to.

Next, the document format check section507checks whether or not the document data read in the step S706satisfies a document format specified for the corresponding page. For example, let us consider a case in which the work items “scan”, “box input (for inputting 4-page document data)”, “document combining (for combining a box document and a scanned-in document in the mentioned order)”, and “page deletion (for deleting second and third pages)” are defined.

Under the above conditions, when two pages of the original are read in the step S706, it is understood that the document data read in the step S706, i.e. document data read by the work item “scan” is data of the third and fourth pages. Therefore, the document format check section507checks whether or not the document data read in the step S706satisfies a document format specified for the third and fourth pages.

However, if the workflow contains a specific work item having the setting of “open a configuration screen during execution” set therefor, it is sometimes impossible to finally determine what number page the document data read in the step706corresponds to. For example, if the work item “page deletion” has the setting of “open a configuration screen during execution” set therefor, what number page of the document data is actually to be deleted cannot be finally determined before the step S713(for executing the editing process), referred to hereinafter, is completed.

Only after the user has configured the parameters on the configuration screen in the step S713, it is finally determined what number page(s) of the document data is/are to be deleted. If the page(s) to be deleted is/are changed, the page numbers of the document data are also changed, so that it is not finally determined in the step S707what number page the document data read in the step S706corresponds to.

As described above, if it is impossible in the step S707to determine what number page the document data read in the step S706corresponds to, the document format check section507does not check a document format specified for a specific page. However, even in such a case, if there is an item of a document format specified for the whole document data, the document format check section507checks whether or not the document data read in the step S706satisfies the document format.

The document format check section507checks the document data in the step S707in spite of the check having been made on the scan parameters in the step S703, because there is a case where the document format check section507cannot check the document data using the scan parameters.

For example, in the step S706, when an ADF (Auto Document Feeder) is used to read a plurality of sheets of an original, there is a possibility that the number of the sheets of the original to be read exceeds the number of sheets specified by the document format. Further, when the scan parameters used in the step S706includes “original reading size=auto”, the reading size of the original is not finally determined until the original is actually read in the step S706. Since these problems cannot be checked by the scan parameters in the step S703, it is necessary to check the document data actually read by the original input section500in the step S707.

Further, when only “scan” is defined as a work item of the input process and the editing process of the workflow, the document data read in the step S706directly becomes document data to be transmitted by the document data transmission section504(X) in a step S718, referred to hereinafter. In this case, the check of the document format of the document data in the step S707directly servers as the check of the document data to be transmitted.

In the step S708, the workflow execution section510confirms the result of the check in the step S707. If the result of the check in the step S707shows that the document data read in the step S706satisfies the specified document format, the workflow execution section510proceeds to the step S709.

If it is not determined in the step S708that the document data read in the step S706does not satisfy the designated document format, the workflow execution section510proceeds to a step S719.

In the step S709, the workflow execution section510determines whether or not the work item “scan” is completed. The workflow execution section510performs the determination of the completion of the work item “scan” based on the definition of the workflow and a user's instruction.

If the work item “scan” in the workflow has a setting of “continuous original reading” defined therefor, it means that the user can perform the original reading process a plurality of times by changing scan parameters.

Therefore, when the work item “scan” in the workflow has the setting of “continuous original reading” defined therefor, the workflow execution section510displays a screen for prompting the user to confirm whether or not the “scan” process is continued, on the operation section304, in the step S709.

The workflow execution section510checks a user's instruction, and determines whether or not the work item “scan” is completed. Further, when the work item “scan” in the workflow does not have the setting of “continuous original reading” defined therefor, the workflow execution section510determines that the work item “scan” has been completed, without displaying the confirmation screen.

If the work item “scan” has been completed, the workflow execution section510proceeds to the step S710. If the work item “scan” has not been completed, the workflow execution section510returns to the step S703.

In the step S710, the workflow execution section510calls the original input section500. The original input section500reads data from the box using the setting defined by the work item “box input”.

In the step S711, the workflow execution section510calls the document format check section507. The document format check section507checks whether or not the document data read in the step S710satisfies the document format acquired in the step S701.

At this time, the document format check section507reads all the information on the work items defined in the workflow before checking the document format, and checks what number page the document data as an output of the whole workflow read in the step S710corresponds to.

Next, the document format check section507checks whether or not the document data read in the step S710satisfies a document format specified for the corresponding page.

For example, let us consider a case in which the work items “scan”, “box input (for inputting 4-page document data)”, “document combining (for combining a box document and a scanned-in document in the mentioned order)”, and “page deletion (for deleting second and third pages)” are defined. Under these conditions, it is understood that the document data read in the step S710, i.e. according to the work item “box input”, corresponds to the first and second pages of the document data as an output of the whole workflow.

Therefore, the document format check section507checks whether or not the document data read in the step S710satisfies a document format specified for the first and second pages.

Further, if only “box input” is defined as a work item of the input process and the editing process of the workflow, the document data read in the step S710directly becomes document data to be transmitted by the document data transmission section504(X) in the step S718, referred to hereinafter. In this case, the check of the document format of the document data in the step S711directly serves as the check of the document data to be transmitted.

In the step S712, the workflow execution section510confirms the result of the check in the step S711. If the result of the check in the step S711shows the document data read in the step S710satisfies the specified document format, the workflow execution section510proceeds to the step S713.

If it is determined in the step S712that the document data read in the step S710does not satisfy the designated document format, the workflow execution section510proceeds to the step S719. The process up to the step S712corresponds to the input process.

In the step S713, the workflow execution section510calls the document edit section501, and executes the work item defined for the editing process of the workflow in operation. The document edit section501performs processes, such as “document combining”, “page deletion”, and so forth, using the document data generated in the input process of the workflow, and stores the resulting document data in the RAM302or the HDD309.

In a step S714, the workflow execution section510calls the document format check section507. The document format check section507checks whether or not the document data edited in the step S713satisfies the document format acquired in the step S701.

The reason for checking the document data in the step S714in spite of the document data having been checked in the steps S707and S711as an editing source is that there is a case where the document data cannot be checked before execution of the editing process in the step S713.

As described above in the steps S707and S711, if the workflow has the setting of “open a configuration screen during execution” defined for a specific work item, the contents of the final document data is not finally determined until the work item is executed. After execution of the editing process in the step S713, the final document data is finally determined, and hence it is possible to check all the document formats acquired in the step S701.

That is, the check of the document format of the document data in the step S714is a final check of the document data to be transmitted by the document data transmission section504(X) in the step S718, referred to hereinafter.

In the step S715, the workflow execution section510confirms the result of the check in the step S714. If the result of the check in the step S714shows the document data edited in the step S713satisfies the specified document format, the workflow execution section510proceeds to a step S716.

On the other hand, if it is determined in the step S715that the document data edited in the step S713does not satisfy the specified document format, the workflow execution section510proceeds to the step S719.

In the step S716(steps S717and S718), the workflow execution section510executes a work item defined for the output process of the workflow in operation. In the present embodiment, it is assumed that the work item “transmission” is executed in the output process, and at the same time the document data transmission section504(X) is defined in the work item “transmission”. Further, in the step S716, another work item, such as “print”, may be defined in the workflow.

In the step S716, when another other work item, such as “print”, is defined in the workflow, the workflow execution section510calls the printing section502or the like according to the definition.

In the step S717of the output process of the step S716, the workflow execution section510calls the attribute value-setting section505. The attribute value-setting section505refers to a data file on the network file server based on the SMB protocol, and acquires necessary attribute value data. The attribute value-setting section505stores the acquired attribute value data in the RAM302or the HDD309.

Although in the present embodiment, the system to which is connected the attribute value-setting section505is the SMB server, this is not limitative, but the system to which is connected the attribute value-setting section505may be a database system or a server, such as a document management server, other than the SMB server.

Further, when the document format acquisition section506also serves as the attribute value-setting section505, in the step S701, necessary attribute value data is acquired simultaneously with acquisition of the document format, which makes it possible to dispense with the process in the step S717.

In the step S718of the output process in the step S716, the workflow execution section510calls the document data transmission section504(X) defined in the work item “transmission” in the output process of the started workflow.

The document data transmission section504(X) called by the workflow execution section510generates an attribute information file from the attribute value data acquired in the step S717, and transmits the attribute information file to the system102(X) together with the document data edited in the step S713, followed by terminating the present process.

In the step S719, the workflow execution section510executes a cancellation process for cancelling the workflow in operation, and terminates the present process. At this time, the workflow execution section510may display an item or items of the checked document format, which has/have not been satisfied, and the reason why it/they have not been satisfied.

As described above, before document data is transmitted to the system102(X), it is possible to detect that the document data to be transmitted does not satisfy a document format required by the system102(X).

Further, even if a workflow is erroneously defined or an erroneous parameter is set on a configuration screen during execution of a workflow, the user can recognize the error during execution of the workflow. This makes it possible to change the definition of the workflow or the parameter(s) in situ to thereby transmit document data in a proper document format.

Further, a document format is dynamically acquired from a system cooperating with the system102(X) during execution of the workflow, and therefore even if the document format required by the system102(X) is changed, it is possible to check a new document format without changing the workflow.

This application claims the benefit of Japanese Patent Application No. 2008-318289, filed Dec. 15, 2008 which is hereby incorporated by reference herein in its entirety.