JP2023054409A - Automation program generation apparatus, automation program generation method, automation program generation program, computer-readable recording medium, and recorded device - Google Patents

Automation program generation apparatus, automation program generation method, automation program generation program, computer-readable recording medium, and recorded device Download PDF

Info

Publication number
JP2023054409A
JP2023054409A JP2021163225A JP2021163225A JP2023054409A JP 2023054409 A JP2023054409 A JP 2023054409A JP 2021163225 A JP2021163225 A JP 2021163225A JP 2021163225 A JP2021163225 A JP 2021163225A JP 2023054409 A JP2023054409 A JP 2023054409A
Authority
JP
Japan
Prior art keywords
data
unit
application
creating
posting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021163225A
Other languages
Japanese (ja)
Inventor
一挙 木原
Kazunori Kihara
健吾 柳瀬
Kengo Yanase
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Keyence Corp
Original Assignee
Keyence Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Keyence Corp filed Critical Keyence Corp
Priority to JP2021163225A priority Critical patent/JP2023054409A/en
Priority to US17/900,900 priority patent/US20230108676A1/en
Publication of JP2023054409A publication Critical patent/JP2023054409A/en
Pending legal-status Critical Current

Links

Images

Abstract

To reduce an amount of codes to be written by a user, thereby facilitating generation of an automation program.SOLUTION: An automation program generation method for automating operation of transcribing data to a second application serving as a transcription destination, on the basis of the data acquired from a first applications serving as a transcription source includes the steps of: prompting a user to select a first application and a second application, and generating a summary procedure in a summary procedure generation unit; selecting, by an acquisition range designation unit, a range of data to be acquired inthe data in the first application selected in the summary procedure generation unit; holding, in a memory unit, the data in the range set in the acquisition range designation unit, as tabular data in a tabular format; designating a transcription destination to which the data based on the tabular format is to be transcribed, in the second application selected in the summary procedure generation unit; and generating an automation program on the basis of the summary procedure generated in the summary procedure generation unit, the range set in the acquisition range designation unit, and the transcription destination.SELECTED DRAWING: Figure 1

Description

本開示は、自動化プログラム作成装置、自動化プログラム作成方法、自動化プログラム作成プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器に関する。 TECHNICAL FIELD The present disclosure relates to an automated program creation device, an automated program creation method, an automated program creation program, a computer-readable recording medium, and a recording device.

ロボティックプロセスオートメーション(RPA)では、人がコンピュータのデスクトップ環境で行っていた作業をプログラムが実行することにより、人がデスクトップ環境で行っていた作業が自動化される。RPAにおいて作業を実行するプログラムであるRPAプログラムを作成するためには、ユーザがコードを書く必要がある。 Robotic process automation (RPA) automates the work that humans used to do in the desktop environment of a computer by having a program perform the work that humans used to do in the desktop environment. A user must write code to create an RPA program, which is a program that performs work in RPA.

RPAに類似するソリューションとして、オペレータによるストレージ装置の管理業務に代えて、ストレージ装置を管理するシナリオを実行するソリューションが知られている。このようなソリューションにおいては、テンプレートを用いてシナリオ作成を容易にする方法が知られている。特許文献1ではテンプレートに対して変数を埋め込むことによりシナリオが作成されることが開示されている。 As a solution similar to RPA, there is known a solution that executes a scenario for managing a storage device in place of an operator's management work for the storage device. In such a solution, a method is known that uses a template to facilitate scenario creation. Patent Document 1 discloses that a scenario is created by embedding variables in a template.

しかしながら、テンプレートに対して変数を埋め込んで所望のシナリオを生成する手法をRPAプログラムの作成に適用すると、かえってRPAプログラムの作成が困難になる虞がある。通常、ユーザがコンピュータのデスクトップ環境で行う作業は複数のアプリケーションを対象とするため、RPAプログラムにより実行される作業も複数のアプリケーションを対象とする。このため、変数を埋め込むことによってRPAプログラムが生成できるようなテンプレートは、自動化する対象の作業でアプリケーションが使用される順序が反映される必要がある。RPAプログラムを作成する作成者は、自動化する対象の業務について、使用されるアプリケーションの順序と、当該アプリケーションで使用する変数の種類とを正しく理解したうえで、多岐にわたるテンプレートの中から適切なテンプレートを選択する必要があり、プログラム作成に不慣れな者にとって困難であった。 However, if a method of embedding variables in a template to generate a desired scenario is applied to the creation of an RPA program, the creation of the RPA program may rather become difficult. Since the work performed by the user in the desktop environment of the computer usually targets multiple applications, the work performed by the RPA program also targets multiple applications. Therefore, a template that can generate an RPA program by embedding variables needs to reflect the order in which applications are used in tasks to be automated. A creator who creates an RPA program must correctly understand the sequence of applications used and the types of variables used in the application for the task to be automated, and then select an appropriate template from among a wide variety of templates. It was difficult for those unfamiliar with programming because they had to choose.

特開2005-339213号公報JP-A-2005-339213

本開示の目的の一は、テンプレートの数を抑えながら、ユーザが書くコード量を低減した、自動化プログラムの作成を容易に行えるようにした自動化プログラム作成装置、自動化プログラム作成方法、自動化プログラム作成プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器を提供することにある。 One object of the present disclosure is to reduce the number of templates, reduce the amount of code written by the user, and facilitate the creation of an automation program. An object of the present invention is to provide a computer-readable recording medium and a recording device.

本発明の実施形態に係る自動化プログラム作成方法によれば、転記元の第一アプリケーションから取得したデータに基づき、転記先の第二アプリケーションに転記を行う操作を自動化する自動化プログラムの生成方法であって、前記第一アプリケーションと、前記第二アプリケーションと、を選択させ、概略手順作成部で概略手順を作成する工程と、前記概略手順作成部で選択された前記第一アプリケーションのデータの内、取得したい範囲を取得範囲指定部で選択する工程と、前記取得範囲指定部で設定された範囲のデータを、表形式の表データとしてメモリ部に保持する工程と、前記概略手順作成部で選択された前記第二アプリケーションの、前記表データに基づくデータを転記する転記先を指定する工程と、前記概略手順作成部で作成された前記概略手順と、前記取得範囲指定部で設定された範囲と、前記転記先とに基づいて、自動化プログラムを生成する工程とを含むことができる。上記構成により、第一アプリケーションのデータを表形式で第二アプリケーションに転記させるように設定することで、ユーザに対し入力したい所望の範囲を指定し易く、さらに転記されるデータをイメージし易くなり、従来複雑であった自動化プログラムの作成を容易に行える。 According to the automation program creation method according to the embodiment of the present invention, it is a method of generating an automation program that automates the operation of posting to the second application of the transcription destination based on the data acquired from the first application of the transcription source, a step of selecting the first application and the second application, creating a schematic procedure in a schematic procedure creating unit; and acquiring data of the first application selected in the schematic procedure creating unit. a step of selecting a range by an acquisition range specifying unit; a step of storing the data of the range set by the acquisition range specifying unit in a memory unit as table data in tabular format; a step of designating a transcription destination to which data based on the table data of the second application is to be transcribed; the outline procedure created by the outline procedure creating unit; the range set by the acquisition range specifying unit; and generating an automated program based on the above. With the above configuration, by setting the data of the first application to be transferred to the second application in tabular form, it becomes easier for the user to specify the desired range to be input, and to visualize the data to be transferred. Automation programs, which were conventionally complicated, can now be created easily.

本発明の実施形態に係る自動化プログラム作成プログラムによれば、転記元の第一アプリケーションから取得したデータに基づき、転記先の第二アプリケーションに転記を行う操作を自動化する自動化プログラムを生成する自動化プログラム作成プログラムであって、前記第一アプリケーションと、前記第二アプリケーションと、を選択させ、概略手順作成部で概略手順を作成する機能と、前記概略手順作成部で選択された前記第一アプリケーションのデータの内、取得したい範囲を取得範囲指定部で選択する機能と、前記取得範囲指定部で設定された範囲のデータを、表形式の表データとしてメモリ部に保持する機能と、前記概略手順作成部で選択された前記第二アプリケーションの、前記表データに基づくデータを転記する転記先を指定する機能と、前記概略手順作成部で作成された前記概略手順と、前記取得範囲指定部で設定された範囲と、前記転記先とに基づいて、自動化プログラムを生成する機能とをコンピュータに実現させることができる。上記構成により、第一アプリケーションのデータを表形式で第二アプリケーションに転記させるように設定することで、ユーザに対し入力したい所望の範囲を指定し易く、さらに転記されるデータをイメージし易くなり、従来複雑であった自動化プログラムの作成を容易に行える。 According to the automation program creation program according to the embodiment of the present invention, an automation program is created for generating an automation program for automating the operation of posting to the second application of the transcription destination based on the data acquired from the first application of the transcription source. A program having a function of allowing the first application and the second application to be selected, creating a general procedure in a general procedure creating unit, and generating data of the first application selected in the general procedure creating unit. Among them, a function of selecting the range to be acquired by the acquisition range specifying part, a function of storing the data of the range set by the acquisition range specifying part in the memory part as tabular table data, and the outline procedure creating part The selected second application has a function of specifying a posting destination to which data based on the table data is to be posted, the outline procedure created by the outline procedure creating unit, and the range set by the acquisition range specifying unit. and a function of generating an automated program based on the transcription destination. With the above configuration, by setting the data of the first application to be transferred to the second application in tabular form, it becomes easier for the user to specify the desired range to be input, and to visualize the data to be transferred. Automation programs, which were conventionally complicated, can now be created easily.

さらにまた、本発明の実施形態に係るコンピュータで読み取り可能な記録媒体又は記憶した機器は、上記プログラムを格納する媒体又は該プログラムを記憶した機器である。記録媒体には、CD-ROM、CD-R、CD-RWやフレキシブルディスク、磁気テープ、MO、DVD-ROM、DVD-RAM、DVD-R、DVD+R、DVD-RW、DVD+RW、Blu-ray(商品名)、UHD BD(商品名)、HD DVD(AOD:商品名)等の磁気ディスク、光ディスク、光磁気ディスク、半導体メモリその他のプログラムを格納可能な媒体が含まれる。またプログラムには、上記記録媒体に格納されて配布されるものの他、インターネット等のネットワーク回線を通じてダウンロードによって配布される形態のものも含まれる。さらに記憶した機器には、上記プログラムがソフトウェアやファームウェア等の形態で実行可能な状態に実装された汎用もしくは専用機器を含む。さらにまたプログラムに含まれる各処理や機能は、コンピュータで実行可能なプログラムソフトウエアにより実行してもよいし、各部の処理を所定のゲートアレイ(FPGA、ASIC)等のハードウエア、又はプログラムソフトウエアとハードウェアの一部の要素を実現する部分的ハードウエアモジュールとが混在する形式で実現してもよい。また本明細書においてコンピュータで読み取り可能な記録媒体は、非一過性で有形の媒体、又は一過性の伝搬信号を含む。 Furthermore, a computer-readable recording medium or a device that stores the program according to the embodiment of the present invention is a medium that stores the program or a device that stores the program. Recording media include CD-ROM, CD-R, CD-RW, flexible disc, magnetic tape, MO, DVD-ROM, DVD-RAM, DVD-R, DVD+R, DVD-RW, DVD+RW, Blu-ray (product name), UHD BD (trade name), HD DVD (AOD: trade name), magnetic disks, optical disks, magneto-optical disks, semiconductor memories, and other media capable of storing programs. In addition to the programs that are stored in the recording medium and distributed, the programs also include those that are distributed by downloading through a network line such as the Internet. Further, the stored device includes general-purpose or dedicated device in which the above program is implemented in the form of software, firmware, or the like in an executable state. Furthermore, each process and function included in the program may be executed by computer-executable program software. and a partial hardware module that implements a part of hardware elements may be mixed. Computer-readable recording media, as used herein, also includes non-transitory tangible media or transient propagated signals.

本発明の実施形態に係る自動化プログラム作成装置によれば、転記元の第一アプリケーションから取得したデータに基づき、転記先の第二アプリケーションに転記を行う操作を自動化する自動化プログラム作成装置であって、前記第一アプリケーションと、前記第二アプリケーションとを選択させ、概略手順を作成するための概略手順作成部と、前記概略手順作成部で選択された前記第一アプリケーションのデータの内、取得したい範囲を選択するための取得範囲指定部と、前記取得範囲指定部で設定された範囲のデータを、表形式の表データとして保持するメモリ部と、前記概略手順作成部で選択された前記第二アプリケーションの、前記表データに基づくデータを転記する転記先を指定する転記先指定部と、前記概略手順作成部で作成された前記概略手順と、前記取得範囲指定部で設定された範囲と、前記転記先指定部で指定された転記先とに基づいて、自動化プログラムを生成する自動化プログラム生成部とを備えることができる。上記構成により、第一アプリケーションのデータを表形式で第二アプリケーションに転記させるように設定することで、ユーザに対し入力したい所望の範囲を指定し易く、さらに転記されるデータをイメージし易くなり、従来複雑であった自動化プログラムの作成を容易に行える。 According to the automated program creation device according to the embodiment of the present invention, the automated program creation device automates the operation of transcribing to the second application of the transcription destination based on the data acquired from the first application of the transcription source, an outline procedure creating unit for selecting the first application and the second application and creating an outline procedure; an acquisition range designation unit for selection; a memory unit that holds the data in the range set by the acquisition range designation unit as table data in table format; , a posting destination specifying unit for specifying a posting destination to which data based on the table data is posted; the outline procedure created by the outline procedure creating unit; the range set by the acquisition range specifying unit; and an automation program generation unit that generates an automation program based on the transcription destination designated by the designation unit. With the above configuration, by setting the data of the first application to be transferred to the second application in tabular form, it becomes easier for the user to specify the desired range to be input, and to visualize the data to be transferred. Automation programs, which were conventionally complicated, can now be created easily.

本発明の実施形態に係る自動化プログラム作成装置によれば、転記元の第一アプリケーションから取得したデータに基づき、転記先の第二アプリケーションに転記を行う操作を自動化する自動化プログラム作成装置であって、前記第一アプリケーションからの前記データの取得動作と、前記第二アプリケーションへの前記データの転記動作を、選択させ、前記選択された前記第一アプリケーションの任意のデータファイルに含まれるデータの内、取得したい範囲を選択させ、前記選択された範囲のデータを、表形式の取得元データとして、前記第二アプリケーションに転記するデータ転記単位を設定させ、前記設定されたデータ転記単位に基づいて、前記選択された前記第二アプリケーションに転記される転記データを表示させ、前記選択された前記第一アプリケーションの、前記設定された範囲の表形式の取得元データを、前記設定されたデータ転記単位に基づいて、前記選択された前記第二アプリケーションに転記する自動化プログラムを生成するプロセッサ部と、前記設定された前記表形式の取得元データを表データとして保持するメモリ部とを備えることができる。上記構成により、第一アプリケーションのデータを表形式で第二アプリケーションに転記させるように設定することで、ユーザに対し入力したい所望の範囲を指定し易く、さらに転記されるデータをイメージし易くなり、従来複雑であった自動化プログラムの作成を容易に行える。 According to the automated program creation device according to the embodiment of the present invention, the automated program creation device automates the operation of transcribing to the second application of the transcription destination based on the data acquired from the first application of the transcription source, selecting an operation of acquiring the data from the first application and an operation of posting the data to the second application, and acquiring data included in an arbitrary data file of the selected first application; the data in the selected range to be transferred to the second application as source data in a tabular format; and setting the data posting unit for posting to the second application, and based on the set data posting unit, the selection is performed. display the transcription data to be transcribed to the selected second application, and display the acquisition source data of the selected first application in tabular form within the set range based on the set data transcription unit , a processor section for generating an automated program to be transferred to the selected second application; and a memory section for holding the set acquisition source data in tabular form as tabular data. With the above configuration, by setting the data of the first application to be transferred to the second application in tabular form, it becomes easier for the user to specify the desired range to be input, and to visualize the data to be transferred. Automation programs, which were conventionally complicated, can now be created easily.

本開示の一形態によれば、テンプレートの数を抑えながら、ユーザが書くコード量を低減して、自動化プログラムの作成を容易にすることができる。 According to one aspect of the present disclosure, it is possible to reduce the amount of code written by a user while suppressing the number of templates, thereby facilitating creation of an automation program.

