Image processing device, image processing system, control method, and program
By using pre-programmed libraries for image processing devices to execute RPA commands, the system reduces the processing load and enhances maintenance efficiency in RPA systems.
Patent Information
- Application Number
- JP2023023552
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2023-02-17
- Publication Date
- 2026-08-25
- Estimated Expiration
- 2043-02-17
AI Technical Summary
The volume of processing instructions in Robotic Process Automation (RPA) systems for image processing devices becomes excessive as the number of fax recipients increases, straining the memory of information processing terminals and hindering efficient maintenance.
An image processing device communicates with an information processing terminal to execute specific jobs using pre-programmed libraries, reducing the need for extensive code by automatically executing processes based on received commands and conditions.
This approach minimizes the amount of processing procedure description required in RPA systems, preventing storage area overload and facilitating efficient maintenance by reducing the workload on information processing terminals.
Smart Images

Figure 0007910480000001 
Figure 0007910480000002 
Figure 0007910480000003
Abstract
Description
Technical Field
[0001] [[OUTDATED CODE]] [[OUTDATED CODE]]The present invention relates to an image processing apparatus, an image processing system, a control method, and a program, and particularly relates to a technique for causing an image processing apparatus to execute a specific job by executing robotic process automation (RPA) on an information processing terminal.
Background Art
[0002] Conventionally, in a workflow generation apparatus connected to an image forming apparatus that reads image data, a function expansion server of an image forming apparatus that stores image data in a storage destination, and an information processing apparatus that instructs operations on image data via a network, logs stored in each apparatus are collected to select an operation flow, and from the storage destination of image data and the image feature amount in the selected operation flow, machine learning is performed to generate a data processing flow (for example, Patent Document 1).
[0003] On the other hand, in recent years, attention has been paid to improving work efficiency by using robotic process automation (hereinafter referred to as "RPA") (for example, Patent Document 2). RPA is software that pre-registers the operation procedures of a plurality of operations and automatically executes the pre-registered operation procedures based on an execution instruction by a user. By pre-registering the operation procedures of regular tasks in RPA, RPA can automatically perform a plurality of operations in order on behalf of the user, so that regular tasks can be efficiently performed.
[0004] RPA can also be used when a user uses an information processing terminal to execute jobs on an image processing device such as an MFP (Multifunction Peripheral). For example, a user's routine task might involve faxing electronic files such as invoices to companies X, Y, and Z according to their respective deadlines. In this case, the processing procedure (operation procedure) to be registered with the RPA on the information processing terminal would be as shown in Figure 24. If the deadlines for companies X, Y, and Z are set in that order, the RPA would launch the fax sending application in step 1, send the fax according to company X's deadline in steps 2-6, send the fax according to company Y's deadline in steps 7-11, send the fax according to company Z's deadline in steps 12-16, and then terminate the fax sending application in step 17. By executing the RPA as shown in Figure 24 on the information processing terminal, the user no longer needs to manually set the fax numbers for companies X, Y, and Z, or manually perform operations on the files to be sent. Therefore, the user's operational burden when performing routine tasks can be reduced. [Prior art documents] [Patent Documents]
[0005] [Patent Document 1] Japanese Patent Publication No. 2020-194201 [Patent Document 2] Japanese Patent Publication No. 2020-3905 [Overview of the project] [Problems that the invention aims to solve]
[0006] However, when users attempt to register processing procedures to an RPA (Robotic Process Automation) system running on an information processing terminal in order to perform routine fax transmissions using an image processing device, the amount of code to be written for the processing procedures becomes enormous as the number of fax recipients increases. Furthermore, when registering processing procedures for an RPA system, users generally aim to minimize interruptions to the series of processes performed during RPA execution. Therefore, the RPA system may include error handling procedures for when errors occur in the image processing device during job execution, resulting in a massive amount of code to be written for the processing procedures.
[0007] One problem with RPA is that the sheer volume of processing instructions registered in the RPA system can strain the memory of the information processing terminal. Furthermore, a large volume of RPA instructions can hinder efficient maintenance, increasing the workload. To address these issues, it is desirable to reduce the amount of processing instructions written for the RPA system executed on the information processing terminal.
[0008] The present invention was made to solve the above problems and aims to provide an image processing device, an image processing system, a control method, and a program that can reduce the amount of description required for the RPA processing procedure executed on an information processing terminal in order to have the image processing device perform a specific job. [Means for solving the problem]
[0009] To achieve the above objective, the invention according to claim 1 is an image processing device that can communicate with an information processing terminal and operates based on commands from the information processing terminal when robotic process automation (RPA) for the execution of a specific job is being performed on the information processing terminal, , multiple A storage unit that stores a library pre-programmed to automatically execute numerical processing sequentially, and the information processing terminal Regarding the execution of the aforementioned specific job A control unit that receives an execution command for the library and retrieves and executes the library from the storage unit, and When a predetermined condition is met while the library is being executed, the control unit provides the information processing terminal with a processing procedure to be executed by the information processing terminal.This configuration is characterized by the following features.
[0010] The invention according to claim 2 is an image processing apparatus according to claim 1, further comprising an acquisition unit that acquires a setting file containing settings for each of the plurality of processes in response to the receipt of the execution command, and the control unit, when executing the library, automatically executes the plurality of processes sequentially based on the settings described in the setting file.
[0011] The invention according to claim 3 is an image processing apparatus according to claim 1, characterized in that the control unit includes a process for notifying the information processing terminal that the execution of the plurality of processes has been completed.
[0012] The invention according to claim 4 is an image processing apparatus according to claim 1, wherein the storage unit stores a plurality of libraries, and the control unit calls and executes a library specified by the execution command from among the plurality of libraries.
[0013] The invention according to claim 5 is an image processing apparatus according to claim 1, wherein the storage unit is executed on the information processing terminal. The above processing procedure is described below. The system stores an automation flow, and when a predetermined condition is met while the library is running, the control unit reads the automation flow from the storage unit and provides it to the information processing terminal, causing the information processing terminal to execute processing based on the automation flow.
[0014] The invention according to claim 6 is an image processing apparatus according to claim 1, wherein the control unit, when a predetermined condition is met while the library is being executed, causes the information processing terminal to execute The above processing procedure is described below. This configuration is characterized by creating an automation flow and having the information processing terminal execute processing based on the automation flow.
[0015] The invention according to claim 7 is an image processing apparatus according to claim 5 or 6, characterized in that the predetermined condition is the occurrence of an error during the execution of the library.
[0016] The invention according to claim 8 is an image processing apparatus according to claim 5 or 6, wherein the control unit interrupts the execution of the robotic process automation (RPA) by the information processing terminal when causing the information processing terminal to execute processing based on the automation flow.
[0017] The invention according to claim 9 is an image processing system in which an image processing device and an information processing terminal can communicate with each other, wherein the image processing device is , multiple The information processing terminal stores a library pre-programmed to automatically execute numerical processing sequentially, and during the execution of Robotic Process Automation (RPA) to cause the image processing device to execute a specific job, it transmits execution commands for the library issued by the Robotic Process Automation (RPA) to the image processing device, and the image processing device accepts the execution commands. Regarding the aforementioned specific job Call and execute the aforementioned library. The system is configured such that when a predetermined condition is met while the library is running, it provides the information processing terminal with a processing procedure to be executed on the information processing terminal. This configuration is characterized by the following features.
[0018] The invention according to claim 10 relates to the image processing system of claim 9, wherein the information processing terminal receives from the image processing device during the execution of the robotic process automation (RPA). The above processing procedure is described This configuration is characterized by interrupting the execution of the Robotic Process Automation (RPA) upon receiving an automation flow and executing the processing based on the automation flow.
[0019] The invention according to claim 11 is an image processing system according to claim 10, characterized in that the information processing terminal resumes execution of the robotic process automation (RPA) after the execution of the processing based on the automation flow has been completed.
[0020] The invention according to claim 12 is capable of communicating with an information processing terminal , multiple A control method for an image processing apparatus that stores a library pre-programmed to sequentially and automatically execute numerical processing, wherein in the information processing terminal Special When robotic process automation (RPA) for executing a specific job is being executed, receiving an execution instruction for the library issued by the robotic process automation (RPA) 1 Step, and based on the execution instruction Regarding the aforementioned specific job Calling and executing the library 2nd Step, and having The second step provides the information processing terminal with a processing procedure to be executed by the information processing terminal when a predetermined condition is met while the library is being executed. A configuration characterized by that.
[0021] The invention according to claim 13 is a program executed in an image processing apparatus provided with a storage unit that stores a library pre-programmed to sequentially and automatically execute numerical processing, wherein in the image processing apparatus, in the information processing terminal , multiple When robotic process automation (RPA) for executing a specific job is being executed, receiving an execution instruction for the library issued by the robotic process automation (RPA) Special Step, and based on the execution instruction, from the storage unit 1 Calling and executing the library Regarding the aforementioned specific job Step, and causing to execute 2nd Step, and The second step is to provide the information processing terminal with a processing procedure to be executed by the information processing terminal when a predetermined condition is met while the library is being executed. A configuration characterized by that.
Advantages of the Invention
[0022] According to the present invention, it is possible to reduce the amount of description of the processing procedure of RPA executed in an information processing terminal in order to cause an image processing apparatus to execute a specific job. Thereby, the problem that RPA compresses the storage area in the information processing terminal can be solved, and efficient maintenance is possible during maintenance of RPA.
Brief Description of the Drawings
[0023] [Figure 1] This figure shows an example configuration of an image processing system. [Figure 2] This is a block diagram showing an example of the hardware and functional configuration of an image processing device. [Figure 3] This figure shows an example of a configuration file. [Figure 4] This figure shows an example of a processing procedure described in the library. [Figure 5] This block diagram shows an example of the hardware and functional configuration of an information processing terminal. [Figure 6] This figure shows an example of RPA (Robotic Process Automation) performed on an information processing terminal. [Figure 7] This flowchart shows an example of a processing procedure performed by an image processing device. [Figure 8] This is a flowchart showing the processing steps based on the library. [Figure 9] This is a block diagram showing an example of the hardware configuration and functional configuration of the image processing device in the second embodiment. [Figure 10] This figure shows an example of a processing procedure described in the library. [Figure 11] This figure shows an example of an automation flow provided to an information processing terminal. [Figure 12] This flowchart shows an example of the processing steps performed when time synchronization is executed. [Figure 13] This is a block diagram showing an example of the hardware configuration and functional configuration of the image processing device in the third embodiment. [Figure 14] This figure shows an example of a configuration file. [Figure 15] This figure shows an example of RPA (Robotic Process Automation) performed on an information processing terminal. [Figure 16] This figure shows an example of a processing procedure described in the library. [Figure 17] This flowchart shows an example of error handling. [Figure 18]This figure shows an example of an automation flow provided to an information processing terminal. [Figure 19] This flowchart shows an example of a processing procedure based on a library. [Figure 20] This flowchart shows an example of a library-based processing procedure in the fourth embodiment. [Figure 21] This flowchart shows an example of a detailed error handling procedure. [Figure 22] This figure shows an example of partitioned management information. [Figure 23] This diagram shows the automation flow generated by the automation flow creation unit. [Figure 24] This figure shows an example of a processing procedure registered in a conventional RPA system. [Modes for carrying out the invention]
[0024] Preferred embodiments of the present invention will be described in detail below with reference to the drawings. In the embodiments described below, elements common to all are denoted by the same reference numerals, and redundant explanations of these elements will be omitted.
[0025] (First Embodiment) A first embodiment of the present invention will now be described. Figure 1 is a diagram showing an example configuration of an image processing system 1 in the first embodiment of the present invention. This image processing system 1 is configured such that an image processing device 2, which is composed of an MFP or the like, and an information processing terminal 3, which is composed of a personal computer (PC), a tablet terminal, a smartphone or the like, can communicate with each other via a network 4. The network 4 is a network that includes a LAN (Local Area Network) or the Internet. The communication conducted via the network 4 may be either wired communication or wireless communication, or both.
[0026] The image processing device 2 has multiple functions such as copying, scanning, printing, and faxing, and executes jobs specified by the user. For example, the image processing device 2 can communicate with the information processing terminal 3 via the network 4 and set up and execute jobs based on commands received from the information processing terminal 3. For example, when RPA is running on the information processing terminal 3 to cause the image processing device 2 to execute a specific job, the image processing device 2 receives commands issued by the RPA from the information processing terminal 3 and executes processing according to those commands. Therefore, by running RPA on their own information processing terminal 3, the user can have the image processing device 2 automatically execute a specified job without having to operate the image processing device 2 themselves.
[0027] Figure 2 is a block diagram showing an example of the hardware and functional configuration of the image processing device 2. The image processing device 2 comprises a control unit 10, a storage unit 11, an operation panel 12, a communication interface 13, a scanner unit 14, a printer unit 15, and a fax unit 16. The control unit 10 has a processor and memory (not shown) and controls the operation of each unit. The storage unit 11 is a non-volatile storage device, such as a hard disk drive (HDD) or a solid-state drive (SSD). The operation panel 12 is a user interface comprising a display unit 12a and an operation unit 12b. The display unit 12a is, for example, a color liquid crystal display and displays various operation screens. The operation unit 12b is, for example, a touch panel key and accepts user operations. The communication interface 13 is for connecting the image processing device 2 to the network 4 for communication and is, for example, a NIC (Network Interface Card). The scanner unit 14 optically reads the image of a document set by the user and generates image data. The printer unit 15 prints and outputs an image onto a sheet such as printing paper based on the image data to be printed. The fax unit 16 sends and receives fax data via a public telephone network (not shown in the diagram).
[0028] The storage unit 11 stores the program 18 executed by the processor of the control unit 10. The storage unit 11 also stores a library 19 that is pre-programmed to automatically execute multiple processes included in a specific job in sequence. The library 19 is a software component that is called and executed by the program 18 when the program 18 is being executed by the processor. The storage unit 11 has multiple libraries 19 pre-stored, depending on the type of job.
[0029] The control unit 10 functions as an instruction receiving unit 21 and a processing unit 22 when the processor executes the program 18.
[0030] The command receiving unit 21 receives commands from the operation panel 12 or the communication interface 13. For example, if a user is operating the operation panel 12, the command receiving unit 21 receives the user's operation on the operation panel 12 as a command. Also, if a user is remotely controlling the image processing device 2 via the information processing terminal 3, the command receiving unit 21 receives commands sent from the information processing terminal 3. Furthermore, if RPA is running on the information processing terminal 3 to cause the image processing device 2 to execute a specific job, the command receiving unit 21 receives commands that are automatically issued by the RPA and sent from the information processing terminal 3. When the command receiving unit 21 receives a command, it activates the processing unit 22.
[0031] The processing unit 22 executes processing based on the instructions received by the instruction receiving unit 21. If the instruction received by the instruction receiving unit 21 is a setting instruction for one of several setting items, the processing unit 22 performs the setting for the specified setting item based on the instruction. If the instruction received by the instruction receiving unit 21 is a job execution start instruction, the processing unit 22 drives the scanner unit 14, the printer unit 15, and the fax unit 16 respectively to control the execution of the job.
[0032] For example, if the instruction receiving unit 21 receives an instruction to set a fax number, the processing unit 22 sets the fax number specified in the fax destination setting item. Also, if the instruction receiving unit 21 receives an instruction to set the content of a fax transmission with an attached electronic file, the processing unit 22 sets the electronic file attached to the setting instruction as the fax transmission content. Furthermore, if the instruction receiving unit 21 receives an instruction to start sending a fax, the processing unit 22 drives the fax unit 16 to start executing the fax transmission job. In this way, the processing unit 22 executes one process corresponding to the instruction received by the instruction receiving unit 21.
[0033] The processing unit 22 includes a configuration file acquisition unit 23 and a library execution unit 24. The configuration file acquisition unit 23 receives and acquires a configuration file 25 transmitted from the information processing terminal 3. If the instruction received by the instruction receiving unit 21 is an execution instruction for library 19, the library execution unit 24 reads the library 19 specified in that execution instruction from the storage unit 11 and executes it. As described above, library 19 is pre-programmed to sequentially and automatically execute multiple processes included in a particular job. Therefore, when the instruction receiving unit 21 receives an execution instruction for library 19, the library execution unit 24 can sequentially and automatically execute multiple processes based on that execution instruction. At this time, the library execution unit 24 executes library 19 with the settings for each of the multiple processes reflected based on the configuration file 25 acquired by the configuration file acquisition unit 23.
[0034] Figure 3 shows an example of a configuration file 25. Figure 3 illustrates a configuration file 25 for a job that sends electronic files such as invoices by fax to companies X, Y, and Z according to their respective deadlines. In this configuration file 25, the fax number, the files to be sent, and the specified transmission time are set for each of companies X, Y, and Z. In the field for the files to be sent, the path to the files and the filename of the files to be sent are described so that the image processing device 2 can automatically acquire the files to be sent. The library execution unit 24 executes the library 19 based on this configuration file 25, and sequentially executes the process of sending faxes to companies X, Y, and Z.
[0035] Figure 4 shows an example of the processing procedure described in Library 19. When the Library Execution Unit 24 starts executing Library 19, it first parses the configuration file 25 as step 1. Through this analysis, the Library Execution Unit 24 identifies that there are three recipients for the fax and that the faxes will be sent in the order of Company X, Company Y, and Company Z. Next, as step 2, the Library Execution Unit 24 waits until the specified transmission time for Company X arrives. When the specified transmission time for Company X arrives, as step 3, the Library Execution Unit 24 retrieves the files to be sent to Company X based on the configuration file 25. That is, the Library Execution Unit 24 accesses the storage location of the files to be sent based on the path specified in the configuration file 25 and retrieves the files from that storage location. Next, as step 4, the Library Execution Unit 24 sets the fax number for Company X, and as step 5, starts sending the fax to Company X. With these steps, the fax to Company X is automatically sent.
[0036] Next, the library execution unit 24 performs steps 6 to 9 to send a fax to Company Y. Steps 6 to 9 are the same as steps 2 to 5, but the recipient, specified transmission time, and target file for transmission are different. By executing the processes of steps 6 to 9 of the library 19, the library execution unit 24 can automatically send a fax to Company Y.
[0037] Next, the library execution unit 24 performs steps 10 to 13 to send a fax to Company Z. Steps 10 to 13 are the same as steps 2 to 5, but the destination, specified transmission time, and target file for transmission are different. By executing steps 10 to 13 of the library 19, the library execution unit 24 can automatically send a fax to Company Z. Finally, as step 14, the library execution unit 24 sends a completion notification for the library 19 to the information processing terminal 3.
[0038] In this way, the library execution unit 24 can automatically send faxes individually to multiple recipients specified in the configuration file 25 by sequentially executing multiple processes that are pre-programmed in the library 19.
[0039] Next, Figure 5 is a block diagram showing an example of the hardware and functional configuration of the information processing terminal 3. The information processing terminal 3 comprises a control unit 30, a storage unit 31, a display unit 32, an operation unit 33, and a communication interface 34 as its hardware configuration. The control unit 30 has a processor and memory (not shown) and controls the operation of each unit. The storage unit 31 is a non-volatile storage device, such as a hard disk drive (HDD) or a solid-state drive (SSD). The display unit 32 is, for example, a color liquid crystal display and displays various operation screens. The operation unit 33 is, for example, a keyboard, a pointing device, or a touch panel key and accepts user operations. The communication interface 34 is for connecting the information processing terminal 3 to the network 4 and performing communication, and is, for example, a NIC (Network Interface Card).
[0040] The storage unit 31 stores the program 35 executed by the processor of the control unit 30. The storage unit 31 also stores the RPA 38 created by the RPA creation unit 36, as well as the configuration file 25 created by the user.
[0041] The control unit 30 functions as an RPA creation unit 36 and an RPA execution unit 37 when the processor reads and executes the program 35.
[0042] The RPA creation unit 36 creates an RPA 38 that describes the procedure for multiple operations. The RPA creation unit 36 operates based on the user's RPA creation instructions and records the user's operations performed on the information processing terminal 3 in the procedure. When the user instructs the end of RPA creation, the RPA creation unit 36 creates the RPA 38 based on the procedure recorded up to that point and saves it to the storage unit 31.
[0043] The RPA execution unit 37 reads and executes the RPA 38 stored in the storage unit 31. The RPA execution unit 37 operates based on the user's RPA execution instruction, reading and executing the RPA 38 specified by the user from the storage unit 31. As a result, the RPA execution unit 37 automatically performs multiple operations in sequence based on the operation procedure described in the RPA 38.
[0044] If the procedure described in RPA38 includes sending the configuration file 25 from the storage unit 31 to the image processing unit 2, the RPA execution unit 37 reads the configuration file 25 from the storage unit 31 and sends the configuration file 25 to the image processing unit 2. Also, if the procedure described in RPA38 includes causing the image processing unit 2 to execute library 19, the RPA execution unit 37 specifies the library 19 to be executed and sends an execution command for library 19 to the image processing unit 2.
[0045] Figure 6 shows an example of RPA38 executed on the information processing terminal 3. This RPA38 describes the procedure for causing the image processing device 2 to execute a fax transmission job. When the RPA execution unit 37 executes this RPA38, as step 1, it starts a fax transmission application such as a fax transmission driver on the information processing terminal 3. Once the fax transmission application is started on the information processing terminal 3, the information processing terminal 3 accesses the image processing device 2 and becomes able to communicate with the image processing device 2. Next, as step 2, the RPA execution unit 37 instructs the fax transmission application to send a configuration file 25 to the image processing device 2. As a result, the configuration file 25 is automatically sent to the image processing device 2 by RPA38. Next, as step 3, the RPA execution unit 37 instructs the fax transmission application to send an execution command for library 19 to the image processing device 2. This execution command includes the specification of the library 19 to be executed. Finally, as step 4, the RPA execution unit 37 terminates the fax transmission application. Furthermore, the RPA execution unit 37 may execute step 4 when it receives a completion notification from the image processing device 2.
[0046] When the RPA38 described above is executed on the information processing terminal 3, the image processing device 2 receives the configuration file 25 and the execution command for the library 19 from the information processing terminal 3. Therefore, based on the command issued by the RPA38, the image processing device 2 executes the library 19 described above and can individually send the target files to each of the companies X, Y, and Z at the specified time.
[0047] In this embodiment, the image processing system 1 allows the image processing device 2 to individually execute fax transmission jobs for companies X, Y, and Z simply by describing four steps, steps 1 to 4, as shown in Figure 6, in the RPA 38 created on the information processing terminal 3. In other words, the RPA 38 does not need to describe steps 1 to 17 as in the conventional technology shown in Figure 24. Therefore, it is possible to reduce the amount of processing procedure description in the RPA 38 on the information processing terminal 3 compared to the conventional method. As a result, the information processing terminal 3 can prevent the storage area of the storage unit 31 from being overloaded by the RPA 38. Furthermore, when performing maintenance on the RPA 38 after its creation, there is the advantage that maintenance work can be performed more efficiently because the number of processing procedures described in the RPA 38 is smaller than in the conventional method.
[0048] Next, an example of the operation of the image processing device 2 will be described. Figures 7 and 8 are flowcharts showing an example of a processing procedure performed by the image processing device 2. Figure 7 shows the main processing procedure performed by the control unit 10 of the image processing device 2, and shows the processing procedure based on program 18. Figure 8 shows the processing procedure based on library 19.
[0049] First, as shown in Figure 7, the control unit 10 starts communication with the information processing terminal 3 (step S10). That is, when the FAX transmission application is launched on the information processing terminal 3, the information processing terminal 3 accesses the image processing device 2. Upon detecting the access from the information processing terminal 3, the control unit 10 starts communication with the information processing terminal 3.
[0050] When communication with the information processing terminal 3 begins, the control unit 10 determines whether or not it has received any information from the information processing terminal 3 (step S11). If information is received (YES in step S11), the control unit 10 determines whether or not the information received from the information processing terminal 3 is the configuration file 25 (step S12). If the received information is the configuration file 25 (YES in step S12), the control unit 10 saves the configuration file 25 to a predetermined storage area of the storage unit 11 (step S13).
[0051] If the received information is not the configuration file 25 (NO in step S12), the control unit 10 determines whether the received information is a library execution instruction (step S15). If the received information is a library execution instruction (YES in step S15), the control unit 10 reads the library 19 specified by the library execution instruction from the storage unit 11 (step S16) and executes the read library 19 (step S17). As a result, the control unit 10 automatically executes multiple processes sequentially according to the processing procedures described in the library 19.
[0052] If the received information is not a library execution command (NO in step S15), the control unit 10 executes processing according to the command received from the information processing terminal 3 (step S18). For example, if the received command is a setting command for one of several setting items, the control unit 10 performs the setting for the specified setting item based on the setting command.
[0053] The control unit 10 determines whether or not communication with the information processing terminal 3 has ended (step S14). For example, if the FAX transmission application is terminated on the information processing terminal 3, the communication state is disconnected by the information processing terminal 3. Therefore, the control unit 10 determines that communication with the information processing terminal 3 has ended. If communication with the information processing terminal 3 has not ended (NO in step S14), the control unit 10 repeatedly executes the processes from step S11 onwards. In this case, each time the control unit 10 receives information from the information processing terminal 3, it executes processing according to the received information. Also, once communication with the information processing terminal 3 has ended, the control unit 10 terminates the processing based on program 18.
[0054] Next, with reference to Figure 8, the detailed processing procedure for library execution (step S17) will be described. When the control unit 10 starts executing the library 19, it reads the configuration file 25 stored in the storage unit 11 and analyzes the configuration file 25 (step S20). Based on the analysis results of the configuration file 25, the control unit 10 identifies the number of recipients for the fax (step S21). The control unit 10 also identifies the specified transmission time for each recipient (step S22). This allows the control unit 10 to determine the transmission order of the faxes to multiple recipients.
[0055] Subsequently, the control unit 10 waits until the current time becomes the specified transmission time defined in the configuration file 25 (step S23). When the specified transmission time arrives (YES in step S23), the control unit 10 obtains the file to be sent based on the configuration file 25 (step S24) and sets the FAX number (step S25). When the FAX transmission is ready, the control unit 10 starts the FAX transmission (step S26). When the FAX transmission is completed (YES in step S27), the control unit 10 determines whether or not the FAX transmission to all recipients specified in the configuration file 25 has been completed (step S28). If the FAX transmission to all recipients has not been completed (NO in step S28), the control unit 10 repeats the process from step S23 onwards. Therefore, the image processing device 2 can individually send FAXes to each of the multiple recipients set in the configuration file 25 by executing the library 19.
[0056] On the other hand, once the fax transmission to all recipients is complete (YES in step S28), the control unit 10 sends a completion notification to the information processing terminal 3 (step S29). By receiving the completion notification from the image processing device 2 to the information processing terminal 3, the information processing terminal 3 can understand that the fax transmission to multiple recipients has been successfully completed. Therefore, the information processing terminal 3 can terminate the fax transmission application based on the completion notification sent from the image processing device 2.
[0057] As described above, the image processing device 2 of this embodiment can communicate with the information processing terminal 3, and when an RPA 38 for executing a specific job is being executed on the information processing terminal 3, it receives commands issued by the RPA 38 and performs actions according to those commands. The image processing device 2 stores a library 19 that is pre-programmed to sequentially and automatically execute multiple processes included in a specific job, and when it receives an execution command for the library 19 from the information processing terminal 3, it calls and executes the specified library 19. In other words, once the image processing device 2 starts executing the library 19, it is configured to sequentially and automatically execute multiple processes programmed in the library 19 even without commands from the information processing terminal 3. Therefore, when creating an RPA 38 on the information processing terminal 3, the user can minimize the amount of processing procedure description to be registered in the RPA 38. As a result, it is possible to avoid the RPA 38 putting a strain on the memory area of the information processing terminal 3, and it is also advantageous that the user can easily manage the RPA 38.
[0058] (Second Embodiment) Next, a second embodiment of the present invention will be described. In this embodiment, an example will be described in which the control unit 10 of the image processing device 2 executes a library 19 to provide an automated flow to the information processing terminal 3. An automated flow is software that defines the processing procedures for multiple processes. By the image processing device 2 providing an automated flow to the information processing terminal 3, it is possible to make the information processing terminal 3 execute processing procedures that are not described in the RPA 38 being executed on the information processing terminal 3.
[0059] Figure 9 is a block diagram showing an example of the hardware and functional configuration of the image processing device 2 in the second embodiment. In this image processing device 2, the processor of the control unit 10 executes the program 18, and in addition to the instruction receiving unit 21 and processing unit 22 described in the first embodiment, it also functions as an EWS (Embedded Web Server) 26. The EWS 26 is a web server that provides an interface for external devices to perform various settings and management of the image processing device 2, and when it detects external access, it provides a web page for various settings and management. Note that the setting file acquisition unit 23 of the processing unit 22 is not shown in the figure.
[0060] Furthermore, the image processing device 2 stores in its storage unit 11 an automated flow 27 and history information 28, in addition to the program 18 and library 19 described above.
[0061] History information 28 is information that records the job execution history in the image processing device 2. History information 28 records, for example, the job execution time. That is, when the processing unit 22 executes a job specified by the user, it records the time indicated by the internal clock of the image processing device 2 as the job execution time in history information 28. Therefore, the accuracy of the job execution time recorded in history information 28 depends on the accuracy of the internal clock of the image processing device 2. When the internal clock does not show the correct time, the job execution time recorded in history information 28 will also be an inaccurate time, and proper history management will not be possible. For this reason, it is preferable for the image processing device 2 to perform a process to synchronize its internal clock to the correct time before starting job execution.
[0062] In this embodiment, when the library 19 is executed in the control unit 10 of the image processing device 2, the library 19 performs a process to correctly adjust the time of the internal clock. At this time, the control unit 10 sends an automated flow 27 to the information processing terminal 3 based on the procedure described in the library 19, and causes the information processing terminal 3 to automatically execute the processing procedure based on the automated flow 27. For example, the automated flow 27 in this embodiment describes a processing procedure that causes the information processing terminal 3 to launch a browser and access the EWS 26 from that browser to adjust the internal clock. Therefore, when the information processing terminal 3 receives the automated flow 27 from the image processing device 2, it automatically executes the processing procedure described in the automated flow 27, accesses the EWS 26 of the image processing device 2, and automatically adjusts the time of the internal clock.
[0063] Figure 10 shows an example of the processing procedure described in library 19 of this embodiment. The differences between this library 19's processing procedure and the library 19's processing procedure shown in Figure 4 are steps 1, 7, 12, and 17.
[0064] Step 1 is a procedure for performing a time synchronization process to adjust the internal clock of the image processing device 2. When the library execution unit 24 executes the process of Step 1, it reads the automation flow 27 that has been stored in the memory unit 11 in advance and sends it to the information processing terminal 3, causing the information processing terminal 3 to execute the processing steps of the multiple processes described in the automation flow 27. As a result, the information processing terminal 3 accesses the EWS 26 of the image processing device 2 and adjusts the time of the internal clock of the image processing device 2 to the correct time.
[0065] Furthermore, steps 7, 12, and 17 are processes in which the library execution unit 24 records the execution history of the job indicating that a fax transmission was performed in the history information 28 after the fax transmission has been completed. Since the internal clock adjustment process of the image processing device 2 has already been completed when steps 7, 12, and 17 are performed, the correct time is recorded as the job execution time in the history information 28.
[0066] Figure 11 shows examples of automation flows 27 provided to the information processing terminal 3. Three examples of automation flows 27 are shown in Figure 11.
[0067] The automation flow 27 shown in Figure 11(a) consists of steps 1 to 5. Step 1 is the process of launching a browser and accessing the EWS26 of the image processing device 2. Step 2 is the process of entering the ID and password to log in to the EWS26. By pre-writing the ID and password information in the automation flow 27, the information processing terminal 3 can automatically enter the ID and password. Step 3 is the process of making the EWS26 access an NTP (Network Time Protocol) server, obtaining the correct time information provided by the NTP server, and synchronizing the internal clock time with the NTP server. Step 4 is the process of logging out of the EWS26. Step 5 is the process of closing the browser and terminating. By having the information processing terminal 3 execute the automation flow 27 shown in Figure 11(a), the image processing device 2 can synchronize the internal clock time with the time of the NTP server.
[0068] The automation flow 27 shown in Figure 11(b) is a flow that is performed, for example, when the time adjustment fails in the automation flow 27 shown in Figure 11(a), and consists of steps 1 to 8. Step 1 is the process of launching a browser and accessing the EWS26 of the image processing device 2. Step 2 is the process of entering the ID and password to log in to the EWS26. Step 3 is the process of displaying the message "Please set the NTP server." on the browser screen. Step 4 is the process of displaying the NTP server address input screen on the browser screen. The user manually enters the NTP server address on the address input screen. Step 5 is the process of displaying the NTP server port specification screen on the browser screen. The user manually specifies the NTP server port on the port specification screen. Step 6 is the process of making the EWS26 access the NTP server, obtaining the correct time information provided by the NTP server, and synchronizing the internal clock time with the NTP server. Step 7 is the process of logging out of the EWS26. Step 8 is the process of closing the browser and terminating. The image processing device 2 can synchronize the time of its internal clock with the time of an NTP server specified by the user by having the information processing terminal 3 execute the automation flow 27 shown in Figure 11(b).
[0069] The automated flow 27 shown in Figure 11(c) is a flow that is performed, for example, when the time adjustment fails in the automated flow 27 shown in Figure 11(b), and consists of steps 1 to 5. Step 1 is the process of launching a browser and accessing the EWS26 of the image processing device 2. Step 2 is the process of entering the ID and password to log in to the EWS26. Step 3 is the process of selecting "Set the time of the information processing terminal 3" on the settings screen of the EWS26. As a result of this process, the time of the internal clock of the image processing device 2 is synchronized with the time of the information processing terminal 3. Step 4 is the process of logging out of the EWS26. Step 5 is the process of closing the browser and ending the process.
[0070] Figure 12 is a flowchart showing an example of the processing procedure performed by the time synchronization process in step 1 of the library 19. When the library execution unit 24 starts this process, it reads the automation flow 27 from the storage unit 11 (step S30) and sends the automation flow 27 to the information processing terminal 3 (step S31). The library execution unit 24 determines whether or not it was possible to adjust the time of the internal clock using the automation flow 27 sent to the information processing terminal 3 (step S32). If the time adjustment was not possible (NO in step S32), the library execution unit 24 determines whether or not there is another automation flow 27 (step S33). If there is another automation flow 27 (YES in step S33), the library execution unit 24 executes the process from step S30 onwards again and sends another automation flow 27 to the information processing terminal 3. If the time adjustment was possible (YES in step S32), or if there is no other automation flow 27 (NO in step S33), the library execution unit 24 terminates the process of step 1.
[0071] The control unit 10 executes the library 19 and performs the above processing, thereby enabling the information processing terminal 3 to automatically execute a series of processes not included in the RPA 38. Therefore, it is not necessary to pre-write the steps of the automation flow 27 in the RPA 38, and the amount of code to write for the RPA 38's processing steps can be reduced. Accordingly, in this embodiment, similar to the first embodiment, when the information processing terminal 3 creates the RPA 38, it is not necessary to include the processing steps described in the automation flow 27 in the RPA 38's processing steps.
[0072] In particular, even if the user is unaware of the operating procedure for adjusting the internal clock of the image processing device 2, the information processing terminal 3 can adjust the internal clock of the image processing device 2 by executing the automated flow 27 provided by the image processing device 2.
[0073] When the information processing terminal 3 executes the automation flow 27 received from the image processing device 2, it may temporarily suspend the execution of the RPA 38 and execute the processing procedure described in the automation flow 27, or it may execute the processing procedure described in the automation flow 27 in parallel with the execution of the RPA 38.
[0074] In this embodiment, the configuration and operation other than those described above are the same as those described in the first embodiment.
[0075] (Third embodiment) Next, a third embodiment of the present invention will be described. In the second embodiment, the image processing device 2 provides an automated flow 27, which is pre-stored in the storage unit 11, to the information processing terminal 3, causing the information processing terminal 3 to automatically execute the processing procedures described in the automated flow 27. In contrast, in this embodiment, an example will be described in which, when an error occurs while a specific job is being executed in the image processing device 2, the image processing device 2 generates an automated flow 27 to deal with the error and provides it to the information processing terminal 3.
[0076] Figure 13 is a block diagram showing an example of the hardware and functional configuration of the image processing device 2 in the third embodiment. In this image processing device 2, the processor of the control unit 10 executes the program 18, and the unit functions as an instruction receiving unit 21 and a processing unit 22, similar to the first embodiment.
[0077] The processing unit 22 comprises a library execution unit 24, an error processing unit 40, and an automation flow creation unit 41. Note that the configuration file acquisition unit 23 of the processing unit 22 is not shown in the diagram.
[0078] When the library execution unit 24 is sequentially executing multiple processes included in the library 19, an error may occur in the image processing device 2. If an error occurs while the library execution unit 24 is executing one of the processes included in the library 19, it will not be able to continue the subsequent processes. Therefore, when the library execution unit 24 detects that an error has occurred during the execution of the library 19, it activates the error processing unit 40.
[0079] The error processing unit 40 automatically executes processing to address errors that occur in the image processing unit 2. For example, the error processing unit 40 automatically executes processing to avoid errors that occur in the image processing unit 2. When the error processing unit 40 performs processing to address an error, it will perform processing that differs from the processing specified in library 19. As a result, the information processing terminal 3 running RPA38 may not be able to perform the subsequent processing described in RPA38 correctly.
[0080] Therefore, when the error processing unit 40 automatically executes a process to deal with the error, the automated flow creation unit 41 functions. Based on the content of the process performed by the error processing unit 40, the automated flow creation unit 41 generates an automated flow 27 to be executed by the information processing terminal 3 and saves it in the storage unit 11. Subsequently, the library execution unit 24 reads the automated flow 27 stored in the storage unit 11 and sends it to the information processing terminal 3, causing the information processing terminal 3 to execute the automated flow 27.
[0081] This section describes an example in which RPA38 is executed on the information processing terminal 3 and causes the image processing device 2 to execute a scan job. For example, a user may, as part of their routine tasks, have the image processing device 2 execute a scan job to read an image of a document, obtain the electronic file of the image data generated by the scan job, and send it as an email attachment. Such routine tasks can be performed by having RPA38 run on the information processing terminal 3. In this case as well, the information processing terminal 3 sends a configuration file 25 to the image processing device 2 and specifies a library 19 that will sequentially and automatically execute multiple processes included in the scan job, thereby causing the image processing device 2 to execute the library 19 and reducing the amount of code to be written for the processing procedure in RPA38.
[0082] Figure 14 shows an example of a configuration file 25 transmitted from the information processing terminal 3 to the image processing device 2. As shown in Figure 14, the configuration file 25 contains the scan settings for when scanning a document. The configuration file 25 also contains the file name to be assigned to the image data generated by scanning the document. Furthermore, the configuration file 25 contains the file storage location where the electronic files of the image data will be stored.
[0083] Figure 15 shows an example of RPA38 executed on the information processing terminal 3. This RPA38 describes the procedure for obtaining an electronic file generated by a scan job from the image processing device 2, attaching it to an email, and sending the email to a predetermined address. Step 1 is the process of opening the email application on the information processing terminal 3. Step 2 is the process of creating a new email. Step 3 is the process of opening the address book application. Step 4 is the process of selecting a predetermined recipient address from the address book application. Step 5 is the process of inserting pre-specified standard text into the subject and body. Step 6 is the process of sending the configuration file 25 from Figure 14 to the image processing device 2. Step 7 is the process of sending a library execution command to the image processing device 2. When the library execution command is sent in Step 7, the execution of library 19 is started in the image processing device 2. Step 8 is the process of accessing the file storage location. Step 9 is the process of obtaining the electronic file generated by the scan job from the file storage location. Step 10 is the process of attaching the obtained electronic file to an email. Step 11 is the process of sending the email. Step 12 is the process of closing the email application.
[0084] Next, the library 19 executed in the image processing device 2 will be described. Figure 16 shows an example of a processing procedure described in the library 19. Procedure 1 is the process of analyzing the configuration file. Procedure 2 is the process of reflecting the scan settings in the scanner unit 14. Procedure 3 is the process of starting document scanning by the scanner unit 14. Procedure 4 is the process of setting a file name for the image data generated by the scanner unit 14 and generating the electronic file specified in the configuration file 25. Procedure 5 is the process of accessing the file storage location specified in the configuration file 25. Procedure 6 is the process of storing the electronic file in the file storage location. Procedure 7 is the process of sending a completion notification to the information processing terminal 3.
[0085] During the execution of the library 19, the library execution unit 24 attempts to access the file storage location specified in the configuration file 25 as part of step 5. If access permissions are set for the file storage location, the library execution unit 24's access is denied. As a result, the library execution unit 24 is unable to perform the processes from step 5 onward, and an error occurs during the execution of the library 19.
[0086] When an error occurs in step 5 of the library 19, the error processing unit 40 performs error processing as shown in Figure 17, for example. First, the error processing unit 40 saves the electronic file generated by the scan job to a predetermined storage area (folder) in the storage unit 11 (step S40). Next, the error processing unit 40 sets an ID and password for the storage area where the electronic file is saved and grants access rights (step S41). This prevents the electronic file from being obtained by a third party. At this time, it is preferable to use random numbers or the like for the ID and password set for the storage area. Next, the error processing unit 40 temporarily stores the ID and password set for the storage area (step S42). Next, the error processing unit 40 generates access information for the storage area where the electronic file is saved (step S43). This access information includes the path to the storage area and the ID and password. This completes the error processing by the error processing unit 40.
[0087] Next, the automation flow creation unit 41 generates an automation flow 27 as shown in Figure 18 based on the processing result of the error processing unit 40. Step 1 of the automation flow 27 shown in Figure 18 is a process that causes the information processing terminal 3 to access the storage area of the storage unit 11 where the electronic file is stored. This step 1 includes information about the path to the storage area where the electronic file is stored. Therefore, when the information processing terminal 3 executes the process of step 1, it can automatically access the storage area where the electronic file is stored. Step 2 is a process that causes the information processing terminal 3 to input an ID and password in order to indicate the access rights granted to the storage area of the storage unit 11. This step 2 includes information about the ID and password that is temporarily stored by the error processing unit 40. Therefore, when the information processing terminal 3 executes the process of step 2, it can automatically input the ID and password to access the storage area. Step 3 is a process that copies the electronic file stored in the storage area to the file storage location specified in the configuration file 25. The information processing terminal 3 has access rights to the file storage location specified in the configuration file 25. Therefore, the information processing terminal 3 can successfully copy the electronic files stored in the storage area of the storage unit 11 to the file storage destination. Step 4 is the process of deleting the electronic files from the storage area of the storage unit 11.
[0088] When the automation flow 27 is generated by the automation flow creation unit 41, the library execution unit 24 sends the automation flow 27 to the information processing terminal 3 and has the information processing terminal 3 execute the automation flow 27. At this time, the library execution unit 24 temporarily suspends the execution of RPA 38 and has the processing procedure described in the automation flow 27 executed. As a result, the information processing terminal 3 executes the processing procedure described in the automation flow 27 in Figure 18 before starting procedure 8 of RPA 38 shown in Figure 15. By executing the processing based on the automation flow 27, the information processing terminal 3 saves the electronic file stored in the storage unit 11 of the image processing device 2 to the file storage location. When the information processing terminal 3 finishes executing the automation flow 27, it resumes processing based on RPA 38. That is, when the information processing terminal 3 finishes executing the automation flow 27, it resumes processing from procedure 8 onwards of RPA 38 shown in Figure 15. As a result, the information processing terminal 3 can execute the processing procedure described in RPA 38 to the end.
[0089] Figure 19 is a flowchart showing an example of a processing procedure performed by the control unit 10 of the image processing device 2 based on the library 19. First, the library execution unit 24 in the control unit 10 starts executing the library 19. When the library execution unit 24 starts executing the library 19 shown in Figure 16, it reads the setting file 25 acquired from the information processing terminal 3 and analyzes the setting file 25 (step S50). Based on the analysis results of the setting file 25, the library execution unit 24 performs setting processing to reflect the scan settings (step S51). After that, the library execution unit 24 sequentially executes the processing from step 3 onwards described in the library 19 (step S52).
[0090] The library execution unit 24 determines whether an error occurred during the execution of the processes described in library 19 (step S53). If no error occurred (NO in step S53), the library execution unit 24 determines whether all processes described in library 19 have finished (step S54). If all processes described in library 19 have not finished (NO in step S54), the library execution unit 24 returns to step S52 and executes the next steps described in library 19. If all processes have finished (YES in step S54), the processing by the library execution unit 24 ends.
[0091] On the other hand, if an error occurs during the execution of library 19 (YES in step S53), the error processing unit 40 operates and performs error processing (step S55). At this time, the error processing unit 40 performs the error processing shown in Figure 17. After the error processing unit 40 has performed the error processing, the automation flow creation unit 41 operates. Based on the processing result of the error processing unit 40, the automation flow creation unit 41 generates the automation flow 27 shown in Figure 18 (step S56). Subsequently, the library execution unit 24 sends the automation flow 27 to the information processing terminal 3 and causes the information processing terminal 3 to execute processing based on the automation flow 27 (step S57). This completes the processing by the control unit 10.
[0092] As described above, the image processing device 2 of this embodiment performs error processing to avoid errors when an error occurs during the execution of library 19. This error processing is different from the processing described in library 19. Therefore, when the image processing device 2 performs error processing, it generates an automation flow 27 and sends it to the information processing terminal 3 to allow the RPA 38 being executed on the information processing terminal 3 to continue running, causing the information processing terminal 3 to execute the processing based on the automation flow 27. As a result, the information processing terminal 3 can continue to execute RPA 38 by executing the automation flow 27. Therefore, the information processing terminal 3 does not need to pre-write processing in RPA 38 to anticipate errors that may occur during the execution of library 19 in the image processing device 2. Thus, it is possible to reduce the amount of processing procedure written in RPA 38.
[0093] In this embodiment, the configuration and operation other than those described above are the same as those described in the first or second embodiment.
[0094] (Fourth Embodiment) Next, a fourth embodiment of the present invention will be described. In this embodiment, an error different from the error described in the third embodiment will be described. For example, when the RPA38 is executed on the information processing terminal 3 and the image processing device 2 is made to execute a scan job, if the number of documents increases, the memory of the control unit 10 may overflow during the document reading operation. In this embodiment, an example in which a memory overflow error occurs during the execution of a scan job will be described.
[0095] The configuration of the image processing device 2 in this embodiment is the same as in the third embodiment. Also, in this embodiment, if an error occurs during the execution of the library 19, the image processing device 2 performs error processing and generates an automated flow 27 based on the result of the error processing and provides it to the information processing terminal 3, which is common to the third embodiment.
[0096] Figure 20 is a flowchart showing an example of a processing procedure performed by the control unit 10 of the image processing device 2 based on the library 19 in the fourth embodiment. First, the library execution unit 24 in the control unit 10 operates and starts executing the library 19. The library 19 executed by the library execution unit 24 is the same as the library 19 described in the third embodiment (see Figure 16).
[0097] When the library execution unit 24 starts executing the library 19, it reads the configuration file 25 obtained from the information processing terminal 3 and analyzes the configuration file 25 (step S60). Based on the analysis results of the configuration file 25, the library execution unit 24 performs setting processing to reflect the scan settings (step S61). After that, the library execution unit 24 sequentially executes the processes from step 3 onwards described in the library 19 (step S62). As a result, the image processing device 2 starts the document reading operation.
[0098] The library execution unit 24 determines whether an error occurred during the execution of the processes described in library 19 (step S63). If an error occurs during the execution of library 19 (YES in step S63), the error processing unit 40 operates and performs error processing (step S64). If no error occurs (NO in step S63), the library execution unit 24 determines whether all processes described in library 19 have been completed (step S65). If all processes described in library 19 have not been completed (NO in step S65), the library execution unit 24 returns to step S62 and executes the next steps described in library 19.
[0099] If all the processes described in library 19 are completed (YES in step S65), the control unit 10 determines whether or not an error occurred during the execution of library 19 (step S66). If no error occurred (NO in step S66), the processing by the control unit 10 ends. On the other hand, if an error occurs (YES in step S66), the automated flow creation unit 41 operates. The automated flow creation unit 41 generates an automated flow 27 based on the result of the error processing performed by the error processing unit 40 (step S64) (step S67). Subsequently, the library execution unit 24 sends the automated flow 27 to the information processing terminal 3 and causes the information processing terminal 3 to execute the processing based on the automated flow 27 (step S68). This completes the processing by the control unit 10.
[0100] Figure 21 is a flowchart showing an example of a detailed error handling procedure (step S64). This error handling procedure is performed to avoid a memory overflow error that occurs during the document scanning operation. When the error handling unit 40 starts the error handling procedure (step S64), it reads image data from the memory provided in the control unit 10 (step S70). If the memory contains image data for multiple pages, the error handling unit 40 reads all of that image data for multiple pages. The error handling unit 40 generates an electronic file by combining the image data for multiple pages read from the memory into a single file and sets a file name for that electronic file (step S71). Next, the error handling unit 40 saves the electronic file with the set file name to a predetermined storage area in the storage unit 11 (step S72). This frees up the overflowed memory and allows the scan job to be resumed. After saving the electronic file to the predetermined storage area, the error handling unit 40 generates or updates the partition management information 45 (step S73). This completes the error handling procedure (step S64).
[0101] The error processing unit 40 performs the error processing described above, and when a memory overflow occurs during the execution of a scan job, it temporarily saves the image data stored in memory to the storage area of the storage unit 11 and frees up memory, thereby allowing the scanner unit 14 to perform segmented scanning of the document. The error processing unit 40 also records the segmentation status of the document in segmentation management information 45. Therefore, when a memory overflow occurs during the execution of a scan job, the error processing unit 40 generates multiple electronic files (segmented files).
[0102] Figure 22 shows an example of the split file management information 45. Figure 22 illustrates a case where three split files are generated during the execution of a scan job. The split file management information 45 records the username, job name, split file name, start page, end page, and the path to the storage location where the electronic files (split files) are stored. The error processing unit 40 adds information about the split file to the split file management information 45 each time a memory overflow error occurs and a split file is created. This split file management information 45 is used to integrate the multiple split files into the correct page order after the scan job is completed.
[0103] If a memory overflow error occurs at least once during the execution of the library 19, the automated flow creation unit 41 generates an automated flow 27 for the information processing terminal 3 to integrate multiple split files, based on the split management information 45 generated by the error processing unit 40.
[0104] Figure 23 shows the automation flow 27 generated by the automation flow creation unit 41. This automation flow 27 consists of steps 1 to 11. Step 1 is the process of starting the PDF merging application on the information processing terminal 3. Step 2 is the process of causing the PDF merging application started on the information processing terminal 3 to access the storage location of the split files. Step 3 is the process of causing the PDF merging application to open the first split file. Step 4 is the process of causing the PDF merging application to merge the second split file after the first split file. Step 5 is the process of saving the merged electronic file to the file storage location as an electronic file with the file name specified in the configuration file. Step 6 is the process of merging the third split file after the electronic file. Step 7 is the process of overwriting and saving the merged electronic file to the file storage location. Step 8 is the process of deleting the first split file from the storage location of the split files. Step 9 is the process of deleting the second split file from the storage location of the split files. Step 10 is the process of deleting the third split file from the storage location of the split files. Step 11 is the process of closing the PDF merging application on the information processing terminal 3.
[0105] The image processing device 2 generates the automated flow 27 shown in Figure 23 and has the information processing terminal 3 execute it, thereby enabling the information processing terminal 3 to combine multiple split files that cannot be combined by the image processing device 2.
[0106] As described above, the image processing device 2 of this embodiment performs error handling and creates split files whenever a memory overflow error occurs during the execution of library 19. When the execution of library 19 is completed, the image processing device 2 generates an automated flow 27 to combine the split files and has the information processing terminal 3 execute the automated flow 27. Therefore, the information processing terminal 3 does not need to pre-write the process for combining the split files in RPA38. Thus, it is possible to reduce the amount of processing procedure written in RPA38.
[0107] In this embodiment, the configuration and operation other than those described above are the same as those described in the first to third embodiments.
[0108] (modified version) Preferred embodiments of the present invention have been described above. However, the present invention is not limited to those described in the above embodiments, and various modifications are applicable.
[0109] For example, in each of the above embodiments, we have illustrated cases where the RPA38 is executed on the information processing terminal 3 to cause the image processing device 2 to execute fax transmission jobs or scan jobs. However, the jobs that the image processing device 2 executes by running the RPA38 on the information processing terminal 3 are not limited to fax transmission jobs or scan jobs. For example, the RPA38 may also cause the image processing device 2 to execute copy jobs or print jobs.
[0110] Furthermore, in the third or fourth embodiment, an example was described in which the image processing device 2 sends the automated flow 27 to the information processing terminal 3 when an error occurs in the image processing device 2 while the library 19 is being executed. However, the timing at which the image processing device 2 sends the automated flow 27 to the information processing terminal 3 is not limited to the occurrence of an error. That is, the image processing device 2 may also send the automated flow 27 to the information processing terminal 3 when predetermined conditions are met while the library 19 is being executed.
[0111] Furthermore, in the above embodiment, an example was described in which the program 18 and library 19 executed by the image processing device 2 are pre-stored in the image processing device 2. However, the program 18 and library 19 are not limited to those pre-stored in the image processing device 2. That is, the program 18 and library 19 executed by the image processing device 2 may be traded on their own. In this case, the program 18 and library 19 may be provided in a manner that makes them downloadable via a network such as the Internet, or they may be provided recorded on a computer-readable recording medium such as a CD-ROM. [Explanation of Symbols]
[0112] 1. Image Processing System 2 Image Processing Device 3. Information Processing Terminal 10 Control Unit 11 Storage section 18 Programs 19 Library 25 Configuration files 27 Automation Flow 38. RPA (Robotic Process Automation)
Claims
1. An image processing device that can communicate with an information processing terminal and operates based on commands from the information processing terminal when robotic process automation (RPA) for the execution of a specific job is being performed on the information processing terminal, A storage unit that stores a library pre-programmed to automatically execute multiple processes sequentially, A control unit that receives an execution command for the library from the information processing terminal regarding the execution of the specific job, and retrieves and executes the library from the storage unit, Equipped with, The image processing apparatus is characterized in that, when a predetermined condition is met while the library is being executed, the control unit provides the information processing terminal with a processing procedure to be executed by the information processing terminal.
2. The system further includes an acquisition unit that, upon receiving the execution command, acquires a configuration file containing settings for each of the multiple processes, The image processing apparatus according to claim 1, characterized in that when the control unit executes the library, it sequentially and automatically executes the plurality of processes based on the settings described in the configuration file.
3. The image processing apparatus according to claim 1, characterized in that the control unit includes a process for notifying the information processing terminal that the execution of the plurality of processes has been completed.
4. The aforementioned storage unit stores multiple libraries, The image processing apparatus according to claim 1, characterized in that the control unit calls and executes the library specified by the execution command from among the plurality of libraries.
5. The storage unit stores an automation flow that describes the processing procedure to be executed on the information processing terminal. The image processing apparatus according to claim 1, characterized in that when a predetermined condition is met while the library is being executed, the control unit reads the automation flow from the storage unit and provides it to the information processing terminal, causing the information processing terminal to execute processing based on the automation flow.
6. The image processing apparatus according to claim 1, characterized in that when a predetermined condition is met while the library is being executed, the control unit creates an automation flow describing the processing procedure to be executed on the information processing terminal, and causes the information processing terminal to execute processing based on the automation flow.
7. The image processing apparatus according to claim 5 or 6, characterized in that the predetermined condition is the occurrence of an error during the execution of the library.
8. The image processing apparatus according to claim 5 or 6, characterized in that the control unit causes the information processing terminal to perform processing based on the automation flow, and in doing so, causes the information processing terminal to interrupt the execution of the robotic process automation (RPA).
9. An image processing system in which an image processing device and an information processing terminal can communicate with each other, The aforementioned image processing device stores a library pre-programmed to automatically execute multiple processes sequentially, The information processing terminal transmits to the image processing device the execution command for the library issued by the robotic process automation (RPA) during the execution of the robotic process automation (RPA) to cause the image processing device to execute a specific job. The image processing device is configured to receive the execution command, call and execute the library relating to the specific job, and when a predetermined condition is met while the library is being executed, it provides the information processing terminal with a processing procedure to be executed by the information processing terminal.
10. The image processing system according to claim 9, characterized in that when the information processing terminal receives an automation flow describing the processing procedure from the image processing device while the robotic process automation (RPA) is being executed, it interrupts the execution of the robotic process automation (RPA) and executes the processing based on the automation flow.
11. The image processing system according to claim 10, characterized in that the information processing terminal resumes execution of the robotic process automation (RPA) after the execution of the processing based on the automation flow has been completed.
12. A control method for an image processing device that can communicate with an information processing terminal and stores a library pre-programmed to automatically execute multiple processes sequentially, A first step is to receive an execution command for the library issued by the robotic process automation (RPA) when robotic process automation (RPA) for the execution of a specific job is being executed on the information processing terminal, A second step involves calling and executing the library related to the specific job based on the execution command, It has, The second step is a control method characterized by providing the information processing terminal with a processing procedure to be executed by the information processing terminal when a predetermined condition is met while the library is being executed.
13. A program to be executed in an image processing device that is capable of communicating with an information processing terminal and has a storage unit that stores a library pre-programmed to automatically execute multiple processes sequentially, wherein the image processing device has a storage unit that stores a library pre-programmed to do so. A first step is to receive an execution command for the library issued by the robotic process automation (RPA) when robotic process automation (RPA) for the execution of a specific job is being executed on the information processing terminal, A second step is to call and execute the library related to the specific job from the storage unit based on the execution instruction, Make it run, The second step is a program characterized by providing the information processing terminal with a processing procedure to be executed by the information processing terminal when a predetermined condition is met while the library is being executed.
Citation Information
Patent Citations
Electronic apparatus and script generation device
JP2014186432A
RPA device, RPA system and program
JP2020003905A
Workflow creation device, control method for the same, and program
JP2020194201A