引数とはなにか

引数の説明に入る前に、引数と似た概念である変数についておさらいしておきましょう。

変数と聞いたときに皆さんはどのようなものを想像しますか?変数は、皆さんの家にある備え付けの収納ボックスのようなものです。
靴箱は靴だけを収納し、衣装ケースには服だけを収納するのと同様に、変数にも型という概念があり、文字列型変数なら文字列のみ、数値型変数なら数値のみを格納することができます。

また”備え付け”という点も重要です。
A宅に備え付けられている収納ボックスをA宅の外から(例えばB宅から)利用することはできませんよね。同様に変数にもスコープという概念があり、変数は指定したスコープ内でしか利用することはできません。

引数 図

引数 図

 

では本題の引数について見ていきましょう。

引数というのは郵便物のようなものです。家と家の間で物を送り合うときに使います。
A宅の住人が直接B宅に備え付けの衣装ケースから洋服を取り出すことはできないので、郵便でB宅に送ってあげるイメージです。

引数 図

 

UiPathでは、異なるワークフローやプロジェクト間でデータを送るときに引数を使います。
つまり、より広い範囲でデータを共有するためのものです。

変数は皆さんの家(ワークフロー)内でのみ使われ、引数は家と家の間(異なるワークフロー間)を行き来するデータのために使われると考えると分かりやすいでしょう。

したがって、1つのワークフローで使われている変数を他のワークフローでも使いたい場合は、変数を引数に入れてから新規の変数に入れるという作業をおこないます。
こちらについては、後半で紹介していますので最後まで読んでくださいね!

 

UiPathにおける引数とはなにか

UiPathには3種類の引数が存在します。

  • Orchestratorからxamlに渡す引数
  • UiPath Assistantからxamlに渡す引数
  • xaml間の値を移動する際に引数を設定します。

 

1.OrchestratorからMain.xamlに渡す引数

実行するプロセスに1つ以上の入力引数がある場合、引数の値を編集できます。引数を入力する方法は下記の3つです。

プロセスレベル-[プロセスを表示]ウィンドウ 

プロセスレベル-[プロセスを表示]ウィンドウ 

プロセスレベル-[プロセスを表示]ウィンドウ 

 

ジョブレベル-[ジョブを開始]ウィンドウ

ジョブレベル-[ジョブを開始]ウィンドウ

ジョブレベル-[ジョブを開始]ウィンドウ

 

トリガーレベル-[トリガーを追加]ウィンドウ

トリガーレベル-[トリガーを追加]ウィンドウ

トリガーレベル-[トリガーを追加]ウィンドウ

 

UiPath Assistantからxamlに渡す引数

「オートメーションの詳細」サブメニューに引数をカスタマイズして実行をかけることができます。

UiPath Assistantからxamlに渡す引数

 

xaml間の引数

xaml間の値を移動する際に引数を設定します。

上記3つの引数のうち、本記事ではxaml間の引数について説明します。

 

設定方法

設定前準備:Main.xamlの他に1つ以上のxamlを作成

呼び出し先xamlのデザイナーパネル下部の引数タブを開いて、「引数を作成」をクリック

設定方法

 

名前/方向/引数の型/既定値(任意)を入力する

〇名前:引数名を入力します。(初期設定>argument1)

〇方向:入力or出力or入力/出力orプロパティ

 

・入力:呼び出し元のxamlから呼び出し先のxamlにデータを渡すために使用されます。

・出力:呼び出し先のxamlから呼び出し元のxamlにデータを返すために使用されます。

・入力/出力:データを取り込んで修正し、その後他のアクティビティで使用するために出力する場合に役立ちます。

・プロパティ:Boolean型やEnum型のような離散型のプロパティには方向が不要です。これらの型のプロパティを作成する際に使用します。

 

〇引数の型:型を選択します。

〇既定値:入力する(渡す)場合にのみ既定値を入れられます。

設定方法

 

呼び出し元のアクティビティパネルにある「ワークフローファイルを呼び出し」をドラッグアンドドロップする。

設定方法

 

「引数をインポート」をクリックして既に値が入っていることを確認

設定方法

 

上記手順を実施後にデザインパネルの引数が1に増加しました。

これは引数が設定されていることを示しています。

設定方法

 

以上が設定手順となります。引数を学習することでUiPathでのコードを書く面白みも増していきます。

実際に触って書いてみることをおすすめします。