自動化したい一連の作業を示す模式図である。FIG. 2 is a schematic diagram showing a series of tasks to be automated; 本発明の一実施形態に係る自動化プログラム作成装置のハードウェア構成を示すブロック図である。1 is a block diagram showing the hardware configuration of an automation program creation device according to one embodiment of the present invention; FIG. 図2のプロセッサ部の機能ブロック図である。3 is a functional block diagram of a processor unit in FIG. 2; FIG. 本発明の一実施形態に係る自動化プログラム作成プログラムのソフトウェア構成を示すブロック図である。It is a block diagram showing the software configuration of the automation program creation program according to one embodiment of the present invention. 自動化プログラム作成プログラムと、表計算ソフトとのやりとりを示す模式図である。It is a schematic diagram which shows the exchange with an automation program creation program and spreadsheet software. 自動化プログラム作成プログラムと、Webブラウザとのやりとりを示す模式図である。FIG. 4 is a schematic diagram showing interaction between an automation program creation program and a web browser; 自動化プログラム作成プログラムと、自動化対象ソフトとのやりとりの一例を示す模式図である。FIG. 4 is a schematic diagram showing an example of interaction between an automation program creation program and automation target software; RPAソフトを用いて自動化プログラムを作成する手順を示すフローチャートである。It is a flowchart which shows the procedure which creates an automation program using RPA software. 概略手順作成画面を示す模式図である。FIG. 11 is a schematic diagram showing a schematic procedure creation screen; 表計算ソフト取込詳細設定を行う手順を示すフローチャートである。10 is a flow chart showing a procedure for making detailed settings for importing spreadsheet software. 表計算ソフト取得範囲指定画面を示す模式図である。FIG. 4 is a schematic diagram showing a spreadsheet software acquisition range specification screen; 転記設定の手順を示すフローチャートである。10 is a flow chart showing a procedure of posting setting; 一般転記詳細設定画面を示す模式図である。It is a schematic diagram which shows a general posting detail setting screen. 操作レコード画面の一例を示す模式図である。It is a schematic diagram which shows an example of an operation record screen. アクティビティ一覧画面を示す模式図である。FIG. 4 is a schematic diagram showing an activity list screen; 操作レコード画面を設定する画面を示す模式図である。It is a schematic diagram which shows the screen which sets an operation record screen. 表データ転記出力詳細設定画面の一例を示す模式図である。It is a schematic diagram which shows an example of a tabular data transcription output detail setting screen. 図17で表の左上端のセルを選択した状態を示す模式図である。FIG. 18 is a schematic diagram showing a state in which the upper left cell of the table is selected in FIG. 17; 列名選択肢が表示された状態を示す模式図である。FIG. 10 is a schematic diagram showing a state in which column name options are displayed; 表ナビ画面を示す模式図である。It is a schematic diagram which shows a table|surface navigation screen. 表操作画面を示す模式図である。FIG. 4 is a schematic diagram showing a table operation screen; 図22Aは経費一覧表、図22Bは新たに生成された表の一例を示す模式図である。FIG. 22A is an expense list, and FIG. 22B is a schematic diagram showing an example of a newly generated table. 結合対象の表を示す模式図である。FIG. 10 is a schematic diagram showing a table to be combined; 図23の表を「客先コード」で結合させた表である。It is a table obtained by connecting the table of FIG. 23 by "customer code". 縦積み対象の表を示す模式図である。It is a schematic diagram which shows the table|surface of vertical stacking|stacking object. 図25の表を表縦積み機能でまとめた表である。FIG. 26 is a table obtained by summarizing the table of FIG. 25 by the vertical stacking function. 図23の表を表縦積み機能でまとめた表である。FIG. 24 is a table obtained by summarizing the table of FIG. 23 by the vertical stacking function. 差分を取る対象となる表を示す模式図である。FIG. 4 is a schematic diagram showing a table from which a difference is taken; 図28の差分を取った表を示す模式図である。FIG. 29 is a schematic diagram showing a table obtained by taking differences in FIG. 28; 図28の共通部分を抜き出した表を示す模式図である。FIG. 29 is a schematic diagram showing a table extracted from common parts of FIG. 28; 対象Webページにおいて、一の記事のタイトルを手動で選択した状態を示す模式図である。FIG. 10 is a schematic diagram showing a state in which the title of one article is manually selected on the target web page; 図31のWebページにおいて、複数の記事のタイトルを自動で選択した状態を示す模式図である。FIG. 32 is a schematic diagram showing a state in which multiple article titles are automatically selected on the Web page of FIG. 31; 出力詳細設定画面の一例を示す模式図である。FIG. 5 is a schematic diagram showing an example of an output detail setting screen; 図33の出力詳細設定画面においてWebスクレイピング抽出プレビュー表示欄で表示されるWebスクレイピング抽出プレビュー表示の例を示す模式図である。FIG. 34 is a schematic diagram showing an example of a web scraping extraction preview display displayed in a web scraping extraction preview display field on the output details setting screen of FIG. 33; Webスクレイピング抽出プレビュー表示の他の例を示す模式図である。FIG. 11 is a schematic diagram showing another example of Web scraping extraction preview display; Web取込詳細設定を行う手順を示すフローチャートの前段である。It is the first part of the flowchart showing the procedure for performing Web capture detailed settings.

以下、本発明の実施の形態を図面に基づいて説明する。ただし、以下に示す実施の形態は、本発明の技術思想を具体化するための自動化プログラム作成装置、自動化プログラム作成方法、自動化プログラム作成プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器を例示するものであって、本発明は自動化プログラム作成装置、自動化プログラム作成方法、自動化プログラム作成プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器を以下のものに特定しない。また、本明細書は特許請求の範囲に示される部材を、実施の形態の部材に特定するものでは決してない。特に実施の形態に記載されている構成部品の寸法、材質、形状、その相対的配置等は特に特定的な記載がない限りは、本発明の範囲をそれのみに限定する趣旨ではなく、単なる説明例にすぎない。なお、各図面が示す部材の大きさや位置関係等は、説明を明確にするため誇張していることがある。さらに以下の説明において、同一の名称、符号については同一もしくは同質の部材を示しており、詳細説明を適宜省略する。さらに、本発明を構成する各要素は、複数の要素を同一の部材で構成して一の部材で複数の要素を兼用する態様としてもよいし、逆に一の部材の機能を複数の部材で分担して実現することもできる。
[実施形態1]
BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described with reference to the drawings. However, the embodiments shown below exemplify an automation program creation device, an automation program creation method, an automation program creation program, a computer-readable recording medium, and a recording device for embodying the technical idea of the present invention. Therefore, the present invention does not specify the automation program creation device, the automation program creation method, the automation program creation program, the computer-readable recording medium, and the recording device as follows. In addition, this specification does not specify the members shown in the claims as the members of the embodiment. Unless otherwise specified, the dimensions, materials, shapes, relative arrangements, etc. of components described in the embodiments are not intended to limit the scope of the present invention, but are merely explanations. Just an example. Note that the sizes and positional relationships of members shown in each drawing may be exaggerated for clarity of explanation. Furthermore, in the following description, the same names and symbols indicate the same or homogeneous members, and detailed description thereof will be omitted as appropriate. Furthermore, each of the elements constituting the present invention may be configured with the same member so that a single member may serve as a plurality of elements, or conversely, the function of one member may be performed by a plurality of members. It can also be realized by sharing.
[Embodiment 1]

自動化プログラム作成装置は、一般にRPA(Robotic Process Automation)と呼ばれる、パソコンのデスクトップ環境でユーザが行っていた作業をプログラムで代替して自動化する自動化プログラムを、ユーザが作成する作業を支援する装置である。図1は、本発明の自動化プログラム作成装置を用いて、任意のファイル中のデータ、もしくはアプリケーション中のデータを、任意のファイルのフォーム、もしくはアプリケーションのフォームに出力する転記作業を実行するRPAプログラムを作成する方法を示す概念図である。図1において左に位置する表計算ソフトSS、WebブラウザWB、及び自動化対象ソフトGSは転記作業で転記されるデータを表示する転記元アプリケーションである。図1において右に位置する表計算ソフトSS、WebブラウザWB、自動化対象ソフトGS、及びメールソフトMSは、転記作業で転記されるデータが出力される転記先アプリケーションである。なお、本実施形態において自動化対象ソフトGSは、デスクトップ環境でユーザが操作可能なアプリケーション全般を示す。例えば、本実施形態における転記元アプリケーションとしての自動化対象ソフトGSは、表計算ソフトSS及びWebブラウザWB以外の、ユーザが操作可能なアプリケーションを示す。また、例えば、本実施形態における転記先アプリケーションとしての自動化対象ソフトGSは、表計算ソフトSS、WebブラウザWB、及びメールソフトMS以外の、ユーザが操作可能なアプリケーションを示す。 An automated program creation device is generally called RPA (Robotic Process Automation), and is a device that assists the user in creating an automated program that replaces and automates the work that the user was doing in the desktop environment of a personal computer with a program. . FIG. 1 shows an RPA program for executing transcription work for outputting data in an arbitrary file or application to an arbitrary file form or application form using the automated program creation device of the present invention. It is a conceptual diagram which shows the method to create. Spreadsheet software SS, Web browser WB, and automation target software GS located on the left in FIG. 1 are transcription source applications that display data to be transcribed in transcription work. The spreadsheet software SS, the web browser WB, the automation target software GS, and the mail software MS located on the right in FIG. In this embodiment, the automation target software GS indicates all applications that can be operated by the user in the desktop environment. For example, the automation target software GS as the transcription source application in this embodiment indicates an application that can be operated by the user other than the spreadsheet software SS and the web browser WB. Further, for example, the automation target software GS as the transcription destination application in this embodiment indicates an application that can be operated by the user other than the spreadsheet software SS, the web browser WB, and the mail software MS.

本実施形態では、転記作業を、転記元アプリケーションからデータを取得し、転記先アプリケーションに出力する作業、と定義する。例えば、表計算ソフトSSのデータファイル中のデータを、同じ表計算ソフトSSの別のデータファイルに転記する転記作業は、図1では、図1中の左に示される、転記元アプリケーションとしての表計算ソフトSSのデータファイルからデータを取得して、当該データ、もしくは当該データに基づくデータを、図1中の右に示される転記先アプリケーションとしての表計算ソフトSSのデータファイルに出力する作業として示される。また、Webブラウザで閲覧しているページ中のデータを所定のソフトのフォームに転記する作業は、図1では、図1中の左に示される転記元アプリケーションとしてのWebブラウザWBからデータを取得して、当該データ、もしくは当該データに基づくデータを、図1中の右に示される転記先アプリケーションとしての自動化対象ソフトGSに出力する作業として示される。 In this embodiment, a transcription work is defined as a work of acquiring data from a transcription source application and outputting it to a transcription destination application. For example, in the transcription work of transcribing data in a data file of spreadsheet software SS to another data file of the same spreadsheet software SS, in FIG. Data is obtained from the data file of the calculation software SS, and the data or data based on the data is output to the data file of the spreadsheet software SS as the transcription destination application shown on the right in FIG. be In FIG. 1, the work of transcribing the data in the page being browsed by the web browser into the form of the predetermined software acquires the data from the web browser WB as the transcribing source application shown on the left in FIG. 1, the data or data based on the data is output to the automation target software GS as the transcription destination application shown on the right side of FIG.

ユーザがこのような転記作業を実行するRPAプログラムを作成するときには、どのデータを変数として扱うのか、どのようにその変数を扱うのか、を考慮する必要がある。例えば、転記元アプリケーションからどのデータをどのような変数として取得するのか、取得したデータをどのように編集して転記先に出力するためのデータに加工するのか、転記先アプリケーションに対してどの変数をどのように出力するのか、といったことを考慮する必要がある。変数の扱い方を考慮しながらプログラムを作成するのは、プログラムに不慣れなユーザにとって困難である。本実施形態においては、図1に示すように、転記元アプリケーションから取得するデータを表として保持することによって、変数の扱い方に係る指定を容易にする。詳細は後述する。 When a user creates an RPA program that executes such transcription work, it is necessary to consider which data are treated as variables and how the variables are treated. For example, what data is to be acquired from the posting source application and as what variables, how to edit the acquired data and process it into data for output to the posting destination, and which variables are to be used for the posting destination application. It is necessary to consider how to output. It is difficult for users unfamiliar with programming to create programs while considering how to handle variables. In this embodiment, as shown in FIG. 1, the data obtained from the transcription source application is stored as a table, thereby facilitating designation of how to handle variables. Details will be described later.

図2は、本実施形態の自動化プログラム作成装置として機能する汎用のコンピュータPCの構成を示す。コンピュータPCは、ディプレイ等の表示部11と、入力部12と、バス13と、通信部14と、プロセッサ部20と、メモリ部15と、ストレージ部16と、を備える。コンピュータPCに自動化プログラム作成プログラムがインストールされることによって、コンピュータPCは自動化プログラム作成装置として機能する。本実施例にでは、汎用のコンピュータPCが自動化プログラム作成装置として機能するが、専用の自動化プログラム作成装置がハードウェアで構成されてもよい。 FIG. 2 shows the configuration of a general-purpose computer PC that functions as the automation program creation device of this embodiment. The computer PC includes a display unit 11 such as a display, an input unit 12 , a bus 13 , a communication unit 14 , a processor unit 20 , a memory unit 15 and a storage unit 16 . By installing the automation program creation program in the computer PC, the computer PC functions as an automation program creation device. In this embodiment, a general-purpose computer PC functions as an automation program creation device, but a dedicated automation program creation device may be configured with hardware.

表示部11は、図1に示される各アプリケーションや、自動化プログラム作成プログラムにより提供される画面情報を表示する。表示部11は、例えば液晶ディスプレイ(LCD)、有機EL等で構成される。表示部11はタッチパネルで構成されてもよく、この場合、タッチパネルは表示部11と入力部12とを兼ねる。入力部12は、キーボード12a、マウス12b、タッチパッド12c等の入力デバイスである。バス13は、各部材間でデータのやりとりを行うためのデータ伝送路を構成する。通信部14は、外部機器との間でデータ通信を行うための部材であり、イーサネット(商品名)やIEEE802.x等の規格化された通信インターフェースやモジュールが利用できる。このように外部機器との接続は、有線や無線で行うことができる。プロセッサ部20は各種演算や処理を行う部材であり、CPUやMPU、SoC、ASICなどで好適に実現できる。メモリ部15はコンピュータプログラムの実行時にロードモジュールが展開され、コンピュータプログラムの実行時に発生する一時的なデータ等を保持する。このようなメモリ部15は、SRAM、SDRAM等の揮発性メモリで構成されたRAMや、EEPROM等の不揮発性メモリで構成されたROMが利用できる。ストレージ部16は、自動化プログラム実行ファイルやデータや設定情報等の各種の情報を保持するための部材である。このストレージ部16は、ハードディスクや半導体メモリ、可搬メディア等で構成される。
(プロセッサ部20)
The display unit 11 displays each application shown in FIG. 1 and screen information provided by the automation program creation program. The display unit 11 is composed of, for example, a liquid crystal display (LCD), organic EL, or the like. The display unit 11 may be composed of a touch panel, and in this case, the touch panel serves both as the display unit 11 and the input unit 12 . The input unit 12 is an input device such as a keyboard 12a, a mouse 12b, and a touch pad 12c. A bus 13 constitutes a data transmission path for exchanging data between the members. The communication unit 14 is a member for performing data communication with an external device, and uses Ethernet (trade name) or IEEE802. Standardized communication interfaces and modules such as X can be used. In this way, the connection with the external device can be made by wire or wirelessly. The processor unit 20 is a member that performs various calculations and processes, and can be suitably realized by a CPU, MPU, SoC, ASIC, or the like. The memory unit 15 expands the load module when the computer program is executed, and holds temporary data generated when the computer program is executed. Such a memory unit 15 can use a RAM composed of volatile memory such as SRAM or SDRAM, or a ROM composed of nonvolatile memory such as EEPROM. The storage unit 16 is a member for holding various types of information such as automation program execution files, data, and setting information. The storage unit 16 is composed of a hard disk, a semiconductor memory, a portable medium, and the like.
(Processor unit 20)

図3は、本実施形態の自動化プログラム生成装置として機能するコンピュータPCのプロセッサ部20の機能を示す機能ブロック図である。プロセッサ部20は自動化プログラム生成部25と自動化プログラム実行部26とを有する。自動化プログラム生成部25は自動化プログラムを生成するための機能ブロックであり、概略手順作成部21と、取得範囲指定部22と、転記指定部23と、操作レコード設定部48と、を有する。自動化プログラム実行部26は、自動化プログラム生成部25により生成された自動化プログラムを実行するための機能ブロックである。 FIG. 3 is a functional block diagram showing the functions of the processor section 20 of the computer PC that functions as the automation program generation device of this embodiment. The processor unit 20 has an automation program generation unit 25 and an automation program execution unit 26 . The automation program generation unit 25 is a functional block for generating an automation program, and has a general procedure generation unit 21, an acquisition range designation unit 22, a transcription designation unit 23, and an operation record setting unit 48. The automation program execution section 26 is a functional block for executing the automation program generated by the automation program generation section 25 .

概略手順作成部21は、自動化する転記作業における各アプリ―ケーション間でのデータの受け渡しを示す概略手順を設定するための機能ブロックである。概略手順作成部21は、繰返設定部31を有する。繰返設定部31は、概略手順作成部21により設定された概略手順のうち、繰り返し行われる手順を設定するための機能ブロックである。 The schematic procedure creating unit 21 is a functional block for setting a schematic procedure showing transfer of data between applications in the transcription work to be automated. The general procedure creation unit 21 has a repetition setting unit 31 . The repetition setting unit 31 is a functional block for setting a procedure to be repeated among the general procedures set by the general procedure creating unit 21 .

取得範囲指定部22は、転記元アプリケーションのデータのうち、取得するデータが存在する範囲を指定するための機能ブロックであり、当該範囲を指定するための画面情報を表示したり、当該画面情報に対するユーザの指定を受け付けたりする。本実施形態において、転記元アプリケーションのデータとは、転記元アプリケーションにより扱われるファイルに含まれるデータと、転記元アプリケーションの機能により表示される画面情報に含まれるデータと、を含む。例えば、転記元アプリケーションが表計算ソフトSSであり、表計算ソフトSSにより表形式で表示されるファイルからデータを取得する場合が、転記元アプリケーションにより扱われるファイルに含まれるデータを取得する場合である。この場合、ファイルにおいて取得するデータが存在する範囲の指定が受け付ける。特に、表計算ソフトSSにより表形式で表示されるファイルからデータを取得する場合には、当該表の行と列とが指定されることにより、取得するデータが存在する範囲が指定される。また、例えば、転記元アプリケーションが自動化対象ソフトGSであり、当該ソフトの機能により表示される文字列をデータとして取得する場合が、転記元アプリケーションの機能により表示される画面情報に含まれるデータを取得する場合である。この場合も、画面情報において取得する文字列が存在する範囲の指定を受け付ける。なお、詳細は後述するが、表計算ソフトSSにおける行と列とによるデータの指定のような、対象のアプリケーションに固有の方法によるデータの指定が困難な場合は、後述する操作レコード設定部48の機能により、データの取得範囲が指定される。 The acquisition range specifying unit 22 is a functional block for specifying a range in which data to be acquired exists among the data of the transcription source application. It accepts user's specification. In this embodiment, the data of the transcription source application includes data included in files handled by the transcription source application and data included in screen information displayed by functions of the transcription source application. For example, when the transcription source application is spreadsheet software SS and data is acquired from a file displayed in a tabular format by the spreadsheet software SS, the data contained in the file handled by the transcription source application is acquired. . In this case, the specification of the range in which the data to be obtained exists in the file is accepted. In particular, when acquiring data from a file displayed in tabular form by spreadsheet software SS, the range in which the data to be acquired exists is specified by specifying the rows and columns of the table. Also, for example, when the transcription source application is the automation target software GS and the character string displayed by the function of the software is acquired as data, the data contained in the screen information displayed by the function of the transcription source application is acquired. is the case. Also in this case, the specification of the range in which the character string to be acquired in the screen information exists is accepted. Although the details will be described later, if it is difficult to specify data by a method unique to the target application, such as specifying data by row and column in spreadsheet software SS, the operation record setting unit 48 described later can be used. The function specifies the range of data acquisition.

