■サイト内検索:
 

RPA Biz > RPA > UiPathでの型の種類とループ・分岐の作り方

UiPathでの型の種類とループ・分岐の作り方

2018.05.30

UiPathではいくつかの型が用意されています。

今回はまず、それぞれの型を紹介してそのあとに簡単なループや分岐を作っていきたいと思います。

 

データの型

データの型とはデータを収納しておく箱のようなものだと思ってください。

この箱には、果物をいれる箱と衣類をいれる箱のようにいれるものによっておおまかに箱が変わってきます。

 

例えば、単純な「2」というものでも、数字としての2なのか文字としての”2″なのか、で扱い方が変わってきます。

このために様々な型が存在しているのです。

 

まずはどんな型があるのか見ていきましょう。

 

型の名前 種類  例
Integer 数字 1,54,100032
String テキスト “Hello”,”234″
Boolean 真偽値 “True”or”False”
Generic あらゆるもの ———
Array of リスト {1,2,3,4,5,6,7}

 

上記のような型が存在しています。

 

Integer型、String型はそれぞれ数字、文字を格納するためのもので、さまざまな数字や文字を格納することができます。

 

Boolean型はtrue,falseの二つだけの種類しか格納することができない型となっています。

しかし、二つしか格納できないのでとてもとても見やすく、確認しやすい型となっています。

 

Generic型はUiPath特有の型で、どの型でも使用することができる型となっています。

しかし、この型の欠点としては、先ほどのBoolean型とは真逆に比較するときなどで分かりにくい型となっています。

 

最後に、Array型とは配列を作る型で他の型などと組み合わせて使うことができます。

配列は初めから使える大きさがきまっていて、追加で大きくしたりすることはできません。

 

これら以外にも少数を格納する、Double型や新しく大きさを追加することができるList型など非常に多くの型があるので、

 

それぞれ必要となったときに見ていくことをおすすめします。

ループ構文

ループとはその名の通り同じところを何回もまわっていくことです。

同じ操作を繰り返したいときや、完全に同じでなくても似たような操作を行うときに

これから説明するループ構文をもつアクティビティを使用すると楽になります。

For Eachアクティビティ

ForEachアクティビティはループ構文をもつアクティビティの一つです。

このアクティビティはリストから要素をひとつずつ取り出して同じ操作を繰り返すものです。

 

test_listに{“one”,”two”,”three”,”four”,”five”}というstring型が格納されている場合、

For each (item in test_list) ではitemに”one”が初めに格納され、For each内のすべての操作が終わると、次は”two”がitemに入ります。

 

さらに、”three”,”four”と続いてitemに格納されていって最後に”five”が格納され、このFor eachアクティビティは終了します。

Whileアクティビティ、Do whileアクティビティ

whileアクティビティもまた、ループ構文のひとつです。さらに、これに似たDo whileアクティビティというものもあります。

 

これらは似ているようで少し違います。

まずは同じ特徴について見ていきましょう。

 

whileアクティビティとDo whileアクティビティも、ある条件が成り立っている間に同じ操作を繰り返す、という特徴があります。

 

例えば、integer型のtempに0以上の数字が入っている間は繰り返すというものです。

このtempが初め4だったとするとこれは0以上であるのでこれらの中にある操作を行います。

 

この操作時に何らかの理由でtempが-1になったとします。

するとtempは0以上ではなくなったので次のループには入らずにこの構文は終わりになります。

 

この判定(今回ならtempが0以上かどうか)についてがwhileアクティビティとDo whileアクティビティとの違いです。

 

違いを端的に説明するとwhileアクティビティは先判定、Do whileアクティビティは後判定なのです。

つまり、判定するタイミングが違うのです。

 

whileアクティビティは操作を行う前に条件を判定し、Do whileアクティビティは操作を行った後に条件を判定するのです。

 

先ほどの例を使うと、tempがもともと-2である場合、whileアクティビティでは先判定なのでループの中に入らないのですが、

Do whileアクティビティでは先にループに入ってから判定を行います。

 

このようにループ構文にはいろいろな種類が存在し、それら一つ一つに特徴が存在しています。

それらをうまく使い分けることで流れをきれいに、さらに単純にフローを回すことができます。

 

分岐構文

分岐構文もその名の通り、ある地点で分かれ道になっているという構文です。

あるところで真偽によって道を分けたり、値がどのようになっているかどうかをうまく見ることができます。

ifアクティビティ

一番わかりやすいのがこのifアクティビティです。

 

このifアクティビティはある変数や文を評価してTRUE(真)ならこちら側、FALSE(偽)ならこちら側、

と一つの道から二つの道に分岐していくアクティビティです。

 

例えば、tempに格納されている数字が100以上なら”おめでとう!”と表示して、

100未満なら”残念”と表示するフローもこのifアクティビティで書くことができます。

 

単純に2分岐ならば、このifアクティビティを使用するのがよいと思います。

switchアクティビティ

switch文は単純な2分岐だけでなく、3分岐や4分岐、さらに多くの分岐をつくることも可能です。

 

しかしここで注意しなければいけないのは、この分岐での値は同じ重みでないといけないということです。

 

1の時はこの道、2の時はこの道、”three”のときはこの道とはできないということです。

数字であるならすべて数字、文字であるならすべて文字である必要があります。

 

例えば、switch(temp)とtempを評価して、case 1,case 2,case 3,case 10,その他,のように分けることができるということです。

 

このように分岐を使い分けることで適切な変数を適切な場所に持ってくることができます。

分岐はよく使うので、何回も使って覚えていくのがよいと思います。

まとめ

データの型やループ・分岐の構文はUiPathを使う中で必須の知識となります。

これらの前提の知識をうまく活用しながらわかりやすい、そして高速なフローを作ってください。

 

また、これらはアルゴリズムやデータ構造とも関わってくるので、C言語やJavaなどのプログラミング言語を一度勉強して、

そのあとにもう一度見直すこともいいと思います。

 

もし、UiPath開発で不明点があれば弊社にお問い合わせください

トータルサポートさせていただきます。

 

 

 

topへ
© RPA.biz