スニペットとは?

スニペットについて理解したいと考えております。
UiPath Academyの動画に ”スニペットの作り方” はないのでしょうか?
作った複数のシナリオに同じような処理が出てくるので、使いまわしたいと考えております。
”スニペット”は、プログラミング言語の「サブルーチン」「関数」といったイメージで
捉えているのですが、それでいいでしょうか?

「サブルーチン」や「関数」だと、何かの処理をする既に完成された処理のように思う人もいるのではないでしょうか。
(例えば半径を指定すると円の面積を返すというような。)

「スニペット」で検索すると出てきますが、私は「部品」「雛形」というイメージで捉えています。
昔既に「部品」というある定形の処理の一部が置き換えようになっており、そこを各ユーザーが確定することで間違いなく、かつ一定のソースの書き方になるようになっていました。(置き換えしない部品もあります)

スニペットも同様に使うことができますが、アイデア次第で他にも有効な使いかたがあると思います。

作り方は、「Delay」フォルダのはどう作るかちょっとわからないです。他のソースそのままのようなのは、xamlをそのまま Snippetsフォルダに入れるだけで使えるようになります。

@196006

こちらのサイトでの説明が非常に分かりやすいと感じました。
WFの雛形はStdioの標準機能である「テンプレートとして保存」でも代替え可能かなとも思いますが、
アクティビティにあらかじめ条件入れたりは開発効率アップに繋がるかもしれませんね。

ytakayama様
いつもありがとうございます。

イメージ出来ていないことが1つあります。
「スニペット」に ”引数や戻り値” はないのでしょうか?
(どうも「関数」のイメージになってしまっているようです。)

シナリオ中に「スニペット」を入れると変数への入出力が発生するのではないかと考えて
しまいます。

それはどう作るか次第です。
Studioに既にスニペットサンプルが入っており、使える状態になっていると思います。
上でも書きましたが、「Delay」フォルダのは引数とか使っていません。
他のも全部見てみましょう。

Legacy32様
ご指導ありがとうございます。

スニペットの内部の変数を引数に与えて処理できないのでしょうか?
例えば、スニペットの内部でループ処理があるとして、
Aシナリオではループ回数10回
Bシナリオではループ回数20回
といった感じで引数をループ回数にして。。。

という使い方をするものがスニペットだと勝手に思っておりますが
どうやら違っているようですね。。。。

ひょっとして ”スニペット” ではなく 別の機能に”関数”的なものがあるのでしょうか?

@196006

スニペットはあくまで雛形のようなイメージなので引数までは設定しないのが普通なのではないでしょうか?
引数を与えて処理を行うのであれば、一連の処理をワークフローとして抽出して
invoke workflowで呼び出すのが良いと思います。

ytakayama様
ご指導ありがとうございます。

Snippets-Loops の For Each Childを参照してみましたが、あくまで雛形ですね。
雛形なので中身も設定しないと使えないようですね。
関数のようにブラックボックスで中身を一切触らず引数と戻り値さえ意識するば使えるという
ものではないようですね。

@196006

そうですね、お決まりの処理(アクティビティ)を固めたものという扱いでしょうね。
プロジェクトでお決まりとなってる注釈を含めたオリジナルのアクティビティのように使ったりできるのはいいなと感じます。

関数のようなものを作るならxamlとして切り出すと良いと思います。

1 Like

ytakayama様
ご指導ありがとうございます。
スニペットを関数みたいなものという先入観で見ていました。
理解が進みました。
ありがとうございます。

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.