Business management system, method for executing the same, and program
The system addresses RPA's inconsistency issue by using identifiers and adaptive information to ensure consistent operation across varying environments, enhancing efficiency and usability in business management systems.
Patent Information
- Application Number
- JP2021057733
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-03-30
- Publication Date
- 2025-07-16
- Estimated Expiration
- 2041-03-30
AI Technical Summary
Existing RPA systems struggle to operate business management programs consistently across different hardware and software environments due to variations in UI control positions and display settings, leading to inconsistent operation and reduced efficiency.
A business management system that includes RPA tools and RPA definition information, utilizing identifiers such as QR codes and coordinates to detect and adapt to UI controls, enabling the system to operate consistently across varying environments by generating and applying search information and conversion information.
Ensures RPA tools can function normally across different business management apparatuses, improving efficiency and usability by allowing common tools and information to be reused across diverse models and operating systems.
Smart Images

Figure 0007709294000001 
Figure 0007709294000002 
Figure 0007709294000003
Abstract
Description
Technical Field
[0001] The present invention relates to a business management system, a method for executing the same, and a program.
Background Art
[0002] In recent years, as the need for work style reform has increased, the number of companies introducing RPA (Robotic Process Automation) as a means of improving work efficiency has been increasing. In RPA, software robots are made to memorize routine tasks such as those using a business management system that humans perform using a keyboard and mouse, and the software robots execute computer operations instead of humans to achieve business automation.
[0003] Regarding business management systems, in response to telework and working from home, for example, in addition to desktop PCs mainly used in the office, systems that operate on PDAs (Personal Digital Assistants) such as tablets and smartphones that can be used at home have also been introduced. In various OS (Operating System) and hardware (mouse, touch panel, display, etc.) environments in which the business management system operates, the introduction of RPA further demands the improvement of business efficiency of companies.
[0004] For example, Patent Document 1 discloses a technique of recording the operation procedure of software operated in a region where the relative display position relationship between software is determined even when the software is executed in a display environment different from the display environment when the operation procedure of the software is recorded, and controlling the operation of the software according to the operation procedure.
[0005] However, in the information processing apparatus and program of Patent Document 1, regarding the relative position information of the recorded operation procedures, when operating the business management program using RPA in an environment different from the OS or hardware that records the operations of the business management program, depending on the OS or hardware, the relative display position relationships of buttons etc. on the screen are different, so the recorded position information cannot be applied. Also, the user (operator) may customize the positions of buttons etc. in the business management program of the business apparatus used by the user in order to improve the usability of the business management system. Therefore, in each business apparatus, the positions of buttons etc. in the business management system may be different.
[0006] Due to differences in the hardware or software environment, or customization by the user, the operation screens of predetermined operations of the business management program may differ for each business management system or business management apparatus. Even if the operation screens are different, it is required that the RPA software program can normally execute the above-mentioned predetermined operations on the business management program.
Prior Art Documents
Patent Documents
[0007]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0008] An object of the present invention is to enable RPA that operates a business management program to operate normally even in different business management apparatuses (systems).
Means for Solving the Problems
[0009] To solve the above problems, the first business management system of the present invention includes a business management program for managing the business of an enterprise, an RPA (Robotic Process Automation) tool for operating the business management program, RPA definition information for defining processing using a UI (User Interface) control for the business management program by the RPA tool, and search information including an identifier of the UI control for the RPA tool to search for the UI control to be operated when the RPA tool is executed based on the RPA definition information, a storage unit for storing the above; and an RPA execution control unit that, when it is determined that the UI control to be operated cannot be detected during the execution of the processing defined by the RPA definition information, detects an identifier that matches the identifier included in the search information from among the identifiers included in or attached to the UI controls on the operation screen of the processing, and executes the processing defined by the RPA definition information with the UI control with the detected identifier as the operation target.
[0010] According to this business management system, even when the UI control to be operated cannot be detected during the operation of the business management program by the RPA tool, the UI control can be searched by detecting the identifier included in or associated with the UI control, whereby the RPA can operate normally. Here, the "business management system" refers to a computer system in which a business management program is installed, and the "business management device" also refers to such a computer system. The computer system may be a stand-alone system, may include multiple computers, or may take a form called a so-called "cloud".
[0011] The RPA tool records the operations of the user's business management program to generate the RPA definition information. When generating the RPA definition information, the business management system may further include a search information generation unit that generates the search information by assigning and attaching the identifier to each UI control on the operation screen every time the user points to the UI control.
[0012] According to this, by generating the search information corresponding to the RPA definition information when generating the RPA definition information, the RPA definition information and the search information can be stored in the storage unit, making reuse easier.
[0013] The identifier may be the characters included in the UI control. Also, the identifier may be a coded image associated with the UI control.
[0014] According to this, it can be easily realized to detect the identifier and search for the UI control to be operated. Here, the characters included in the UI control are, for example, the characters of the specific processing content included in buttons such as "Execute Printing" and "Execute Registration" (an example of a UI control in a graphical user interface (GUI)). The coded image associated with the UI control is, for example, a two-dimensional barcode including a QR code (registered trademark) or a color code.
[0015] The search information generation unit generates the search information by capturing an image of the UI control with the identifier attached during the pointing operation. The RPA execution control unit detects an image that matches the captured image of the UI control included in the search information from the operation screen, and executes the process defined by the RPA definition information with the detected UI control as the operation target.
[0016] According to this, even when it is impossible to detect (search for) a UI control by an identifier, the UI control can be detected.
[0017] The RPA definition information includes the first coordinates on the operation screen of the UI control that is the operation target of the RPA tool in the process based on the RPA definition information. The search information includes the second coordinates on the operation screen of the UI control with the identifier attached. When it is determined that the operation target UI control cannot be detected, the RPA execution control unit may add the difference between the first coordinates and the second coordinates to the moving distance of the pointer that points to the UI control in the process defined by the RPA definition information.
[0018] According to this, even when the coordinates (first coordinates) of the UI control that is the operation target in the RPA definition information and the coordinates (second coordinates) of the UI control detected based on the identifier are different, the UI control can be accurately pointed to by the pointer.
[0019] The storage unit further stores the first display setting of the operation screen of the business management program. When the RPA tool is executed, the RPA execution control unit acquires the second display setting of the operation screen of the business management program, calculates the difference between the first display setting and the second display setting, and may convert the RPA definition information based on the calculated difference.
[0020] According to this, even when the first display setting and the second display setting are different, since the RPA definition information is converted when the RPA tool is executed, the RPA can operate normally.
[0021] Before starting the business management program, the RPA execution control unit may start a test program for acquiring the second display setting and acquire the display setting of the execution screen of the test program as the second display setting.
[0022] As a result, the second display setting acquired in advance before the start of the business management program can be used when the RPA tool is executed, making the operation of the RPA tool more reliable.
[0023] A method for executing a business management program according to another aspect of the present invention is by a business management system in which a business management program for managing a company's business and an RPA (Robotic Process Automation) tool for operating the business management program are installed, store RPA definition information that defines processing using a UI (User Interface) control for the business management program by the RPA tool, store search information including an identifier of the UI control for the RPA tool to search for the UI control to be operated when the RPA tool is executed based on the RPA definition information, when it is determined that the UI control to be operated cannot be detected during the execution of the processing defined by the RPA definition information, detect an identifier that matches the identifier included in the search information from among the identifiers included in or attached to the UI controls on the operation screen of the processing, execute the processing defined by the RPA definition information with the UI control with the detected identifier as the operation target.
[0024] A program according to another aspect of the present invention is in a business management system in which a business management program for managing a company's business and an RPA (Robotic Process Automation) tool for operating the business management program are installed, a step of storing RPA definition information that defines processing using a UI (User Interface) control for the business management program by the RPA tool, Storing search information including an identifier of the UI control for the RPA tool to search for the UI control to be operated when the RPA tool is executed based on the RPA definition information. When it is determined that the UI control to be operated cannot be detected during the execution of the process defined by the RPA definition information, detecting an identifier that matches the identifier included in the search information from among the identifiers included in or attached to the UI controls on the operation screen of the process. Executing the process defined by the RPA definition information with the UI control to which the detected identifier is attached as the operation target. To cause the execution.
Advantages of the Invention
[0025] According to the present invention, it becomes possible to operate RPA that operates a business management program normally even in different business management apparatuses (systems). According to the present invention, it is an advantage that common RPA tools and RPA definition information can be used across different models and operating systems. Also, it is an advantage that the RPA tools can remain in their normal functions.
Brief Description of the Drawings
[0026]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Modes for Carrying Out the Invention
[0027] Hereinafter, embodiments of the present invention will be described with reference to the drawings. The following embodiments are preferred specific examples of the present invention and disclose various preferable technologies, but the technical scope of the present invention is not limited to these aspects.
[0028] [Configuration of Business Management System] FIG. 1 is a configuration diagram of a business management system according to an embodiment of the present invention.
[0029] As shown in the figure, the business management system is constructed within an enterprise and has a business management device 100 (server) and employee business devices 200 (A - E ···), and they are communicably connected by a network 50 (for example, an in-house LAN, etc.).
[0030] The business management system is a business management system that mainly performs business processes of an enterprise such as personnel, employment, and salary. Each business management program 500 such as personnel, employment, and salary is installed in the business device 200 of the employee. That is, the business management program 500 is a software program for managing the business of the enterprise. Of course, business applications required for each business of the employee, such as office suites, browsers, and CAD (Computer-Aided Design), are appropriately stored.
[0031] In addition, an RPA tool 300 and RPA definition information 400 for defining the processing content using the RPA tool 300 are stored in the business device 200 of the employee.
[0032] RPA (Robotic Process Automation) is mainly software that automates tasks that humans perform using a personal computer, and is also called a software robot. In this embodiment, the RPA tool 300 is an off-the-shelf software robot application introduced to automate business processes. In this embodiment, the RPA tool 300 is a software program for operating the business management program 500.
[0033] The business device 200 of the employee is, for example, a desktop-type PC (Personal Computer). The business device 200 of the employee includes, in addition to the desktop-type PC, so-called PDAs (Personal Digital Assistance) such as laptop PCs and tablets.
[0034] [Configuration of Business Management Device and Business Device] Figure 2 is a diagram showing the configuration of the business management device 100 and the business device 200.
[0035] As shown in the figure, the business management device 100 includes a control unit 110 (CPU; Central Processing Unit), a storage unit 120 (a database composed of an HDD (Hard Disk Drive), a RAM (Random Access Memory), a ROM (Read Only Memory), etc.), and a communication interface 150 which is composed of, for example, a NIC (Network Interface Card) or a wireless communication interface and is responsible for communication processing with the business device 200. The business management device 100 may also be equipped with a display device 130 and an input device 140 as appropriate.
[0036] The storage unit 120 stores RPA definition information 400 and search information 450. Details will be described later.
[0037] The business device 200 includes a control unit 210 (CPU), a storage unit 220 (a database composed of an HDD, a RAM, a ROM, etc.), a communication interface 250 which is composed of, for example, a NIC or a wireless communication interface, a display device 230 (such as a liquid crystal display or an organic EL display, etc.), and an input device 240 (such as a mouse or a touch panel, etc.).
[0038] The storage unit 220 stores the above RPA tool 300, a plurality of RPA definition information 400, a plurality of search information 450, and a plurality of business management programs 500 (A, B, ···). Examples of each business management program 500 include an employment management program, an entry management program, a personnel management program, a salary management program, etc. The above RPA definition information 400 is stored for each of the employment management programs and for different operations using each employment management program.
[0039] In addition, the business device 200 has, as functional modules of the control unit 210, an RPA execution control unit 211, a search information generation unit 212, and a display screen comparison unit 213.
[0040] The RPA execution control unit 211 controls the execution of the RPA tool 300 according to the state of the business management program 500 installed in the business device 200.
[0041] The following search information generation unit 212 and display screen comparison unit 213 become functional modules of the control unit 210 when the RPA module 600 (described later with reference to FIG. 3) is executed by the control unit 210.
[0042] When reproducing by the RPA tool 300 of the business management program 500 installed in the business device 200, the display screen comparison unit 213 includes a plurality of two-dimensional barcodes in the capture information of, for example, the login screen of the business device 200, and calculates the difference in coordinates and the difference in scale. The display screen comparison unit 213 generates conversion information 460 based on information such as differences in the display settings of the display device 230, for example, differences in the scale, size, and aspect ratio of the operation screen, and stores it in the storage unit 220.
[0043] The search information generation unit 212 generates search information 450 based on the capture information including the two-dimensional barcode, the calculated difference in coordinates and the difference in scale, information such as screen settings, etc., and stores it in the storage unit 220.
[0044] The business management device 100 and the business device 200 are communicably connected via their respective communication interfaces 150 and 250. As shown in FIG. 1, there are a plurality of business devices 200 connected to the network 50, but the detailed configuration of other business devices 200 is omitted.
[0045] [Explanation of RPA Module] Figure 3 is an explanatory diagram of the information processing flow of the present embodiment. Figure 3 shows the generation and storage of RPA definition information 400, the reading of the RPA definition information 400, and the operation flow of the business management program 500 from the recording of the operation procedure of the business management program 500 by the RPA tool 300 according to the embodiment of the present invention. In Figure 3, the business device 200A is a business device 200 in which the installed RPA tool 300 records the operation procedure of the business management program 500 by the operator. On the other hand, the business device 200B is a business device 200 in which the installed RPA tool 300 executes the recorded operation procedure for the business management program 500.
[0046] In the business device 200A, the RPA tool 300 records the operation status of the business management program 500 of the business device 200A operated by the operator to generate the RPA definition information 400, and saves the generated RPA definition information 400 in the business management device 100 so that the business device 200B can use it. In the business device 200B, the RPA tool 300 reads the RPA definition information 400 stored in the business management device 100, and reproduces the processing of the business management program 500 as it was operated in the business device 200A according to the RPA definition information 400. However, when the display screen comparison unit 213 of the RPA module 600 compares the display settings (first display settings) of the business device 200A and the display settings (second display settings) of the business device 200B and detects a difference in coordinates, when reproducing the operation of the RPA tool 300, the operation is reproduced considering the difference in coordinates.
[0047] The RPA module 600 is provided from the RPA vendor to the business management system side in the form of, for example, an API (Application Programming Interface) or a DLL (Dynamic Link Library). By incorporating and applying the RPA module 600 into the business management system, the RPA vendor can seamlessly operate various programs of the business management system to which the RPA module 600 is similarly applied with the RPA tool 300 regardless of the OS or hardware.
[0048] The RPA module 600, which is part of the business management program 500, functions as a search information generation unit 212 when executed by the control unit 210 in the business device 200A. It generates search information 450 based on capture information including two-dimensional barcodes, the calculated differences in coordinates and scale, information such as screen settings, etc., and stores it in the storage unit 220.
[0049] The RPA module 600, which is part of the business management program 500, also functions as a display screen comparison unit 213 when executed by the control unit 210 in the business device 200B. When reproducing by the RPA tool 300 of the business management program 500 installed in the business device 200B, for example, multiple two-dimensional barcodes are included in the capture information of the login screen of the business device 200, and the differences in coordinates and scale are calculated.
[0050] [Overview of Information Processing in this Embodiment] Next, the operation of the business management system configured as described above will be described. In the following description, the control unit 110 of the business management device 100 and the control unit 210 of the business device 200 will be described as the main operation entities. However, the operation is executed in cooperation with the control program including the RPA tool 300 and the RPA module 600 of the business management device 100 and the business device 200, as well as the business management program 500 and other programs installed in the business device 200.
[0051] As shown in FIG. 3, in this embodiment, two types of information processing are mainly executed. The first is information processing that records the operations of the business management program 500 by the operator using the RPA module 600, and generates and stores the RPA definition information 400, search information 450, and conversion information 460. The business device 200 that records the operations is hereinafter referred to as "business device 200A". The second is information processing that reproduces the operations of the business management program 500 by the operator based on the stored or downloaded RPA definition information 400, search information 450, and conversion information 460 from the business management device 100. The business device 200 that reproduces the operations is hereinafter referred to as "business device 200B".
[0052] FIG. 4 is a flowchart of the recording process by the RPA module 600 according to this embodiment. FIG. 5 is a flowchart of the reproduction process (automatic execution process) by the RPA tool 300 according to this embodiment. FIGS. 6 and 7 are explanatory diagrams of the operating states of the RPA tool 300 according to this embodiment. As an example, the state of operating the employment management program of the employment management application will be described. In this example, a so-called ERP (Enterprise Resources Planning) type business program package that can integrally operate an employment management program, an entrance management program, a salary management program, and other accounting programs and accounting programs (not shown) is shown.
[0053] [Recording Process of Operations of Business Management Program 500] When introducing the ERP type business management program 500 into a company or the like, it is efficient to have the RPA execute the routine operations. In this case, for example, the RPA definition information 400 is created on one business device 200A installed in the general affairs department or the like, distributed to other business devices 200 (for example, business device 200B), and the other business devices 200 reproduce the operations of the business management program 500 for routine operations based on the RPA definition information 400, further improving the business efficiency. The recording process of the operations of the business management program 500 described below is a process for creating the RPA definition information 400 and the corresponding search information 450 and the like.
[0054] The operator activates a new business management program 500 (for example, employment / entry / salary / personnel program) to be executed by the RPA tool 300. In this case, as shown in FIG. 4, first, the control unit 210 of the business device 200 (business device 200A in FIG. 3) receives an operation from the operator to activate the execution / recording of the business management program 500 by the RPA tool 300 (step S101). When the operator enables the business management program 500, the control unit 210 activates the RPA tool 300 (step S102).
[0055] After activating the business management program 500, the control unit 210 acquires data such as the size of the display screen by the RPA module 600 and stores it as conversion information 460 (step S103). The specific recording of the conversion information 460 will be described later.
[0056] First, the control unit 210 records the operator's operations on the business management program until an explicit end operation by the operator is detected (S104 / No) (the loop labeled with the symbols S104 to S110 in FIG. 4).
[0057] Next, the control unit 210 detects a pointing operation on a UI control on the operation screen using a pointing device, such as a click of the mouse cursor (S105). The pointing operations referred to here include various pointing operations such as mouse over, click, double click, and place.
[0058] When a pointing operation is detected, the control unit 210 acquires the coordinates of the pointed UI control (S106).
[0059] Next, the control unit 210 assigns an identifier to the pointed UI control (S107). If the UI control already includes an identifier, S107 can be omitted.
[0060] Next, the control unit 210 captures an image of the UI control to which an identifier has been assigned or that includes an identifier (S108).
[0061] Next, the control unit 210 (search information generation unit 212) generates and records search information 450 based on the coordinates on the operation screen at the location where the pointing operation was performed, the identifier assigned or included, and the captured image of the UI control (S109). Specific recording of the search information 450 will be described later.
[0062] Next, the control unit 210 records the value input by the operator and the details of the pointing operation (such as clicks and double - clicks) as the operations performed by the operator (S110).
[0063] When the end of the RPA is detected (S104 / Yes), the control unit 210 stores the information recorded in S106 and S110 as RPA definition information 400 and the information recorded in S107 and S108 as search information 450 in the storage unit 220 (S111). Next, the control unit 210 stops the RPA tool 300 and ends the recording process of the operations of the business management program 500 (S112).
[0064] As described above, each time the operator performs a pointing operation on the UI control during the generation of the RPA definition information 400 (S105), the control unit 210 assigns an identifier to the UI control (S107) and thereby generates the search information 450 (S109).
[0065] Note that the search information 450 and the conversion information are recorded in the storage unit 220 of the business device 200 during the operation of the business management program 500, and are transmitted to the business management device 100 when the business management program 500 ends. The received business management device 100 records them in the database.
[0066] The processing from S106 to S109 will be described with reference to the operation state explanatory diagram of the RPA tool 300 according to the present embodiment in FIG. 6.
[0067] FIG. 6(A) shows the entire operation screen 2300 displayed on the display device 230 of the business device 200. On the operation screen 2300, there are an RPA tool launch button 2301, a mouse cursor 2303, and a window 2302 of the business management program 500. Although a plurality of UI controls are shown in FIG. 6(A), one of the UI controls 2304 is a UI control associated with a command for instructing the creation of a "weekly work report" in the business management program 500.
[0068] When the mouse cursor 2303 hovers over the UI control 2304 in the window 2302 of the business management program 500 by an operation by the operator, a QR code 2305 (an example of an identifier) is displayed. On the other hand, although no identifier is displayed on the menu 2306, this is because the menu 2306 has not been hovered over by the mouse and does not have focus. Note that the identifier may be a character string included in the UI control 2304 (in FIG. 6, "weekly work report").
[0069] FIG. 6(B) shows a state in which a personal designation dialog 2307 is displayed by a mouse click from the state of (A). Similarly, when the mouse cursor 2303 hovers over the UI control 2308 ("print") in the window 2302 of the business management program 500 by an operation by the operator, a QR code 2309 (an example of an identifier) is displayed.
[0070] When the operator performs an operation of clicking on the UI control 2308 in the state of FIG. 6(B), a weekly work report as shown in FIG. 7 is printed. FIG. 7 is a diagram showing an example of the output in this embodiment.
[0071] FIG. 6(C) shows the right end of the personal designation dialog 2307, following the state of (B). Similarly, when the mouse cursor 2303 mouseovers the UI control 2310 ("End") in the window 2302 of the business management program 500 by an operation by the operator, a QR code 2311 (an example of an identifier) is displayed. Although there is no screen transition between (B) and (C), the control unit 210 detects the pointing operation and records the pointed coordinates, the identifier of the pointed UI control, the captured image of the UI control, and the details of the pointing operation.
[0072] As described above, the control unit 210 monitors the movement of the pointing device. Also, the captured image may include a QR code attached to the control. Further, the operations performed by the operator may also include values input by the operator.
[0073] [Reproduction Process of Operations of Business Management Program 500] Next, the flow of the reproduction process will be described. The reproduction process of operations is also referred to as the automatic execution process of the business management program 500. This process is a process in which the business device 200B executes RPA based on the RPA definition information 400 created in the business device 200A.
[0074] As shown in FIG. 5, first, the control unit 210 of the business device 200B receives an operation from the operator to start the execution / reproduction of the business management program 500 by the RPA tool 300 (step S201). The operation is, for example, the click of the RPA tool start button 2301 by the operator. The control unit 210 starts the RPA tool 300 and reads the RPA definition information 400 read from the storage unit 220 or acquired by downloading from the business management device 100 (step S202).
[0075] Based on the read RPA definition information 400, the RPA tool 300 starts to prepare for starting the business management program 500 and reproducing the operations (step S203).
[0076] The RPA execution control unit 211 formed in the control unit 210 by the business management program 500 started by the RPA tool 300 and the built-in RPA module 600 reads the conversion information 460, one or more pieces of RPA definition information 400, and the search information 450 associated with the RPA definition information 400 (S204).
[0077] Next, the RPA execution control unit 211 generates a conversion table based on the display settings of the business device 200A and the business device 200B that record the RPA definition information 400 based on the conversion information 460, and converts the RPA definition information 400 using the conversion table (S205). In this process, for example, the coordinates of the UI controls in the RPA definition information 400 are converted.
[0078] In the subsequent processing, one or more pieces of RPA definition information 400 are sequentially processed in order.
[0079] First, the control unit 210 determines whether there is a conversion of the RPA definition information 400 by the conversion information 460 in S205 (S206). If there is a conversion of the RPA definition information 400, since there is a difference in the display screen, the control unit 210 operates in a mode of converting all graphical user interface operations such as pointing operations based on the conversion information 460 (S207). On the other hand, if there is no conversion of the RPA definition information 400, since there is no difference in the display screen, the control unit 210 operates all graphical user interface operations such as pointing operations in the normal mode (S208).
[0080] Subsequently, the control unit 210 determines whether there is any unprocessed RPA definition information 400 (S209). If there is unprocessed RPA definition information 400, the RPA definition information 400 is set as the RPA definition information 400 being processed.
[0081] Subsequently, the control unit 210 determines whether the business management program 500 can be detected (S210). If it cannot be detected, the process is interrupted as an error.
[0082] Subsequently, the control unit 210 determines whether the UI control to be operated can be detected at the coordinates included in the information defined in the running RPA definition information 400 (S211). If it can be detected, the control unit 210 (RPA tool 300) executes the operation process defined for the detected UI control (S212).
[0083] Here, when the control unit 210 determines that the UI control to be operated cannot be detected, it searches for the UI control. Specifically, the control unit 210 detects an identifier that matches the identifier included in the search information 450 corresponding to this RPA definition information 400 from among the identifiers included in the UI controls on the operation screen being processed or attached to the UI controls (S213).
[0084] If an identifier that matches the identifier included in the search information 450 can be detected from among the identifiers of the UI controls on the operation screen (S213 / Yes), the operation process defined for the UI control with the detected identifier is executed (S212).
[0085] If an identifier that matches the identifier included in the search information 450 cannot be detected from among the identifiers of the UI controls on the operation screen (S213 / No), the control unit 210 detects an image that matches the captured image of the UI control to be operated included in the search information 450 within the operation screen (S214). If it can be detected thereby, the operation process defined for the UI control of the detected image is executed (S212). If it cannot be detected, the process returns to S206.
[0086] Here, in the execution of the operation process for the detected UI control (S212), the control unit 210 (RPA execution control unit 211) processes by adding the difference between the position (second coordinate) of the UI control in the search information 450 and the first coordinate to the movement distance to the position (first coordinate) of the UI control defined in the RPA definition information 400. The RPA definition information 400 includes the first coordinate on the operation screen of the UI control that is the operation target of the RPA tool in the process based on the RPA definition information. The search information 450 includes the second coordinate on the operation screen of the UI control with an identifier attached.
[0087] After the control unit 210 processes the one or more RPA definition information 400 in order (S209 / No), it stops the RPA tool 300 and ends the process (S215). Through this series of processes, an employment weekly report as shown in FIG. 7 is automatically printed and output by the business management program 500. The only operation performed by the operator is to click the RPA tool start button 2301.
[0088] [Regarding RPA definition information 400) FIG. 8 is an example of the RPA definition information 400. The RPA tool 300 recognizes the control on the display screen operated by the operator in the business device 200 and records and saves the coordinates and operation contents (operations, input contents, etc.). Also, when the RPA tool 300 reproduces the business management program 500 in the business device 200, it uses the coordinates saved in the RPA definition information 400 to detect the desired control on the display screen and reproduces the operator's operation according to the saved operation contents.
[0089] As shown in FIG. 8, the RPA definition information 400 includes a sequence number (order of operation process), operation target program, operation contents, UI control to be operated, input contents (such as numerical values), X coordinate of the UI control to be operated, Y coordinate, and an explanation of the operation.
[0090] [Regarding search information 450] Figure 9 shows an example of search information 450. First, when the operator operates the business management program 500, the RPA module 600 incorporated in the business management program 500 assigns a QR code to the control on the operated screen display, causes it to be displayed, further captures and records the screen display, and saves it in the search information 450 together with the coordinates. Note that the coordinates are used as reference values of the coordinates when the size of the display screen is based on VGA, for example.
[0091] Also, when reproducing the operation of the business management program 500 using the RPA tool 300 in the business device 200B (here, as in FIG. 3, the operation recording side is "business device 200A" and the operation reproduction side is "business device 200B"), the RPA module 600 incorporated in the business management program 500 operated by the RPA tool 300 reads the search information 450, reads the first control saved in the search information 450, searches for the read control from the display screen of the business device 2 to identify the position, calculates the difference between the screens of the business device 200A and the business device 200B from the coordinates, and thereafter, every time the mouse cursor is moved to the UI control on the display screen in the reproduction operation of the business management program 500 by the RPA tool 300, moves while reflecting the calculated difference.
[0092] As shown in FIG. 9, the search information 450 includes a sequence number (order of operation processing), an operation target program, operation content, a UI control of the operation target, a captured image of the UI control, the X coordinate of the UI control of the operation target, the Y coordinate, and an explanation of the operation.
[0093] [Regarding conversion information 460] Figure 10 shows an example of conversion information 460. First, when the operator operates the business management program 500 on the business device 200A (here, as in FIG. 3, the operation recording side is "business device 200A" and the operation reproduction side is "business device 200B"), the RPA module 600 incorporated in the business management program 500 measures and saves the size of the operated screen display. For example, when the size of the display screen is VGA, it becomes 1.0 when compared with the standard VGA.
[0094] Also, when reproducing the operation of the business management program 500 using the RPA tool 300 in the business device 200B, the RPA module 600 incorporated in the business management program 500 operated by the RPA tool 300 measures and stores the size of the operated screen display. For example, when the size of the display screen is XGA, it becomes 1.6 as compared with the business device 200 (reference VGA) on the operation recording side.
[0095] [Effects of the Embodiment] As described above, according to this business management system, even when the UI control of the operation target cannot be detected during the operation of the business management program 500 by the RPA tool 300, the UI control can be searched by detecting the identifier included in or associated with the UI control, and thereby the RPA can operate normally.
[0096] In addition, the advantage of this example is that common RPA tools and RPA definition information can be used across different models and operating systems. Also, it is an advantage that the RPA tool can remain in its normal function.
[0097] The RPA tool 300 in this example performs the printing process of the weekly work report performed by the operator. Regardless of the operating system or hardware of the business device used, the printing process can be performed using the RPA definition information 400 created by the RPA tool 300 by the operator's operation. Therefore, according to the present embodiment, it is easy to introduce and utilize the RPA tool 300 for the business management system, and the business efficiency can be improved.
[0098] The RPA tool 300 in this example records the operations of the operator's business management program 500 and generates the RPA definition information 400. The business device 200A (here, as in FIG. 3, the operation recording side is the "business device 200A" and the operation reproduction side is the "business device 200B") is equipped with a search information generation unit 212 that generates search information 450 by assigning an identifier to each UI control on the operation screen every time the operator points at the UI control during the generation of the RPA definition information 400.
[0099] According to this, by generating the search information 450 corresponding to the RPA definition information 400 during the generation of the RPA definition information 400, the RPA definition information 400 and the search information 450 can be stored in the storage unit 220, making reuse easier.
[0100] The search information generation unit 212 in this example generates the search information 450 by capturing an image of the UI control with an identifier attached during the pointing operation. The RPA execution control unit 211 detects an image that matches the captured image of the UI control included in the search information 450 from the operation screen, and executes the process defined by the RPA definition information 400 with the detected UI control as the operation target.
[0101] According to this, even when the UI control cannot be detected (searched) by the identifier, the UI control can be detected.
[0102] The storage unit 220 in this example further stores the first display setting of the operation screen of the business management program 500 (this first display setting is the display setting of the operation screen of the business device 200A). The RPA execution control unit 211 acquires the second display setting (the display setting of the operation screen of the business device 200B) of the operation screen of the business management program 500 during the execution of the RPA tool 300, calculates the difference between the first display setting and the second display setting, and converts the RPA definition information based on the calculated difference.
[0103] Thus, even when the first display setting and the second display setting are different, since the RPA definition information is converted at the time of execution of the RPA tool, the RPA can operate normally.
[0104] The RPA definition information 400 in this example includes the first coordinates on the operation screen of the UI control that is the operation target of the RPA tool in the process based on the RPA definition information, and the search information 450 includes the second coordinates on the operation screen of the UI control with an identifier. Further, when it is determined that the UI control that is the operation target cannot be detected, the RPA execution control unit 211 adds the difference between the first coordinates and the second coordinates to the moving distance of the pointer that points to the UI control in the process defined by the RPA definition information 400.
[0105] Thus, even when the coordinates (first coordinates) of the UI control that is the operation target in the RPA definition information 400 and the coordinates (second coordinates) of the UI control detected based on the identifier are different, the UI control can be accurately pointed by the pointer.
[0106] [Modification Example] The embodiments described above can be variously modified.
[0107] Modification Example 1: In the above embodiment, a two-dimensional barcode was shown as the identifier of the UI control. Also, it was shown that characters such as "Execute Printing" and "End" included in the UI control may be used. Thus, although the above embodiment is an example of the RPA definition information 400 of a screen with a unique QR code, a color code or characters may be used instead of the two-dimensional barcode. The color code may be stealthified so that the difference from the surrounding color is reduced and it can be identified by the RPA module 600 but not by humans. Encoded images such as color codes and two-dimensional barcodes can also be used as the "identifier" associated with the UI control in the present disclosure.
[0108] According to this, it is possible to easily realize detecting an identifier and searching for a UI control to be operated.
[0109] Modification Example 2: In the above embodiment, in the business device 200B, when reproducing the operation of the business management program 500 using the RPA tool 300, the RPA module 600 incorporated in the business management program 500 operated by the RPA tool 300 reads the search information 450, reads the first UI control stored in the search information 450, searches for the read UI control from the display screen of the business device 200B to identify its position, calculates the difference between the screens of the business devices 200A and 200B from the coordinates, and thereafter, every time the mouse cursor is moved to a UI control on the display screen in the reproduction operation of the business management program 500 by the RPA tool 300, the calculated difference is reflected and the cursor is moved.
[0110] However, when reproducing the operation of the business management program 500 using the RPA tool 300 in the business device 200B, the RPA module 600 incorporated in the business management program 500 operated by the RPA tool 300 reads the search information 450, for the UI controls stored in the read search information 450, a QR code may be assigned and fully displayed on the display screen of the business device, the coordinates of each UI control are calculated and stored in the RPA definition information 400 of the business device 200B, and the RPA tool 300 may be configured to read this again and reproduce it. FIG. 11(A) is an example of a display screen in the case of full display.
[0111] According to this, since the coordinates of the UI controls are stored in the RPA definition information 400 in advance, reliable operation becomes possible. Further, as shown in FIG. 11(B), for example, even when the layout of the controls on the display screen of the business device 200A is different due to a difference in the OS, it is still effective. FIG. 11(B) is an example of the display screen of the business device 200A that provides the same function as FIG. 11(A) but has a different display layout.
[0112] Modification Example 3: In the above embodiment, as shown in FIG. 3, the display settings of the business device 200A are also used in the business device 200B to generate the conversion information 460. Alternatively, the conversion information 460 may be generated in advance by the business management device 100. FIG. 12 shows the flow in this case. Further, FIG. 13(A) shows an example of an operation screen 2300 including a login screen 1302 for acquiring conversion information by the following image matching. In FIG. 13(A), an operation screen 1301 of the business management program 500 is shown together with an RPA tool start button 2301 in the operation screen 2300, and a login screen 1302 is shown in the operation screen 1301.
[0113] In this case, for example, when the business management program 500 is operated on the business device 200A, a plurality of QR codes are included in the login screen 1302 in the operation screen 1301 of the business management program 500, captured and recorded. Also, when the business management program 500 is reproduced on the business device 200B, a plurality of QR codes are included in the login screen 1302 of the business management program 500, captured, and the differences in coordinates and scale with the recorded business device 200A are calculated by image matching, recorded in the conversion information, and reflected in the operation of the mouse cursor when the RPA tool 300 performs a reproduction operation. In the reproduction operation of the RPA tool 300, if a desired control is lost, the RPA module 600 detects this, the RPA module 600 acquires a QR code from the captured image of the search information 450, displays the QR code by mouse-over on the display screen, searches, and when the coordinates are specified, it is reflected in the operation of the mouse cursor.
[0114] According to this, it becomes unnecessary to execute a reproduction process based on the display settings of the business device 200A.
[0115] Modification Example 4: In the above-described embodiment, a method for acquiring conversion information in advance is not disclosed. Therefore, for example, when operating the business management program 500, a trial program may be launched to acquire information on the screen size that serves as the basis for measuring the degree of contraction of the screen of each PC. FIG. 13(B) shows an example of the screen of the trial program (windows 1305 and 1306 of the trial program). Note that the windows 1305 and 1306 in FIG. 13(B) are different screen display examples depending on the operating system.
[0116] When reproducing the business management program 500 on the business device 200B, a trial program is launched on the business device 200B, information on the screen size of the business device 200B is recorded, compared with the information on the screen size of the business device 200A, the differences in coordinates and scales are calculated and saved in the conversion information. When the RPA tool 300 performs a reproduction operation, the RPA module 600 reflects the conversion information in the operation of the mouse cursor. Although the information on the screen size is not shown, for example, it is the number of pixels per display screen of the business device 200 and the screen aspect ratio.
[0117] According to this, generation of conversion information can be made possible in advance, resulting in light processing, and even a business device 200 with low performance can reliably execute the processing.
[0118] Modification Example 5: In the above-described embodiment, the RPA module 600 that creates the conversion information 460 is incorporated into the business management program 500 of some business devices 200. Since the conversion information 460 can be commonly used in business devices with the same OS and hardware environment, for example, a function for creating conversion information may be incorporated into the business management program 500 of the business device 200 used by the administrator, and the business management program 500 of the business device 200 used by a general operator may not include a function for creating conversion information. In this case, the business device 200 used by the operator reads the conversion information 460 stored in the business management device 100 and having the same environment as the business device 200, and the RPA tool 300 performs a reproduction operation.
[0119] As a result, the conversion information can be reused, enabling efficient operation of the system. Also, the conversion information can be used in the reproduction of other business management programs 500 (personnel, employment, salary, etc.).
[0120] Other variations: In the above embodiment, the RPA execution control unit 211, the search information generation unit 212, and the display screen comparison unit, which are functionally configured in the control unit 210, are configured by the RPA tool 300 in the case of the RPA execution control unit 211, and are configured by the RPA module 600 in the case of the search information generation unit 212 and the display screen comparison unit. However, it is not limited to this, and the function of the RPA execution control unit 211 may be configured by the RPA module 600, or may be configured by other software programs. Similarly, for the search information generation unit 212 and the display screen comparison unit, they may be configured by the RPA tool 300, or may be configured by other software programs.
Industrial Applicability
[0121] The technology of the present invention can be suitably used in a business management system for performing business processes of enterprises such as personnel, employment, and salary.
[0122] Further, the present invention can be appropriately modified within the scope not contrary to the gist or idea of the invention that can be read from the claims and the entire specification, and a business management system and a computer program involving such modifications are also included in the technical idea of the present invention.
Explanation of Reference Numerals
[0123] 100... Business management device 200... Business device 210... Control unit 211... RPA execution control unit 212... Search information generation unit 213... Display screen comparison unit 220... Storage unit 300... RPA tool 400... RPA definition information 450…Search Information 460…Conversion Information 500…Business Management Program 600…RPA Module 2304…UI Control
Claims
1. A business management program for managing the operations of an enterprise, an RPA (Robotic Process Automation) tool for operating the business management program, RPA definition information defining processing using UI (User Interface) controls for the business management program by the RPA tool, search information including identifiers of the UI controls for the RPA tool to search for UI controls to be operated by the RPA tool when the RPA tool is executed based on the RPA definition information, a storage unit for storing, when it is determined during execution of the processing defined by the RPA definition information that the UI control to be operated cannot be detected, detecting an identifier that matches the identifier included in the search information from among the identifiers included in or attached to the UI controls on the operation screen of the processing, executing the processing defined by the RPA definition information with the UI control with the detected identifier as the operation target an RPA execution control unit, comprising, and further, the RPA tool records operations on the user's business management program to generate the RPA definition information, the business management system, when generating the RPA definition information, further comprises a search information generation unit that generates the search information by assigning and attaching the identifier to each UI control on the operation screen every time the user performs a pointing operation on the UI control, a business management system.
2. The business management system according to claim 1, wherein the identifier is a character included in the UI control a business management system.
3. The business management system according to claim 1, wherein the identifier is a coded image associated with the UI control a business management system.
4. The business management system according to any one of claims 1 to 3, wherein the search information generation unit generates the search information by capturing an image of the UI control with the identifier attached during the pointing operation, the RPA execution control unit detects an image that matches the captured image of the UI control included in the search information from the operation screen, and executes the processing defined by the RPA definition information with the UI control of the detected image as the operation target a business management system.
5. The business management system according to any one of claims 1 to 4, wherein the RPA definition information includes the first coordinates on the operation screen of the UI control that is the operation target of the RPA tool in the process based on the RPA definition information, the search information includes the second coordinates on the operation screen of the UI control with the identifier attached, when it is determined that the UI control to be operated cannot be detected, the RPA execution control unit adds the difference between the first coordinates and the second coordinates to the moving distance of the pointer that points to the UI control in the process defined by the RPA definition information Business management system.
6. The business management system according to any one of claims 1 to 5, wherein the storage unit further stores a first display setting of the operation screen of the business management program, when the RPA tool is executed, the RPA execution control unit acquires a second display setting of the operation screen of the business management program, calculates the difference between the first display setting and the second display setting, and converts the RPA definition information based on the calculated difference Business management system.
7. The business management system according to claim 6, wherein before starting the business management program, the RPA execution control unit starts a test program for acquiring the second display setting, and acquires the display setting of the execution screen of the test program as the second display setting Business management system.
8. A business management program execution method executed by a business management system in which a business management program for managing a company's business and an RPA (Robotic Process Automation) tool for operating the business management program are installed, comprising: storing RPA definition information; storing search information including the RPA definition information defines a process using a UI (User Interface) control for the business management program by the RPA tool, and is generated by the RPA tool recording the operation of the user's business management program, the search information includes an identifier of the UI control for the RPA tool to search for the UI control to be operated when the RPA tool based on the RPA definition information is executed, furthermore, When it is determined that the UI control of the operation target cannot be detected during the execution of the process defined by the RPA definition information, detecting an identifier that matches the identifier included in the search information from among the identifiers included in or attached to the UI controls on the operation screen of the process; Executing the process defined by the RPA definition information with the UI control to which the detected identifier is attached as the operation target including furthermore When generating the RPA definition information, generating the search information by allocating and attaching the identifier to each UI control on the operation screen every time the user performs a pointing operation on the UI control including A method for executing a business management program.
9. In a business management system in which a business management program for managing a company's business and an RPA (Robotic Process Automation) tool for operating the business management program are installed, storing RPA definition information; storing search information to be executed, The RPA definition information defines a process using a UI (User Interface) control for the business management program by the RPA tool, and is configured to be generated by the RPA tool recording the operation of the user's business management program. The search information is configured to include an identifier of the UI control for the RPA tool to search for the UI control of the operation target when the RPA tool is executed based on the RPA definition information. furthermore When it is determined that the UI control of the operation target cannot be detected during the execution of the process defined by the RPA definition information, detecting an identifier that matches the identifier included in the search information from among the identifiers included in or attached to the UI controls on the operation screen of the process; Executing the process defined by the RPA definition information with the UI control to which the detected identifier is attached as the operation target to be executed, furthermore When generating the RPA definition information, generating the search information by allocating and attaching the identifier to each UI control on the operation screen every time the user performs a pointing operation on the UI control A program to be executed.
Citation Information
Patent Citations
Information processing device and program
JP2018206288A
Management system, terminal device, management device, management method, and program
JP2019168945A
Energy management computer, and remote management system
JP2020043701A
Multi-anchor based extraction, recognition and machine learning of user interface (UI)
JP2021018820A