アクティビティ
最新
バナーの背景画像
ワークフローに関するアクティビティ
最終更新日 2024年4月22日

リアルタイム フォーム

リアルタイム フォーム機能により、使用しているフォームを閉じることなくその値を変更できます。つまり、フォーム フィールドにリンクしている変数は使用中でも容易に変更でき、その際、ワークフローを終了して再度実行するという必要がありません。

この機能を利用するには、[フォームを作成] アクティビティの [実行] ブロックに目的のアクティビティをドラッグ アンド ドロップします。フォームのフィールドとボタンを、[実行] ブロックのアクティビティとリンクするように設定します。

リアルタイム フォームを使用する

[実行] ブロックのアクティビティが、フォームのフィールドに対して実行されます (データの読み取りと書き込みの両方)。これらのアクティビティは、ボタンをクリックしたとき、あるいは任意でフォームを開くと常にトリガーされます。アクティビティの実行中にフォームは開いたままになり、エンドユーザーによる編集が可能になります。

[実行] ブロックをトリガーする

フォームの [実行] ブロックのアクティビティをトリガーするには、ボタンを使用します。

既定では、ボタンによって [実行] ループがトリガーされ、フォームが閉じます。

[実行] ループをトリガーし、値が更新された状態でフォームを開いたままにするには、目的のボタンの [フィールド キー] タブにカスタム プロパティ (キーと値のペアである closeOnSubmit-false) を追加する必要があります。

フォームのどのボタンが使用されたかを確認するには、出力オブジェクトの [選択済みボタン] プロパティを解析します。

フォーム値を更新する

フォームの値は、[実行] ブロック内の対応する変数を変更することによって更新できます。

チュートリアル

[Username (ユーザー名)][City (市区町村)] の 2 つのコンポーネントで構成する簡単なフォームを作成してみます。

  1. シーケンス ワークフローに [フォームを作成] アクティビティをドラッグ アンド ドロップします。
  2. [変数] パネルを開き、コンポーネントごとに 1 つずつ、2 つのグローバル変数を作成します。



  3. [フォームを作成] アクティビティの [フォーム フィールド コレクション] プロパティで、各コンポーネントに String 型の入力/出力引数を追加し、前に作成したグローバル変数を参照します。こうすることで、コンポーネントがフォーム内で自動生成されます。



    リアルタイム フォーム機能を使用するには、クリックしてもフォームが閉じないボタンをフォームに作成します (更新ボタンなど)。
  4. フォーム デザイナーを開きます。
  5. ボタン コンポーネントをドラッグ アンド ドロップします。
  6. ボタン コンポーネントの [フィールド キー] タブに移動します。[カスタム プロパティ] の下で、closeOnSubmit[キー] として追加し、[値]false に設定します。

    フィールド キーに設定する名前に注意してください。この名前は、フォーム内のコンポーネントのバインドに使用され、大文字と小文字が区別されます。

    このボタンを作成すると、[条件分岐 (if)] などのアクティビティを使用して、フォーム内の値またはフォームの背後にあるデータベースの値をリアルタイムで変更できます。
  7. ビジネス ユーザーがクリックするボタンを追跡するには、変数を作成して格納します。[フォームを作成] アクティビティの [プロパティ] パネル > [出力] カテゴリ > [選択したボタン] フィールドでクリックして、ボタンの変数を作成します。または、キーボード ショートカット CTRL + K を使用して変数を作成します。変数は、シーケンス ワークフローの [変数] パネルにも追加されます。
  8. ボタンの変数に名前を付けます (btn など)。


    [条件分岐 (if)] アクティビティでフォーム固有のボタンを使用するには、式 btn = " ... " を使用して目的のボタンを参照します。選択したプログラミング言語 (C# または VB.NET) に応じて、正しい構文を使用してください。

    この例では、フォーム内の [更新] ボタンを監視するために以下の手順を実行します。

  9. [フォームを作成] アクティビティの [実行] ブロックに [条件分岐 (if)] アクティビティをドラッグ アンド ドロップします。
  10. [条件] フィールドに式を入力します。VB.NET を使用している場合は「btn = "{button_field_key_name}"」を入力し、C# を使用している場合は「btn == "{button_field_key_name}"」を入力します。{button_field_key_name} の値は、手順 6 で設定した値に置き換えてください。

    つづいて、この条件に対してルールを作成できます。

    たとえば、[更新] ボタンをクリックした後で、次のように [ユーザー名] フィールドに Database Updated を表示できます。
    • [条件分岐 (if)] アクティビティ > [Then] セクションに、[代入] アクティビティをドラッグ アンド ドロップします。
    • [代入] アクティビティの [左辺値 (To)] フィールドに、フォームの [Username] フィールドを参照するために使用するグローバル変数を入力します。
    • [値] フィールドに "Database Updated" を入力します。


    これで、フォームを実行するだけでリアルタイムでの変更が可能になります。フォームを閉じてもう一度開くといった手順は不要です。

サンプル ワークフロー

ワークフロー全体を確認するか、今後の参考にするには、以下のアーカイブ済みのをダウンロードしてください。

  • チュートリアル
  • サンプル ワークフロー

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.