また、取得範囲指定部22は、自動表認識実行部35を有する。自動表認識実行部35は、表計算ソフトSSにより扱われるものの、データの配置が一定ではなくユーザが取得するデータの範囲を指定しにくい形状のファイルから、データを抽出し、ユーザが範囲指定しやすい形状に整形する機能ブロックである。例えば、表として意図された部分とそうでない部分とを含むファイルの場合、罫線で囲まれた部分を表として意図された部分と認識して、表を抽出する。また、例えば、複数列にわたって結合されたセルを単一列のセルと認識して表を抽出する。さらに、例えば、複数のファイルからデータを抽出するとき、各行の抽出元を示すファイル名を新たな列として付加して表を抽出する。このように、既知のアルゴリズムを適宜適用して、ユーザが範囲指定しやすい形状に整形した表を生成する。ユーザは、整形された表に対して行と列とを指定することにより、取得するデータが存在する範囲を指定する。 The acquisition range specifying unit 22 also has an automatic table recognition executing unit 35 . The automatic table recognition execution unit 35 extracts data from a file that is handled by the spreadsheet software SS but has a shape that makes it difficult for the user to specify the range of data to be acquired because the data arrangement is not constant, and the user specifies the range. It is a functional block that shapes into an easy-to-use shape. For example, in the case of a file that includes a portion intended as a table and a portion that is not, the table is extracted by recognizing the portion surrounded by ruled lines as the portion intended as a table. Also, for example, a table is extracted by recognizing a cell joined across multiple columns as a cell in a single column. Furthermore, for example, when extracting data from a plurality of files, a table is extracted by adding a file name indicating the extraction source of each row as a new column. In this way, a known algorithm is appropriately applied to generate a table shaped into a shape that allows the user to easily designate a range. The user specifies the range in which the data to be acquired exists by specifying rows and columns for the formatted table.

このように、取得範囲指定部22により取得するデータが存在する範囲が指定された転記元アプリケーションのデータは、表データとしてメモリ部15に保持される。 In this way, the data of the transcription source application for which the range in which the data to be acquired exists is specified by the acquisition range specifying unit 22 is held in the memory unit 15 as table data.

転記元アプリケーションが表計算ソフトSSである場合は表計算ソフトSS上で表示される列ごとに、転記元アプリケーションに含まれるデータが配置されて表データが生成される。自動表認識実行部により表が認識された場合も、整形された後の表に基づいてデータが配置されて表データが生成される。すなわち、表計算ソフトSSは、表データの生成に使用するのが容易な規則としての行及び列、に従ったデータ配置がされるアプリケーションである。また、転記元アプリケーションがWebブラウザWBである場合、WebブラウザWBによりユーザに視認されるデータはhtmlタグにしたがって配置される。このため、タグごとに転記元アプリケーションに含まれるデータが配置されて表データが生成される。すなわち、WebブラウザWBは、表データの生成に使用するのが容易な規則としてのタグ情報、に従ったデータ配置がされるアプリケーションである。このように、表データの生成に使用するのが容易な規則に従ってデータ配置がなされるアプリケーションが転記元アプリケーションであるときは、当該規則に従って、表データを生成する。なお、本実施例においては、表データの生成に使用するのが容易な規則に従ってデータが配置されるアプリケーションとして、表計算ソフトSSとWebブラウザWBとが挙げられるが、これに限られない。転記元アプリケーションのデータが一定の規則に従って配置され、かつ、当該規則が周知されている場合には、取得範囲指定部22に予め当該転記元アプリケーションのデータから表データを生成する方法が設定されうるため、表データの生成に使用するのが容易な規則に従ってデータ配置がなされる、と言える。この場合は、表計算ソフトSSとWebブラウザWBと同様に、概略手順作成部21により当該転記元アプリケーションの種類が設定されることにより、対応する表データ生成方法が適用され、転記元アプリケーションのデータから表データが生成される。表データにおいては、当該転記元アプリケーションにおいてデータを配置する規則に従ってデータが配置される。なお、生成される表データの列名は、ユーザにより適宜設定されても良い。 When the transcription source application is spreadsheet software SS, table data is generated by arranging data included in the transcription source application for each column displayed on the spreadsheet software SS. Also when the table is recognized by the automatic table recognition execution unit, the table data is generated by arranging the data based on the shaped table. That is, the spreadsheet software SS is an application in which data is arranged according to rows and columns as rules that are easy to use for generating table data. Further, when the transcription source application is the web browser WB, the data visually recognized by the user through the web browser WB is arranged according to the html tags. Therefore, table data is generated by arranging data included in the transcription source application for each tag. That is, the Web browser WB is an application in which data is arranged according to tag information as a rule that is easy to use for generating tabular data. In this way, when an application in which data is arranged according to rules that are easy to use for generating tabular data is the transcription source application, tabular data is generated according to the rules. In the present embodiment, applications in which data is arranged according to rules that are easy to use for generating table data include spreadsheet software SS and Web browser WB, but are not limited to these. When the data of the transcription source application is arranged according to a certain rule and the rule is well known, a method of generating tabular data from the data of the transcription source application can be set in the acquisition range specifying unit 22 in advance. Therefore, it can be said that data is arranged according to rules that are easy to use for generating tabular data. In this case, similar to the spreadsheet software SS and the Web browser WB, by setting the type of the transcription source application by the outline procedure creation unit 21, the corresponding table data generation method is applied, and the data of the transcription source application is applied. tabular data is generated from In the table data, the data is arranged according to the rules for arranging data in the transcription source application. Note that the column names of the table data to be generated may be appropriately set by the user.

また、転記元アプリケーションとしての自動化対象ソフトGSのデータの配置規則に取得範囲指定部22が対応していない場合、例えば自動化対象ソフトGSが、ある企業内でのみ使用されるようなアプリケーションである場合、には、自動化対象ソフトGSにおけるデータの配置規則に従って表データを生成することが困難である。このような場合に、上述したように、操作レコード設定部48の機能によりデータの取得範囲が指定される。操作レコード設定部48の機能によるデータの取得範囲の指定においては、ユーザの操作にしたがってデータの取得範囲と、表データの列名とがユーザの操作にしたがって指定される。より詳細には、ユーザにより指定されるデータに係るオブジェクト階層における位置情報や座標情報と、指定された列名と、が対応付けられる。このように対応付けられることによって、自動化対象ソフトGSにより表示される第一の画面情報に含まれるデータと、自動化対象ソフトGSにより表示される第二の画面情報に含まれ当該データと同じ位置に位置するデータと、が同じ列に配置される表データが生成される。 Also, when the acquisition range specifying unit 22 does not correspond to the data arrangement rule of the automation target software GS as the transcription source application, for example, when the automation target software GS is an application that is used only within a certain company. 2, it is difficult to generate tabular data according to the data arrangement rules in the automation target software GS. In such a case, the data acquisition range is designated by the function of the operation record setting unit 48 as described above. In specifying the data acquisition range by the function of the operation record setting unit 48, the data acquisition range and the column names of the table data are specified according to the user's operation. More specifically, position information and coordinate information in the object hierarchy related to data specified by the user are associated with the specified column name. By being associated in this way, the data included in the first screen information displayed by the automation target software GS and the data included in the second screen information displayed by the automation target software GS are placed at the same position as the data. Tabular data is generated in which the located data and the are placed in the same column.

このようにして、取得範囲指定部22により取得するデータが存在する範囲が指定された転記元アプリケーションのデータは、当該転記元アプリケーションの種類に応じた適切な方法で表データとして取得され、当該表データがメモリ部15に保持される。なお、メモリ部15に保持される表データは、同様にメモリ部15に保持される表データと識別可能なように、名称が付されるが、当該名称がユーザによって付与されてもよい。この場合取得範囲指定部22は、表データに付与される名称を受け付ける。 In this way, the data of the transcription source application for which the range in which the data to be acquired exists is designated by the acquisition range designation unit 22 is acquired as table data by an appropriate method according to the type of the transcription source application. Data is held in the memory unit 15 . Note that the table data held in the memory unit 15 is similarly given a name so that it can be distinguished from the table data held in the memory unit 15, but the name may be given by the user. In this case, the acquisition range specifying unit 22 accepts the name given to the table data.

転記指定部23は、転記先アプリケーションへ転記するデータを指定するための機能ブロックである。転記指定部23は、転記先指定部23a、転記単位指定部23b、表操作部23c、転記データプレビュー部23dとを有する。 The transcription designation unit 23 is a functional block for designating data to be transcribed to a transcription destination application. The transcription designation section 23 has a transcription destination designation section 23a, a transcription unit designation section 23b, a table manipulation section 23c, and a transcription data preview section 23d.

転記先指定部23aは、転記先アプリケーションにおけるデータを書き込むフォームを指定するための機能ブロックであり、当該フォームを指定するための画面情報を表示したり、当該画面情報に対するユーザの指定を受け付けたりする。本実施形態において、転記先アプリケーションのフォームは、従来の転記作業においてユーザが転記するデータに基づいて何らかの指定を行っていた対象であり、ユーザによりテキストデータが入力されるテキストボックス、ユーザにより予め定められた選択肢から任意の選択肢が選択されるコンボボックス、及び複数の選択肢のうちいずれかが選択されたことを示すラジオボタン、を含む。 The transcription destination designation unit 23a is a functional block for designating a form in which data is written in the transcription destination application, and displays screen information for designating the form and accepts the user's designation of the screen information. . In this embodiment, the form of the posting destination application is an object for which the user has made some designation based on the data to be transcribed in the conventional transcription work. It includes a combo box from which any option is selected, and a radio button indicating that one of a plurality of options has been selected.

転記単位指定部23bは、取得範囲指定部22により指定された範囲から取得されるデータを転記する単位を指定するための機能ブロックである。すなわち、転記単位指定部23bにより、一回の転記で転記されるデータの範囲が指定される。上述の通り、転記先アプリケーションに転記されるデータは表データとしてメモリ部15に保持されるため、転記単位指定部23bはデータを転記する単位として行数の指定を受け付ける。なお、転記単位指定部23bにより単位が指定される転記先アプリケーションへの転記が、概略手順において繰り返しの対象とされている場合、転記指定部23により指定される単位は、転記の単位として扱われる。 The transcription unit designation unit 23b is a functional block for designating a unit for transcription of data acquired from the range designated by the acquisition range designation unit 22. FIG. That is, the range of data to be transcribed in one transcription is designated by the transcription unit designation section 23b. As described above, the data to be transcribed to the destination application is stored in the memory section 15 as table data, so the transcribed unit designation section 23b accepts designation of the number of rows as the unit for transcribed data. Note that when transcription to a transcription destination application whose unit is designated by the transcription unit designation section 23b is to be repeated in the general procedure, the unit designated by the transcription designation section 23b is treated as the unit of transcription. .

表操作部23cは、表データとしてメモリ部15に保持されるデータを操作して、転記先アプリケーションに書き込むデータを編集するための機能ブロックである。表操作部23cによる表データの操作は、ある列に含まれるデータが所定の条件を満たすか否かに応じて表示する行を決めるフィルタ操作や、複数の表データを、共通する列項目などの条件にしたがって結合する表結合操作などを含む。 The table manipulation unit 23c is a functional block for manipulating data held in the memory unit 15 as table data and editing data to be written to the transcription destination application. Manipulation of table data by the table operation unit 23c includes filter operation for determining rows to be displayed according to whether or not data contained in a certain column satisfies a predetermined condition, and multiple table data for common column items. Includes table join operations that join according to conditions.

転記データプレビュー部23dは、表操作部23cにより操作された表と、当該表において転記単位指定部23bにより指定されたデータを転記する単位を示す表示を行う機能ブロックである。ユーザは転記データプレビュー部23dにより表示される情報を見て、自身が設定した転記単位や表操作の結果を確認する。 The transcription data preview section 23d is a functional block that displays a table operated by the table operation section 23c and a unit for transcribing the data designated by the transcription unit designation section 23b in the table. The user sees the information displayed by the transcription data preview section 23d, and confirms the transcription unit set by himself and the result of the table operation.

操作レコード設定部48は、転記元アプリケーション、もしくは転記先アプリケーションの任意のアプリケーションに対するユーザの操作を記録するための機能ブロックである。 The operation record setting unit 48 is a functional block for recording a user's operation on an arbitrary application of the transcription source application or the transcription destination application.

図4から図7は、本実施形態の自動化プログラム作成装置として機能するコンピュータPCが有するソフトウェアとデータとの関連性を示す図である。図4から図7に示されるRPAソフトRSは、自動化プログラム生成プログラムである。RPAソフトRSがインストールされることにより、プロセッサ部20は自動化プログラム生成部25と自動化プログラム実行部26として機能するため、RPAソフトRSに包含される機能ブロックとして図4から図7に記載される。 4 to 7 are diagrams showing the relationship between software and data possessed by the computer PC functioning as the automation program creation device of this embodiment. The RPA soft RS shown in FIGS. 4 to 7 is an automated program generation program. By installing the RPA software RS, the processor unit 20 functions as an automation program generation unit 25 and an automation program execution unit 26. Therefore, functional blocks included in the RPA software RS are shown in FIGS. 4 to 7 .

図4に示すように、RPAソフトRSは、表計算ソフトSS、WebブラウザWB、及びその他の自動化対象ソフトGSなどの既存のアプリケーションからのデータの取得、これら既存のアプリケーションへのデータの書き込みを行う。既存のアプリケーションに対するデータ取得とデータ書き込みとは、自動化プログラムが生成されるときに自動化プログラム生成部25が有する各機能ブロックの機能により行われ、かつ、生成された自動化プログラムが実行されるときに自動化プログラム実行部26により行われる。また、自動化プログラム生成部25は、転記元アプリケーションから取得するデータに基づいて表データを生成してメモリ部15に保持し、メモリ部15に保持される表データを参照して転記先アプリケーションへのデータの書き込みを設定することにより、自動化プログラムを生成する。自動化プログラム実行部26は、生成された自動化プログラムに基づいて転記作業を実行する。 As shown in FIG. 4, the RPA software RS acquires data from existing applications such as spreadsheet software SS, web browser WB, and other automation target software GS, and writes data to these existing applications. . Data acquisition and data writing for existing applications are performed by the function of each functional block of the automation program generation unit 25 when the automation program is generated, and are automated when the generated automation program is executed. It is performed by the program execution unit 26 . Further, the automation program generation unit 25 generates table data based on the data acquired from the transcription source application, retains it in the memory unit 15, refers to the table data retained in the memory unit 15, and transfers the table data to the transcription destination application. Create an automated program by setting the data write. The automation program execution unit 26 executes transcription work based on the generated automation program.

RPAソフトRSで自動化プログラムの作成支援を行う際には、図4に示すように、xlsx等のデータファイルを読み込んだMicrosoft Excel(商品又はサービス名)等の表計算ソフトSS等の外部のプログラムと、RPAソフトRSはAPIを介してデータ等をやりとりする。またWebブラウザWB(データ形式はhtmlファイル)とRPAソフトRSは、selenium等を用いてプロセス間通信をし、データを取得する、書き込み、操作する。 When supporting the creation of an automation program with the RPA software RS, as shown in FIG. , RPA software RS exchanges data and the like via API. The Web browser WB (data format is html file) and RPA software RS communicate between processes using selenium or the like to acquire, write, and operate data.

また自動化プログラム生成部25は、表データ形式で自動化プログラムの作成を支援する。自動化プログラム生成部25で作成された自動化プログラムは、RPAプログラムファイルとしてストレージ部16などに保存される。さらに自動化プログラム実行部26は、保存されたRPAプログラムファイルを読み出して、自動化プログラムを実行する。これにより、予め規定された一連の操作が自動的に実行される。 Further, the automation program generation unit 25 supports creation of the automation program in tabular data format. The automation program created by the automation program generation unit 25 is saved in the storage unit 16 or the like as an RPA program file. Further, the automation program execution unit 26 reads the saved RPA program file and executes the automation program. Thereby, a predetermined series of operations are automatically executed.

図5はRPAソフトRSと表計算ソフトSSとの関連性を示す。RPAソフトRSは、表計算ソフトSSとの間でCOM通信を行って、表計算ソフトSSを操作する。RPAソフトRSは、表計算ソフトSSの操作を行うことによって、ファイルに含まれるデータの取得として表計算ソフトSSにより表示される表のセルの値を取得したり、データの書き込みとして表計算ソフトSSにより表示される表のセルにデータを書き込んだりする。また、本実施例において、表計算ソフトSSはExcelであり、表計算ソフトSSにより表示されるファイルは、拡張子.xlsxのファイルである。この場合において、RPAソフトRSは、Excelファイル操作ライブラリのプロセス内で使用してファイルにデータを書き込んでも良い。 FIG. 5 shows the relationship between the RPA software RS and the spreadsheet software SS. The RPA software RS performs COM communication with the spreadsheet software SS to operate the spreadsheet software SS. By operating the spreadsheet software SS, the RPA software RS acquires the values of the cells of the table displayed by the spreadsheet software SS as acquisition of data contained in the file, and writes data using the spreadsheet software SS. Write data to the cells of the table displayed by . In this embodiment, the spreadsheet software SS is Excel, and files displayed by the spreadsheet software SS have the extension . xlsx file. In this case, the RPA software RS may be used within the process of the Excel file manipulation library to write data to the file.

図6はRPAソフトRSとWebブラウザWBとの関連性を示す。RPAソフトRSは、Webブラウザからデータを取得するときに、ユーザにWebブラウザを操作させる。このとき、WebブラウザWBに予め追加された拡張機能を介して、ユーザによりマウス等のポインティングデバイスでクリックされた要素のパスを取得する。RPAソフトRSは、取得したパスに基づく検索式としてのXpathを使用して、Xpathに該当するパスの要素を抽出する。RPAソフトRSが作成された自動化プログラムを実行するときは、WebブラウザWBの拡張機能を介してWebブラウザWB上で表示されるフォームのパスを特定し、特定されたパスの要素に対し、データを転記する。 FIG. 6 shows the relationship between the RPA software RS and the web browser WB. The RPA software RS allows the user to operate the web browser when acquiring data from the web browser. At this time, the path of the element clicked by the user with a pointing device such as a mouse is obtained via an extended function added in advance to the web browser WB. The RPA software RS uses Xpath as a search expression based on the acquired path, and extracts path elements corresponding to Xpath. When executing the automated program created by the RPA software RS, the path of the form displayed on the web browser WB is specified via the extension function of the web browser WB, and data is sent to the elements of the specified path. copy.

