JP2024007276A - Scenario management apparatus, scenario management program, recording medium, and scenario management method - Google Patents
Scenario management apparatus, scenario management program, recording medium, and scenario management method Download PDFInfo
- Publication number
- JP2024007276A JP2024007276A JP2022108675A JP2022108675A JP2024007276A JP 2024007276 A JP2024007276 A JP 2024007276A JP 2022108675 A JP2022108675 A JP 2022108675A JP 2022108675 A JP2022108675 A JP 2022108675A JP 2024007276 A JP2024007276 A JP 2024007276A
- Authority
- JP
- Japan
- Prior art keywords
- scenario
- activity
- sub
- variable
- parameter
- 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
Links
- 238000007726 management method Methods 0.000 title claims description 54
- 230000000694 effects Effects 0.000 claims abstract description 349
- 238000000605 extraction Methods 0.000 claims description 26
- 230000004044 response Effects 0.000 claims description 4
- 230000010076 replication Effects 0.000 claims description 3
- 101150088826 arg1 gene Proteins 0.000 abstract description 11
- 101100379633 Xenopus laevis arg2-a gene Proteins 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 33
- 238000000034 method Methods 0.000 description 33
- 238000004364 calculation method Methods 0.000 description 24
- 239000004108 vegetable carbon Substances 0.000 description 7
- 101100059320 Mus musculus Ccdc85b gene Proteins 0.000 description 6
- 239000000284 extract Substances 0.000 description 6
- 101000765037 Mus musculus Class E basic helix-loop-helix protein 40 Proteins 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 102100021934 Cyclin-D1-binding protein 1 Human genes 0.000 description 2
- 102100037922 Disco-interacting protein 2 homolog A Human genes 0.000 description 2
- 101000897488 Homo sapiens Cyclin-D1-binding protein 1 Proteins 0.000 description 2
- 101000805876 Homo sapiens Disco-interacting protein 2 homolog A Proteins 0.000 description 2
- 101000651236 Homo sapiens NCK-interacting protein with SH3 domain Proteins 0.000 description 2
- 101000955093 Homo sapiens WD repeat-containing protein 3 Proteins 0.000 description 2
- 239000004235 Orange GGN Substances 0.000 description 2
- 239000001654 beetroot red Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000004215 Carbon black (E152) Substances 0.000 description 1
- 239000004398 Ethyl lauroyl arginate Substances 0.000 description 1
- 239000004214 Fast Green FCF Substances 0.000 description 1
- WTDRDQBEARUVNC-LURJTMIESA-N L-DOPA Chemical compound OC(=O)[C@@H](N)CC1=CC=C(O)C(O)=C1 WTDRDQBEARUVNC-LURJTMIESA-N 0.000 description 1
- 101100260702 Mus musculus Tinagl1 gene Proteins 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000004126 brilliant black BN Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 239000004121 copper complexes of chlorophylls and chlorophyllins Substances 0.000 description 1
- 239000004316 dimethyl dicarbonate Substances 0.000 description 1
- 239000004120 green S Substances 0.000 description 1
- 239000004179 indigotine Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004177 patent blue V Substances 0.000 description 1
- 239000004323 potassium nitrate Substances 0.000 description 1
- 238000004801 process automation Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004317 sodium nitrate Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
この発明は、ユーザがコンピュータを用いて実行していた作業を自動化することでユーザの作業負担の軽減を図るRPA(Robotic Process Automation)技術に関する。 The present invention relates to RPA (Robotic Process Automation) technology that aims to reduce the user's work burden by automating the work that the user previously performed using a computer.
コンピュータによって動作するアプリケーション等を操作することでユーザが実行する作業を自動化するために、RPAを用いることができる。このRPAは、コンピュータによる処理の実行手順を示すシナリオ(「フロー」と称される場合もある)を実行することで、作業を自動化する。このシナリオは、コンピュータに実行させる処理をそれぞれ示す複数のアクティビティを組み合わせることで作成される。また、このようなシナリオを用いたRPAでは、シナリオを適宜編集したいといったニーズがある。これに対して特許文献1では、シナリオで使用する変数の設定値をカスタマイズすることで、シナリオを編集する技術が提案されている。
RPA can be used to automate tasks performed by a user by operating an application or the like run by a computer. This RPA automates work by executing a scenario (sometimes referred to as a "flow") that shows a procedure for executing a process by a computer. This scenario is created by combining multiple activities, each representing a process that you want the computer to perform. Furthermore, in RPA using such a scenario, there is a need to edit the scenario as appropriate. On the other hand,
ところで、シナリオにおいては、シナリオの複数箇所や別のシナリオの任意の箇所で、同様の順序で配列されたアクティビティが実行される場合がある。このような場合には、当該順序で配列されたアクティビティをシナリオのある箇所から抽出してこれをシナリオの別の箇所に流用できると、シナリオを編集するユーザにとって便利である。ただし、抽出対象となるアクティビティがそれより前に宣言される変数を使用するアクティビティであると、ユーザは流用する別の箇所で当該アクティビティが所望の動作を実現するように当該変数を設定する必要がある。つまり、ユーザは、アクティビティを抽出するにあたって当該変数を把握しつつ当該変数に設定値を入力する必要がある。しかしながら、アクティビティで使用される変数の把握や変数への設定値の入力はユーザにとって必ずしも簡単ではなかった。 Incidentally, in a scenario, activities arranged in the same order may be executed at multiple locations in the scenario or at any location in another scenario. In such a case, it would be convenient for the user who edits the scenario to be able to extract the activities arranged in that order from a certain part of the scenario and reuse them in another part of the scenario. However, if the activity to be extracted uses a variable declared earlier, the user will need to set the variable in another location to make the activity achieve the desired behavior. be. In other words, when extracting an activity, the user needs to understand the variables and input setting values for the variables. However, it has not always been easy for users to understand the variables used in an activity or input settings for the variables.
この発明は上記課題に鑑みなされたものであり、ユーザが所望のアクティビティをシナリオから抽出するにあたって、当該アクティビティで使用される変数の把握や変数への設定値の入力を簡単に実行可能とすることを目的とする。 This invention has been made in view of the above-mentioned problems, and it is an object of the present invention to enable a user to easily grasp the variables used in the activity and input setting values to the variables when extracting a desired activity from a scenario. With the goal.
本発明に係るシナリオ管理装置は、他のアプリケーションプログラムに対する操作を自動化するためのシナリオであって、操作を示す複数のアクティビティを含むシナリオを管理するシナリオ管理装置であって、複数のアクティビティのうちから抽出対象となるアクティビティを指定する抽出対象指定を受け付ける指定受付部と、指定受付部によって受け付けられた抽出対象となるアクティビティを一括して実行するための一括アクティビティを定義する一括アクティビティ作成部と、一括アクティビティで使用される変数であってシナリオにおいて抽出対象となるアクティビティより前に実行されるアクティビティで宣言される変数を、入力パラメータとして決定するパラメータ決定部と、シナリオで使用される一括アクティビティの入力パラメータに対する設定値の入力を受け付ける画面を表示するシナリオ表示部と、を備える。 A scenario management device according to the present invention is a scenario management device for managing a scenario for automating an operation for another application program, which includes a plurality of activities indicating operations, and the scenario management device manages a scenario that includes a plurality of activities indicating operations. A specification reception unit that accepts extraction target specifications that specify activities to be extracted; a batch activity creation unit that defines a batch activity to collectively execute the extraction target activities accepted by the specification reception unit; A parameter determination unit that determines variables used in activities that are declared in activities that are executed before the activity to be extracted in a scenario as input parameters, and input parameters of bulk activities used in scenarios. and a scenario display section that displays a screen that accepts input of setting values for.
本発明に係るシナリオ管理プログラムは、上記のシナリオ管理装置としてコンピュータを機能させる。 A scenario management program according to the present invention causes a computer to function as the scenario management device described above.
本発明に係る記録媒体は、上記のシナリオ管理プログラムをコンピュータにより読み出し可能に記録する。 A recording medium according to the present invention records the scenario management program described above so as to be readable by a computer.
本発明に係るシナリオ管理方法は、他のアプリケーションプログラムに対する操作を自動化するためのシナリオであって、操作を示す複数のアクティビティを含むシナリオを管理するシナリオ管理方法であって、複数のアクティビティのうちから抽出対象となるアクティビティを指定する抽出対象指定を指定受付部により受け付ける工程と、指定受付部によって受け付けられた抽出対象となるアクティビティを一括して実行するための一括アクティビティを定義する工程と、一括アクティビティで使用される変数であってシナリオにおいて抽出対象となるアクティビティより前に実行されるアクティビティで宣言される変数を、入力パラメータに決定する工程と、シナリオで使用される一括アクティビティの入力パラメータに対する設定値の入力を受け付ける画面を表示する工程と、を備える。 A scenario management method according to the present invention is a scenario for automating operations on other application programs, and is a scenario management method for managing a scenario including a plurality of activities indicating operations, wherein A process in which the specification reception unit receives an extraction target specification that specifies activities to be extracted, a process in which a batch activity is defined to collectively execute the extraction target activities accepted by the specification reception unit, and a batch activity. The process of determining variables used in the scenario that are declared in an activity that is executed before the activity to be extracted as an input parameter, and the setting values for the input parameters of the bulk activity used in the scenario. displaying a screen that accepts input of the information.
このように構成された本発明(シナリオ管理装置、シナリオ管理プログラム、記録媒体およびシナリオ管理方法)では、複数のアクティビティのうちから抽出対象となるアクティビティを指定する抽出対象指定が指定受付部によって受け付けられると、当該抽出対象となるアクティビティを一括して実行するための一括アクティビティが定義される。この際、一括アクティビティで使用される変数であってシナリオにおいて抽出対象となるアクティビティより前に実行されるアクティビティで宣言される変数が、入力パラメータに決定される。そして、シナリオで使用される一括アクティビティの入力パラメータに対する設定値の入力を受け付ける画面が表示される。したがって、ユーザは、表示された画面によって入力パラメータ(変数)を把握でき、さらに入力パラメータ(変数)に対して設定値を入力できる。こうして、ユーザが所望のアクティビティをシナリオから抽出するにあたって、当該アクティビティで使用される変数の把握や変数への設定値の入力を簡単に実行することが可能となる。 In the present invention (scenario management device, scenario management program, recording medium, and scenario management method) configured as described above, an extraction target designation that specifies an activity to be extracted from among a plurality of activities is accepted by the designation reception unit. Then, a batch activity is defined to collectively execute the activities to be extracted. At this time, a variable used in the batch activity and declared in an activity executed before the extraction target activity in the scenario is determined as an input parameter. Then, a screen is displayed that accepts input of setting values for the input parameters of the batch activity used in the scenario. Therefore, the user can grasp the input parameters (variables) from the displayed screen and can further input setting values for the input parameters (variables). In this way, when the user extracts a desired activity from a scenario, it becomes possible for the user to easily grasp the variables used in the activity and input set values to the variables.
以上のように、本発明によれば、ユーザが所望のアクティビティをシナリオから抽出するにあたって、当該アクティビティで使用される変数の把握や変数への設定値の入力を簡単に実行することが可能となっている。 As described above, according to the present invention, when a user extracts a desired activity from a scenario, it becomes possible for the user to easily grasp the variables used in the activity and input setting values for the variables. ing.
図1は本発明に係るシナリオ管理装置を備えたシナリオ管理システムの一例を示すブロック図である。このシナリオ管理システム1は、サーバ11と、サーバ11のクライアントとして機能する端末装置2とを備える。サーバ11はコンピュータであり、HDD(Hard Disk Drive)あるいはSSD(Solid State Drive)等で構成されたストレージ部111を備え、ストレージ部111には、シナリオ管理プログラム12が保存されている。
FIG. 1 is a block diagram showing an example of a scenario management system including a scenario management device according to the present invention. This
端末装置2は、RPAで使用されるシナリオを管理するためのコンピュータである。この端末装置2は、演算部21、メモリ部22、ストレージ部23、UI(User Interface)24、通信部25およびバス26を備え、演算部21、メモリ部22、ストレージ部23、UI24および通信部25の間における信号の送受信がバス26を介して実行される。
The
演算部21は、CPU(Central Processing Unit)等のプロセッサであり、メモリ部22、ストレージ部23、UI24および通信部25を制御する。メモリ部22は、メインメモリおよびキャッシュメモリ等を有し、演算部21からの指示に基づきデータを揮発的に記憶し、演算部21は、メモリ部22から読み出したデータを用いて演算を実行する。
The
ストレージ部23は、HDDおよびSSD等を有し、データを不揮発的に記憶する。UI24は、キーボード241およびマウス242等の入力機器と、ディスプレイ243等の出力機器とを有する。したがって、ユーザは、キーボード241およびマウス242を操作することで端末装置2に対する入力操作を実行でき、ディスプレイ243の表示を確認することでメモリ部22やストレージ部23に格納される各種データを確認できる。なお、入力機器と出力機器とを別体で構成する必要はなく、タッチパネルディスプレイによってこれらを一体的に構成してもよい。また、通信部25は、サーバ11との通信を実行する。この通信部25は、サーバ11からシナリオ管理プログラム12をダウンロードし、ストレージ部23は、当該シナリオ管理プログラム12を保存する。また、演算部21がシナリオ管理プログラム12を実行すると、シナリオ管理を実行するための図2の各機能部が演算部21に構成される。
The
ちなみに、端末装置2へのシナリオ管理プログラム12の提供態様は、サーバ11からのダウンロードに限られない。したがって、DVD(Digital Versatile Disc)といった光ディスクや、USB(Universal Serial Bus)メモリ等の他の記録媒体によって提供されてもよい。端末装置2は、これらの記録媒体から読み出したシナリオ管理プログラム12をストレージ部23に保存することができる。
Incidentally, the manner in which the
なお、本実施例において端末装置2が管理する、RPAで使用されるシナリオとは、本端末装置2のユーザもしくは他の人間が、シナリオ管理プログラム12以外のアプリケーションプログラムに対して実行する操作を、自動化するためのシナリオである。当該操作は、シナリオ管理プログラム12以外のアプリケーションプログラムから値を取得する操作と、値を処理する操作と、シナリオ管理プログラム12以外のアプリケーションプログラムに値を入力する操作と、を含む。シナリオ管理プログラム12以外のアプリケーションプログラムから値を取得する操作は、人間が、参照する情報をディスプレイ243等の出力機器から出力させるためにシナリオ管理プログラム12以外のアプリケーションプログラムを操作すること、を含む。また、シナリオ管理プログラム12以外のアプリケーションプログラムに値を入力する操作は、人間が、キーボード241やマウス242等の入力機器を用いてシナリオ管理プログラム12以外のアプリケーションプログラムに値が入力されるように操作することを含む。例えば、キーボード241を用いて値を直接入力することや、入力機器を用いてアプリケーションプログラムにより表示される選択肢から入力されるべき値を選択すること、を含む。
Note that in this embodiment, the scenario used in RPA that is managed by the
後述するように、シナリオは複数のアクティビティで構成され、各アクティビティはコンピュータに実行させる動作を規定する。アクティビティの具体例としては、
・CSV(Comma-Separated Values)形式等で記載された表の取得を示すアクティビティ
・当該表の値を所定の条件で絞り込むアクティビティ
・当該表から値を抽出するアクティビティ
・当該値を出力先(表、ウェブページ、メールアドレス等)に出力するアクティビティ
・所定のウェブページにアクセスするアクティビティ
・ウェブページから画像や文章を取得するアクティビティ
等の種々の具体例が挙げられる。そして、ユーザは、UI24によってアクティビティを所望の順序で配列することで、当該アクティビティを当該順序で実行するシナリオを作成することができる。特に本実施例では、シナリオを構成する一部のアクティビティを一括して実行するためのサブシナリオを作成することができる。
As described below, a scenario is composed of a plurality of activities, and each activity defines an operation to be performed by a computer. Examples of activities include:
・An activity that shows the acquisition of a table written in CSV (Comma-Separated Values) format, etc. ・An activity that narrows down the values in the table based on predetermined conditions ・An activity that extracts values from the table Various specific examples include activities that output to a web page, email address, etc., activities that access a predetermined web page, and activities that acquire images and text from a web page. By arranging the activities in a desired order using the
図2はサブシナリオを作成するために演算部に構成される各機能部の一例を示すブロック図である。上述のように、演算部21、メモリ部22およびUI24は、互いにバス26を介して通信を実行するが、図2においてバス26は省略されている。メモリ部22にはシナリオSmが格納されており、当該シナリオSmからアクティビティを抽出することでサブシナリオ(具体的には、サブシナリオを定義するサブシナリオ定義情報Ss)が作成される。演算部21には、演算部21によるシナリオ管理プログラム12の実行によって各機能部が構成される。図2に示すように、各機能部として、演算部21には、指定受付部31、サブシナリオ作成部32、サブシナリオ定義部33およびサブシナリオ管理部34が構成される。
FIG. 2 is a block diagram showing an example of each functional unit configured in the calculation unit to create a sub-scenario. As described above, the
指定受付部31は、サブシナリオとして抽出するアクティビティを指定するユーザのUI24に対する入力を受け付ける。さらに、指定受付部31は、作成されたサブシナリオに対してユーザがUI24により行う各種入力を受け付ける。サブシナリオ作成部32は、指定受付部31が受け付けた指定に基づき、サブシナリオを定義するサブシナリオ定義情報Ssを作成して、メモリ部22に格納する。また、サブシナリオ作成部32は、サブシナリオ定義情報Ssを構成するパラメータを決定するパラメータ決定部321を有する。サブシナリオ定義部33は、作成されたサブシナリオ定義情報Ssを管理する。サブシナリオ管理部34は、サブシナリオ定義情報Ssによって定義されるサブシナリオと、当該サブシナリオを利用するシナリオとの関係を管理する。また、サブシナリオ管理部34は、サブシナリオ定義情報Ssによって定義されるサブシナリオを、当該サブシナリオを構成するアクティビティに展開するサブシナリオ展開部341を有する。
The
図3はサブシナリオの作成方法の一例を示すフローチャートであり、図4Aないし図4Eは図3のフローチャートに基づき実行される処理の一例を示す図である。図3のフローチャートでは、図4Aに示すメインシナリオ画面Dmがディスプレイ243に表示された状態で開始される。
FIG. 3 is a flowchart showing an example of a sub-scenario creation method, and FIGS. 4A to 4E are diagrams showing an example of processing executed based on the flowchart of FIG. 3. The flowchart in FIG. 3 starts with the main scenario screen Dm shown in FIG. 4A being displayed on the
メインシナリオ画面Dmに示されるように、シナリオSmは、実行順序で配列された複数のアクティビティA11~A16、A21~A26によって構成される。メインシナリオ画面Dmにおいて各アクティビティは、当該アクティビティの種類を示すアクティビティ種類情報Cと、当該アクティビティの詳細を定義する定義情報Dと、の組み合わせとして表示される。ユーザは、定義情報Dの値Eを指定することによりアクティビティを編集する。 As shown in the main scenario screen Dm, the scenario Sm is composed of a plurality of activities A11 to A16 and A21 to A26 arranged in the order of execution. On the main scenario screen Dm, each activity is displayed as a combination of activity type information C indicating the type of the activity and definition information D defining details of the activity. The user edits the activity by specifying the value E of the definition information D.
アクティビティA11は、文字列型の変数の作成(換言すれば、宣言)を行うアクティビティであり、当該アクティビティを実行することにより、定義情報D11にしたがって変数V11が作成される。定義情報D11は、作成される変数V11の名称を指定する定義情報D111と、変数V11の実体値として取得される値を指定する定義情報D112とを含む。具体的には、アクティビティA11では、定義情報D111に指定される値E111として、文字列「残業時間ファイル」が入力される。そのため、「残業時間ファイル」との名称を有する変数V11が作成される。また、アクティビティA11では、定義情報D112に指定される値E112として、ファイルのパスである文字列が入力されており、このアクティビティを実行することにより、当該ファイルのパスが変数V11(残業時間ファイル)の実体値として取得される。ここの例では、パスにより特定されるファイルとして、所定の表計算ソフトのファイルが入力されているが、他の表計算ソフトのファイルでもよいし、表計算ソフト以外のソフトウェアで扱われるファイルでもよい。ここの例では、「佐藤氏」の残業時間に関する情報を示す表計算ファイルである「残業時間ファイル_佐藤」のパスを示す文字列が、変数V11の実体値として取得される。なお、定義情報D11においては、実体値である値E112が直接入力されることにより指定されるが、値E112は実体値に限られず、また、指定方法も直接入力に限られない。値E112として宣言済の変数が指定されても良いし、また、選択肢を表示してユーザに選択肢を選択させることにより値E112の指定を受け付けても良い。他のアクティビティについても同様である。 Activity A11 is an activity that creates (in other words, declares) a character string type variable, and by executing this activity, variable V11 is created according to definition information D11. The definition information D11 includes definition information D111 that specifies the name of the variable V11 to be created, and definition information D112 that specifies the value to be acquired as the actual value of the variable V11. Specifically, in activity A11, the character string "overtime time file" is input as value E111 specified in definition information D111. Therefore, a variable V11 named "overtime time file" is created. In addition, in activity A11, a character string that is a file path is input as value E112 specified in definition information D112, and by executing this activity, the path of the file is changed to variable V11 (overtime file). is obtained as the actual value of In this example, the file specified by the path is a file from a specified spreadsheet software, but it may be a file from another spreadsheet software or a file handled by software other than the spreadsheet software. . In this example, a character string indicating the path of "overtime hours file_Sato", which is a spreadsheet file indicating information regarding overtime hours of "Mr. Sato", is acquired as the actual value of variable V11. Note that in the definition information D11, the value E112, which is an entity value, is specified by being directly input, but the value E112 is not limited to an entity value, and the method of specification is not limited to direct input. A declared variable may be specified as the value E112, or the specification of the value E112 may be accepted by displaying options and allowing the user to select an option. The same applies to other activities.
アクティビティA12は、定義情報D12により特定されるパスの表計算ファイルを開くアクティビティである。定義情報D12は、表計算ファイルのパスを指定する。この例では、定義情報D12に指定される値E12としてアクティビティA11で宣言される変数V11の名称である「残業時間ファイル」が入力されているため、パスが、アクティビティA11で定義される変数V11で指定される。アクティビティA11の実行により、変数V11の実体値として、値E111の文字列、すなわち「残業時間ファイル_佐藤」のパスを示す文字列が取得されている。このため、アクティビティA12の実行によって、「残業時間ファイル_佐藤」が開かれる。 Activity A12 is an activity that opens a spreadsheet file with a path specified by definition information D12. Definition information D12 specifies the path of the spreadsheet file. In this example, "overtime time file", which is the name of variable V11 declared in activity A11, is input as value E12 specified in definition information D12, so the path is set to variable V11 defined in activity A11. It is specified. By executing activity A11, a character string with value E111, that is, a character string indicating the path of "overtime time file_Sato", is obtained as the actual value of variable V11. Therefore, by executing activity A12, "overtime time file_Sato" is opened.
アクティビティA13は、定義情報D13にしたがって、当該アクティビティが実行される時点でアクティブな表計算ファイルの特定のシートをアクティブにするアクティビティである。定義情報D13は、アクティブにするシートを特定する方法を指定する定義情報D131と、シートを特定するためのキーを指定する定義情報D132と、を含む。この例では、アクティビティA13の直前にアクティビティA12が実行されるため、アクティビティA12の実行によって開かれる「残業時間ファイル_佐藤」がアクティブな表計算ファイルである。また、この例では、定義情報D131に指定される値E131として「シート名」が選択されているため、シート名によりシートが特定される。さらに、この例では、定義情報D132に指定される値E132として文字列「残業時間計算」が入力されているため、アクティブにするシートとして、シート名が「残業時間計算」であるシートが特定される。すなわち、アクティビティA13では、アクティビティA12で開かれた「残業時間ファイル_佐藤」に含まれる「残業時間計算」のシートがアクティブにされる。 Activity A13 is an activity that activates a specific sheet of the spreadsheet file that is active at the time the activity is executed, according to definition information D13. The definition information D13 includes definition information D131 that specifies a method for specifying a sheet to be made active, and definition information D132 that specifies a key for specifying the sheet. In this example, since activity A12 is executed immediately before activity A13, the "overtime time file_Sato" opened by executing activity A12 is the active spreadsheet file. Furthermore, in this example, since "sheet name" is selected as the value E131 specified in the definition information D131, the sheet is identified by the sheet name. Furthermore, in this example, since the character string "Overtime Hours Calculation" is input as the value E132 specified in the definition information D132, the sheet with the sheet name "Overtime Hours Calculation" is specified as the sheet to be activated. Ru. That is, in activity A13, the "overtime time calculation" sheet included in "overtime time file_Sato" opened in activity A12 is activated.
アクティビティA14は、定義情報D14にしたがって変数V14を、アクティビティA15は定義情報D15にしたがって変数V15を、宣言するアクティビティであり、いずれも変数V14、V15の実体値として、当該アクティビティが実行される時点でアクティブなシートから値を取得するアクティビティである。この例では、アクティビティA14、A15は、アクティブなシートの特定のセルの値を実体値として取得するアクティビティであり、当該セルが定義情報D14およびD15によって特定される。この例では、アクティビティA13により「残業時間計算」のシートがアクティブであるため、当該シートのセルの値が実体値として取得される。定義情報D14は、作成される変数V14の名称を指定する定義情報D141と、セルを特定する方法を指定する定義情報D142と、セルを特定するためのキーを指定する定義情報D143と、を含む。アクティビティA14では、定義情報D141に指定される値E141として、文字列「西暦」が入力されるため、宣言される変数V14の変数名が「西暦」と指定される。また、定義情報D142に指定される値E142として、アルファベットで示される列と数字に示される行とによりセルを特定する方法を示す「A1形式指定」が選択され、定義情報D143に指定される値E143として文字列「C10」が入力されているため、特定のセルとして、「残業時間計算」シートのC列かつ10行目に位置するセルC10が特定される。アクティビティA14が実行されると、「西暦」を名称とする変数V14が宣言され、「残業時間計算」シートのセルC10に入力されている値が、実体値として変数V14に入力される。アクティビティA15においても、アクティブなシートは「残業時間計算シート」であり、定義情報D14と同様に、定義情報D15は、定義情報D151、D152、及びD153を含む。アクティビティA15では、定義情報D151に指定される値E151として、宣言される変数V15の変数名が「月度」と指定される。また、定義情報D151に指定される値E152として「A1形式指定」が選択され、定義情報D153に指定される値E153として文字列「B7」が入力されているため、特定のセルとして、「残業時間計算」シートのB列かつ7行目に位置するセルB7が特定される。アクティビティA15が実行されると、「月度」を名称とする変数V15が宣言され、「残業時間計算」シートのセルB7に入力されている値が、実体値として変数V15に入力される。 Activity A14 is an activity that declares variable V14 according to definition information D14, and activity A15 is an activity that declares variable V15 according to definition information D15. This is an activity that retrieves values from the active sheet. In this example, activities A14 and A15 are activities that acquire the value of a specific cell of the active sheet as an actual value, and the cell is specified by definition information D14 and D15. In this example, since the "overtime time calculation" sheet is active by activity A13, the value of the cell of the sheet is acquired as the actual value. The definition information D14 includes definition information D141 that specifies the name of the variable V14 to be created, definition information D142 that specifies the method for specifying the cell, and definition information D143 that specifies the key for specifying the cell. . In activity A14, since the character string "A.D." is input as the value E141 specified in the definition information D141, the variable name of the declared variable V14 is designated as "A.D.". Further, as the value E142 specified in the definition information D142, "A1 format specification" indicating a method of specifying cells by columns indicated by alphabets and rows indicated by numbers is selected, and the value specified in definition information D143 is selected. Since the character string "C10" is input as E143, the cell C10 located in column C and row 10 of the "overtime time calculation" sheet is specified as a specific cell. When the activity A14 is executed, a variable V14 whose name is "Western calendar" is declared, and the value input in the cell C10 of the "overtime calculation" sheet is input into the variable V14 as an actual value. In activity A15 as well, the active sheet is the "overtime calculation sheet", and like definition information D14, definition information D15 includes definition information D151, D152, and D153. In activity A15, the variable name of declared variable V15 is specified as "Month" as value E151 specified in definition information D151. In addition, since "A1 format specification" is selected as the value E152 specified in the definition information D151, and the character string "B7" is input as the value E153 specified in the definition information D153, "Overtime Cell B7 located in column B and row 7 of the "Time Calculation" sheet is specified. When activity A15 is executed, a variable V15 named "month" is declared, and the value input in cell B7 of the "overtime calculation" sheet is input into variable V15 as an actual value.
アクティビティA16は、定義情報D16にしたがって、特定の文字列の本文を有するメールを、特定のアドレスに送信するアクティビティである。定義情報D16は、メールの送信先を指定する定義情報D161と、本文を指定する定義情報D162と、を含む。この例では、定義情報D161に指定される値E161として、佐藤氏のアドレスを含む文字列が入力されているため「佐藤氏」にメールを送る。また、この例では、定義情報D162に指定される値E162として、文字列と、変数「西暦」(変数V14)と、変数「月度」(変数V15)と、が、入力されているため、実体値として入力される文字列と、変数「西暦」及び変数「月度」の実体値として取得される文字列とが組み合わされた文字列がメールの本文として特定される。すなわち、アクティビティA14により変数「西暦」(V14)の実体値として「2022」が取得され、アクティビティA15により変数「月度」(V15)の実体値として「5」が取得される場合に、アクティビティA16が実行されると、「2022年5月の残業時間は上限以下です」といった文字列を本文とするメールが、佐藤氏のアドレスに送信される。 Activity A16 is an activity that sends an email having a body of a specific character string to a specific address according to definition information D16. The definition information D16 includes definition information D161 that specifies the destination of the email, and definition information D162 that specifies the text. In this example, since a character string including Mr. Sato's address is input as the value E161 specified in the definition information D161, an e-mail is sent to "Mr. Sato." In addition, in this example, the character string, the variable "Year" (variable V14), and the variable "Month" (variable V15) are input as the value E162 specified in the definition information D162, so the entity A character string that is a combination of a character string input as a value and a character string acquired as the actual value of the variable "Year" and the variable "Month" is specified as the body of the email. That is, when activity A14 acquires "2022" as the actual value of the variable "Year" (V14), and activity A15 acquires "5" as the actual value of the variable "Month" (V15), activity A16 acquires When executed, an email containing a string such as ``Overtime hours in May 2022 will be below the upper limit'' will be sent to Mr. Sato's address.
アクティビティA21はアクティビティA11と同様のアクティビティである。本例では、変数「残業時間ファイル」に代えて、「残業時間ファイル(2)」を名称とする変数V21が宣言され、その実体値として、「鈴木氏」の残業時間に関する情報を示す表計算ファイルである「残業時間ファイル_鈴木」のパスを示す文字列が、変数V21に入力されるよう定義情報D21が指定されている。 Activity A21 is an activity similar to activity A11. In this example, instead of the variable "overtime time file", a variable V21 named "overtime time file (2)" is declared, and its actual value is a spreadsheet that shows information about the overtime hours of "Mr. Suzuki". The definition information D21 specifies that a character string indicating the path of the file "overtime time file_Suzuki" is input to the variable V21.
アクティビティA22はアクティビティA12と同様のアクティビティである。本例では、定義情報D12において、開くファイルを特定するパスが、アクティビティA21で定義される変数V21により指定されるため、アクティビティA22の実行によって、「残業時間ファイル_鈴木」が開かれる。 Activity A22 is an activity similar to activity A12. In this example, in the definition information D12, the path for specifying the file to be opened is specified by the variable V21 defined in the activity A21, so the execution of the activity A22 opens the "overtime hours file_Suzuki".
アクティビティA23はアクティビティA13と同様のアクティビティである。本例では、アクティビティA23の直前にアクティビティA22が実行されるため対象のファイルは異なるが、アクティビティA13と同様にシートが指定されるため、アクティビティA13と同様に「残業時間ファイル_鈴木」に含まれる「残業時間計算」のシートがアクティブにされる。 Activity A23 is an activity similar to activity A13. In this example, activity A22 is executed immediately before activity A23, so the target file is different, but the sheet is specified like activity A13, so it is included in "overtime file_Suzuki" like activity A13. The "overtime calculation" sheet is activated.
アクティビティA24、アクティビティA25は、アクティビティA14と同様のアクティビティである。アクティビティA24の定義情報D24として、アクティビティA24と同様に、変数V24の名称を指定する値E241と、当該変数V24の実体値として取得する値が入力されているセル指定するための値E242、及び値E243が入力されるため、アクティビティA14と同様の実行結果が得られる。
具体的には、アクティビティA24では、「西暦(2)」を名称とする変数V24を宣言し、変数V24の実体値として、アクティビティA23でアクティブにされたシートのセルC10の値が取得される。同様にアクティビティA25は、定義情報D25に指定される値E251、E252、及びE253に基づいて、「月度(2)」を名称とする変数V25を宣言し、変数V25の実体値にセルB7の値が入力される。
Activity A24 and activity A25 are activities similar to activity A14. As definition information D24 of activity A24, similarly to activity A24, a value E241 for specifying the name of the variable V24, a value E242 for specifying the cell in which the value to be acquired as the actual value of the variable V24 is input, and a value Since E243 is input, the same execution result as activity A14 is obtained.
Specifically, in activity A24, a variable V24 whose name is "Year (2)" is declared, and the value of cell C10 of the sheet activated in activity A23 is obtained as the actual value of variable V24. Similarly, activity A25 declares a variable V25 named "Month (2)" based on values E251, E252, and E253 specified in definition information D25, and sets the actual value of variable V25 to the value of cell B7. is input.
アクティビティA26はアクティビティA16と同様のアクティビティである。アクティビティA16と同様に、定義情報D26に指定される値により本文の文字列が特定され、かつ、特定のアドレスとして鈴木氏のアドレスが特定される。このため、アクティビティA16と同様に、変数「西暦(2)」(V14)の実体値が2022、変数「月度(2)」(V15)が5のとき、アクティビティA26を実行するとアクティビティA16と同様の本文を有するメールが、鈴木氏のアドレスに送信される。 Activity A26 is an activity similar to activity A16. Similar to activity A16, the character string of the text is specified by the value specified in definition information D26, and Mr. Suzuki's address is specified as the specific address. Therefore, similar to activity A16, when the actual value of the variable "year (2)" (V14) is 2022 and the variable "month (2)" (V15) is 5, when activity A26 is executed, the same result as activity A16 is generated. An email with the body text is sent to Mr. Suzuki's address.
上記に示すシナリオSmでは、「佐藤氏」と「鈴木氏」とに所定のメールを送るために、同様のアクティビティが同様の順序で並べられている。これに対して、図3のフローチャートによれば、ユーザは、例えば「佐藤氏」に所定のメールを送るためのシナリオから所望のアクティビティを一括して実行するサブシナリオを作成して、当該サブシナリオを複製することができる。複製したサブシナリオは、シナリオSmに含まれるアクティビティをまとめる編集や、シナリオSmを「高橋氏」にも所定のメールを送るシナリオに編集すること、に用いられる。 In the scenario Sm shown above, similar activities are arranged in the same order in order to send predetermined emails to "Mr. Sato" and "Mr. Suzuki." On the other hand, according to the flowchart in FIG. 3, the user creates a sub-scenario that executes desired activities all at once from a scenario for sending a predetermined email to "Mr. Sato," for example, and can be duplicated. The duplicated sub-scenario is used to edit the activities included in the scenario Sm, and to edit the scenario Sm into a scenario that also sends a predetermined email to "Mr. Takahashi."
図3のステップS101では、指定受付部31は、シナリオSmを構成する複数のアクティビティA11~A16、A21~A26のうちから一部のアクティビティが抽出対象に指定されたかを、ユーザによるUI24に対する操作に基づき判断する。例えば図4Bに示すように、ユーザは、一部のアクティビティA12~A15を選択しつつ右クリック等の所定の操作によって開くメニューM1から選択肢M11「サブシナリオに抽出」を選択することで、一部のアクティビティA12~A15を抽出対象に指定することができる(抽出対象指定)。メニューM1として、選択したアクティビティを編集する選択肢や、指定したアクティビティをシナリオ実行時の一時停止アクティビティに設定する選択肢M12「実行時この行で一時停止」が表示される。
In step S101 of FIG. 3, the
こうして指定受付部31が抽出対象の指定を受け付けると(ステップS101で「YES」)、サブシナリオ作成部32は、抽出対象に指定されたアクティビティA12~A15を、シナリオSmから抽出する(ステップS102)。
When the
ステップS103では、サブシナリオ作成部32のパラメータ決定部321が、抽出対象のアクティビティA12~A15に基づき入力パラメータを決定する。具体的には、パラメータ決定部321は次の入力パラメータ条件、すなわち
・抽出対象のアクティビティにより使用される変数である
・シナリオにおいて当該抽出対象のアクティビティより前に実行されるアクティビティによって宣言される変数である
という条件を満たす変数を入力パラメータに決定する。ここの例では、アクティビティA12~A15が抽出対象のアクティビティであるため、当該抽出対象のアクティビティより前に実行されるアクティビティはアクティビティA11であり、アクティビティA11では「残業時間ファイル」を名称とする変数V11が宣言される。また、変数V11は、アクティビティA12において定義情報D12に指定される値E12として使用される。このため、変数V11が当該入力パラメータ条件を満たす。したがってステップS103では、変数V11が入力パラメータに決定される。
In step S103, the
ステップS104では、パラメータ決定部321は、抽出対象のアクティビティA12~A15に基づき出力パラメータを決定する。具体的には、パラメータ決定部321は次の出力パラメータ条件、すなわち
・抽出対象のアクティビティの実行によって実体値が取得される変数である
・シナリオにおいて当該アクティビティより後に実行されるアクティビティで使用される変数である
という条件を満たす変数を出力パラメータに決定する。ここの例では、アクティビティA12~A15が抽出対象のアクティビティであり、アクティビティA14において「西暦」との名称の変数14の実体値が、アクティビティA15において「月度」との名称の変数15の実体値が、それぞれ取得される。また、抽出対象のアクティビティより後に実行されるアクティビティはアクティビティA16、A21~A26であり、変数V14(西暦)および変数V15(月度)はいずれも、アクティビティA16において定義情報D16に指定される値E162の一部として使用される。このため、変数V14(西暦)および変数V15(月度)のそれぞれが当該出力パラメータ条件を満たす。したがって、ステップS104では、変数V14(西暦)および変数V15(月度)のそれぞれが出力パラメータに決定される。
In step S104, the
この例では、出力パラメータ条件を満たす変数として、変数V14、V15の2個の変数が存在する。これに対して、パラメータ決定部321は、変数V14(西暦)およびV15(月度)のそれぞれを個別の出力パラメータに決定する。特にこの例では、変数V14(変数「西暦」)と変数V15(変数「月度」)とが、アクティビティA12~A15を抽出対象とするときの、出力パラメータ条件を満たす全ての変数である。出力パラメータ条件を満たす全ての変数の個数が3以上の時に、すべての変数が出力パラメータとして決定されても良いし、そのうちの少なくとも一つの変数が出力パラメータとして決定されても良い。
In this example, there are two variables, V14 and V15, that satisfy the output parameter condition. On the other hand, the
ステップS105では、サブシナリオ作成部32は、抽出対象のアクティビティA12~A15の後に終了アクティビティAfを追加する。この終了アクティビティAfは、出力パラメータに決定された変数として取得された実体値を結果として返す、すなわち、出力パラメータの実体値を出力するアクティビティである。この例では、変数V14(西暦)と変数15(月度)とが出力パラメータとして決定されるため、アクティビティAfは、変数V14(西暦)として取得された実体値と、変数15(月度)として取得された実体値と、を出力するアクティビティである。こうして作成されるサブシナリオが実行されると、当該サブシナリオに含まれるアクティビティA12~A15、Afがこの順で実行されて、出力パラメータの変数V14(西暦)および変数V15(月度)それぞれの実体値がサブシナリオAsの結果として出力される。
In step S105, the
こうして、入力パラメータの入力に対して出力パラメータを返すサブシナリオを定義するサブシナリオ定義情報Ssがサブシナリオ作成部32によって作成される。このサブシナリオ定義情報Ssは、サブシナリオを構成するアクティビティA12~A15、Af、入力パラメータIP、出力パラメータOPおよびサブシナリオの名称NSsを少なくとも含む。なお、特に指定のない限り、サブシナリオの名称NSsは「新しいサブシナリオ」に設定される。こうして作成されたサブシナリオ定義情報Ssは、サブシナリオ作成部32によってメモリ部22に格納される(ステップS106)。ユーザが特に指定しないときのサブシナリオの名称NSsとしての「新しいサブシナリオ」はあくまでも一例であり、例えば、「サブシナリオ1」のように数字と組み合わされた名称が設定され、あるサブシナリオが設定されるときに同一の名称が設定されたサブシナリオが既にある場合に、「サブシナリオ2」のように、当該数字がインクリメントされた名称が設定されてもよい。
In this way, the sub-scenario definition information Ss that defines a sub-scenario that returns an output parameter in response to an input parameter is created by the
ステップS107では、サブシナリオ管理部34は、抽出対象に指定されたアクティビティA12~A15をシナリオSmにおいてサブシナリオAsに置換する(図4C)。シナリオSmにおいて、サブシナリオAsを示すアイコンは、当該サブシナリオAsの名称NSsと、出力パラメータOPと、入力パラメータIPとを示す。なお、後述するように、メインシナリオ画面Dmにおいては、サブシナリオAsを複製することができるため、図4Cでは、他のサブシナリオAsとの区別のために、アクティビティA12~A15が置換されたサブシナリオAsをサブシナリオAs1として図示し、入力パラメータIPを入力パラメータIP1として図示する。また、本実施例において、サブシナリオAs1の出力パラメータは2つあるため、それぞれ、出力パラメータOP1、OP2として図示する。
In step S107, the
入力パラメータIP1の名称は「arg1」とされており、ステップS107により表示されるメインシナリオ画面Dmにおいて、ユーザは、UI24を操作することで、入力パラメータ「arg1」として扱われる値EIP1を示す定義情報DIP1を編集することができる。本実施例では、ステップS103により入力パラメータに変数「残業時間ファイル」が設定されている。すなわち、残業時間ファイルとの名称の変数V11の実体値として取得される値が、サブシナリオAsの入力パラメータに入力される実体値として扱われることが設定されている。このため、図4Cの通り、メインシナリオ画面Dmにおいて入力パラメータIP1を指定する定義情報DIP1に指定される値EIP1として、残業時間ファイルとの名称の変数V11が入力されている。なお、本実施例では値EIP1として変数が指定されるため、指定される変数の実体値として取得される値が入力パラメータIP1として扱われるが、値EIP1として実体値が指定されても良い。値EIP1として実体値が指定される場合、当該実体値が入力パラメータIP1として扱われる。また、本実施例においては、入力パラメータの名称に「arg」と言う文字列と数字との組み合わせが用いられるが、ほかの値が入力パラメータIP1の名称として用いられても良い。例えば、入力パラメータに決定される変数の名称が、入力パラメータIP1の名称として用いられても良い。この場合、図4CのサブシナリオAsを示すアイコンには、「残業時間ファイル=残業時間ファイル」と言う表示がなされる。変数の名称は、ユーザが、当該変数の内容を把握しやすいように設定する物であるため、この名称が入力パラメータの名称に用いられることにより、ユーザが入力パラメータとして設定すべき値を把握しやすくなる。
The name of the input parameter IP1 is "arg1", and in the main scenario screen Dm displayed in step S107, the user operates the
また、ユーザがUI24に定義表示指示を入力すると、サブシナリオ管理部34は、サブシナリオAsを定義するサブシナリオ定義情報Ssを示すサブシナリオ定義画面Ds(図4D)をディスプレイ243に表示させる。なお、定義表示指示は、例えば、図4CにおいてサブシナリオAsを示すアイコンの設定ボタンが選択されることで開くメニューから「サブシナリオの定義に移動」を選択することで実行できる。なお、定義表示指示は、サブシナリオAsを示すアイコンを選択しつつ右クリックで開くメニューから「サブシナリオの定義に移動」を選択することで実行されてもよい。
Further, when the user inputs a definition display instruction to the
図4Dに示すように、サブシナリオ定義情報Ssは、抽出対象となったアクティビティA12~A15と、当該アクティビティA12~A15に続く終了アクティビティAfとを示す。また、サブシナリオ定義情報Ssはヘッダー情報Hを有する。このヘッダー情報Hは、サブシナリオの名称、入力パラメータおよび出力パラメータに関する情報である。上述の通り、サブシナリオ定義情報Ssの作成時には、サブシナリオの名称NSsは「新しいサブシナリオ」となる。さらに、各出力パラメータOP1、OP2の型(ここの例では、いずれの型も「数値」)と、入力パラメータIP1の名称(ここの例では、「残業時間ファイル」)と、入力パラメータIP1の型(ここの例では、「文字列」)とが示される。なお、図4Dに例示するヘッダー情報Hでは、出力パラメータOP1、OP2の名称は明示されていないが、ユーザは、終了アクティビティAfの内容を確認することで、「月度」および「西暦」が出力パラメータの名称であると確認できる。 As shown in FIG. 4D, the sub-scenario definition information Ss indicates the activities A12 to A15 to be extracted and the ending activity Af following the activities A12 to A15. Further, the sub-scenario definition information Ss has header information H. This header information H is information regarding the name of the sub-scenario, input parameters, and output parameters. As described above, when creating the sub-scenario definition information Ss, the name NSs of the sub-scenario becomes "new sub-scenario". Furthermore, the type of each output parameter OP1 and OP2 (in this example, both types are "numeric"), the name of input parameter IP1 (in this example, "overtime file"), and the type of input parameter IP1. (in this example, "character string") is indicated. Although the names of the output parameters OP1 and OP2 are not clearly specified in the header information H illustrated in FIG. It can be confirmed that the name is
ユーザは、ディスプレイ243に表示されるサブシナリオ定義画面Dsにおいて、出力パラメータOPとして出力すべき値を編集できる。本実施例ではサブシナリオAsの出力パラメータOP2に変数「西暦」が設定されるため、変数「西暦」が宣言されるアクティビティA14の定義情報D14を編集することにより、出力パラメータOP2として出力すべき値が編集される。具体的には、図4Dに示されるサブシナリオ定義画面Dsにおいて「C10」という値E143が入力されている定義情報D143に他のセルを特定する値が入力されると、サブシナリオ定義部33は、当該セルの値を、サブシナリオAsの出力パラメータOP2として出力すべき値に設定する。これによれば、アクティビティA14で変数V14(西暦)の実体値として取得される値が編集され、サブシナリオAsは変数V14(西暦)の実体値として取得される値が出力パラメータとして出力すべき値に設定されるため、出力パラメータとして出力すべき値が編集される、と言える。同様に、サブシナリオ定義画面DsにおいてアクティビティA15を示すアイコンの「B7」という値E153が入力されている定義情報D153に他のセルを示すテキストが入力されると、サブシナリオ定義部33は、当該セルの値を、サブシナリオAsの出力パラメータOP1として出力すべき値に設定する。
The user can edit the value to be output as the output parameter OP on the sub-scenario definition screen Ds displayed on the
ユーザは、こうして作成されたサブシナリオAsを用いてシナリオSmを編集することができる。図4Eは、作成したサブシナリオAsを用いて編集されたシナリオSmのメインシナリオ画面Dmを示す。より詳細には、図4Cのメインシナリオ画面Dmから、図4Cに示すアクティビティA22~A25が削除され、代わりにサブシナリオAs2が配置され、サブシナリオAs2の入力パラメータIP2(入力パラメータ「Arg1」)の定義情報DIP2に指定される値EIP2として残業時間ファイル (2)との名称の変数V22が設定された状態を示す。ユーザが、アクティビティの削除、配置、及び定義情報の変更をする入力をUI24に対して実行すると、サブシナリオ管理部34が当該入力に応じてシナリオSmを編集する。図4EのシナリオSmでは、サブシナリオAs1がアクティビティA12~A15と同じ動作を実行し、サブシナリオAs2がアクティビティA22~A25と同じ動作を実行する。なお、本実施例においてサブシナリオAsは、「佐藤氏」と「鈴木氏」とに所定のメールを送るシナリオSmに含まれる複数のアクティビティをまとめる編集のために用いられるが、シナリオSmを、「高橋氏」に「佐藤氏」と同様の所定のメールを送るシナリオに編集するために用いられても良い。また、本実施例では、サブシナリオAs2において出力パラメータOP3、OP4の名称として、「月度」「西暦」が表示されているが、サブシナリオを複製する際に出力パラメータOPの名称が自動で変更されても良い。例えば、サブシナリオAs1における出力パラメータOP1、OP2と区別するために、「月度(1)」「西暦(1)」と言った名称に変更されてもよい。本実施例のようにサブシナリオAsは、シナリオSm中の別の位置で同様の処理をするため、や、異なる入力パラメータIPを入力して同様の処理をするために複製される。したがって、出力パラメータOPの実体値として取得される値は、サブシナリオAs1と複製されたサブシナリオAs2とで異なることがある。サブシナリオAsを複製したときに、出力パラメータOPの名称が自動で変更されると、異なる値を実体値として取得する出力パラメータ同士を、異なる出力パラメータとして扱いやすく、ユーザが容易にシナリオを管理することができる。さらに、本実施例では図4Cに示すアクティビティA22~A25に代えてサブシナリオAsを配置する編集がなされているが、アクティビティA22~A25を抽出対象として指定され、図3に示すフローチャートに基づきサブシナリオAsが作成されても良い。この場合、作成されるサブシナリオAsは、アクティビティA12~A15が指定されて作成されるサブシナリオAsと異なるサブシナリオとして扱われるため、異なるサブシナリオ名称が付されることが好ましい。
The user can edit the scenario Sm using the sub-scenario As created in this way. FIG. 4E shows the main scenario screen Dm of the scenario Sm edited using the created sub-scenario As. More specifically, activities A22 to A25 shown in FIG. 4C are deleted from the main scenario screen Dm in FIG. 4C, subscenario As2 is placed in their place, and input parameter IP2 (input parameter "Arg1") of subscenario As2 is A state is shown in which a variable V22 named overtime time file (2) is set as the value EIP2 specified in the definition information DIP2. When the user performs input to the
ちなみに、上述のように作成されるサブシナリオAsの名称は、ユーザのUI24への入力に応じて適宜編集できる。図5はサブシナリオ名称編集の一例を示すフローチャートであり、図6Aないし図6Bは図5のフローチャートに基づき実行される処理の一例を示す図である。
Incidentally, the name of the sub-scenario As created as described above can be edited as appropriate according to the user's input to the
図5のステップS201では、指定受付部31は、サブシナリオ定義画面Dsのヘッダー情報Hが示すサブシナリオ名称NSsが編集されたかを、ユーザによるUI24に対する操作に基づき判断する。サブシナリオAsの名称NSsが「新しいサブシナリオ」(図4D)から「残業時間を取得」に変更されたのを指定受付部31が受け付けると(ステップS201で「YES」)、サブシナリオ定義部33は、サブシナリオ定義情報SsにおいてサブシナリオAsの名称NSsを「新しいサブシナリオ」から「残業時間を取得」に変更する(ステップS202)。図6Aは、図4Dから名称NSsが「新しいサブシナリオ」から「残業時間を取得」に変更された状態のサブシナリオ定義画面Dsを示す。また、ステップS203では、サブシナリオ管理部34は、サブシナリオAsを呼び出すシナリオSmにおいて、当該サブシナリオAsを示すアイコンにおけるサブシナリオAsを示す名称を「残業時間を取得」に変更する。図6Bは、サブシナリオ管理部34により、シナリオSmにおいて、サブシナリオAsを示す名称NSsが「残業時間を取得」に変更された状態を示す。こうして、サブシナリオ定義画面DsにおけるサブシナリオAsの名称変更が、シナリオSmを表示するメインシナリオ画面Dmに反映される。なお、本実施例では、シナリオSmがサブシナリオAsを呼び出すため、シナリオSmを表示するメインシナリオ画面Dmに名称変更が反映されるが、当該サブシナリオAsを呼び出す部分に反映されればよい。例えば、別のサブシナリオがサブシナリオAsを呼び出す場合、サブシナリオAsを呼び出すサブシナリオを表示する画面に、サブシナリオAsの名称変更が反映される。
In step S201 of FIG. 5, the
なお、サブシナリオAsと、シナリオSmにおける当該サブシナリオAsとの呼び出し元との関係は、シナリオSmをコンパイルした結果に基づき判断できる。つまり、シナリオSmに対してなにかしらの編集がユーザにより実行される度に、演算部21はシナリオSmをコンパイルする。一方、サブシナリオ定義情報Ssによって定義されるサブシナリオAsと、シナリオSmで呼び出されるサブシナリオAsとの関係は、コンパイル結果を参照することで把握できる。これは、オブジェクト指向のプログラム言語において、クラスとインスタンスとの関係がコンパイル結果から把握できることに類似する。
Note that the relationship between the sub-scenario As and the caller of the sub-scenario As in the scenario Sm can be determined based on the result of compiling the scenario Sm. That is, each time the user performs some kind of editing on the scenario Sm, the
以上に説明する実施例では、複数のアクティビティA11~A16、A21~A26のうちから抽出対象となるアクティビティA12~A15を指定する抽出対象指定が指定受付部31によって受け付けられると(ステップS101)、当該抽出対象となるアクティビティを一括して実行するためのサブシナリオAs(一括アクティビティ)がサブシナリオ作成部32によって定義される(ステップS102~S105)。この際、サブシナリオAs(すなわち、抽出対象のアクティビティA12~A15)で使用される変数であってシナリオSmにおいて抽出対象のアクティビティA12~A15より前に実行されるアクティビティA11で宣言される変数が、入力パラメータIPに決定される(ステップS103)。そして、シナリオSmで使用されるサブシナリオAsの入力パラメータIP(入力パラメータ「arg1」)に対する設定値(残業時間ファイルとの名称の変数V11)の入力を受け付けるメインシナリオ画面Dm(図4C)がディスプレイ243に表示される。したがって、ユーザは、表示されたメインシナリオ画面DmによってサブシナリオAsの入力パラメータを把握でき、さらに入力パラメータに対して設定値(変数V11(残業時間ファイル)、変数V21(残業時間ファイル(2))等)を指定できる。こうして、ユーザが所望のアクティビティA12~A15をシナリオSmから抽出するにあたって、当該アクティビティA12~A15で使用される入力パラメータの把握や入力パラメータへの設定値の指定を簡単に実行することが可能となる。 In the embodiment described above, when the extraction target designation that designates the activities A12 to A15 to be extracted from among the plurality of activities A11 to A16 and A21 to A26 is received by the designation reception unit 31 (step S101), A sub-scenario As (batch activity) for collectively executing activities to be extracted is defined by the sub-scenario creation unit 32 (steps S102 to S105). At this time, variables used in sub-scenario As (that is, activities A12 to A15 to be extracted) and declared in activity A11 that is executed before activities A12 to A15 to be extracted in scenario Sm are: The input parameter IP is determined (step S103). Then, the main scenario screen Dm (FIG. 4C) that accepts the input of the setting value (variable V11 named overtime file) for the input parameter IP (input parameter "arg1") of the sub-scenario As used in the scenario Sm is displayed. 243. Therefore, the user can understand the input parameters of the sub-scenario As from the displayed main scenario screen Dm, and also set values for the input parameters (variable V11 (overtime time file), variable V21 (overtime time file (2)) etc.) can be specified. In this way, when the user extracts the desired activities A12 to A15 from the scenario Sm, it becomes possible for the user to easily grasp the input parameters used in the activities A12 to A15 and specify the setting values for the input parameters. .
また、サブシナリオAsは出力パラメータの実体値を出力し、シナリオSmでサブシナリオAsより後に実行されるアクティビティは、サブシナリオAsから出力される出力パラメータの実体値を使用する。これに対して、パラメータ決定部321は、抽出対象となるアクティビティA12~A15の実行によって実体値が取得される変数であって、シナリオSmにおいて抽出対象となるアクティビティA12~A15より後に実行されるアクティビティA16で使用される変数V14(西暦)および変数V15(月度)を出力パラメータに決定する(ステップS104)。かかる構成では、サブシナリオAsを実行した結果であるサブシナリオAsの出力パラメータが自動的に決定され、ユーザの負担軽減が図られている。なお、ステップS104で出力パラメータに決定される変数は、当該変数の実体値をサブシナリオAsの実行結果として、サブシナリオAsより後に実行されるアクティビティに出力されるように、アクティビティAfにより出力される値に設定される。
Further, the sub-scenario As outputs the actual value of the output parameter, and the activity executed after the sub-scenario As in the scenario Sm uses the actual value of the output parameter output from the sub-scenario As. On the other hand, the
また、パラメータ決定部321は、出力パラメータの型を、当該出力パラメータに決定された変数の実体値の型に決定する(ステップS104)。かかる構成では、出力パラメータOP1、OP2(西暦、月度)の型が自動的に決定され、ユーザの負担軽減が図られている。
Further, the
また、パラメータ決定部321は、抽出対象となるアクティビティA12~A15の実行によって実体値が取得される変数であって、シナリオSmにおいて抽出対象となるアクティビティA12~A15より後に実行されるアクティビティで使用される変数として、変数V14(西暦)および変数V15(月度)といった2個の変数V14、V15(第一および第二変数)が存在する場合、変数V14、V15のそれぞれを出力パラメータに決定する(第一および第二出力パラメータ)。したがって、サブシナリオAsが実行されると、サブシナリオAsは、変数V14(西暦)の実体値と、変数V15(月度)の実体値とを出力する。これに対して、ディスプレイ243(シナリオ表示部)は、2個の出力パラメータOP1、OP2を互いに独立して表示して各々の編集を受け付けるサブシナリオ定義画面Dsを表示する。かかる構成では、ユーザは、サブシナリオAsの実行に伴って出力される2個の出力パラメータOP1、OP2(西暦、月度)を把握して、これらの出力パラメータOP1、OP2(西暦、月度)を編集する作業を簡単に行うことができる。ここで、出力パラメータOP1、OP2を編集する作業とは、例えば出力パラメータOP1、OP2に対する設定値を変更する作業等を示す。なお、本実施例においてサブシナリオAsには複数の出力パラメータOP1、OP2を設定することができる。サブシナリオに対して設定できる出力パラメータが一つの場合と比較して、ユーザは、複数の出力パラメータを、同一の入力パラメータに基づいて得られる値として把握することができる。特に本実施例では、上述の通り、出力すべき値が、その数が2以上であっても、出力パラメータOP1、OP2として設定されるため、ユーザがサブシナリオAsの概要を把握しやすい。
Further, the
また、サブシナリオ管理部34は、シナリオSmにおける抽出対象のアクティビティA12~A15の存在範囲、すなわちアクティビティA11とアクティビティA16との間、とは異なる複製範囲(アクティビティA22~A25の存在範囲)へのサブシナリオAsの複製を、UI24(指定受付部)への入力に応じて実行して、UI24のディスプレイ243に表示する(図4E)。かかる構成では、サブシナリオAsをシナリオSmにおける複数の範囲で流用することができ、シナリオ編集を行うユーザにとって便利である。
Further, the
ところで、上記のように抽出したサブシナリオAsにおいて、入力パラメータを追加することができる。図7は入力パラメータ追加の一例を示すフローチャートであり、図8Aないし図8Cおよび図9Aないし図9Cは図7のフローチャートに基づき実行される処理の一例を示す図である。 By the way, input parameters can be added to the sub-scenario As extracted as described above. FIG. 7 is a flowchart showing an example of adding an input parameter, and FIGS. 8A to 8C and FIGS. 9A to 9C are diagrams showing an example of processing executed based on the flowchart of FIG. 7.
図7のステップS301では、指定受付部31は、サブシナリオ定義画面Dsにおいて入力パラメータへの追加対象が選択されたかを、ユーザによるUI24に対する操作に基づき判断する。ユーザは、追加対象をクリックすることで追加対象を選択することができる(ステップS301で「YES」)。図8Aは、指定受付部31が、アクティビティA15の、定義情報D153に指定される値E153「B7」が選択されたと判断し、ステップS302の指定を受け付けるためのメニューM3が表示された状態を示す。ユーザが追加対象として値E153を選択した状態で、ユーザがメニューM3に表示される選択肢から選択肢M31「入力パラメータに追加」を選択すると、指定受付部31は、当該追加対象を入力パラメータ化する指定を受け付けたと判断する(ステップS302で「YES」)。このように、ステップS301、S302では、サブシナリオAsで使用する変数あるいは実体値のうちから入力パラメータに追加する追加対象が指定される(入力パラメータ指定)。なお、ユーザが、当該メニューから「入力パラメータに追加」以外を選択すると、図7のフローチャートは終了する。
In step S301 in FIG. 7, the
ステップS303では、サブシナリオ定義部33は、追加対象が実体値およびサブシナリオ内で宣言される変数のいずれであるかを判断する。図8Aの例で追加対象として選択される値「B7」は、変数ではなく実体値である。このため、図8Aの例では、ステップS303においてサブシナリオ定義部33は、追加対象は実体値であると判断する。
In step S303, the
そして、サブシナリオ定義部33は、追加対象である値「B7」に対応する新たな変数V31を作成して(ステップS304)、サブシナリオ定義情報Ssにおいて値「B7」を変数V31に置換する(ステップS305)。本実施例において、変数V31の名称は「新しい変数」であり、図8Bに示すように、サブシナリオ定義情報SsのアクティビティA15において値E153としての値「B7」が変数V31(変数「新しい変数」)に置換される。さらに、サブシナリオ定義部33は、変数V31を入力パラメータIPとして定義する(ステップS306)。これによって、図8Bに示すように、サブシナリオ定義情報Ssのヘッダー情報Hにおいて、変数V31としての変数「新しい変数」が入力パラメータIPaとして追加される。この入力パラメータIPaの型は、ステップS301、S302で追加対象として選択された値「B7」の型(「文字列」)に自動的に設定される(ステップS307)。
Then, the
ステップS304~S307の実行結果は、サブシナリオ定義部33によって、メモリ部22に格納されるサブシナリオ定義情報Ssに随時更新される(ステップS308)。また、サブシナリオ管理部34は、サブシナリオ定義情報Ssの更新をシナリオSmに反映させる(ステップS309)。その結果、ディスプレイ243に表示されるメインシナリオ画面Dm(図8C)に示されるように、シナリオSmで呼び出される各サブシナリオAsにおいて、サブシナリオAsの入力パラメータIPとして入力パラメータIPaが追加されるとともに、入力パラメータIPaに対応する値として、ステップS301、S302で追加対象として選択された値「B7」が定義情報DIP2に設定される。具体的には、サブシナリオ定義部33は、入力パラメータIPaに対応する値「B7」を、入力パラメータIPaと関連付けてサブシナリオ定義情報Ssに追加する。そして、サブシナリオ管理部34は、サブシナリオ定義情報Ssを参照することで、入力パラメータIPaに対応する値「B7」を確認して、メインシナリオ画面DmのサブシナリオAsの入力パラメータIPaに対して値「B7」を設定する。これによれば、構成するアクティビティA15の定義情報D153に値「B7」が指定される、すなわち、値「B7」が変数V31に置換される前のサブシナリオAsを、構成するアクティビティA15の定義情報D153に変数V31が指定される、すなわち変数V31に置換された後のサブシナリオAsとで、同様の実行結果が得られる。より詳細には、サブシナリオAsで、実体値「B7」を用いて実行されるアクティビティA15が、実体値として値「B7」を取得する変数V31を用いて実行されるアクティビティに置換されるため、同様の実行結果が得られる。
The execution results of steps S304 to S307 are updated by the
なお、ユーザは、メインシナリオ画面Dmに示されるサブシナリオAsの入力パラメータIPaに入力すべき実体値を適宜変更できる。具体的には、ユーザは、入力パラメータIPaに入力すべき実体値を定義する定義情報DIPaとして値「B7」が入力されている状態から、シートの他のセル指定する文字列を定義情報DIPaとして入力することで、入力パラメータIPaに入力すべき実体値に当該文字列を指定することができ、これにより、サブシナリオAsに入力される実体値が当該文字列に変更される。また、定義情報DIPaとして任意の変数を指定することができ、この場合は、当該変数の実体値として取得される値が、入力パラメータIPaに入力される。 Note that the user can appropriately change the actual value to be input into the input parameter IPa of the sub-scenario As shown on the main scenario screen Dm. Specifically, the user enters a character string specifying another cell on the sheet as the definition information DIPa from a state where the value "B7" is input as the definition information DIPa that defines the actual value to be input to the input parameter IPa. By inputting the character string, the character string can be specified as the entity value to be input to the input parameter IPa, and thereby the entity value input to the sub-scenario As is changed to the character string. Further, any variable can be specified as the definition information DIPa, and in this case, the value acquired as the actual value of the variable is input to the input parameter IPa.
一方、図9Aは、ステップS301により、サブシナリオAsのアクティビティA15において宣言される変数「月度」が選択されてメニューM3が表示された状態が示される。このメニューM3における選択肢M31が選択されることにより、変数「月度」が追加対象に選択される。そのため、ステップS303において、サブシナリオ定義部33は、追加対象は、サブシナリオ内で宣言される変数であると判断する。この場合、サブシナリオ定義部33は、追加対象である変数「月度」を入力パラメータIPaとして定義する(ステップS310)。これによって、図9Bに示すように、サブシナリオ定義情報Ssのヘッダー情報Hにおいて、変数「月度」が入力パラメータとして追加される。次にサブシナリオ定義部は、図9Bに示すように、選択された変数「月度」が宣言されるアクティビティA15をサブシナリオ定義情報Ssから削除し、アクティビティA15に相当するアクティビティAaが、シナリオSmにおいてサブシナリオAsが実行されるより前に実行されるように追加される(ステップS311)。そして、サブシナリオ定義情報Ssのヘッダー情報Hにおいて追加された入力パラメータOP2としての「月度」の型は、追加対象として選択された変数としての「月度」の型(「数値」)に自動的に設定される(ステップS307)。
On the other hand, FIG. 9A shows a state in which the variable "Month" declared in activity A15 of sub-scenario As is selected in step S301 and menu M3 is displayed. By selecting the option M31 in this menu M3, the variable "Month" is selected as an addition target. Therefore, in step S303, the
ステップS310、S311、S307の実行結果は、サブシナリオ定義部33によって、メモリ部22に格納されるサブシナリオ定義情報Ssに随時更新される(ステップS308)。また、サブシナリオ管理部34は、サブシナリオ定義情報Ssの更新をシナリオSmに反映させる(ステップS309)。その結果、ディスプレイ243に表示されるメインシナリオ画面Dm(図9C)に示されるように、シナリオSmで呼び出された各サブシナリオAsにおいて、入力パラメータIPaが追加されるとともに、入力パラメータIPaを定義する定義情報DIPaに指定される値として、ステップS301、S302で追加対象として選択された変数「月度」が設定される。さらにこの場合、サブシナリオAsで変数「月度」が使用されるため、サブシナリオAsが実行されるより前に変数「月度」が宣言されるように、変数「月度」を宣言するアクティビティAaが、シナリオSmに追加される。これによれば、サブシナリオAsの入力パラメータIPaに変数「月度」を追加する前、すなわちサブシナリオAsを構成するアクティビティA15の実行結果として変数「月度」の実体値が取得されるのと同様に、サブシナリオAsの入力パラメータIPaに変数「月度」を追加した後にも、変数「月度」の実体値が取得される。
The execution results of steps S310, S311, and S307 are updated by the
なお、ユーザは、メインシナリオ画面Dmに示されるサブシナリオAsの入力パラメータIPaに入力すべき実体値を適宜変更できる。具体的には、ユーザは、入力パラメータIPaに入力すべき実体値を定義する定義情報DIPaとして入力される値に対して他の値を入力することで、入力パラメータIPaに入力される実体値を変更できる。 Note that the user can appropriately change the actual value to be input into the input parameter IPa of the sub-scenario As shown on the main scenario screen Dm. Specifically, the user inputs a different value to the value input as definition information DIPa that defines the entity value to be input to the input parameter IPa, thereby changing the entity value to be input to the input parameter IPa. Can be changed.
また、本実施例において、サブシナリオAsに含まれる変数のうち、サブシナリオAsより前に宣言される変数は、サブシナリオを作成するときに自動で入力パラメータに決定されるが、ステップS301とステップS302により、入力パラメータとして選択されてもよい。この場合、ステップS310と同様の処理により、当該変数が入力パラメータとして定義される。 Furthermore, in this embodiment, among the variables included in sub-scenario As, variables declared before sub-scenario As are automatically determined as input parameters when creating the sub-scenario. It may be selected as an input parameter in S302. In this case, the variable is defined as an input parameter by a process similar to step S310.
上記の例では、指定受付部31は、サブシナリオAsに含まれる変数あるいは実体値を入力パラメータに指定する入力パラメータ指定を受け付ける(ステップS301、S302)。これに対して、サブシナリオ定義部33は、ステップS301、S302での入力パラメータ指定に応じてサブシナリオAsの入力パラメータを更新する(ステップS306、S310、S308)。かかる構成では、ユーザはサブシナリオAsに含まれる変数あるいは実体値を入力パラメータとすることができ、シナリオ編集にあたってサブシナリオAsをより汎用的に使用できる。また、ユーザは、サブシナリオAsを構成するアクティビティで実際に変数や実体値が入力されている箇所を指示して、入力パラメータ指定をすることができる。このため、サブシナリオAsにおいて、サブシナリオAsが実行される箇所に応じて対象の値を変更するべきアクティビティから、当該アクティビティに含まれる変数あるいは実体値を指定することができる。
In the above example, the
また、指定受付部31に対する入力パラメータ指定で変数が指定されると(ステップS303で「変数」)、サブシナリオ定義部33は、当該入力パラメータ指定で指定された変数を入力パラメータとして定義する(ステップS310)。かかる構成では、ユーザはサブシナリオAsに含まれる変数を入力パラメータとすることができ、シナリオ編集にあたってサブシナリオAsをより汎用的に使用できる。
Further, when a variable is specified in the input parameter specification to the specification reception unit 31 (“variable” in step S303), the
また、指定受付部31に対する入力パラメータ指定で実体値が指定されると(ステップS303で「実体値」)、サブシナリオ定義部33は、入力パラメータ指定で指定された実体値に対応する変数として新たな変数を作成する(ステップS304)。さらに、サブシナリオ定義部33は、サブシナリオAsにおいて当該実体値を新変数に置換するとともに(ステップS305)、新たな変数を入力パラメータとして定義する(ステップS306)。かかる構成では、ユーザはサブシナリオAsに含まれる実体値を入力パラメータとすることができ、シナリオ編集にあたってサブシナリオAsをより汎用的に使用できる。
Furthermore, when an entity value is specified in the input parameter specification to the specification receiving unit 31 (“substantive value” in step S303), the
作成される新たな変数V31(ステップS304)として取得される実体値は、当該変数V31を入力パラメータIPaとするサブシナリオAsの呼び出し元において、当該入力パラメータIPaがどのように定義されるかに応じて変わる。このため、ステップS304において変数V31を作成するときにユーザにより指定される実体値は、サブシナリオAs呼び出し元において入力パラメータIPaとしてどのような実体値が使用されるか、を示す情報として保持される。また、入力パラメータIPaとしての変数V31は、その実体値がサブシナリオAsの呼び出し元における定義情報DIPaに応じて変わるため、サブシナリオ定義情報Ssと関連付けて保持される場合、当該サブシナリオ定義情報Ssに定義されるサブシナリオAsに含まれる変数の一例として表示されても良い。 The actual value obtained as the new variable V31 (step S304) to be created depends on how the input parameter IPa is defined in the caller of the sub-scenario As that uses the variable V31 as the input parameter IPa. It changes. Therefore, the entity value specified by the user when creating the variable V31 in step S304 is retained as information indicating what entity value is used as the input parameter IPa in the subscenario As caller. . In addition, since the actual value of the variable V31 as the input parameter IPa changes depending on the definition information DIPa in the calling source of the sub-scenario As, if it is held in association with the sub-scenario definition information Ss, the sub-scenario definition information Ss may be displayed as an example of variables included in the sub-scenario As defined in .
ところで、サブシナリオAsにおいて、出力パラメータOPを追加することができる。図10は出力パラメータ追加の一例を示すフローチャートであり、図11Aないし図11Dは図10のフローチャートに基づき実行される処理の一例を示す図である。ここでは、上記の例と異なり、サブシナリオAsの出力パラメータOPとして変数「月度」のみが設定されているとし(図11A、図11B)、出力パラメータとして変数「西暦」を追加する例(図11C~図11F)を説明する。また、図11Bおよび図11Dは、シナリオSmを構成する一部(アクティビティA11およびサブシナリオAs)のみが示されている。 By the way, in the sub-scenario As, an output parameter OP can be added. FIG. 10 is a flowchart showing an example of adding an output parameter, and FIGS. 11A to 11D are diagrams showing an example of processing executed based on the flowchart of FIG. 10. Here, unlike the above example, it is assumed that only the variable "Month" is set as the output parameter OP of sub-scenario As (Fig. 11A, Fig. 11B), and the variable "Year" is added as an output parameter (Fig. 11C). ~FIG. 11F) will be explained. Further, in FIGS. 11B and 11D, only a part of the scenario Sm (activity A11 and sub-scenario As) is shown.
図10のステップS401では、指定受付部31は、ユーザによるUI24に対する操作に基づき、出力パラメータを追加することの指示を受け付ける。終了アクティビティAfには終了アクティビティAfに対する操作を受け付けるためのメニュー表示部Af1が設けられ、ユーザはメニュー表示部Af1をクリックすることによりメニューM4を表示させる。図11Cは、メニューM4が表示された状態を示す。メニューM4は選択肢M41として「出力パラメータを追加」という選択肢を含み、当該選択肢が選ばれることにより、出力パラメータを追加することの指示が受け付けられる。出力パラメータを追加することの指示が受け付けられると、サブシナリオ定義情報の終了アクティビティAfに、追加される出力パラメータOPaを定義する定義情報DOPaを示す値EOPaを指定可能な入力欄Nが追加される(図11D)。ユーザは、当該入力欄Nに、値を入力することにより出力パラメータOPaとして出力すべき値を指定する(ステップS402)。本実施例では、図11Eの終了アクティビティAfに示される通り、値EOPaとして変数「西暦」が入力される。このように、ステップS401とステップS402とにより、出力パラメータへの追加対象が選択される。なお、入力欄Nへの入力は、直接入力してもよいし、入力欄Nに表示されるプルダウンメニューから選択することで入力してもよい。後者の場合であって、サブシナリオAsにおいて値を取得する複数のアクティビティが含まれる場合には、例えばこれら複数のアクティビティで取得される値のうち、出力パラメータOPに未設定の値をプルダウンメニューに表示すればよい。
In step S401 in FIG. 10, the
ステップS403では、サブシナリオ定義部33は、追加対象である変数「西暦」を出力パラメータとして定義する(ステップS403)。これによって、図11Eに示すサブシナリオ定義情報Ssのように、ヘッダー情報Hにおいて、出力パラメータOPaが追加される。この出力パラメータOPaの型は、追加対象として選択された値の型と同じ型に自動的に設定される(ステップS404)。本実施例では、数値の型の変数「西暦」が追加対象として選択されるため、出力パラメータOPaの型は数値に設定される。
In step S403, the
ステップS403~S404の実行結果は、サブシナリオ定義部33によって、メモリ部22に格納されるサブシナリオ定義情報Ssに随時更新される(ステップS405)。また、サブシナリオ管理部34は、サブシナリオ定義情報Ssの更新をシナリオSmに反映させる(ステップS406)。その結果、ディスプレイ243に表示されるメインシナリオ画面Dm(図11F)に示されるように、シナリオSmで呼び出されたサブシナリオAsにおいて、追加された出力パラメータOPaである「西暦」が追加される。
The execution results of steps S403 to S404 are updated by the
上記の例では、指定受付部31は、サブシナリオAsに含まれる変数を出力パラメータOPに指定する出力パラメータ指定を受け付け(ステップS401、S402)、サブシナリオ定義部33は、出力パラメータ指定に応じてサブシナリオAsの出力パラメータOPを更新する(ステップS403、S405)。かかる構成では、ユーザはサブシナリオAsに含まれる変数を出力パラメータOPとすることができ、シナリオ編集にあたってサブシナリオAsをより汎用的に使用できる。なお、サブシナリオAsの出力パラメータへの追加対象は変数に限られず、サブシナリオAsに含まれる実体値を出力パラメータに追加してもよい。
In the above example, the
ところで、サブシナリオ定義画面Dsにおいては、出力パラメータOPに係る設定をユーザのUI24への入力に応じて適宜変更できる。例えば図11Eの例では、出力パラメータOP1の型が「数値」に設定されているが、ユーザはUI24へ入力することにより、出力パラメータOP1の型を「文字列」に変更することができる。また、図11Eの例では、出力パラメータOPaの型は「数値」に設定されているが、終了アクティビティAfにおいて出力パラメータOPaに対応する値としての変数「西暦」を、「文字列」型の変数に変更することにより、「文字列」型の値を出力パラメータOPaとして出力するように設定を変更することができる。さらに、本実施例では、変数の実体値として取得される値に応じて、当該変数の型が変更される。図11Eの例では、アクティビティA15において値「B7」が変数「月度」の定義情報D153として設定されている状態から、定義情報D153として設定される値E153を、値「B9」に変更することができる。このような値E153の変更に応じて変数「月度」の型は、セルB9から取得される値の型に応じて変更される。このように、出力パラメータに係る設定を変更する場合、サブシナリオ定義情報Ssで定義されている出力パラメータOPの型と、当該出力パラメータOPに対応付けられる終了アクティビティAfの値の型との間に不整合が生じるおそれがある。そこで、次のようにして出力パラメータの型を管理することができる。
By the way, on the sub-scenario definition screen Ds, the settings related to the output parameter OP can be changed as appropriate according to the user's input to the
図12は出力パラメータの型の管理の一例を示すフローチャートであり、図13は図12のフローチャートに基づき実行される処理の一例を示す図である。なお、本例において、アクティビティA15の実行により取得される値が入力されているセルを含むシートにおいて、セルB7には「数値」型の値が、セルB9には「文字列」型の値が入力されているものとする。ステップS501では、指定受付部31は、サブシナリオ定義画面Dsにおいて出力パラメータOPに係る設定が実行されたかを、ユーザによるUI24に対する操作に基づき判断する。例えば図13に示すように、ユーザは、アクティビティA15における変数「月度」に関する定義情報D153に指定される値を「B7」から「B9」に変更できる。図13の例では、定義情報D153に指定される値に基づいて取得される変数「月度」の実体値が、出力パラメータOP1として出力されるため、定義情報D153に指定される値の変更は、出力パラメータOP1に係る設定と判断される(ステップS501で「YES」)。サブシナリオ定義情報Ssのヘッダー情報Hでは出力パラメータOP1に係る設定がなされる前の出力パラメータOP1に対応する値の型に応じて、出力パラメータOP1の型が定義されるため、出力パラメータOP1の型は、セルB7から取得される値に対応する型である「数値」に定義されている。セルB7から取得される値の型が「数値」であるのに対して、セルB9に入力されている値の型が「文字列」であるため、変数「月度」の実体値として取得される値の型が「文字列」になる。終了アクティビティAfの通り、変数「月度」は出力パラメータOP1に対応付けられる。したがって、変数「月度」に係る定義情報D153に指定される値が「B7」から「B9」に変更されるとき、出力パラメータOP1の型(「数値」)と、終了アクティビティAfにおいて当該出力パラメータOP1に対応付けられる値の型(「文字列」)と、に不整合が発生したと、サブシナリオ定義部33によって判断される(ステップS502で「YES」)。
FIG. 12 is a flowchart showing an example of output parameter type management, and FIG. 13 is a diagram showing an example of processing executed based on the flowchart of FIG. 12. In addition, in this example, in the sheet containing the cells in which the values obtained by executing activity A15 are input, cell B7 has a "numeric" type value, and cell B9 has a "character string" type value. Assume that it has been entered. In step S501, the
ステップS502で不整合が発生したと判断された場合、サブシナリオ定義部33は、アラートLを表示する(ステップS503)。この場合、サブシナリオAsを構成するアクティビティ実行結果として返される値、換言すればアクティビティ実行結果が示される終了アクティビティAfに指定される値の型と、シナリオSmにおいてサブシナリオAsから出力される値の型、換言すればサブシナリオAsの出力パラメータの型と、に不整合が生じたこととなる。したがって、終了アクティビティAfにおいて、不整合が生じている値を、他の値と異なる色で表示するなど、アラートLを表示する。なお、終了アクティビティAf以外のアクティビティの設定を変更することによって、出力パラメータと、終了アクティビティAfにおいて当該出力パラメータに対応付けられる値と、に不整合が生じる場合は、不整合を生じさせる設定の変更がなされたアクティビティを示すアラートLを表示しても良い。本実施例においては、アクティビティA15の設定が変更されることにより不整合が生じるため、アクティビティA15にアラートLが表示されても良い。ほかに、ヘッダー情報Hにおいて、不整合が生じている出力パラメータが特定しやすいように、ヘッダー情報HにアラートLを表示してもよい。また、アラートLの表示箇所は1つに限られず、例えば、終了アクティビティAfとヘッダー情報Hとの両方にアラートLが表示される構成であっても良い。
If it is determined in step S502 that an inconsistency has occurred, the
サブシナリオ定義部33は、ヘッダー情報Hにおける出力パラメータOP1の型を、終了アクティビティAfで返す値として設定される変数の型と同じ型に変更できるか否かを判断する(ステップS505)。具体的には、サブシナリオAsを呼び出す呼び出し元としてのシナリオSmにおいて、当該出力パラメータが使用される箇所と整合性を保ちながら出力パラメータOP1の型が変更できるか否かを判断する。サブシナリオAsを呼び出す呼び出し元としてのシナリオSmにおいてサブシナリオAsより後に実行され、当該出力パラメータを使用するアクティビティとの整合性を保ちながら出力パラメータの型が変更できるか否かを判断する。例えば、出力パラメータが使用されるアクティビティにおいて当該出力パラメータに求められる型を参照することで、ヘッダー情報Hの出力パラメータOP1の型の変更の可否が判断される。また、例えば、出力パラメータOP1が使用されるアクティビティにおいて当該出力パラメータに求められる型が出力パラメータOP1の変更後の型と異なっていたとしても、当該出力パラメータOP1に求められる型に応じた出力パラメータの型変換が可能である場合、出力パラメータOP1の型の変更は可能、と判断される。サブシナリオAsの出力パラメータは、後続のアクティビティで使用される値であるため、当該後続のアクティビティで使用できるように、型が特定の型に固定されることが多い。このため、予め出力パラメータが型の変更が可能な値であるかを判断することにより、ユーザが選択し得る方法を変更することができる。
The
出力パラメータOP1の型が変更できる場合(ステップS505で「YES」の場合)には、サブシナリオ定義部33は、ヘッダー情報Hの出力パラメータOP1および終了アクティビティAfで当該出力パラメータOP1に対応付けられる値のいずれの型の変更が選択されるかを判断する(ステップS506)。具体的には、型を変更する対象をユーザに選択させる画面をディスプレイ243に表示し、当該表示に対してユーザのUI24に対する操作より、いずれの値の変更が選択されたかを判断する。サブシナリオ定義部33は、ユーザにより出力パラメータの型の変更が選択されたと判断すると(ステップS506で「出力パラメータ」)、サブシナリオ定義部33は、ヘッダー情報Hにおける出力パラメータの型を、終了アクティビティAfで当該出力パラメータに対応付けられる値の型に変更する(ステップS507)。本実施例では、出力パラメータOP1と、出力パラメータOP1に対応付けられる値としての変数「月度」とに不整合があるため、出力パラメータOP1の型を変数「月度」の型に変更する。出力パラメータの型が変更されると、出力パラメータの型と、終了アクティビティAfにおいて当該出力パラメータに対応付けられる値の型と、が整合するため、サブシナリオ定義画面Dsにおいて表示していたアラートLを消す(ステップS508)。
If the type of the output parameter OP1 can be changed (“YES” in step S505), the
一方、ステップS506において、ユーザが終了アクティビティAfで出力パラメータOP1に対応付けられる値の型の変更を選択したと判断すると(ステップS506で「終了アクティビティの値の型」)、サブシナリオ定義部33は、終了アクティビティAfから、出力パラメータOP1に対応付けられる値として、ヘッダー情報Hの出力パラメータOP1の型と同じ型の値が得られるように、終了アクティビティAfを変更する(ステップS510)。本実施例では、ヘッダー情報Hの出力パラメータOP1の型が「数値」であることに対して、終了アクティビティAfで出力パラメータOP1に対応付けられる値である変数「月度」の型が「文字列」である。ステップS510では、終了アクティビティAfに、変数「月度」として取得される実体値を「数値」型に変換する処理が追加されることにより、変数「月度」として取得されて「数値」型に変換された値が、出力パラメータOP1に対応付けられる。このように終了アクティビティAfが変更されることにより、出力パラメータの型と、終了アクティビティAfにおいて当該出力パラメータに対応付けられる値の型と、の不整合が解消されると、サブシナリオ定義部33は、サブシナリオ定義画面DsにおいてアラートLを消す(ステップS508)。
On the other hand, if it is determined in step S506 that the user has selected to change the value type associated with the output parameter OP1 in the end activity Af ("value type of end activity" in step S506), the
また、出力パラメータの型が変更できないと判断された場合(ステップS505で「NO」の場合)、ステップS506において、終了アクティビティAfの値の型の変更が選択されたと判断した場合と同様に、サブシナリオ定義部33は、終了アクティビティAfを、変更して(ステップS510)、サブシナリオ定義画面DsにおいてアラートLを消す(ステップS508)。なお、出力パラメータOPの型や、終了アクティビティの値の型を変更するときに、その変更の可否についてユーザの確認を求める構成にしても良い。
Furthermore, if it is determined that the type of the output parameter cannot be changed (“NO” in step S505), the sub The
このような図12の出力パラメータOPの管理によって、サブシナリオAsの出力パラメータOPと、サブシナリオAsの出力パラメータOPに対応する値(終了アクティビティAfの値)との間に型の不整合が発生した場合に、適切に対応することができる。 Due to this management of the output parameters OP in FIG. 12, type inconsistency occurs between the output parameters OP of sub-scenario As and the value (value of end activity Af) corresponding to the output parameters OP of sub-scenario As. If this happens, you can respond appropriately.
ところで、上記の実施例では、ディスプレイ243においてメインシナリオ画面Dmおよびサブシナリオ定義画面Dsが表示される。これらは並列して表示されてもよいし、次に説明するように、メインシナリオ画面Dmおよびサブシナリオ定義画面Dsとの間でディスプレイ243に表示する画面を切り換えられるように構成してもよい。
By the way, in the above embodiment, the main scenario screen Dm and the sub-scenario definition screen Ds are displayed on the
図14Aおよび図14Bはメインシナリオ画面およびサブシナリオ定義画面の間で表示する画面を切り換える構成を説明する図である。図14Aでは、メインシナリオ画面Dmが示され、図14Bでは、サブシナリオ定義画面Dsが示されている。ユーザは、メインシナリオ画面においてサブシナリオAsを選択し、所定の操作をすることで選択したサブシナリオAsに係るサブシナリオ定義画面Dsを表示させることができる。図14Aは、ユーザが、ディスプレイ243に表示されるメインシナリオ画面Dm内の各サブシナリオAsのうちから一のサブシナリオAsを選択し、所定の操作により、選択されたサブシナリオに係るメニューM4を表示した状態を示す。メニューM4は、選択肢M41としての「サブシナリオの定義に移動」と言う選択肢と、選択肢M42としての「サブシナリオを展開」と言う選択肢とを含む。選択肢M41及びM42はいずれも、シナリオの他のアクティビティに関連しては表示されず、サブシナリオAsが選択された状態で表示されるメニューに含まれる選択肢である。表示されるメニューM4から選択肢M41としての「サブシナリオの定義に移動」が選択されると、選択したサブシナリオAsについて、図14Bに示すサブシナリオ定義画面Dsがディスプレイ243に表示される。
FIGS. 14A and 14B are diagrams illustrating a configuration for switching the displayed screen between the main scenario screen and the sub-scenario definition screen. In FIG. 14A, a main scenario screen Dm is shown, and in FIG. 14B, a sub-scenario definition screen Ds is shown. The user can display a sub-scenario definition screen Ds related to the selected sub-scenario As by selecting a sub-scenario As on the main scenario screen and performing a predetermined operation. In FIG. 14A, the user selects one sub-scenario As from among the sub-scenarios As in the main scenario screen Dm displayed on the
一方、ユーザは、サブシナリオ定義画面Dsから当該サブシナリオ定義画面Dsに示されるサブシナリオ定義情報Ssにより定義されるサブシナリオAsを呼び出す箇所を表示させることができる。図14Bは、ディスプレイ243にサブシナリオ定義画面Dsが表示されている状態で、所定の操作により、当該サブシナリオ定義画面Dsの関連情報を表示するためのメニューM5を表示した状態を示す。メニューM5は選択肢M51として、「呼び出し元に移動」と言う選択肢を含む。メニューM5から選択肢M51「呼び出し元に移動」が選択されると、当該サブシナリオ定義画面Dsに定義されるサブシナリオAs呼び出し元のうち一つを選択するメニューM52が表示される。図14Bでは、メニューM52として、選択肢M521(「呼び出し元1」)と、選択肢M522(「呼び出し元2」)とが表示される。ユーザが選択肢M521を選択して「呼び出し元1」を選択すると、「呼び出し元1」に対応するメインシナリオ画面Dmがディスプレイ243に表示されて、当該メインシナリオ画面DmにおいてサブシナリオAsを呼び出している範囲(呼び出し元)が表示される。例えば、多数の呼び出し元がシナリオSmに存在する場合には、選択された一の呼び出し元を含んでこれの周囲がディスプレイ243に表示される。
On the other hand, the user can display, from the sub-scenario definition screen Ds, a location where the sub-scenario As defined by the sub-scenario definition information Ss shown in the sub-scenario definition screen Ds is to be called. FIG. 14B shows a state in which the sub-scenario definition screen Ds is displayed on the
さらに、ユーザは、サブシナリオAsを含む画面で、当該サブシナリオAsに代えて当該サブシナリオAsを構成するアクティビティを配置する操作を指示することができる。図14Aで、一のサブシナリオAsを選択し、所定の操作により開かれるメニューM4の選択肢M42「サブシナリオを展開」を選択すると、選択肢M421(「このサブシナリオのみ展開」)および選択肢M422(「使用している2ヶ所も展開」)が表示される。選択肢M421を選択した場合には、サブシナリオ管理部34のサブシナリオ展開部341は、メニューM4を表示させる過程で選択されたサブシナリオAsを、当該サブシナリオAsを構成するアクティビティA12~A15に展開する。つまり、サブシナリオAsに代えてアクティビティA12~A15が配置される。また、選択肢M422を選択した場合には、サブシナリオ管理部34のサブシナリオ展開部341は、シナリオSmに含まれる2つのサブシナリオAs(サブシナリオAs1とサブシナリオAs2)を、各サブシナリオAsを構成するアクティビティA12~A15に展開する。
Furthermore, the user can instruct an operation for arranging an activity constituting the sub-scenario As instead of the sub-scenario As on the screen including the sub-scenario As. In FIG. 14A, when one sub-scenario As is selected and option M42 "Expand sub-scenario" of menu M4 opened by a predetermined operation is selected, option M421 ("expand only this sub-scenario") and option M422 (" ``Expand the two locations in use'') will be displayed. When option M421 is selected, the
このように、サブシナリオ展開部341は、サブシナリオ作成部32によって定義されたサブシナリオAsを、指定受付部31が受け付けた入力に応じて、当該サブシナリオAsを構成するアクティビティA12~A15に展開する。かかる構成では、サブシナリオAsを、当該サブシナリオAsを構成するアクティビティA12~A15に簡単に戻すことができる。
In this way, the
以上に説明するように本実施形態では、サーバ11のストレージ部111が本発明の「記録媒体」の一例に相当し、シナリオ管理プログラム12が本発明の「シナリオ管理プログラム」の一例に相当し、端末装置2が本発明の「シナリオ管理装置」および「コンピュータ」の一例に相当し、UI24のディスプレイ243が本発明の「シナリオ表示部」の一例に相当し、指定受付部31が本発明の「指定受付部」の一例に相当し、サブシナリオ作成部32が本発明の「一括アクティビティ作成部」の一例に相当し、パラメータ決定部321が本発明の「パラメータ決定部」の一例に相当し、サブシナリオ定義部33が本発明の「一括アクティビティ定義部」の一例に相当し、サブシナリオ展開部341が本発明の「一括アクティビティ展開部」の一例に相当し、アクティビティA11~A16、A21~A26が本発明の「複数のアクティビティ」の一例に相当し、サブシナリオAsが本発明の「一括アクティビティ」の一例に相当し、シナリオSmが本発明の「シナリオ」の一例に相当し、表計算ソフトが本発明の「他のアプリケーションプログラム」の一例に相当する。
As described above, in this embodiment, the
なお、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない限りにおいて上述したものに対して種々の変更を加えることが可能である。例えば、上記の実施例では、サブシナリオAsを用いてシナリオSmを編集するにあたって、サブシナリオAsの入力パラメータがユーザによって適宜設定される。例えば図4Eに示す例では、2番目のサブシナリオAsに対する入力パラメータarg1に対して「残業時間ファイル(2)」が設定される。この際、ユーザの入力を次のようにアシストすることができる。 Note that the present invention is not limited to the above-described embodiments, and various changes can be made to the above-described embodiments without departing from the spirit thereof. For example, in the above embodiment, when editing the scenario Sm using the sub-scenario As, the input parameters of the sub-scenario As are appropriately set by the user. For example, in the example shown in FIG. 4E, "overtime time file (2)" is set for the input parameter arg1 for the second sub-scenario As. At this time, the user's input can be assisted as follows.
図15はユーザ入力のアシスト動作の一例を示す図である。図15に示すように、シナリオSmで呼び出す2番目のサブシナリオAsにおいて変数arg1の入力欄をユーザが選択すると、当該入力欄に入力可能な候補がサブシナリオ定義画面Dsにおいて表示される。この候補は、シナリオSmにおいて、サブシナリオAsより前に実行されるアクティビティA11、A21で宣言されて実体値が取得されており、当該サブシナリオAsをスコープ(変数の有効な範囲)に含む変数である。 FIG. 15 is a diagram illustrating an example of an assist operation for user input. As shown in FIG. 15, when the user selects the input field for the variable arg1 in the second sub-scenario As called in the scenario Sm, candidates that can be input into the input field are displayed on the sub-scenario definition screen Ds. This candidate is a variable that has been declared in activities A11 and A21 that are executed before sub-scenario As in scenario Sm, and whose actual value has been obtained, and which includes the sub-scenario As in its scope (valid range of variables). be.
例えば、候補である「残業時間ファイル」および「残業時間ファイル(2)」のうちから、ユーザが「残業時間ファイル(2)」を選択すると、2番目のサブシナリオAsにおいて変数arg1に「残業時間ファイル(2)」が設定される。したがって、当該サブシナリオAsでは、「残業時間ファイル(2)」が取得されることとなる。 For example, if the user selects "overtime time file (2)" from the candidates "overtime time file" and "overtime time file (2)", then in the second sub-scenario As, the variable arg1 is set to "overtime time file". File(2)" is set. Therefore, in the sub-scenario As, the "overtime time file (2)" will be acquired.
つまり、シナリオSmで実行されるアクティビティで宣言される変数は、当該変数の有効な範囲であるスコープを有する。これに対して、ディスプレイ243(シナリオ表示部)は、サブシナリオAsをスコープに含む変数を、当該サブシナリオAsの入力パラメータarg1に対する設定値の候補として示す。かかる構成では、ユーザは、入力パラメータarg1への設定値の入力を、当該設定値の候補を参照しつつ実行することができる。その結果、ユーザが入力パラメータarg1への設定値の入力を簡単に行うことができる。 In other words, a variable declared in an activity executed in scenario Sm has a scope that is the effective range of the variable. On the other hand, the display 243 (scenario display unit) shows variables whose scope includes the sub-scenario As as candidates for setting values for the input parameter arg1 of the sub-scenario As. With this configuration, the user can input a setting value to the input parameter arg1 while referring to candidates for the setting value. As a result, the user can easily input a setting value to the input parameter arg1.
また、サブシナリオAsを抽出する処理を実行できる対象は、上記に示すシナリオSmに限られない。つまり、上記のシナリオSmは一つの具体例に過ぎず、種々のシナリオSmに対してサブシナリオAsを抽出する処理を実行できる。 Further, the target on which the process of extracting the sub-scenario As can be executed is not limited to the scenario Sm described above. In other words, the above scenario Sm is only one specific example, and the process of extracting sub-scenarios As can be executed for various scenarios Sm.
この発明は、ユーザがコンピュータを用いて実行していた作業を自動化することでユーザの作業負担の軽減を図るRPA技術全般に適用可能である。 The present invention is applicable to RPA technology in general, which aims to reduce the user's work burden by automating the work that the user previously performed using a computer.
11…サーバ
111…ストレージ部(記録媒体)
12…シナリオ管理プログラム
2…端末装置(シナリオ管理装置、コンピュータ)
24…UI
243…ディスプレイ(シナリオ表示部)
31…指定受付部(指定受付部)
32…サブシナリオ作成部(一括アクティビティ作成部)
321…パラメータ決定部
33…サブシナリオ定義部(一括アクティビティ定義部)
341…サブシナリオ展開部(一括アクティビティ展開部)
A11~A16、A21~A26…アクティビティ
As…サブシナリオ(一括アクティビティ)
Sm…シナリオ
11...
12...
24...UI
243...Display (scenario display section)
31...Designated Reception Department (Designated Reception Department)
32...Sub-scenario creation department (batch activity creation department)
321...
341...Sub-scenario development section (batch activity development section)
A11-A16, A21-A26...Activity As...Sub-scenario (batch activity)
Sm…Scenario
Claims (14)
前記複数のアクティビティのうちから抽出対象となるアクティビティを指定する抽出対象指定を受け付ける指定受付部と、
前記指定受付部によって受け付けられた前記抽出対象となるアクティビティを一括して実行するための一括アクティビティを定義する一括アクティビティ作成部と、
前記一括アクティビティで使用される変数であって前記シナリオにおいて前記抽出対象となるアクティビティより前に実行されるアクティビティで宣言される変数を、入力パラメータとして決定するパラメータ決定部と、
前記シナリオで使用される前記一括アクティビティの前記入力パラメータに対する設定値の入力を受け付ける画面を表示するシナリオ表示部と、
を備える、シナリオ管理装置。 A scenario management device that manages a scenario for automating operations on other application programs, the scenario including a plurality of activities indicating the operations,
a designation reception unit that accepts an extraction target designation that designates an activity to be extracted from among the plurality of activities;
a batch activity creation unit that defines a batch activity for collectively executing the extraction target activities accepted by the specification reception unit;
a parameter determination unit that determines, as an input parameter, a variable that is used in the batch activity and is declared in an activity that is executed before the extraction target activity in the scenario;
a scenario display unit that displays a screen that accepts input of setting values for the input parameters of the batch activity used in the scenario;
A scenario management device comprising:
前記シナリオ表示部は、前記一括アクティビティをスコープに含む変数を、前記入力パラメータに対する前記設定値の候補として示す、請求項1に記載のシナリオ管理装置。 A variable declared in the activity has a scope that is the valid range of the variable,
2. The scenario management device according to claim 1, wherein the scenario display unit displays variables whose scope includes the batch activity as candidates for the setting value for the input parameter.
前記一括アクティビティに前記出力パラメータとして決定される前記変数の実体値を返す終了アクティビティを追加し、
前記一括アクティビティが実行されると、前記一括アクティビティは、前記出力パラメータの実体値を出力する、請求項1に記載のシナリオ管理装置。 The parameter determining unit is configured to select, as an output parameter, a variable whose actual value is acquired by execution of the activity to be extracted, and which is used in an activity executed after the activity to be extracted in the scenario. decided as,
adding an end activity that returns an actual value of the variable determined as the output parameter to the bulk activity;
The scenario management device according to claim 1, wherein when the batch activity is executed, the batch activity outputs the actual value of the output parameter.
前記一括アクティビティが実行されると、前記一括アクティビティは、前記第一出力パラメータの実体値と、前記第二出力パラメータの実体値とを出力し、
前記シナリオ表示部は、前記第一出力パラメータおよび前記第二出力パラメータを互いに独立して表示し、前記第一出力パラメータの編集および前記第二出力パラメータの編集を受け付ける画面を表示する、請求項3に記載のシナリオ管理装置。 The parameter determining unit selects a first parameter as a variable whose actual value is acquired by execution of the activity to be extracted, and which is used in an activity executed after the activity to be extracted in the scenario. If a variable and a second variable exist, determining the first variable as a first output parameter and determining the second variable as a second output parameter;
When the batch activity is executed, the batch activity outputs an actual value of the first output parameter and an actual value of the second output parameter,
3. The scenario display unit displays the first output parameter and the second output parameter independently of each other, and displays a screen that accepts editing of the first output parameter and editing of the second output parameter. The scenario management device described in .
前記指定受付部は、前記一括アクティビティに含まれる変数あるいは実体値を前記入力パラメータに指定する入力パラメータ指定を受け付け、
前記一括アクティビティ定義部は、前記入力パラメータ指定に応じて前記一括アクティビティの前記入力パラメータを更新する、請求項1に記載のシナリオ管理装置。 It further includes a bulk activity definition section,
The specification receiving unit receives an input parameter specification that specifies a variable or an entity value included in the batch activity as the input parameter,
The scenario management device according to claim 1, wherein the batch activity definition unit updates the input parameters of the batch activity according to the input parameter designation.
前記指定受付部は、前記一括アクティビティに含まれる変数あるいは実体値を前記出力パラメータに指定する出力パラメータ指定を受け付け、
前記一括アクティビティ定義部は、前記出力パラメータ指定に応じて前記一括アクティビティの前記出力パラメータを更新する、請求項3に記載のシナリオ管理装置。 It further includes a bulk activity definition section,
The specification receiving unit receives an output parameter specification that specifies a variable or an entity value included in the batch activity as the output parameter,
The scenario management device according to claim 3, wherein the batch activity definition unit updates the output parameters of the batch activity according to the output parameter designation.
前記複数のアクティビティのうちから抽出対象となるアクティビティを指定する抽出対象指定を指定受付部により受け付ける工程と、
前記指定受付部によって受け付けられた前記抽出対象となるアクティビティを一括して実行するための一括アクティビティを定義する工程と、
前記一括アクティビティで使用される変数であって前記シナリオにおいて前記抽出対象となるアクティビティより前に実行されるアクティビティで宣言される変数を、入力パラメータに決定する工程と、
前記シナリオで使用される前記一括アクティビティの前記入力パラメータに対する設定値の入力を受け付ける画面を表示する工程と、
を備える、シナリオ管理方法。
A scenario management method for managing a scenario for automating operations on other application programs, the scenario including a plurality of activities indicating the operations, the scenario management method comprising:
a step of receiving an extraction target designation specifying an activity to be extracted from among the plurality of activities by a designation reception unit;
defining a batch activity for collectively executing the extraction target activities accepted by the specification reception unit;
determining, as an input parameter, a variable used in the batch activity and declared in an activity executed before the extraction target activity in the scenario;
displaying a screen that accepts input of setting values for the input parameters of the batch activity used in the scenario;
A scenario management method with
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022108675A JP2024007276A (en) | 2022-07-05 | 2022-07-05 | Scenario management apparatus, scenario management program, recording medium, and scenario management method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022108675A JP2024007276A (en) | 2022-07-05 | 2022-07-05 | Scenario management apparatus, scenario management program, recording medium, and scenario management method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024007276A true JP2024007276A (en) | 2024-01-18 |
Family
ID=89543466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022108675A Pending JP2024007276A (en) | 2022-07-05 | 2022-07-05 | Scenario management apparatus, scenario management program, recording medium, and scenario management method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024007276A (en) |
-
2022
- 2022-07-05 JP JP2022108675A patent/JP2024007276A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20080209390A1 (en) | Pluggable model elements | |
JP2008537254A (en) | Conflict resolution by synchronous manager | |
TWI771832B (en) | Computer-implemented system and method for managing electronic document | |
JP2010067056A (en) | Control program, information processing system, and information processing method | |
JP5352695B2 (en) | Electronic file management method, electronic file management device, electronic file management program, file information generation method, file information generation device, and file information generation program | |
JP2024007276A (en) | Scenario management apparatus, scenario management program, recording medium, and scenario management method | |
JP5804898B2 (en) | Software development support apparatus and program | |
JP2019128859A (en) | Information processing device | |
JP4925514B2 (en) | Program execution control method, program, execution control apparatus, and recording medium by internal / external event driven system | |
JP7246301B2 (en) | Program development support system and program development support method | |
JP2007164353A (en) | Command line generation system, method, and program | |
JP5381032B2 (en) | Work environment management apparatus, method and program | |
JP2020091766A (en) | Electronic computer, method, and program | |
JP5245390B2 (en) | Business execution support device and business execution support program | |
JP4991247B2 (en) | Electronic file management method, electronic file management apparatus, and electronic file management program | |
JP2005078224A (en) | Web site managing system | |
US20220383215A1 (en) | Management device, management method, and management program | |
JP7125595B2 (en) | Work support program, work support device and work support method | |
WO2023238283A1 (en) | Display control system, display control method, and display control program | |
JP2011209843A (en) | Screen generation device | |
JP7052289B2 (en) | Information processing equipment and programs | |
JPH0954688A (en) | Gui design supporting method | |
Görke et al. | Development of a Next-Generation Endpoint Driver for Collaboration | |
JP2023128109A (en) | Scenario management device, scenario management program, recording medium and scenario management method | |
JP2023142551A (en) | Shell script support device, shell script generation device, and systems, methods, programs, and recording media related thereto |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20221108 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20221108 |