Waitロジックの使用
Waitロジックの使用
ビジネスユーザーは時として、特定のアプリケーションが開始するのを待機したり、一部の情報が表示されるのを待機したりするなどのユースケースに直面したりすることがあります。 Pega Robot Studio™は、画面、フォーム、アプリケーションがデスクトップに表示されるまで、オートメーションを待機させる、または一時停止させるロジックを提供します。
Pega Robot Studioには、「WaitAll」と「WaitAny」という2つのWaitコンポーネントがあります。 コンポーネントはToolboxの「Advanced」タブからアクセスできます。 WaitAllコンポーネントとWaitAnyコンポーネントには、Waitコンポーネントが入力コンポーネントの作成を待機できる時間を指定するTimeOutパラメーターがあります。 入力コンポーネントが指定された時間内に表示されない場合、Timeoutイベントがトリガーされます。
WaitAll
WaitAlllコンポーネントは、グループ内に指定されたすべてのオブジェクトが作成された場合のみにイベントをトリガーします。 Timeoutプロパティで指定された時間内にコンポーネントが作成されない場合、WaitAll コンポーネントはTimeoutイベントをトリガーします。
WaitAllコンポーネントをソリューションに追加するには、Toolboxウィンドウを開き、WaitAllを検索してから、WaitAllコンポーネントをクリックしてソリューションにドラッグします。 各オブジェクトをWaitAllコンポーネントに接続するには、Object Explorerで各オブジェクトを選択し、WaitHandleプロパティをソリューションに追加します。 WaitHandleプロパティを青いデータポートから接続し、ポートをWaitAllコンポーネントに接続します。
次の例では、オートメーションがすべてのCRMChildウィンドウの作成を待機します。 タイムアウト期間の前にいずれかのウィンドウが作成されない場合には、オートメーションにより、「New Call Window Timedout」メッセージが表示されます。 タイムアウト期間内にすべてのウィンドウが作成される場合には、オートメーションにより、「New Call Created」メッセージが表示されます。
WaitAny
WaitAnyコンポーネントは、グループ内のオブジェクトが1つでも作成されるとイベントをトリガーします。 Timeoutプロパティ値の期間内にオブジェクトが作成されない場合、WaitAnyコンポーネントはTimeoutイベントをトリガーします。
WaitAnyコンポーネントをソリューションに追加するには、Toolboxウィンドウを開き、WaitAnyを検索してから、WaitAnyコンポーネントをクリックしてソリューションにドラッグします。 各オブジェクトをWaitAnyコンポーネントに接続するには、Object Explorerで各オブジェクトを選択し、WaitHandleプロパティをソリューションに追加します。 WaitHandleプロパティを青いデータポートから接続し、ポートをWaitAnyコンポーネントに接続します。
次の例では、オートメーションがいずれかのCRMChildウィンドウの作成を待機します。 タイムアウト期間の前にウィンドウが作成されない場合には、オートメーションにより、「New Call Window Timedout」メッセージが表示されます。 タイムアウト期間内にいずれかのウィンドウが作成される場合には、オートメーションにより、「New Call Created」メッセージが表示されます。
WaitForEvent
Pega Robot Studioは、オートメーションワークフローでwaitロジックを実装するための追加機能であるWaitForEventを提供します。
実行コントロールブロックがWaitForEventデザインブロックに達すると、Setup eventのロジックがトリガーされます。 Setup eventが完了すると、ロジックはFiredイベントをトリガーして、下流ロジックに進みます。 Setupイベントがタイムアウト期間内に完了しないと、time-outイベントがトリガーされます。
WaitForEvent機能をイベントに追加するには、イベントを右クリックして、「Wait for this event」オプションを選択します。
次の例では、実行コントロールがWaitForEvenメソッドに達すると、SetupイベントがトリガーされてPerformClickメソッドを実行します。 PerformClickメソッドがTimeoutプロパティで指定された期間内に正常に実行される場合には、FiredイベントがトリガーされてACME_P_GetNearestStoreのExecuteメソッドを実行します。 PerformClickメソッドの実行が指定された範囲内に正常に実行されない場合には、Timeoutイベントがトリガーされます。
WaitForCreate
WaitForCreateメソッドは、アダプターまたはコントロールに適用されます。 このメソッドを使用すると、選択されたコントロールが作成されるまでオートメーションを待機させ、その後Resultイベントをトリガーできます。 Resultイベントは、オートメーションの下流ロジックに接続できます。
メソッドには2つの形式があります。それはデザインブロックに示されるように、パラメーターを使用するものと使用しないものです。
パラメーターを使用しないメソッドは、コントロールの一致するステータスを評価するために、コントロールのTimeoutプロパティで指定された期間(デフォルトでは、30000ミリ秒)待機します。 パラメーターを使用するメソッドでは、Resultイベントをトリガーする前に待機する時間をミリ秒単位で指定できます。
このトピックは、下記のモジュールにも含まれています。
If you are having problems with your training, please review the Pega Academy Support FAQs.