なお、RPAソフトRSは、WebブラウザWBの拡張機能により取得したパスからXpathを生成するときに、当該パスに対応する要素と同じ階層にある要素を抽出可能なXpathを生成して、ユーザがWebブラウザWBを操作することによって指定した要素と同じ階層にある要素を複数抽出することができる。このとき、ユーザが同階層にあると判断する複数の要素を指定させる場合、当該複数の要素のパスに共通する部分からXpathを生成することができるため、同階層にある要素を抽出するのに適したXpathを生成する精度が向上する。 When generating XPath from a path acquired by an extension function of Web browser WB, RPA software RS generates XPath that can extract elements in the same hierarchy as the element corresponding to the path. By operating the browser WB, it is possible to extract a plurality of elements in the same hierarchy as the designated element. At this time, when the user specifies multiple elements that are determined to be in the same hierarchy, the Xpath can be generated from the common part of the paths of the multiple elements. The accuracy of generating suitable XPaths is improved.

図7はRPAソフトRSと、操作レコード設定部48の機能により操作を自動化する自動化対象ソフトGSとの関連性を示す。RPAソフトRSと自動化対象ソフトGSとは、UIAutomationを介してやりとりを行う。UIAutomationとは、マイクロソフト社の提供するライブラリである。自動化プログラムの作成時においては、ユーザが自動化対象ソフトGSの操作に対して行う操作を、自動化プログラム生成部25が受け付ける。より具体的には、自動化プログラムは、自動化対象ソフトGSより前面に自動化対象ソフトGSの表示情報を視認可能な程度に透過する半透明ウインドウTWを表示する。本実施形態におけるコンピュータPCは、最前面に表示される画面情報に対応するアプリケーションが操作を受け付けるため、半透明ウインドウTWの後面にあるアプリケーションに対してユーザが行ったつもりの操作は、半透明ウインドウTWに対する操作として受け付けられる。半透明ウインドウTWの機能によってユーザ操作を受け付ける自動化プログラム生成部25は、受け付けたユーザ操作で指定されたマウス位置をUIAutomationに渡す。マウス位置を渡した結果、UIAutomationは当該マウス位置にあるユーザインターフェースのUI要素に係る情報を受け取る。ここでいうUI要素に係る情報とは、階層におけるUIの位置や、UIの属性(例えばデータ入力可能か、コンボボックスであるか)を含む。このUI要素に係る情報に基づいて、自動化プログラム生成部25は、当該UI要素に対して実施する操作の内容を示す操作内容の選択肢を表示する。自動化プログラム生成部25は、当該UI要素に対してユーザが選択した操作内容を受け付け、当該操作内容とUI要素とを対応付けて記録するとともに、操作内容と当該UI要素を指定する情報とをUIAutomationに返し、自動化対象ソフトGSに対する操作を実行させる。 FIG. 7 shows the relationship between the RPA software RS and the automation target software GS for automating the operation by the function of the operation record setting unit 48 . The RPA software RS and the automation target software GS communicate via UIAutomation. UIAutomation is a library provided by Microsoft Corporation. When the automation program is created, the automation program generation unit 25 receives an operation performed by the user on the operation of the automation target software GS. More specifically, the automation program displays a translucent window TW in front of the automation target software GS so that the display information of the automation target software GS can be visually recognized. In the computer PC according to the present embodiment, the application corresponding to the screen information displayed in the foreground accepts operations. It is accepted as an operation for TW. The automation program generation unit 25 that receives user operations using the function of the translucent window TW passes the mouse position specified by the received user operations to UIAutomation. As a result of passing the mouse position, UIAutomation receives information about the UI element of the user interface at that mouse position. The information related to the UI element here includes the position of the UI in the hierarchy and attributes of the UI (for example, whether data can be input or whether it is a combo box). Based on the information related to this UI element, the automation program generation unit 25 displays options for operation content indicating the content of the operation to be performed on the UI element. The automation program generation unit 25 receives the operation content selected by the user for the UI element, records the operation content and the UI element in association with each other, and transfers the operation content and information specifying the UI element to UIAutomation. to execute the operation for the automation target software GS.

作成された自動化プログラムを実行する際には、UI要素を指定する情報と、当該UI要素に対応付けられた操作内容と、をUIAutomationに送り、当該UIに対する所定の操作を実行する。 When the created automation program is executed, information designating a UI element and operation contents associated with the UI element are sent to UIAutomation to execute a predetermined operation on the UI.

なお、RPAソフトRSで自動化対象ソフトGSに対し、自動化プログラムの作成支援や実行を行うに際しては、上述したUIAutomation等を用いる方法に限られない。例えば、自動化対象ソフトGSやRPAソフトRSを実行される環境であるOSが備えるAPIを用いてもよい。一例として、Windows(商品又はサービス名)OSが有するWin32API(商品又はサービス名)を用いて、OSから各アプリケーションへ送られる操作イベントを監視して自動化プログラムを生成しても良い。また、Win32APIを介して自動化プログラムに示される操作内容を自動化対象ソフトGSに対して実施して、自動化プログラムを実行しても良い。 It should be noted that the RPA software RS is not limited to the above-described method using UIAutomation or the like when supporting the creation and execution of an automation program for the automation target software GS. For example, an API provided by the OS, which is the environment in which the automation target software GS and the RPA software RS are executed, may be used. As an example, the Win32 API (product or service name) of the Windows (product or service name) OS may be used to monitor operation events sent from the OS to each application and generate an automation program. Further, the automation program may be executed by executing the operation contents indicated in the automation program via the Win32 API to the automation target software GS.

本実施形態のRPAソフトRSは、自動プログラムを作成するモードとして複数のモードを備える。複数のモードの一つとしてのナビゲーションモードでは、ユーザが作成しようとする自動化プログラムに合わせて、ユーザに対して自動化プログラムを作成するのに必要な手順をガイダンスしながら、自動化プログラムの作成を行うガイド付きモードである。図8は、ナビゲーションモードのRPAソフトRSで転記作業を実行する自動化プログラムを作成するときのフローチャートを示す。 The RPA software RS of this embodiment has a plurality of modes for creating an automatic program. The navigation mode, one of multiple modes, guides the user through the steps necessary to create an automation program in accordance with the automation program that the user intends to create. mode. FIG. 8 shows a flowchart when creating an automation program for executing transcription work with the RPA software RS in navigation mode.

まず図8のステップS901で、概略手順作成部21が、ユーザが概略手順を作成するための画面情報として概略手順作成画面を表示する。
(概略手順作成画面110)
First, in step S901 in FIG. 8, the general procedure creation unit 21 displays a general procedure creation screen as screen information for the user to create a general procedure.
(Outline procedure creation screen 110)

図9は概略手順作成画面110の一例を示す。ユーザは概略手順作成画面110を操作して概略手順を生成する。ここでユーザにより生成される概略手順は、転記作業に対応する手順であり、ユーザは転記元アプリケーションと転記先アプリケーションとの指定を行う。したがって、「表計算ソフトSSからデータを取り出す」という選択肢が表示され、ユーザが当該選択肢を選択した場合も、転記元アプリケーションとして表計算ソフトSSが選択されたとみなすことができる。このように、本実施例の自動化プログラム作成装置は、転記作業において使用するアプリケーションという、比較的指定しやすい項目を選択肢として表示することによって、ユーザに概略手順の作成を促す。また、ユーザがアプリケーションを選択することによって作成される概略手順に従って、転記元アプリケーションからデータを取得するために必要な情報や、転記先にデータを書き込むために必要な情報を指定するための画面情報を表示する。これにより、ユーザが自動化プログラムを作成することの難易度が低減する。 FIG. 9 shows an example of the outline procedure creation screen 110 . The user operates the general procedure creation screen 110 to generate the general procedure. Here, the outline procedure generated by the user is a procedure corresponding to the transcription work, and the user designates the transcription source application and the transcription destination application. Therefore, even when the option "extract data from spreadsheet software SS" is displayed and the user selects this option, it can be considered that the spreadsheet software SS has been selected as the transcription source application. As described above, the automated program creation apparatus of the present embodiment prompts the user to create a general procedure by displaying the application to be used in the transcription work, which is a relatively easy-to-specify item, as options. Screen information for specifying the information required to acquire data from the source application and the information required to write data to the destination according to the outline procedure created by the user selecting the application. display. This reduces the difficulty for the user to create the automation program.

図9を用いて概略手順作成画面110の詳細を説明する。概略シナリオをまず構築してから詳細シナリオを構築することで、ユーザの業務フローをシナリオに起こしやすくなる。画面中央の項目が選択できる大まかな操作(アクティビティ)である。画面中央の操作候補一覧112で列挙された大まかな操作のうち、選択したい項目をクリックで選択状態にしてから「追加」ボタン113を押すことで、画面右側の操作選択一覧114に追加することが可能である。さらにまた「次へ」ボタン117を押すと、右側の操作選択一覧114にアクティビティが追加されている場合は、追加された項目順に各大まかな操作の詳細設定を行うための画面に遷移される。一方、操作選択一覧114に何もない場合は遷移しない。また「破棄して戻る」ボタン118を押すと、作成ナビの設定を中止し、終了する。 Details of the outline procedure creation screen 110 will be described with reference to FIG. By constructing a general scenario first and then constructing a detailed scenario, it becomes easier to create a scenario for the user's business flow. The items in the center of the screen are rough operations (activities) that can be selected. By clicking an item to be selected from among the rough operations listed in the operation candidate list 112 in the center of the screen and then pressing the "Add" button 113, it can be added to the operation selection list 114 on the right side of the screen. It is possible. Furthermore, when the "Next" button 117 is pressed again, if activities have been added to the operation selection list 114 on the right side, a transition is made to a screen for making detailed settings for each rough operation in the order of the added items. On the other hand, if there is nothing in the operation selection list 114, no transition is made. Also, when the "discard and return" button 118 is pressed, the creation navigation setting is canceled and the process ends.

なお、概略手順作成画面110では、操作候補一覧112中の概略手順アイコン111が操作選択一覧114に追加されることで、転記元アプリケーションの選択と、転記先アプリケーションの選択とがなされる。図9の例において、「何からデータを取り出しますか?」というフォームの「表計算ソフト」という概略手順アイコン111が操作選択一覧114に追加されると、転記元アプリケーションとして表計算ソフトSSが選択される。「Web」というアイコンはWebブラウザWBに対応し、「任意のアプリ」というアイコンは自動化対象ソフトGSに対応する。また、図9の例において、「何にデータを書き出しますか?」というフォームの「表計算ソフト」という概略手順アイコン111が操作選択一覧114に追加されると、転記先アプリケーションとして表計算ソフトSSが選択される。 On the outline procedure creation screen 110, the transcription source application and the transcription destination application are selected by adding the outline procedure icon 111 in the operation candidate list 112 to the operation selection list 114. FIG. In the example of FIG. 9, when the outline procedure icon 111 "spreadsheet software" of the form "from what data will you extract data?" be done. The icon "Web" corresponds to the web browser WB, and the icon "arbitrary application" corresponds to the automation target software GS. Further, in the example of FIG. 9, when the outline procedure icon 111 "spreadsheet software" of the form "to what?" is selected.

また、概略手順作成画面110は、繰り返し設定アイコン119が含まれる。ユーザは、繰り返し設定アイコン119と組み合わせて概略手順を作成することで、繰り返し実行する手順を含む概略手順を作成する。繰返設定部31は、繰り返し設定アイコン119を含む概略手順に基づいて繰り返しに係る画面情報を表示する。図9においては、概略手順として並んだ概略手順アイコン111を選択した状態で、ユーザが「指定範囲を繰り返しにする」ボタン115を選択することで、選択された概略手順の上に繰り返し設定アイコン119が挿入される。選択されていた概略手順アイコン111は、繰り返し設定アイコン119より一段下がった表示になり、繰り返し設定がなされた概略手順であることを示す。 The general procedure creation screen 110 also includes a repeat setting icon 119 . By creating a general procedure in combination with the repeat setting icon 119, the user creates a general procedure including a procedure to be repeatedly executed. The repetition setting unit 31 displays screen information related to repetition based on the outline procedure including the repetition setting icon 119 . In FIG. 9, when the user selects the "Repeat specified range" button 115 while selecting the outline procedure icon 111 arranged as the outline procedure, the repetition setting icon 119 is displayed on the selected outline procedure. is inserted. The selected general procedure icon 111 is displayed one step lower than the repetition setting icon 119, indicating that the general procedure is a repetition setting.

なお実施形態1の例では、転記元アプリケーションとして表計算ソフトSSが選択され、転記先アプリケーションとして表計算ソフトSS、WebブラウザWBとが選択された状態である。また、転記先アプリケーションとしての自動化対象ソフトGS、表計算ソフトSS、WebブラウザWBにデータを書き込む動作の一部が繰り返し行われるように設定される。 In the example of the first embodiment, the spreadsheet software SS is selected as the transcription source application, and the spreadsheet software SS and the web browser WB are selected as the transcription destination application. Further, a part of the operation of writing data to the automation target software GS, the spreadsheet software SS, and the web browser WB as the transcription destination applications is set to be performed repeatedly.

図8に示すように、ステップS901で概略手順作成画面110を表示した後、ステップS902において、概略手順の作成が終了したか否かを判定し、未だの場合はステップS902を繰り返し、終了した場合はステップS903に進む。 As shown in FIG. 8, after the outline procedure creation screen 110 is displayed in step S901, it is determined in step S902 whether or not the outline procedure has been created. If not, step S902 is repeated. goes to step S903.

ステップS903で、自動化プログラム作成部は、ステップS901で転記元アプリケーションが選択されたか否かを判定する。自動化プログラム作成部が、転記元アプリケーションが選択されたと判定した場合、ステップS904で転記元アプリケーションとして選択されたアプリケーションに応じて取得範囲の設定を開始する。自動化プログラム作成部がステップS904で取得範囲の設定が完了した後、ステップS905に進む。また、ステップS903で、自動化プログラム作成部が、転記元アプリケーションが選択されていないと判定した場合、ステップS905に進む。(表計算ソフトSSに対する取込範囲設定) In step S903, the automation program creation unit determines whether or not the transcription source application was selected in step S901. If the automation program creation unit determines that the transcription source application has been selected, it starts setting the acquisition range according to the application selected as the transcription source application in step S904. After the automation program creation unit completes the setting of the acquisition range in step S904, the process proceeds to step S905. If the automation program creation unit determines in step S903 that the transcription source application has not been selected, the process proceeds to step S905. (Capture range setting for spreadsheet software SS)

図10は、転記元アプリケーションとして表計算ソフトSSが選択された場合に、取得範囲指定部22が実行する取得範囲の指定の詳細を示すフローチャートである。ステップS1101で、取得範囲指定部22は、自動表認識を行う表自動取得モードか否かを判定する。取得範囲指定部22が表自動取得モードであると判定する場合、ステップS1102として、取得範囲指定部22は自動表認識実行部の機能により、表の自動認識を行う。表の自動認識を行い、整形された表を生成してステップS1103に進む。ステップS1101において取得範囲指定部22が表自動取得モードでない、と判断した場合はステップS1103に進む。ステップS1103で取得範囲指定部22は、自動表認識実行部により整形された表、もしくは表計算ソフトSSにより表形式で表示される表で、取得するデータが存在する範囲を指定する。ステップS1103で取得範囲が指定された後、取得範囲指定部22は、ステップS1104で取得するデータから生成される表データの名称を指定する。ステップS1104における取得範囲指定部22は、ユーザから表データの名称を受け付けても良いし、既にメモリ部15に保持される他の表データと識別可能な名称を指定しても良い。ステップS1105で、取得範囲指定部22は、ステップS1103で指定された取得範囲の最上行を列項目とする表データを生成し、当該表データに対して、ステップS1104で指定された名称を付与してメモリ部15に保持させる。 FIG. 10 is a flowchart showing the details of the acquisition range designation executed by the acquisition range designation unit 22 when the spreadsheet software SS is selected as the transcription source application. In step S1101, the acquisition range specifying unit 22 determines whether or not the automatic table acquisition mode for automatic table recognition is set. When the acquisition range specifying unit 22 determines that the automatic table acquisition mode is set, in step S1102 the acquisition range specifying unit 22 performs automatic table recognition using the function of the automatic table recognition execution unit. Automatic table recognition is performed to generate a formatted table, and the process proceeds to step S1103. If it is determined in step S1101 that the acquisition range specifying unit 22 is not in the table automatic acquisition mode, the process advances to step S1103. In step S1103, the acquisition range designation unit 22 designates a range in which data to be acquired exists in a table formatted by the automatic table recognition execution unit or a table displayed in tabular form by the spreadsheet software SS. After the acquisition range is designated in step S1103, the acquisition range designation unit 22 designates the name of table data generated from the data to be acquired in step S1104. The acquisition range specifying unit 22 in step S1104 may receive the name of the table data from the user, or may specify a name that can be distinguished from other table data already held in the memory unit 15 . In step S1105, the acquisition range specifying unit 22 generates table data whose column items are the top rows of the acquisition range specified in step S1103, and assigns the name specified in step S1104 to the table data. is stored in the memory unit 15.

図11は、表自動取得モードでない場合に取得範囲指定部22が表示する表計算ソフト取得範囲指定画面130である。この図は、上述した図10におけるステップS1103やS1104において、ユーザ操作を受け付ける画面である。図11では、ステップS1103で実行する表の範囲の指定を受け付けるために、「ファイル名」「シート名」「セル」というラベルが付与されたフォームが表示される。また、図11では、ステップS1104で実行する名称の指定を受け付けるために、「取り出した表の名前」というラベルが付与されたフォームが表示される。図11の例では、「経費一覧表」という名称が指定されている。さらに図11では、ステップs1105を実行するためのトリガボタン138が設けられる。なお、ステップS1104において指定される表データの名称は、RPAソフトRSにおいて当該表データをメモリ部15から呼び出すための変数名である。 FIG. 11 shows a spreadsheet software acquisition range designation screen 130 displayed by the acquisition range designation unit 22 when the automatic table acquisition mode is not set. This figure shows a screen for accepting user operations in steps S1103 and S1104 in FIG. 10 described above. In FIG. 11, a form labeled with "file name", "sheet name", and "cell" is displayed in order to accept specification of the range of the table executed in step S1103. Also, in FIG. 11, a form with a label of "extracted table name" is displayed in order to accept designation of a name to be executed in step S1104. In the example of FIG. 11, the name "expense list" is specified. Further in FIG. 11, a trigger button 138 is provided for executing step s1105. The name of the table data specified in step S1104 is a variable name for calling the table data from the memory unit 15 in the RPA software RS.

