オートメーション道場

RPAツール「Automation 360」(旧Automation Anywhere A2019) の使い方についてまとめていきます。

四則計算の結果を変数に代入する

四則計算の結果を変数に代入する

四則計算はアクションの詳細パネルの中の数字フィールドや文字列フィールドで実施できます。計算結果を変数に代入するには「数字 : 代入」アクション「文字列: 代入」アクションを使います。

目次

 

四則演算でサポートされている表現/演算の内容

四則計算について復習しておくと、使えるのは以下の要素や演算子です。

要素/演算子  説明
数字  定数を指定できます。-9,223,372,036,854,775,808 から 9,223,372,036,854,775,807の範囲で15桁の精度までサポートします。
変数  数字型変数を数字の代わりに使えます。
+  加算演算子
-  減算演算子
*  乗算演算子
/  減算演算子
( )  グループ化演算子。数式処理の優先度を決めます。

 

「数字 : 代入」アクションを使う方法

数字型フィールドで数式を記載できます。

数字型フィールド

例題として以下の式の計算結果を数字型変数に代入します。$n$の初期値は10に設定します。

1+$n$*($n$-1)/2

「数字: 代入」(Number : Assign) アクションの使い方

ユーザー指定の数字を Number 変数に代入ます。

 

入力:

 フィールド名  型  説明

ソースの文字列変数/値を選択
(Select the source string variable/ value)

数字   数字、数字型変数、または四則演算の数式を指定

 

出力:

 フィールド名  型  説明
ターゲットの数字変数を選択します
(Select the destination number variable)
数字 出力を格納する変数を指定 

 

解法:

  1.  変数パネルで数字型の変数$n$を新規作成し「10」をデフォルト値に設定します。
  2. 「数字 : 代入」アクションを配置します。
  3.  アクションの詳細パネルで以下を指定します。
    • 「1+$n$*($n$-1)/2」を指定します。
    • 「ターゲットの数字変数を選択します」に「$n$ - 数字」を選択します。
  4. 「メッセージボックス : メッセージボックス」アクションを配置してアクションの詳細パネルの「表示するメッセージを入力します」に $n.Number:toString$ を指定します。
  5. 保存して実行します。

結果:

「46」となります。

 

$n.Number:toString$の書式は「型キャスト」を使っています。詳しくは『四則演算や変数の型変換を簡単に行う』を参照してください。

 

「文字列 : 代入」アクションを使う方法

実は、文字列型フィールドでも数式を記載できます。v11からのボット移行を行うとこちらの記載になります。

文字列型フィールド

例題として以下の式の計算結果を文字列型変数に代入します。$s$の初期値は10に設定します。

1+$s$*($s$-1)/2

「文字列: 代入」(String : Assign) アクションの使い方

指定の文字列を代入または連結します。

 

入力:

 フィールド名  型  説明

ターゲットの文字列変数を選択 (オプション)
(Select the source string variable/ value)

文字列   文字列または文字列型変数を指定 (空欄も可能)

 

出力:

 フィールド名  型  説明
ターゲットの文字列変数を選択
(Select the destination string variable)
文字列 出力を格納する変数を指定 

 

解法:

  1.  変数パネルで文字列型の変数$s$を新規作成し「10」をデフォルト値に設定します。
  2. 「文字列 : 代入」アクションを配置します。
  3.  アクションの詳細パネルで以下を指定します。
    • 「1+$s$*($s$-1)/2」を指定します。
    • 「ターゲットの文字列変数を選択」に「$s$ - 文字列」を選択します。
  4. 「メッセージボックス : メッセージボックス」アクションを配置してアクションの詳細パネルの「表示するメッセージを入力します」に $s.LegacyAutomation:parseVariableOperation$ を指定します。
  5. 保存して実行します。

結果:

「46」となります。

 

文字列型変数に単純に数式を入れるだけだと、数式の文字列が入るだけです。ここでは$s.LegacyAutomation:parseVariableOperation$の書式を使って数式文字列をパースして解釈するところがポイントです。しくみとしては「型キャスト」を使っています。詳しくは『四則演算や変数の型変換を簡単に行う』を参照してください。尚、LegacyAutomation:parseVariableOperationの利用はA2019で新規に作るボットでは推奨されていません。

Automation Anywhere v11.xの四則演算では、A2019でサポートされていない演算子として剰余演算子 (%) をサポートしていました。文字列型変数 + 型キャスト (LegacyAutomation:parseVariableOperation) では、剰余演算子も追加で使えます。

 

オートメーション道場