国内初!bubble公式開発試験に合格!

【Bubble】再帰ワークフローの仕組みと活用法

概要

再帰ワークフローとは

Swoooでは、自身のワークフローを繰り返し呼び出すことを、再帰ワークフローと呼んでいます。

一般的なプログラミングでは、ループ処理と呼ばれているものです。

リストに対して何らかのアクションを実行したい場合に、再帰ワークフローがよく使われます。

※2023年2月現在、バックエンドワークフローはPersonalプラン以上でないと使えません。

具体的なユースケース

  • すべてのユーザーにテキストメッセージを送信する
  • 製品リストの項目を一括で処理する
  • データベースを再構成する際に、データ構造を一括で作成する

メリット

API Workflow on a listには、以下のデメリットがあります。

  • リストのワークフローが増えるにつれて処理能力が低下する
  • リストの検索とスケジュールに10秒以上かかると、プロセスを終了する
  • 容量の増加により、ワークフローの待ち時間が発生することで、一時的に処理が遅くなる可能性がある

API Workflow on a listに対して、再帰ワークフローは以下のメリットがあります。

  • アプリの容量に達してタイムアウトしない
  • ループの中で再帰ループを呼び出せる
  • 動的に、繰り返し処理が終了する条件を定義できる
  • ワークフローの最後にアクションを実行できる

具体的な設定方法

再帰ワークフローを設定するためには、バックエンドワークフローを使う必要があります。

SettingのAPIから、「Enable Workflow API and backend workflows」にチェックします。

バックエンドワークフローから、API workflowを作成します。

API workflow アクションを「Schedule API Workflow」を選択することで、再帰ワークフローを使えます。

再帰ワークフローを使ってユーザーコードの一斉更新をしてみよう

概要

今回は、再帰ワークフローを使って、ユーザーコードを一斉更新していきます。

以下のように、バラバラになっているユーザーコードを順番になるように更新します。

1. パラメータの設定

再帰ワークフローのパラメータを設定します。

今回は、「index」「count」「users」の三つのパラメータを追加します。

2. スケジュールの詳細な設定

スケジュールについての、より詳細な設定をします。

設定についての説明です。

  • index:再帰ワークフローを呼び出すごとにインデックスを1増分します。
  • Only when:現在のindexがカウント以下かどうかを確認します。以下である場合に再帰ワークフローが終了します。

3. ユーザーコードの一斉更新

ユーザーコードを更新するために、ユーザーコードをindexの値に一致させるワークフローを追加します。

最後に、ユーザーコードを更新するボタンを配置します。

ボタンのワークフローを以下のように設定します。

4. 動作確認

プレビューで「再帰ワークフローを実行」ボタンをクリックするとデータベースのユーザーコードが更新されています。

資料請求

Swoooのサービス資料をダウンロードいただけます。開発支援をご検討の方はぜひご一読ください。

ご相談・お問い合わせ

お客様の新規事業開発やマーケティング活動における課題解決をサポートします。
お気軽にご相談ください。

料金シミュレーション

たった2分で開発費用が分かります。
簡単な質問に答えるだけでお見積りが可能です。