図8に示すように、自動化プログラム作成部は、取得範囲の指定が完了した後、ステップS905で、ステップS901において転記先アプリケーションが選択されたか否かを判定する。自動化プログラム作成部が、転記先アプリケーションが選択されたと判定した場合、ステップS906で転記設定を実行する。自動化プログラム作成部は、ステップS906で転記設定が完了した後、ステップS907に進む。ステップS905で、自動化プログラム作成部が、転記先アプリケーションが選択されていないと判定した場合、自動化プログラムはステップ907に進む。 As shown in FIG. 8, after the designation of the acquisition range is completed, the automation program creation unit determines in step S905 whether or not the transcription destination application was selected in step S901. When the automation program creation unit determines that the transcription destination application has been selected, transcription setting is executed in step S906. After the transcription setting is completed in step S906, the automation program creation unit proceeds to step S907. If the automation program creation unit determines in step S905 that the destination application has not been selected, the automation program proceeds to step S907.

図12は、転記先アプリケーションとして任意のアプリケーションが選択された場合に、転記指定部23が実行する転記に係る設定の詳細を示すフローチャートである。ステップS1301で、メモリ部15から呼び出す表データを選択させる。ステップS1302では、表操作部23cの機能としてステップS1301で選択された表データに対する操作を受け付け、操作に応じて表データを編集する。ステップS1303では、転記単位指定部23bの機能としてステップS1301で呼び出された表データ、もしくは、ステップS1302で編集された表データに対して、転記先アプリケーションに転記する単位の指定を行う。ステップS1303で転記する単位の指定を受け付けた後、ステップS1304で転記先指定部23aの機能として、転記先アプリケーションにおいてデータが転記されるフォームを指定する。 FIG. 12 is a flow chart showing details of settings related to transcription executed by the transcription designation unit 23 when an arbitrary application is selected as a transcription destination application. At step S1301, table data to be called from the memory unit 15 is selected. In step S1302, as a function of the table operation unit 23c, an operation for the table data selected in step S1301 is accepted, and the table data is edited according to the operation. In step S1303, as a function of the transcription unit designation unit 23b, the unit of transcription to the transcription destination application is designated for the table data called in step S1301 or the table data edited in step S1302. After accepting designation of the unit of transcription in step S1303, in step S1304, as a function of the destination designation unit 23a, the form to which the data is to be transcribed is designated in the destination application.

ステップS1304において、転記先指定部23aは、転記先アプリケーションに応じて、ユーザから転記先のフォームの指定を受け付けるための画面情報を表示する。転記先アプリケーションが表計算ソフトSSである場合、転記先のファイル、シート、セルなどの指定を受け付ける。転記先アプリケーションがWebブラウザWBである場合、WebブラウザWBを起動し、WebブラウザWBに対するユーザ操作をWebブラウザWBが有する拡張機能を介して取得し、WebブラウザWB上でユーザによって選択されたフォームを特定する。転記先アプリケーションが自動化対象ソフトGSである場合、操作レコード部の機能により、フォームを特定する。 In step S1304, the transcription destination designation unit 23a displays screen information for accepting designation of a transcription destination form from the user according to the transcription destination application. If the destination application is the spreadsheet software SS, the specification of the destination file, sheet, cell, etc. is accepted. When the posting destination application is the web browser WB, the web browser WB is started, the user operation for the web browser WB is acquired via the extension function of the web browser WB, and the form selected by the user on the web browser WB is displayed. Identify. When the transcription destination application is the automation target software GS, the form is specified by the function of the operation record section.

図13は、ステップS906の転記設定の一態様として表示される一般転記詳細設定画面150を示している。この図に示す一般転記詳細設定画面150は転記指定部23の一態様を示している。一般転記詳細設定画面150では、データ転記の詳細を設定する。図13の例では、一般転記詳細設定画面150は、画面左にアクティビティ表示欄121が表示され、画面中央から右に転記詳細指定欄152が表示される。この例では、アクティビティ表示欄121で選択されたアクティビティ、ここでは「操作を記録して入出力を行う」に関しての詳細設定画面が、一般転記詳細設定画面150で表示されている。 FIG. 13 shows a general posting detail setting screen 150 displayed as one mode of posting setting in step S906. A general posting detail setting screen 150 shown in this figure shows one aspect of the posting designation section 23 . On the general posting details setting screen 150, the details of data posting are set. In the example of FIG. 13, the general posting details setting screen 150 displays an activity display field 121 on the left side of the screen and a posting details designation field 152 on the right side of the center of the screen. In this example, a detail setting screen for the activity selected in the activity display column 121, here, "record operation and perform input/output", is displayed on the general posting detail setting screen 150. FIG.

図3の取得範囲指定部22で設定された範囲のデータを表形式の取得元データとして転記するデータ転記の詳細は、ユーザにより転記指定部23で指定される。 Details of data transcription for transcribing the data in the range set by the acquisition range designation unit 22 in FIG.

図13の転記詳細指定欄152には、転記指定部23の一形態として転記データ指定欄153と実施操作決定欄156とが設けられている。
(転記データ指定欄153)
A posting data specification column 153 and an execution operation determination column 156 are provided in the posting details specification column 152 of FIG.
(Posting data specification field 153)

転記データ指定欄153は、図12のフローチャートに示されるステップS1301で実行する表データ選択、ステップS1302で実行する表操作、ステップS1303で実行する転記単位指定のそれぞれに対応する欄が設けられる。ユーザは、転記データ指定欄153を操作することにより、転記先アプリケーションに転記するデータの詳細を設定することができる。 The transcription data specification column 153 includes columns corresponding to table data selection executed in step S1301, table manipulation executed in step S1302, and transcription unit designation executed in step S1303 shown in the flowchart of FIG. The user can set the details of the data to be transcribed to the destination application by operating the transcribed data specification field 153 .

転記データ指定欄153は、表データ参照有無指定欄155と、表データ指定欄153bを有する。ユーザは、表データ参照有無指定欄155を操作することで、メモリ部15に保持される表データを参照するか否かを指定することができる。図13の例では、表データを参照することが選択されている。また、ユーザは、表データ指定欄153bを操作することで、転記するデータ、もしくは転記するデータを生成するためのデータを含む表データを指定する。すなわち、転記データ指定欄は上述した図12のフローチャートのステップS1301に対応する。図13の例では、「経費一覧」という名称の表データが選択されることが示される。 The posting data specification field 153 has a table data reference presence/absence specification field 155 and a table data specification field 153b. The user can specify whether or not to refer to the table data held in the memory unit 15 by operating the table data reference presence/absence designation field 155 . In the example of FIG. 13, referring to tabular data is selected. Further, the user specifies table data including data to be transcribed or data for generating data to be transcribed by operating the table data designation column 153b. That is, the transfer data specification column corresponds to step S1301 in the flowchart of FIG. 12 described above. The example of FIG. 13 indicates that table data named "expense list" is selected.

転記データ指定欄153は、また転記単位プレビュー部24の一形態として、転記単位プレビュー欄154を有する。転記単位プレビュー欄154は、ユーザが転記データ指定欄153を操作することによって設定される転記データの詳細の設定に基づいて、転記されるデータの態様を表示する。また、転記単位プレビュー欄154は、上述した図12のフローチャートのステップS1302における表データの編集をユーザに行わせるための部材でもある。ユーザが転記単位プレビュー欄154を操作すると、図20の表ナビ画面380が表示され、ユーザによる表操作が受け付けられる。 The transcription data designation field 153 also has a transcription unit preview field 154 as one form of the transcription unit preview section 24 . The transcription unit preview field 154 displays the form of the data to be transcribed based on the setting of the details of the transcription data set by the user operating the transcription data designation field 153 . The transcription unit preview column 154 is also a member for allowing the user to edit the table data in step S1302 of the flowchart of FIG. 12 described above. When the user operates the transcription unit preview field 154, the table navigation screen 380 of FIG. 20 is displayed and the table operation by the user is accepted.

転記データ指定欄153は、転記単位指定部23bの一形態として、転記単位指定欄153cを有する。ユーザは、転記単位指定欄153cを操作することで、転記先アプリケーションへの一回のデータの転記において転記する対象を指定する。すなわち、転記単位指定欄153cは、図12のフローチャートのステップS1303に対応する。表データ指定欄153bにより指定された表データからの転記単位として「一行ずつ」「表全体」「グルーピング」が選択可能である。「一行ずつ」が選択された場合、一回の転記で、表データ選択欄153bで選択された変数名の表データが一行ずつ転記される。また「表全体」が選択された場合は、一回の転記で、表データの全体が転記される。さらに「グルーピング」を選択した場合は、表データの列の値が同じ行のデータが入力される。このため「グルーピング」では、表データ選択欄153bで選択された変数名の表データが有する列の項目を選択可能としている。図13の例では、「グルーピング」という選択肢と合わせて「日付」という列項目が示される。この場合、一回の転記で、表データ選択欄153bで選択された変数名の表データのうち、「日付」という名称の列が同じ値のデータが転記される。
(実施操作決定欄156)
The posting data designation field 153 has a posting unit designation field 153c as one form of the transcription unit designation section 23b. The user specifies a target to be transcribed in one transcription of data to the transcription destination application by operating the transcription unit designation column 153c. That is, the transcription unit designation field 153c corresponds to step S1303 in the flowchart of FIG. As a transcription unit from the table data designated by the table data designation column 153b, "one line at a time", "whole table", and "grouping" can be selected. When "line by line" is selected, the table data of the variable name selected in the table data selection column 153b is transcribed line by line in one transcription. Also, when "whole table" is selected, the entire table data is transcribed in one transcription. Furthermore, when "grouping" is selected, the data of the row with the same column value of the table data is input. For this reason, in the "grouping", it is possible to select the column items of the table data of the variable name selected in the table data selection column 153b. In the example of FIG. 13, the column item "Date" is shown together with the option "Grouping". In this case, data having the same value in the column named "Date" among the table data of the variable name selected in the table data selection column 153b is transcribed once.
(Execution operation determination column 156)

さらに、図13の転記詳細指定欄152において転記単位指定欄153の下部には、実施操作決定欄156が設けられている。実施操作決定欄156は、上述した図12のフローチャートのステップS1304におけるデータ転記先としてのフォームの指定をユーザに行わせるための部材である。 Further, in the transcription details designation field 152 of FIG. 13, an execution operation determination field 156 is provided below the transcription unit designation field 153 . The execution operation determination column 156 is a member for allowing the user to designate a form as a data posting destination in step S1304 of the flowchart of FIG. 12 described above.

実施操作決定欄156は、転記先アプリケーションとして自動化対象ソフトGSが指定される場合に表示される。ユーザは、当該自動化対象ソフトGSにおけるフォームを指定するために実施操作決定欄156から操作レコード設定部48の機能により操作レコードを開始する。図13に示される実施操作決定欄156は、自動化プログラムの実行において繰り返さない操作を決定するための部材であるが、繰り返す操作を決定するための実施操作決定欄が別途設けられても良い。この場合、繰り返さない操作を決定するための実施操作決定欄と、繰り返す操作を決定するための実施操作決定欄とが、同じ画面に表示されることが好ましい。ここで言う「同じ画面に表示される」とは、スクロール操作で上記二つの実施操作決定欄が表示可能な配置を含む。これによれば、ユーザは、同じ画面から繰り返す操作と繰り返さない操作との両方を設定することができるため、繰り返す操作と繰り返さない操作とが混在する作業に係る自動化プログラムを容易に生成することができる。
(操作レコード画面160)
The execution operation determination column 156 is displayed when the automation target software GS is designated as the transcription destination application. The user starts the operation record from the performed operation determination field 156 by the function of the operation record setting unit 48 in order to specify the form in the automation target software GS. The performed operation determination column 156 shown in FIG. 13 is a member for determining operations that are not repeated in the execution of the automation program, but a separate performed operation determination column for determining repeated operations may be provided. In this case, it is preferable that the performed operation determination column for determining the operation not to be repeated and the performed operation determination column for determining the repeated operation are displayed on the same screen. Here, "displayed on the same screen" includes an arrangement in which the above-described two execution operation determination fields can be displayed by scrolling. According to this, since the user can set both the repeated operation and the non-repeated operation from the same screen, it is possible to easily generate an automation program related to the work in which the repeated operation and the non-repeated operation are mixed. can.
(Operation record screen 160)

図14は、操作レコード設定部48の機能により表示される画面情報を含む表示画面の態様である。図14に示される操作レコード画面160には、自動化対象ソフトGSとしての経費精算アプリにより表示される「経費精算」フォームGS1が表示される。操作レコード設定部48は、自動化対象ソフトGSにより生成される画面情報より前面に半透明ウィンドウTWを表示する。半透明ウィンドウTWは、当該半透明ウィンドウTWに重なりかつ当該半透明ウィンドウTWより後ろに位置する画面情報が視認可能な程度に透明であればよいため、透明なウィンドウであっても良い。半透明なウィンドウを表示することによって、ユーザが自動化対象ソフトGSにより生成される画面情報に対して何らかの画面情報が重ねて表示されていることが認識できるため、ユーザが視認可能な程度に透明でないことが好ましい。なお、図14では、半透明ウィンドウTWを図上で明らかにするために、図14の枠より内側に半透明ウィンドウTWの枠があるが、実際には、全画面に表示される。 FIG. 14 shows an aspect of a display screen including screen information displayed by the function of the operation record setting section 48. FIG. The operation record screen 160 shown in FIG. 14 displays an "expense settlement" form GS1 displayed by the expense settlement application as the automation target software GS. The operation record setting unit 48 displays a translucent window TW in front of the screen information generated by the automation target software GS. The semi-transparent window TW may be a transparent window as long as it is transparent enough to allow the screen information that overlaps the semi-transparent window TW and is positioned behind the semi-transparent window TW to be visible. By displaying a translucent window, the user can recognize that some screen information is superimposed on the screen information generated by the automation target software GS. is preferred. In FIG. 14, the frame of the semi-transparent window TW is located inside the frame of FIG. 14 in order to clarify the semi-transparent window TW, but it is actually displayed on the entire screen.

ユーザは、操作レコード画面160に対して操作を実行して、転記先のフォームを指定する。操作レコード設定部48は、ユーザが半透明ウィンドウTW越しにフォームGS1に含まれる所定のフォームを指示する操作を、半透明ウィンドウTWで受け付け、ユーザ指定したフォームGS1中のフォームを特定する。これにより転記先設定部は、転記先アプリケーションにおいてデータが書き込まれるフォームを特定する。図14の例では、自動化対象ソフトの「経費精算」フォームGS1のうち、「申請者」という説明が付与されたフォームが選択されている。操作を判り易くするため、マウスカーソルの位置を○で表している。 The user performs an operation on the operation record screen 160 to specify the form to which the posting is to be made. The operation record setting unit 48 accepts an operation of specifying a predetermined form included in the form GS1 through the translucent window TW by the user through the translucent window TW, and specifies the form in the form GS1 designated by the user. Thereby, the transcription destination setting unit specifies the form in which the data is written in the transcription destination application. In the example of FIG. 14, the form with the description "applicant" is selected from the "expense reimbursement" form GS1 of the software to be automated. To make the operation easier to understand, the position of the mouse cursor is indicated by a circle.

データが書き込まれるフォームが特定された後、操作レコード設定部48は、転記指定部23によりメモリ部15から呼び出された表データに基づいて、当該フォームに書き込まれるデータをユーザに選択させる画面情報を表示する。表データが表操作部23cにより編集される場合は、編集された表データに基づいて画面情報を表示しても良い。また、転記単位指定部23bにより指定される単位に基づいて画面情報を表示しても良い。 After the form into which the data is written is specified, the operation record setting unit 48, based on the table data called from the memory unit 15 by the transcription designation unit 23, provides screen information for allowing the user to select the data to be written into the form. indicate. When the table data is edited by the table operation section 23c, screen information may be displayed based on the edited table data. Also, the screen information may be displayed based on the unit specified by the transcription unit specifying section 23b.

ユーザは、操作レコード設定部48により表示される、書き込むデータの選択肢から、当該フォームに書き込むべきデータを選択する。操作レコード設定部48はユーザの選択を受け付け、特定されたフォームと当該フォームに書き込むデータとを対応付ける。これにより転記先指定部23aにより、転記先アプリケーションのうちデータを書き込むフォームと、当該フォームに書き込むデータとを指定する。 The user selects data to be written in the form from choices of data to be written displayed by the operation record setting unit 48 . The operation record setting unit 48 accepts the user's selection and associates the specified form with data to be written in the form. As a result, the transfer destination designating unit 23a designates a form in which data is written in the transfer destination application and data to be written in the form.

なお、操作レコード設定部48は、ユーザに選択されたデータを特定されたフォームに書き込む。これにより、操作レコード画面を介して操作を選択した直後に自動化対象ソフトで実行させることで、ユーザは、選択したデータがエラーなく特定されたフォームに書きこまれるか否かを確認することができ、デバッグ作業も容易となる Note that the operation record setting unit 48 writes the data selected by the user into the specified form. As a result, the user can check whether the selected data can be written to the specified form without error by having the automation target software execute the operation immediately after selecting the operation via the operation record screen. , debugging becomes easier

