LoginSignup
0
0

More than 1 year has passed since last update.

【Blue Prism】計算ステージでよく使うロジックについて、まとめてみた

Last updated at Posted at 2022-08-22

計算ステージとは

Blue Prismの実装で、頻繁に使用される計算ステージ。

ここでは、計算ステージでよく使用されるロジックをご紹介します。

計算ステージとは、計算した結果や加工した文字列をデータアイテム等に格納するためのものです。
計算ステージには、2種類あり、下図の①が「計算ステージ」で、②が「複数の計算ステージ」です。
計算ステージサンプル1_1.JPG


計算プロパティでは、①の部分に計算する式を指定し、②に保存先を指定します。

計算ステージプロパティ1_1.jpg

複数計算プロパティも同様に、①の部分に計算する式を指定し、②に保存先を指定します。
複数登録されている場合は、上から順に計算が行われます。
複数計算プロパティ1_1.jpg

複数計算プロパティの場合は、電卓マークをクリックすると、下図が開きます。
同様に、①に計算する式を指定します。
複数計算プロパティ2_1.JPG

よく使うロジック

数値を扱う計算

下記の式を指定し、保存先に数値型のデータアイテム[retry_count]を指定すると、
計算ステージを通るたびに、[retry_count]がカウントアップします。
インクリメントに使用します。

[retry_count] + 1

その他の四則演算の例。[上底]、[下底]、[高さ]は数値型のデータアイテム。

([上底] + [下底]) * [高さ] * 0.5

文字を扱う計算

Concatenate

文字列を連結します。下記の場合、"ABCxyz"が得られます。

"ABC" & "xyz"

Instr

特定の文字列が何文字目から始まるかを取得します。下記の場合、4が得られます。
文字列を含まない場合は、0となります。

InStr("Example", "mp")

Trim

文字列の先頭と末尾の空白を取り除きます。下記の場合、"Example"が得られます。

Trim("    Example   ")

Replace

文字列からtabを取り除きます。

Replace([Clipboard], Chr(9), "")

日付を扱う計算

日付を扱う場合、頻繁に使用する関数は、DateAdd関数とDateDiff関数です。
DataAdd関数は、日付に年・月等を加算します。
DateDiff関数は、二つの日時間の差を求めます。
これらの関数の一つ目の引数は、時間間隔(Interval)を表し、下記の通りです。

Interval DateAdd DateDiff
0
1 年間通算週
2 - 週日
3 - 2番目
4 四半期 四半期
5
6 -
7 - 時間
8 - 年間通算日
9 -

DateAdd

下記の例は、10年後なので、2032/07/26が得られます。

DateAdd(0, 10, ToDate("2022/07/26"))

下記の例は、6ヶ月前なので、2021/07/01が得られます。

DateAdd(5, -6, ToDate("2022/01/01"))

DateDiff

下記の例は、2022/08/30と2007/01/30の間の週数813が得られます。

DateDiff(1, MakeDate(30, 1, 2007), MakeDate(30, 8, 2022))

AddDays, AddMonths, MakeDate, FormatDate

また下記の例は、よく使用する日付計算で、当月末日を得る計算式です。
翌月一日の1日前が当月末日になります。
[now]には日本時間の現在日時が格納されているとします。

AddDays(AddMonths(MakeDate(1, FormatDate([now], "MM"), FormatDate([now], "yyyy")), 1), -1)

その他の計算

論理式を含む計算です。保存先はフラグ型になります。

InStr([clipboard], [検索文字列]) > 0
IsNumber([sample1]) OR IsNumber([sample2])

注意点

Now()で得られる日時は、日本時間ではありません。
Now()の日時は、協定世界時なので、日本時間に変換するには、
時差の9時間を加算する必要があります。

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0