図8に示すように自動化プログラム作成部は、ステップS907に進み、詳細が設定されていない操作レコード手順があるか否かを判定する。ここで有無の判定をする操作レコード手順は、ステップS904における転記元アプリケーションの取得範囲の設定や、ステップS906における転記先アプリケーションへの転記設定に含まれる操作レコードの手順ではなく、転記作業において、データを転記する手順の前後に実施されるユーザ操作に対応する手順として設定されるものである。ステップS907において、未設定の操作レコード手順があると判定した場合ステップS908に進み操作レコード設定を実行する。ステップS908においては、操作レコード設定部48の機能により半透明ウィンドウTWが表示され、当該半透明ウィンドウTWに対して実施されるユーザ操作が記録される。ステップS908におけるユーザ操作の記録が完了すると、ステップS909に進み、ステップS901、S904、S906、S908の少なくともいずれかのステップで設定された内容に基づいて自動化プログラムの内容を示す画面情報を生成する。ステップS907において、未設定の操作レコード手順がないと判断した場合、ステップS908に進み、ステップS901、S904、S906の少なくともいずれかのステップで設定された内容に基づいて自動化プログラムの内容を示す画面情報を生成する。
(アクティビティ一覧画面220)
As shown in FIG. 8, the automation program creation unit advances to step S907 and determines whether or not there is an operation record procedure for which details have not been set. Here, the operation record procedure for judging presence or absence is not the operation record procedure included in the acquisition range setting of the transcription source application in step S904 or the transcription setting to the transcription destination application in step S906. are set as procedures corresponding to user operations performed before and after the procedure of transcribing. If it is determined in step S907 that there is an unset operation record procedure, the process advances to step S908 to execute operation record setting. In step S908, a translucent window TW is displayed by the function of the operation record setting unit 48, and user operations performed on the translucent window TW are recorded. When the recording of the user operation in step S908 is completed, the process advances to step S909 to generate screen information showing the contents of the automation program based on the contents set in at least one of steps S901, S904, S906, and S908. If it is determined in step S907 that there is no unset operation record procedure, the process proceeds to step S908. to generate
(Activity list screen 220)

図15は、ステップS909で表示される、作成される自動化プログラムの内容を示すアクティビティ一覧画面220を示す。アクティビティ一覧画面220では、作成された手順がステップS901で設定した概略手順単位でまとめられて表示される。アクティビティ一覧画面220は、概略アクティビティ表示欄221を画面左側に設けている。概略アクティビティ表示欄221では、作成されたアクティビティが概略アクティビティ単位でまとめられて表示される。図15のアクティビティ一覧画面220では、変数がオレンジ色で表示されている。本実施形態では、表データ自体が生成された自動化プログラムにおいても変数として扱われるため、表データ自体に付与された名前が変数名として扱われる。また表データに含まれる各列項目も、転記時に参照されるため変数名として扱われる。 FIG. 15 shows an activity list screen 220 displayed in step S909 showing the contents of the automated program to be created. On the activity list screen 220, the created procedures are grouped and displayed in units of outline procedures set in step S901. The activity list screen 220 has a summary activity display column 221 on the left side of the screen. In the summary activity display column 221, the created activities are grouped and displayed on a summary activity basis. In the activity list screen 220 of FIG. 15, variables are displayed in orange. In this embodiment, since the automated program that generated the table data itself also treats it as a variable, the name given to the table data itself is treated as a variable name. Each column item included in the table data is also treated as a variable name because it is referenced during transcription.

図15のアクティビティ一覧画面220では、各種データの取り込み詳細設定や、転記を行う操作の設定が完了した状態を示している。この図の「操作を記録して入出力を行う」との部分が概略アクティビティヘッドライン部222であり、フローに相当する概略アクティビティを表示している。また概略アクティビティヘッドライン部222の下には、概略アクティビティ詳細表示領域225が設けられている。概略アクティビティ詳細表示領域225には、「アプリ起動」、「表の繰り返し」、「アプリ終了」が表示されており、「操作を記録して入出力を行う」との概略アクティビティを構成する具体的な操作すなわちアクティビティが列挙されている。各種設定が完了した時の概略アクティビティの単位は、図9で作成した概略手順に対応する。ここで、概略アクティビティヘッドライン部222の内、「操作を記録して入出力を行う」との表示は概略名223として、ユーザが手動で入力する一方、その右にある「経費一覧表を入力する」との概略ラベル224は自動で生成される。 The activity list screen 220 of FIG. 15 shows a state in which the detailed settings for importing various data and the settings for the transcription operation have been completed. A general activity headline section 222 is a portion of this figure that says "record operations and input/output", and displays a general activity corresponding to a flow. A general activity detail display area 225 is provided below the general activity headline section 222 . In the general activity detail display area 225, "start application", "repeat table", and "end application" are displayed. operations or activities are enumerated. The unit of general activity when various settings are completed corresponds to the general procedure created in FIG. Here, in the general activity headline section 222, the display of "record operations and input/output" is manually input by the user as a summary name 223, while the user enters "enter expense list" on the right. A summary label 224 of "do" is automatically generated.

図8に示すようにステップS909でアクティビティ一覧画面220を表示した後、自動化プログラム作成部はステップS910で自動化プログラムを作成する。当該自動化プログラムは、ステップS901、S904、S906、S908の少なくともいずれかで設定された内容に基づいて生成される。
[実施形態3]
(操作レコード画面280)
After displaying the activity list screen 220 in step S909 as shown in FIG. 8, the automation program creation unit creates an automation program in step S910. The automation program is generated based on the contents set in at least one of steps S901, S904, S906, and S908.
[Embodiment 3]
(Operation record screen 280)

図16は、転記先指定部23aの機能によりユーザが指定する転記先アプリケーションのフォームが表形式で表示される表UIであるときの操作レコード画面280を示す。なお、この図では、説明のために、半透明ウィンドウは非表示としている。 FIG. 16 shows the operation record screen 280 when the form of the transcription destination application designated by the user by the function of the transcription destination designation unit 23a is displayed in a tabular format. Note that the translucent window is not displayed in this figure for the sake of explanation.

図16の操作レコード画面280において、ユーザがマウスで表UIを選択したことを検出すると図17の操作レコード画面300に示すように、表UIへの表データの転記の詳細を設定するための表データ転記詳細設定ウィンドウ301が表示される。表データ転記詳細設定ウィンドウ301は、表入力位置指定欄302と、表選択欄303を設けている。まず、出力先の表UIを特定するために、表入力位置指定欄302において、表の左上端のセルをユーザに選択させる。ユーザの選択を検出して、表UIの左上セルを特定した後、表UIの左上を選択する操作を表UIに反映させる。図18では、自動化対象ソフトGSである日報管理用アプリが、表UIのうち選択されたセルを青枠で表示している。また表入力位置指定欄302において「選択済み」と表示され、表の左上セルの選択が終了していることが示される。 When it is detected that the user has selected the table UI with the mouse on the operation record screen 280 of FIG. A data transfer detail setting window 301 is displayed. The table data transfer detail setting window 301 has a table input position specification field 302 and a table selection field 303 . First, in order to specify the table UI of the output destination, the user is made to select the upper left cell of the table in the table input position specification field 302 . After detecting the user's selection and specifying the upper left cell of the table UI, the operation of selecting the upper left of the table UI is reflected in the table UI. In FIG. 18, the daily report management application, which is the automation target software GS, displays the selected cell in the table UI with a blue frame. "Selected" is displayed in the table input position specification column 302, indicating that the upper left cell of the table has been selected.

次に表の選択を行う。図18の表データ転記詳細設定ウィンドウ301において、表選択欄303には、表移動方向指定欄304と、行挿入指定欄305、行削除指定欄306、「表の移動を試す」ボタン307が設けられている。「表の移動を試す」ボタン307を押下すると、表UIが正しく選択できているかを確認することができる。この確認では、RPAソフトがユーザ操作を「右:→」のような対応するキーボードで受け付け、キーボードを操作したときにそのように選択箇所が表UI上を移動するかどうかを確認することができる。 Next, select a table. In the table data transfer detail setting window 301 shown in FIG. 18, a table selection column 303 is provided with a table movement direction specification column 304, a row insertion specification column 305, a row deletion specification column 306, and a "try to move table" button 307. It is By pressing the "try to move table" button 307, it is possible to check whether the table UI has been correctly selected. In this confirmation, the RPA software accepts the user's operation with the corresponding keyboard such as "right: →", and it is possible to confirm whether the selection moves on the table UI in that way when the keyboard is operated. .

RPAソフトに表示される表は、自動化対象ソフトの表UI、つまり転記先アプリケーションとしての日報管理用アプリの表UIに対応する。一例として、表UIの左から二番目の列にデータを転記したい場合に、この列に転記するデータを選択する状態を図19の操作レコード画面320に示す。この操作レコード画面320では、自動化対象ソフトGSの表UIの各列と、RPAソフトでのRPAプログラム作成のために取り込まれた表データの各列とをどのように対応付け、その際の設定画面の態様を確認することができる。図において、横長の棒状で示すL1の部分が、自動化対象ソフトGSの表UIがRPAソフトRSの設定画面に反映されている。またその下にある列名選択肢321では、取込済表データの列項目の名称が選択肢として表示されている。列名選択肢321は、RPAソフトRSの実行時に自動化対象ソフトGSに転記する表データに対応する列名を選択する。例えば、L1の左から2番目の列のプルダウンで表示される列名選択肢321の内、「品目」を選んで設定すると、RPAソフトRSを実行する際には、取込済表データの「品目」が自動化対象ソフトGSの左から2番目の列に転記されることになる。このように設定することで、自動化対象ソフトGSで表示される表UIの特定の列に書き込まれる表データ中のデータが指定される。
(表操作)
The table displayed on the RPA software corresponds to the table UI of the automation target software, that is, the table UI of the daily report management application as the transcription destination application. As an example, an operation record screen 320 in FIG. 19 shows a state in which data to be transcribed in the second column from the left of the table UI is selected. In this operation record screen 320, how each column of the table UI of the automation target software GS is associated with each column of the table data imported for creating the RPA program in the RPA software, and the setting screen at that time can be confirmed. In the drawing, the portion L1 indicated by a horizontally long bar reflects the table UI of the automation target software GS on the setting screen of the RPA software RS. In column name options 321 below it, column item names of the imported table data are displayed as options. A column name option 321 selects a column name corresponding to table data to be transferred to the automation target software GS when the RPA software RS is executed. For example, if you select and set "item" from among the column name options 321 displayed in the pulldown of the second column from the left of L1, when you run the RPA software RS, "item ” will be transcribed in the second column from the left of the automation target software GS. By setting in this way, the data in the table data to be written in the specific column of the table UI displayed by the automation target software GS is designated.
(table operation)

次に表操作部23cにより実行可能な表データの編集の詳細を説明する。メモリ部15に保持する表データを編集する機能を「表ナビ」と呼ぶ。例えば図13の一般転記詳細設定画面150において、表操作を呼び出して表データの編集を行える。 Next, the details of table data editing that can be executed by the table operation unit 23c will be described. The function of editing the table data held in the memory unit 15 is called "table navigation". For example, on the general posting details setting screen 150 in FIG. 13, the table operation can be called to edit the table data.

また図20の表ナビ画面380から、希望する表操作に該当する種類を選択して実行することもできる。操作実行後の表データはメモリ部15に保持される。このとき、メモリ部に保持される表データは、ユーザが指定した名称が付されてメモリ部15に保持されても良いし、既にメモリ部15に保持される表データと識別可能な名称が付されて、メモリ部15に保持されても良い。 Also, from the table navigation screen 380 in FIG. 20, the type corresponding to the desired table operation can be selected and executed. The table data after execution of the operation is held in the memory unit 15 . At this time, the table data held in the memory section may be held in the memory section 15 with a name designated by the user, or may be given a name that can be distinguished from the table data already held in the memory section 15. and may be held in the memory unit 15 .

また、メモリ部15に複数の表データが保持されており、かつ、図12に示すフローにおけるステップS1301の表データ選択で複数の表データが選択される場合に、当該複数の表データを結合したり、当該複数の表データの差分を抽出したりすることもできる。図21は図20の別例である。例えば図21の表操作画面390において、表1として図22Aのような経費一覧表が生成されている場合に、「表を条件で絞り込む」を選択すると、アクティビティとして「表1を条件で絞り込む」が生成される。 Also, when a plurality of table data are held in the memory unit 15 and a plurality of table data are selected in step S1301 in the flow shown in FIG. 12, the plurality of table data are combined. Alternatively, it is possible to extract the difference between the plurality of table data. FIG. 21 is another example of FIG. For example, in the table operation screen 390 of FIG. 21, when an expense list such as that shown in FIG. 22A is generated as Table 1, selecting "Filter table by conditions" selects "Filter table 1 by conditions" as an activity. is generated.

ここで例えば経費が1000円以上の場合のみ申請をする、というシナリオを作成する場合には、「経費一覧表を金額>1000で絞り込む」という設定を行えば、図22Aの経費一覧表が絞り込まれて、図22Bのような表が生成される。このようにして新たに生成された表も、変数として扱うことができる。例えば、図22Bの表に申請対象経費一覧表という名前を付ければ、申請対象経費一覧表という表をそのほかのアクティビティでも使用することができる。 Here, for example, when creating a scenario in which an application is made only when expenses are 1,000 yen or more, if the setting "Filter expense list by amount>1000" is made, the expense list in FIG. 22A is narrowed down. Then, a table such as that shown in FIG. 22B is generated. A table newly generated in this way can also be treated as a variable. For example, if the table in FIG. 22B is given the name of “Applied Expense List”, the table “Applied Expense List” can be used in other activities.

またこの機能を使うことで、分岐処理指定を代替することも可能である。例えば、通常の分岐処理では、if文のような分岐処理(今回の場合は「金額>1000」)の処理を、ユーザが分岐すべき個所をコード中から特定し、適切な位置に分岐処理を挿入するといった操作をする必要があり、手間であった。これに対し、本機能を使えば、一つの表として扱うことができるため、作成ナビの繰り返し処理と合わせて使用することで、分岐処理を自分で挿入せずとも分岐相当の操作が可能になる。
(表操作機能)
Also, by using this function, it is possible to substitute branch processing specification. For example, in normal branch processing, the branch processing like an if statement (in this case, "amount >1000") is executed by specifying the place where the user should branch from the code and executing the branch processing at an appropriate position. It was necessary to perform an operation such as inserting, which was troublesome. On the other hand, if you use this function, you can handle it as a single table, so by using it together with the repeat processing of the creation navigation, you can perform operations equivalent to branching without inserting the branch processing yourself. .
(table operation function)

また複数の表に対して、結合や縦積み、差分抽出、共通部分抽出、表絞込、列追加、列削除といった様々な操作を行うことができる。このような表操作機能は、図3の表操作部23cで実行される。ここで表操作機能の一例として、まず複数の表を結合する表結合機能について、図23~図24に基づいて説明する。
(表結合機能)
Various operations such as joining, stacking, extracting differences, extracting common parts, narrowing down tables, adding columns, and deleting columns can be performed on multiple tables. Such a table operating function is executed by the table operating section 23c in FIG. Here, as an example of the table manipulation function, a table join function for joining a plurality of tables will be described with reference to FIGS. 23 and 24. FIG.
(table join function)

表結合機能では、複数の表に対して、特定の列の名前で表を結合することができる。例えば図23に示すように、2つの表がある場合に、特定の列の名前、ここでは「客先コード」で合体させて図24の表を生成することができる。 The table join function allows you to join tables with specific column names for multiple tables. For example, as shown in FIG. 23, if there are two tables, they can be merged by the name of a particular column, here "customer code" to produce the table of FIG.

このように、表データが結合されることにより、別の表データとして保持される表データ中のデータを、対応付けられたデータとして扱う転記作業に係る自動化プログラムを生成することができる。図23の例では、「客先名」を有する表データと「メールアドレス」を有する表データが別の表データとして保持される。表結合機能により、同じ画面に存在する複数のフォームに対して、「客先名」と当該「客先名」に関連する「メールアドレス」とを転記する転記作業に係る自動化プログラムが生成される。
(表縦積み機能)
By combining table data in this way, it is possible to generate an automated program for transcription work that treats data in table data held as separate table data as associated data. In the example of FIG. 23, table data having "customer name" and table data having "mail address" are held as separate table data. Using the table combination function, an automated program is generated for the transcription work that transcribes the "customer name" and the "e-mail address" related to the "customer name" for multiple forms that exist on the same screen. .
(Table stacking function)

また表縦積み機能では、同じ項目を規定した複数の表を列方向に連結することができる。例えば図25に示すように、共通の項目(ここでは「客先名」、「客先コード」、「状態」の3つ)を有する2つの表に対し、表縦積み機能を実行して図26のように一つの表にまとめることができる。なお、上述した図23のように、共通しない項目が存在する表に対して表縦積み機能を実行すると、図27のように、存在しない項目については空のセルとなる。 In addition, with the vertical stacking function, multiple tables that define the same items can be linked in the column direction. For example, as shown in FIG. 25, two tables having common items (in this case, "customer name", "customer code", and "status") are displayed by executing the table stacking function. 26 can be summarized in one table. As shown in FIG. 23 described above, when the table vertical stacking function is executed for a table in which items that are not common are present, the non-existing items become empty cells as shown in FIG.

このように、表データが縦積みされることにより、別の表データとして保持されていた同種のデータを同じ表データに保持されるデータとして扱う転記作業に係る自動化プログラムを生成することができる。図25の例では、2つの表は列項目が全て共通であるため、各行のデータは同種のデータである。表縦積み機能により、図26に示すように単一の表データとして扱われるため、当該表データに対して転記指定部23による転記指定を行うことで、複数の表データに対して同様の転記を行う転記作業に係る自動化プログラムが生成される。
(差分抽出機能)
By vertically stacking tabular data in this way, it is possible to generate an automated program for transcription work that treats the same type of data held as separate tabular data as data held in the same tabular data. In the example of FIG. 25, the two tables have common column items, so the data in each row is the same type of data. By the table vertical stacking function, it is treated as a single table data as shown in FIG. is generated.
(difference extraction function)

さらに、複数の表の差分をとる差分抽出機能について説明する。差分抽出機能では、複数の表に対して、一の表の特定列のうち、他の表の特定列に存在しない行を残す。例えば、図28に示すような2つの表があり、左の表1に項目名として客先名と客先コードと状態、右の表2に客先コードとメールアドレスを記録している例を考える。これらの表に対して、メールアドレスが存在しない客先のみを抜き出すには、差分抽出機能を使用する。ここでは、表1の特定列である客先コードの内、表2の客先コードが存在しない行を表1から抽出する。この結果、図29に示すように、客先コードが表2に存在せず、メールアドレスが存在していない仮名銀行をリストアップした表が作成される。 Furthermore, a difference extraction function for obtaining differences between a plurality of tables will be described. In the differential extraction function, for a plurality of tables, among the specific columns of one table, rows that do not exist in the specific columns of other tables are left. For example, there are two tables as shown in FIG. 28. Table 1 on the left records customer name, customer code and status as item names, and Table 2 on the right records customer code and email address. think. A difference extraction function is used to extract only customers who do not have e-mail addresses from these tables. Here, among the customer codes in the specific column of Table 1, rows in which the customer code of Table 2 does not exist are extracted from Table 1. As a result, as shown in FIG. 29, a table listing pseudonymized banks whose customer code does not exist in Table 2 and whose mail address does not exist is created.

このように、複数の表データから差分を抽出されることにより、ある表データのデータを別の表データを条件に絞り込みした結果のデータを転記する転記作業に係る自動化プログラムを生成することができる。図28の例では、左側の表を右側の表を条件に絞り込む。これにより、左側の表データのうち、右側の表データに対応する「客先コード」が無いデータを転記する自動化プログラムを生成することができる。
(共通部分抽出機能)
In this way, by extracting differences from a plurality of table data, it is possible to generate an automated program related to the transcription work of transcribing the data resulting from narrowing down the data of one table data based on the conditions of another table data. . In the example of FIG. 28, the table on the left is narrowed down based on the table on the right. As a result, it is possible to generate an automated program that transcribes data that does not have a "customer code" corresponding to the table data on the right side among the table data on the left side.
(common part extraction function)

さらに表の共通部分を抜き出す共通部分抽出機能について説明する。共通部分抽出機能では、複数の表に対して、一の表の特定列の内、他の表の特定列に存在する行のみを残す。例えば、上述した図28の表に対して、メールアドレスが存在する客先のみを抽出する例を考える。ここでは、表1の特定列である客先コードの内、表2の客先コードが存在する行を表1から抽出する。この結果、図30に示すように、客先コードが表2に存在し、メールアドレスが存在してする仮名マニュファクチャリングをリストアップした表が作成される。 Next, a common portion extracting function for extracting common portions of tables will be described. The common part extraction function leaves only rows existing in specific columns of one table and in specific columns of other tables for a plurality of tables. For example, consider an example of extracting only customers who have mail addresses from the table of FIG. 28 described above. Here, among the customer codes, which are the specific columns of Table 1, the rows in which the customer codes of Table 2 exist are extracted from Table 1. As a result, as shown in FIG. 30, a table is created in which pseudonymous manufacturing companies whose customer codes exist in Table 2 and whose mail addresses exist are listed.

このように、複数の表データから共通部分を抽出することにより、差分抽出機能と同様に、ある表データのデータを別の表データを条件に絞り込みした結果のデータを転記する転記作業に係る自動化プログラムを生成することができる。図28の例では、左側の表を右側の表を条件に絞り込む。これにより、左側の表データのうち、右側の表データに対応する「客先コード」があるデータを転記する自動化プログラムを生成することができる。 In this way, by extracting common parts from a plurality of table data, as with the difference extraction function, automation related to the posting work of posting the data resulting from narrowing down the data of one table data based on the conditions of another table data Programs can be generated. In the example of FIG. 28, the table on the left is narrowed down based on the table on the right. As a result, it is possible to generate an automated program that transcribes data having a "customer code" corresponding to the table data on the right side among the table data on the left side.

なお上述した図23や図25、図28の例では、2つの表を横方向、即ち行方向に並べた例を示しているが、これに限らず、縦方向や斜め方向等、任意の位置に配置された複数の表に対して、表結合機能や表縦積み機能、差分抽出機能等の各表操作機能を実行できることは言うまでもない。
(表絞込機能)
In the examples of FIGS. 23, 25, and 28, two tables are arranged in the horizontal direction, that is, in the row direction. It goes without saying that each table manipulation function such as a table joining function, a table stacking function, a difference extraction function, etc. can be executed for a plurality of tables arranged in a table.
(table filtering function)

表の絞り込みを行う表絞込機能では、特定の列でフィルタを行う。複数列の条件を入れることもできる。
(列追加機能)
The table narrowing function for narrowing down the table filters on a specific column. You can also include multiple column conditions.
(Column addition function)

列の追加を行う列追加機能では、表計算ソフトの列を、数式を含めて追加することができる。
(列削除機能)
With the column addition function for adding columns, it is possible to add columns of spreadsheet software including formulas.
(Column deletion function)

列削除機能は、不要な列を削除する機能である。 The column deletion function is a function for deleting unnecessary columns.

なお上述した表データ中の列に対する各種の操作は、行に対する操作とすることもでき、逆に行に対する操作を、列に対する操作に入れ替えることも可能である。
[実施形態4:Webスクレイピング]
(Web取込詳細設定)
Various operations on columns in the table data described above can also be operations on rows, and conversely, operations on rows can be replaced with operations on columns.
[Embodiment 4: Web scraping]
(Detailed web import settings)

取得範囲指定部22は、WebブラウザWBから取得する要素データが指定された後、Webデータ取得設定画面540を表示する。Webデータ取得設定画面では、ユーザが指定した要素データと同階層の要素データを取得するか否かを選択させる。また、同階層の要素データを取得する場合に当該同階層の要素データを同じ列に配置するかもしくは同じ行に配列するかの設定を受け付ける。これらの設定により、WebブラウザWBから取得するデータが表データとしてメモリ部15に保持される。 After the element data to be acquired from the web browser WB is specified, the acquisition range specifying unit 22 displays the web data acquisition setting screen 540 . The Web data acquisition setting screen allows the user to select whether or not to acquire element data in the same hierarchy as the element data specified by the user. In addition, when acquiring element data of the same layer, it accepts a setting as to whether to arrange the element data of the same layer in the same column or in the same row. With these settings, the data obtained from the web browser WB is held in the memory unit 15 as tabular data.

図32は、図33で、ユーザにより指定された要素データと同階層の要素データを取得することが選択された場合の画面である。同階層の要素データを取得することが選択された場合、取得範囲指定部22は、ユーザが指定した要素データのパスに基づいて、同階層の要素データを抽出可能な検索式を作成する。図32では、当該検索式により抽出されるパスに該当する要素データを強調表示される。 FIG. 32 shows a screen when acquisition of element data in the same hierarchy as the element data specified by the user is selected in FIG. When acquisition of element data of the same layer is selected, the acquisition range specifying unit 22 creates a search expression capable of extracting element data of the same layer based on the element data path specified by the user. In FIG. 32, the element data corresponding to the path extracted by the search formula are highlighted.

図36は、転記元アプリケーションとしてWebブラウザWBが指定されたときに、図8のステップS904において取得範囲設定部により取得範囲を設定するときに、取得範囲設定部が実行するフローチャートである。なお、本フローチャートはWebブラウザWBにデータを取得する対象のページが表示されている状態から、取得範囲設定部が実行するフローチャートを示す。WebブラウザWBを起動することと、データを取得する対象のページを表示することとは、別途操作レコード設定部48により設定されても良い。 FIG. 36 is a flowchart executed by the acquisition range setting unit when the acquisition range setting unit sets the acquisition range in step S904 of FIG. 8 when the web browser WB is specified as the transcription source application. Note that this flowchart shows a flowchart executed by the acquisition range setting unit from a state in which a page from which data is to be acquired is displayed on the web browser WB. Activation of the web browser WB and display of a page from which data is to be obtained may be set separately by the operation record setting unit 48 .

取得範囲設定部は、ステップS5701として、WebブラウザWBに表示される要素データの指定を受け付ける。取得範囲設定部は、ステップS5702で、WebブラウザWBの拡張機能を介して、WebブラウザWB上でユーザが指定した要素データのパスを取得する。取得範囲設定部は、ステップS5703で、取得したパスに基づいて、当該パスに該当する要素データを強調表示させる。図31は、ステップS5703により、ユーザが指定した要素データが強調表示された状態を示す。ユーザは、自身が指定した要素データを識別することができる。 In step S5701, the acquisition range setting unit receives designation of element data to be displayed on the web browser WB. In step S5702, the acquisition range setting unit acquires the path of the element data specified by the user on the web browser WB via the extended function of the web browser WB. In step S5703, the acquisition range setting unit highlights the element data corresponding to the acquired path based on the acquired path. FIG. 31 shows a state in which element data specified by the user is highlighted in step S5703. The user can identify the element data specified by him/herself.

取得範囲設定部は、ステップS5704で、ステップS5701でユーザが指定した要素データと同階層の要素データを取得するか否か判定する。ユーザが指定した要素データと同階層の要素データを取得する場合、ステップS5705として、ステップS5702で取得したパスに基づいて、ステップS5701でユーザが指定した要素データと同階層の要素データを取得するためのXpathを用いた検索式を生成する。本実施例において、ステップS5705における検索式の生成は、ステップS5702で取得するパスに基づくが、当該パスとして複数パスに基づいて検索式が生成されても良い。例えば、ユーザがステップS5701で指定した要素データと同階層の要素データであると認識する要素データの指定を受け付け、複数の要素データのパスに基づいて検索式が生成されても良い。この場合、ユーザの意図に対して同階層の要素データが抽出できる検索式が生成される確度が向上する。図32では、ステップS5705で生成された検索式により抽出される要素データが強調表示された状態を示す。ステップS5704でユーザが指定した要素データと同階層の要素データを取得しないと判定した場合、ステップS5708に進み、WebブラウザWBからのデータ取得範囲の設定を終了する。 In step S5704, the acquisition range setting unit determines whether or not to acquire element data on the same layer as the element data specified by the user in step S5701. When acquiring element data in the same layer as the element data specified by the user, in step S5705, based on the path acquired in step S5702, element data in the same layer as the element data specified by the user in step S5701 is acquired. Generate a search expression using the Xpath of . In this embodiment, the search formula is generated in step S5705 based on the path acquired in step S5702, but the search formula may be generated based on multiple paths. For example, a search formula may be generated based on paths of a plurality of element data by accepting specification of element data recognized as being in the same hierarchy as the element data specified by the user in step S5701. In this case, the probability of generating a search formula that can extract element data on the same level as intended by the user is improved. FIG. 32 shows a state in which element data extracted by the search formula generated in step S5705 is highlighted. If it is determined in step S5704 that the element data on the same layer as the element data designated by the user is not to be obtained, the process advances to step S5708 to finish setting the data acquisition range from the Web browser WB.

ステップS5705が完了すると取得範囲設定部はステップS5706で、同階層の要素データの配置方向の選択を受け付ける。ステップS5706で選択される要素データの配置方向は、WebブラウザWBから取得するデータを、メモリ部15で表データとして保持するときに、同階層の要素データが同じ列に配置されるようにするか、同じ行に配置されるようにするか、に反映される。図34は、ステップS5706において、同階層の要素データが同じ列に配置されるように設定された場合にメモリ部15で保持される表データの態様を示す。ステップS5706での選択が完了すると、取得範囲設定部は、ステップS5707として取得するデータの追加を受け付ける。ステップS5707で指定されるデータは、表データとしてメモリ部15に保持されるときに、ステップS5706で選択された配置にしたがって配置される。例えば、ステップS5706で、同階層の要素データが同じ列に配置されるように選択された場合、ステップS5707で指定されるデータは新たな列に配置されるデータとして取得される。図35は、ステップS5706において同階層の要素データが同じ列に配置されるように設定され、かつ、ステップS5707で、2種類のデータが追加された場合に、メモリ部15で保持される表データの態様を示す。なお、各ステップでの設定に応じて、図34、図35に示される表データの態様が、取得するデータのプレビューとして表示されてもよい。 When step S5705 is completed, the acquisition range setting unit receives selection of the arrangement direction of element data on the same layer in step S5706. The arrangement direction of the element data selected in step S5706 is whether the element data of the same hierarchy are arranged in the same column when the data acquired from the Web browser WB is held as table data in the memory unit 15. , to be placed on the same line, or reflected in the FIG. 34 shows an aspect of table data held in the memory unit 15 when element data of the same layer are arranged in the same column in step S5706. When the selection in step S5706 is completed, the acquisition range setting unit accepts addition of data to be acquired in step S5707. The data specified in step S5707 are arranged according to the arrangement selected in step S5706 when held in the memory unit 15 as table data. For example, when it is selected in step S5706 that element data of the same layer are arranged in the same column, the data specified in step S5707 is acquired as data arranged in a new column. FIG. 35 shows table data held in the memory unit 15 when element data of the same hierarchy are set to be arranged in the same column in step S5706 and two types of data are added in step S5707. shows an aspect of Depending on the settings in each step, the form of table data shown in FIGS. 34 and 35 may be displayed as a preview of the data to be acquired.

ステップS5707でのデータの追加が完了した後、ステップS5708に進みWebブラウザWBからのデータ取得範囲の設定を終了する。 After completing the addition of data in step S5707, the process advances to step S5708 to end the setting of the data acquisition range from the web browser WB.

以上のように、各実施形態に係る本願発明によれば、表データとして取得できるデータ群を、表データとして取得できるようにユーザにガイドすることで、自動化プログラムの作成を容易に行うことが可能である。特に自動化対象ソフトがExcelのような表計算ソフトであれば、自動認識や表の範囲設定を行うことができる。また自動化対象ソフトがWebブラウザであれば、Webスクレイピングの際の繰り返し方向の設定を容易に行える。さらに自動化対象ソフトが他の汎用的なプログラムであれば、操作内容として「データ取得」を選んだ際の、変数名設定が可能な画面を表示することで、表データに名称を付与して参照できるようにし、自動化プログラムの作成を容易に行える利点が得られる。 As described above, according to the present invention according to each embodiment, it is possible to easily create an automation program by guiding the user to acquire data groups that can be acquired as tabular data as tabular data. is. In particular, if the automation target software is spreadsheet software such as Excel, automatic recognition and table range setting can be performed. Also, if the software to be automated is a web browser, it is easy to set the direction of repetition during web scraping. Furthermore, if the software to be automated is another general-purpose program, by displaying a screen where variable names can be set when "Data Acquisition" is selected as the operation content, a name is given to the table data for reference. This has the advantage of making it possible to create automated programs easily.

本発明の自動化プログラム作成装置、自動化プログラム作成方法、自動化プログラム作成プログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器は、Excel等の表計算ソフトやWebブラウザ、その他の自動化対象ソフトに対する操作を自動化する自動化プログラムの作成を支援するRPAソフトなどに好適に利用できる。 The automation program creation device, the automation program creation method, the automation program creation program, the computer-readable recording medium, and the recording device of the present invention automate the operation of spreadsheet software such as Excel, web browsers, and other automation target software. It can be suitably used for RPA software that supports the creation of automated programs that

11…表示部
12…入力部;12a…キーボード;12b…マウス;12c…タッチパッド
13…バス
14…通信部
15…メモリ部
16…ストレージ部
20…プロセッサ部
21…概略手順作成部
22…取得範囲指定部
23…転記指定部;23a…転記先指定部;23b…転記単位指定部;23c…表操作部;23d…転記データプレビュー部
24…転記単位プレビュー部
25…自動化プログラム生成部
26…自動化プログラム実行部
31…繰返設定部
35…自動表認識実行部
48…操作レコード設定部
110…概略手順作成画面
111…概略手順アイコン
112…操作候補一覧
113…「追加」ボタン
114…操作選択一覧
115…「指定範囲を繰り返しにする」ボタン
117…「次へ」ボタン
118…「破棄して戻る」ボタン
119…繰り返し設定アイコン
121…アクティビティ表示欄
123…「自動表認識機能で取り出す」ボタン
124…「表計算ソフトのシートの範囲を指定」
125…「レコード機能で取り出す」ボタン
130…表計算ソフト取得範囲指定画面
132…表計算ソフト取込詳細指定欄
138…「次へ」ボタン
150…一般転記詳細設定画面
152…転記詳細指定欄
153…転記データ指定欄;153b…表データ選択欄;153c…転記単位選択欄;
154…転記単位プレビュー欄
155…表データ参照有無指定欄
156…実施操作決定欄
171…操作内容選択肢
186…「申請ID」欄
191…操作内容選択肢
202…「書き出すセルを個別に指定する」欄
208…「次へ」ボタン
220…アクティビティ一覧画面
221…概略アクティビティ表示欄
222…概略アクティビティヘッドライン部
223…概略名
224…概略ラベル
225…概略アクティビティ詳細表示領域
231…「ファイル選択」ボタン
232…「フォルダ選択」ボタン
234…「自動抽出」ボタン
235…「プレビュー」ボタン
236…「マニュアル抽出」ボタン
237…「設定」ボタン
280…操作レコード画面
300…操作レコード画面
301…表データ転記詳細設定ウィンドウ
302…表入力位置指定欄
303…表選択欄
304…表移動方向指定欄
305…行挿入指定欄
306…行削除指定欄
307…「表の移動を試す」ボタン
310…操作レコード画面
320…操作レコード画面
321…列名選択肢
358…「OK」ボタン
380…表ナビ画面
390…表操作画面
513…「Webページを開く」設定欄;513b…「設定」ボタン
514…「抽出対象の選択」欄:514b…「設定」ボタン
515…「繰り返し設定」欄;515b…「設定」ボタン
516…「出力の設定」欄;516b…「設定」ボタン
540…出力詳細設定画面
SS…表計算ソフト
WB…Webブラウザ
GS…自動化対象ソフト;GS1…経費精算アプリの「経費精算」フォーム
RS…RPAソフト
PC…コンピュータ
TW…半透明ウィンドウ
L1…表UIに対応する領域
11 Display unit 12 Input unit; 12a Keyboard; 12b Mouse; 12c Touch pad 13 Bus 14 Communication unit 15 Memory unit 16 Storage unit 20 Processor unit 21 General procedure creation unit 22 Acquisition range Designation unit 23: transcription designation unit; 23a: transcription destination designation unit; 23b: transcription unit designation unit; 23c: table operation unit; Execution unit 31 Repeat setting unit 35 Automatic table recognition execution unit 48 Operation record setting unit 110 General procedure creation screen 111 General procedure icon 112 Operation candidate list 113 Add button 114 Operation selection list 115 ``Repeat specified range'' button 117 ... ``Next'' button 118 ... ``Discard and return'' button 119 ... Repeat setting icon 121 ... Activity display column 123 ... ``Extract with automatic table recognition function'' button 124 ... ``Table Specify the range of the calculation software sheet"
125..."Extract by record function" button 130...Spreadsheet software acquisition range specification screen 132...Spreadsheet software import details specification field 138..."Next" button 150...General posting details setting screen 152...Posting details specification field 153... Transcription data specification column; 153b Table data selection column; 153c Transcription unit selection column;
154 Transcription unit preview column 155 Table data reference presence/absence specification column 156 Implementation operation determination column 171 Operation content options 186 Application ID column 191 Operation content options 202 Individually specify cells to be written out column 208 … “Next” button 220 … Activity list screen 221 … Summary activity display field 222 … Summary activity headline part 223 … Summary name 224 … Summary label 225 … Summary activity detail display area 231 … “Select file” button 232 … “Folder Select" button 234 --- "Automatic extraction" button 235 --- "Preview" button 236 --- "Manual extraction" button 237 --- "Setting" button 280 --- Operation record screen 300 --- Operation record screen 301 --- Table Data transfer detail setting window 302 --- Table Input position specification column 303 Table selection column 304 Table movement direction specification column 305 Row insertion specification column 306 Row deletion specification column 307 "Try table movement" button 310 Operation record screen 320 Operation record screen 321 Column name options 358 --- "OK" button 380 --- Table navigation screen 390 --- Table operation screen 513 --- "Open web page" setting column; 515b..."Setting" button 516..."Output setting"column;516b..."Setting" button 540...Output detail setting screen SS...Spreadsheet software WB...Web browser GS...Automation target Software; GS1... Expense adjustment form of expense adjustment application RS... RPA software PC... Computer TW... Translucent window L1... Area corresponding to table UI

Claims (21)

転記元の第一アプリケーションから取得したデータに基づき、転記先の第二アプリケーションに転記を行う操作を自動化する自動化プログラムの生成方法であって、
前記第一アプリケーションと、前記第二アプリケーションと、を選択させ、概略手順作成部で概略手順を作成する工程と、
前記概略手順作成部で選択された前記第一アプリケーションのデータの内、取得したい範囲を取得範囲指定部で選択する工程と、
前記取得範囲指定部で設定された範囲のデータを、表形式の表データとしてメモリ部に保持する工程と、
前記概略手順作成部で選択された前記第二アプリケーションの、前記表データに基づくデータを転記する転記先を指定する工程と、
前記概略手順作成部で作成された前記概略手順と、前記取得範囲指定部で設定された範囲と、前記転記先とに基づいて、自動化プログラムを生成する工程と、
を含む自動化プログラム作成方法。
A method for generating an automated program for automating the operation of posting to a second application as a posting destination based on data acquired from a first application as a posting source, comprising:
a step of selecting the first application and the second application and creating a schematic procedure in a schematic procedure creation unit;
a step of selecting a range to be acquired from the data of the first application selected by the outline procedure creation section by an acquisition range specifying section;
a step of holding the data in the range set by the acquisition range specifying unit in a memory unit as tabular data;
a step of designating a posting destination to which the data based on the table data of the second application selected by the outline procedure creating unit is to be posted;
generating an automation program based on the outline procedure created by the outline procedure creating unit, the range set by the acquisition range specifying unit, and the transcription destination;
How to create an automated program, including
請求項1に記載の自動化プログラム作成方法であって、
概略手順を作成する工程が、
前記第一アプリケーションからの前記データの取得動作と、
前記第二アプリケーションへの前記データの転記動作を含む自動化プログラム作成方法。
The method for creating an automated program according to claim 1,
The process of creating an outline procedure is
an operation of obtaining the data from the first application;
A method of creating an automated program including an operation of posting said data to said second application.
請求項2に記載の自動化プログラム作成方法であって、さらに、
前記第二アプリケーションに転記するデータ転記単位を転記単位指定部で設定させる工程を含む自動化プログラム作成方法。
The method for creating an automated program according to claim 2, further comprising:
A method of creating an automated program, comprising the step of setting a data transcription unit to be transcribed to the second application by a transcription unit designation unit.
請求項3に記載の自動化プログラム作成方法であって、さらに、
前記転記単位指定部で設定されたデータ転記単位に基づいて、前記概略手順作成部で選択された前記第二アプリケーションに転記される転記データを転記データプレビュー部に表示させる工程を含む自動化プログラム作成方法。
The method for creating an automated program according to claim 3, further comprising:
A method for creating an automated program, comprising the step of displaying, in a posted data preview section, the posting data to be posted in the second application selected in the outline procedure creating section based on the data posting unit set in the posting unit specifying section. .
請求項1~4のいずれか一項に記載の自動化プログラム作成方法であって、
前記取得範囲指定部で取得したい範囲を選択する工程が、前記第一アプリケーションの複数のデータファイルを選択する工程を含む自動化プログラム作成方法。
The automated program creation method according to any one of claims 1 to 4,
The method of creating an automated program, wherein the step of selecting the range to be acquired by the acquisition range specifying unit includes the step of selecting a plurality of data files of the first application.
請求項1~5のいずれか一項に記載の自動化プログラム作成方法であって、
前記表データを前記メモリ部に保持して取り込んだ後、前記メモリ部の表データに対する操作を受け付け、
取得するデータに前記表データに対する操作に対応する処理を行ったデータの転記を行う自動化プログラムを生成する、自動化プログラム作成方法。
The automated program creation method according to any one of claims 1 to 5,
After holding and fetching the table data in the memory unit, receiving an operation on the table data in the memory unit,
A method for creating an automated program for generating an automated program for transcribing data obtained by performing a process corresponding to an operation on the table data to data to be acquired.
請求項6に記載の自動化プログラム作成方法であって、
前記メモリ部の表データに対する操作が、フィルタの設定であり、
前記設定されたフィルタの条件に合致した値を参照して転記を行う自動化プログラムを作成する、自動化プログラム作成方法。
The automation program creation method according to claim 6,
the operation on the table data in the memory unit is the setting of a filter;
An automated program creation method, comprising creating an automated program that performs posting by referring to values that match the set filter conditions.
請求項6又は7に記載の自動化プログラム作成方法であって、
前記メモリ部の表データに対する操作が、第一の表データと第二の表データとを、当該表データに共通する列項目に基づいて結合する横方向の結合であり、
当該共通する列項目に基づいて、第一の表データに含まれるデータと第二の表データに含まれるデータとを対応付けて転記する自動化プログラムを作成する自動化プログラム作成方法。
The method for creating an automated program according to claim 6 or 7,
the operation on the table data in the memory unit is a horizontal join that joins the first table data and the second table data based on column items common to the table data;
An automated program creation method for creating an automated program that associates and transcribes data included in the first table data and data included in the second table data based on the common column item.
請求項6又は7に記載の自動化プログラム作成方法であって、
前記メモリ部の表データに対する操作が、複数の表データを、当該複数の表データの全列項目を有する表データに結合する縦方向の結合である自動化プログラム作成方法。
The method for creating an automated program according to claim 6 or 7,
The method of creating an automated program, wherein the operation on the table data in the memory unit is a vertical connection for connecting a plurality of table data to table data having all column items of the plurality of table data.
請求項6~9のいずれか一項に記載の自動化プログラム作成方法であって、
前記メモリ部の表データに対する操作が、複数の表データの差分の抽出である自動化プログラム作成方法。
The automated program creation method according to any one of claims 6 to 9,
A method for creating an automated program, wherein the operation on table data in the memory section is extraction of differences between a plurality of table data.
請求項6~9のいずれか一項に記載の自動化プログラム作成方法であって、
前記メモリ部の表データに対する操作が、複数の表データの共通項目の抽出である自動化プログラム作成方法。
The automated program creation method according to any one of claims 6 to 9,
A method for creating an automated program, wherein the operation on table data in the memory section is extraction of common items of a plurality of table data.
請求項1~11のいずれか一項に記載の自動化プログラム作成方法であって、
前記転記データを表示させる工程が、前記取得元データを表データに整形して、整形された表データを前記転記単位プレビュー部に表示させるものである自動化プログラム作成方法。
The automated program creation method according to any one of claims 1 to 11,
The automated program creation method, wherein the step of displaying the transcription data formats the acquisition source data into tabular data, and displays the formatted tabular data on the transcription unit preview section.
請求項1~12のいずれか一項に記載の自動化プログラム作成方法であって、さらに、
前記概略手順作成部で選択された前記第一アプリケーションのデータに対し、名前を付けて前記表データとして前記メモリ部に保持する工程を含む自動化プログラム作成方法。
The automated program creation method according to any one of claims 1 to 12, further comprising:
A method for creating an automated program, comprising the step of giving a name to the data of the first application selected by the outline procedure creation section and storing the data in the memory section as the table data.
請求項1~13のいずれか一項に記載の自動化プログラム作成方法であって、
前記転記単位指定部で設定させるデータ転記単位として、一行毎、全体、グルーピングの少なくともいずれかを選択可能としてなる自動化プログラム作成方法。
The automated program creation method according to any one of claims 1 to 13,
An automated program creation method in which at least one of line by line, whole, and grouping can be selected as a data transcription unit to be set by the transcription unit specifying unit.
請求項14に記載の自動化プログラム作成方法であって、
前記転記単位プレビュー部に表示される転記データが表形式で表示された状態で、前記設定されたデータ転記単位に応じた枠状が、該表形式に重ねて表示されてなる自動化プログラム作成方法。
The method for creating an automated program according to claim 14,
A method for creating an automated program, wherein the transcription data displayed in the transcription unit preview section is displayed in a tabular form, and a frame shape corresponding to the set data transcription unit is displayed superimposed on the tabular form.
請求項1~15のいずれか一項に記載の自動化プログラム作成方法であって、
前記第一アプリケーションが、Webブラウザであり、
前記取得範囲指定部で選択されるデータの範囲を、htmlファイル中で指定された特定範囲のデータと、同階層のデータとしてなる自動化プログラム作成方法。
The automated program creation method according to any one of claims 1 to 15,
the first application is a web browser;
A method of creating an automated program in which the range of data selected by the acquisition range specifying unit is data in the same hierarchy as the data of the specific range specified in the html file.
請求項1~16のいずれか一項に記載の自動化プログラム作成方法であって、
前記第一アプリケーションが、Webブラウザであり、
前記取得範囲指定部で選択されるデータの範囲を、複数ページに分かれて表示された場合に、htmlファイル中で指定された特定範囲のデータと対応する次ページのデータとしてなる自動化プログラム作成方法。
The automated program creation method according to any one of claims 1 to 16,
the first application is a web browser;
A method of creating an automated program in which, when the range of data selected by the acquisition range specifying unit is divided and displayed on a plurality of pages, the data of the specific range specified in the html file and the corresponding data of the next page.
転記元の第一アプリケーションから取得したデータに基づき、転記先の第二アプリケーションに転記を行う操作を自動化する自動化プログラムを生成する自動化プログラム作成プログラムであって、
前記第一アプリケーションと、前記第二アプリケーションと、を選択させ、概略手順作成部で概略手順を作成する機能と、
前記概略手順作成部で選択された前記第一アプリケーションのデータの内、取得したい範囲を取得範囲指定部で選択する機能と、
前記取得範囲指定部で設定された範囲のデータを、表形式の表データとしてメモリ部に保持する機能と、
前記概略手順作成部で選択された前記第二アプリケーションの、前記表データに基づくデータを転記する転記先を指定する機能と、
前記概略手順作成部で作成された前記概略手順と、前記取得範囲指定部で設定された範囲と、前記転記先とに基づいて、自動化プログラムを生成する機能と、
をコンピュータに実現させるための自動化プログラム作成プログラム。
An automation program creation program for generating an automation program for automating the operation of posting to a second application of a posting destination based on data acquired from a first application of a posting source,
a function of selecting the first application and the second application and creating a schematic procedure in a schematic procedure creation unit;
a function of selecting a range to be acquired from the data of the first application selected by the outline procedure creating section by an acquisition range specifying section;
a function of holding the data in the range set by the acquisition range specifying unit in a memory unit as tabular data;
a function of specifying a posting destination to which the data based on the table data of the second application selected by the outline procedure creating unit is to be posted;
a function of generating an automation program based on the outline procedure created by the outline procedure creating unit, the range set by the acquisition range specifying unit, and the transcription destination;
Automation program creation program for realizing on a computer.
請求項18に記載のプログラムを格納したコンピュータで読み取り可能な記録媒体又は記憶した機器。 A computer-readable recording medium or a device storing the program according to claim 18. 転記元の第一アプリケーションから取得したデータに基づき、転記先の第二アプリケーションに転記を行う操作を自動化する自動化プログラム作成装置であって、
前記第一アプリケーションと、前記第二アプリケーションとを選択させ、概略手順を作成するための概略手順作成部と、
前記概略手順作成部で選択された前記第一アプリケーションのデータの内、取得したい範囲を選択するための取得範囲指定部と、
前記取得範囲指定部で設定された範囲のデータを、表形式の表データとして保持するメモリ部と、
前記概略手順作成部で選択された前記第二アプリケーションの、前記表データに基づくデータを転記する転記先を指定する転記先指定部と、
前記概略手順作成部で作成された前記概略手順と、前記取得範囲指定部で設定された範囲と、前記転記先指定部で指定された転記先とに基づいて、自動化プログラムを生成する自動化プログラム生成部と、
を備える自動化プログラム作成装置。
An automated program creation device that automates the operation of posting to a second application as a posting destination based on data acquired from a first application as a posting source,
a schematic procedure creation unit for selecting the first application and the second application and creating a schematic procedure;
an acquisition range specifying unit for selecting a range to be acquired from the data of the first application selected by the outline procedure creation unit;
a memory unit that holds the data in the range set by the acquisition range specifying unit as tabular data;
a posting destination specifying unit for specifying a posting destination to which data based on the table data of the second application selected by the outline procedure creating unit is to be posted;
Automation program generation for generating an automation program based on the outline procedure created by the outline procedure creating unit, the range set by the acquisition range specifying unit, and the posting destination specified by the posting destination specifying unit. Department and
an automated programming device comprising:
転記元の第一アプリケーションから取得したデータに基づき、転記先の第二アプリケーションに転記を行う操作を自動化する自動化プログラム作成装置であって、
前記第一アプリケーションからの前記データの取得動作と、
前記第二アプリケーションへの前記データの転記動作を、
選択させ、
前記選択された前記第一アプリケーションの任意のデータファイルに含まれるデータの内、取得したい範囲を選択させ、
前記選択された範囲のデータを、表形式の取得元データとして、前記第二アプリケーションに転記するデータ転記単位を設定させ、
前記設定されたデータ転記単位に基づいて、前記選択された前記第二アプリケーションに転記される転記データを表示させ、
前記選択された前記第一アプリケーションの、前記設定された範囲の表形式の取得元データを、前記設定されたデータ転記単位に基づいて、前記選択された前記第二アプリケーションに転記する自動化プログラムを生成する
プロセッサ部と、
前記設定された前記表形式の取得元データを表データとして保持するメモリ部と、
を備える自動化プログラム作成装置。
An automated program creation device that automates the operation of posting to a second application as a posting destination based on data acquired from a first application as a posting source,
an operation of obtaining the data from the first application;
a posting operation of said data to said second application;
let me choose
causing a user to select a range of data to be obtained from data included in an arbitrary data file of the selected first application;
setting a data posting unit for posting the data in the selected range to the second application as source data in tabular format;
displaying the posting data to be posted to the selected second application based on the set data posting unit;
generating an automated program for transcribing the set range of source data in tabular format of the selected first application to the selected second application based on the set data transcription unit a processor unit that
a memory unit that holds the set acquisition source data in the tabular form as tabular data;
an automated programming device comprising:
JP2021163225A 2021-10-04 2021-10-04 Automation program generation apparatus, automation program generation method, automation program generation program, computer-readable recording medium, and recorded device Pending JP2023054409A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021163225A JP2023054409A (en) 2021-10-04 2021-10-04 Automation program generation apparatus, automation program generation method, automation program generation program, computer-readable recording medium, and recorded device
US17/900,900 US20230108676A1 (en) 2021-10-04 2022-09-01 Scenario management device, scenario management method, and a computer-readable recording medium recording a program causing a computer to function as the scenario management device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021163225A JP2023054409A (en) 2021-10-04 2021-10-04 Automation program generation apparatus, automation program generation method, automation program generation program, computer-readable recording medium, and recorded device

Publications (1)

Publication Number Publication Date
JP2023054409A true JP2023054409A (en) 2023-04-14

Family

ID=85874120

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021163225A Pending JP2023054409A (en) 2021-10-04 2021-10-04 Automation program generation apparatus, automation program generation method, automation program generation program, computer-readable recording medium, and recorded device

Country Status (1)

Country Link
JP (1) JP2023054409A (en)

Similar Documents

Publication Publication Date Title
JP4950482B2 (en) Filter by format and sort
KR101323011B1 (en) Command user interface for displaying selectable functionality controls in a database application
JP5174468B2 (en) Integrated systems, tools and methods for designing automated business process applications
US9996241B2 (en) Interactive visualization of multiple software functionality content items
US9038001B2 (en) System and method for graphically illustrating external data source information in the form of a visual hierarchy in an electronic workspace
US7496832B2 (en) Web page rendering based on object matching
US11270066B2 (en) Temporary formatting and charting of selected data
AU2018236875A1 (en) Graphical user interface that simplifies user creation of custom calculations for data visualizations
US7966561B1 (en) System and method for indicating information flow among documents
KR20100074155A (en) Auto-generation and syndication of tables as forms
CN103761218A (en) Method for annotating and commenting electronic document on computer
CN102067117B (en) Method for displaying and operating table
AU2007200384A1 (en) Definitions in master documents
KR20220083185A (en) An online report creation system using Excel tool
JP2023054409A (en) Automation program generation apparatus, automation program generation method, automation program generation program, computer-readable recording medium, and recorded device
US20110258224A1 (en) Method and computer program product for creating content management systems
JP2023054411A (en) Automation program creation device, automation program creation method, automation program creation program, computer-readable recording medium, and recorded device
WO2006137564A1 (en) Document processing device
JP2023054412A (en) Automation program creation apparatus, automation program creation method, automation program creation program, recording medium capable of being read by computer, and recording device
JP5168706B2 (en) Automatic definition system of data retrieval item information in electronic form system
JP2023054410A (en) Automation program generation apparatus, automation program generation method, automation program generation program, computer-readable recording medium, and recorded device
US20230108676A1 (en) Scenario management device, scenario management method, and a computer-readable recording medium recording a program causing a computer to function as the scenario management device
JP2019128892A (en) Inheritance relationship explanatory diagram creation device, and creation method, as well as control program
US11714962B2 (en) Systems and methods for automated review and editing of presentations
Korol Excel 2021/Microsoft 365 Programming By Example