初めてのワークフロー、ステップバイステップ

このチュートリアルでは、Shopify Flowの空のキャンバスから、価格が10%以上値下げされた際にチームに通知するという、1つの完全なワークフローを構築します。ここでは「Product Variant Price Changed」を使用していますが、このアプリのトリガーはすべて同じように使用されるため、以下の5つの手順はすべてのトリガーに適用できます。

アプリをインストールし、「**商品、バリエーション、コレクションのデータへのアクセス」**権限を許可する必要があります。まだの場合は、インストールと設定 から始めてください。

1. ワークフローを作成し、トリガーを選択します

管理画面([アプリ] > [Flow])から「Shopify Flow」を開き、[ワークフローを作成] をクリックします。Flow が開き、中央にプロンプトフィールドがある空のワークフローが表示されます。このアプリのトリガーを設定するには、その下にある [トリガーを選択] をクリックします。

プロンプト入力欄と、「トリガーを選択」および「テンプレートを参照」ボタンが配置された、新しい空のShopify Flowワークフロー
新しいワークフローです。このアプリのトリガーについては、「トリガーを選択」をクリックしてください。

開いたパネルで、「Workflow Trigger Extensions」を開きます。そこには、アプリのすべてのトリガーが1行の説明文とともに一覧表示されています。また、上部の検索フィールドに名前を入力することもできます。「Product Variant Price Changed」を選択してください。

Flowの「Select」トリガーパネルで、「Workflow Trigger Extensions」が開かれており、各トリガーに説明文が付いて一覧表示されている
アプリのすべてのトリガーと、それぞれに対する1行の説明が表示されます。検索フィールドを使用すると、リストを絞り込むことができます。

トリガーは、ワークフローの最初のステップとなりました。トリガーのパネルには、トリガーが送信する内容、つまり条件やアクションで使用できるデータが表示されます。

最初のステップとして「製品のバリエーション価格の変更」が設定されたワークフローキャンバス
トリガーはワークフローの最初のステップです。

2. 条件を追加する

トリガーの下にある「+」をクリックし、「条件」を選択します。「条件を追加」をクリックすると、変数ピッカーが開きます。トリガー名の下に表示される項目はすべて、このアプリからのものです。

priceChangeという形式で、旧価格と新価格の価格変動について、その差額(delta)、パーセンテージ(percentChange)、およびdirectionが示されます。これらが存在する理由は、Flowの条件式では計算が行えず、金額がテキストとして渡されるためです。そのため、アプリが計算を行い、その結果を数値として返します。

トリガーステップの下にある「+」マークが開き、「アクション」と「条件」が表示されました
ステップの下にある「+」記号は、ワークフローを構成する2つの要素、つまり「条件」と「アクション」を表しています。
「priceChange」の下に、oldPrice、newPrice、delta、percentChange、directionを表示するFlowの変数ピッカー
ワークフローにどのような影響を与えるか:変更前後の価格、その差額、割合、および変動の方向。

percentChange」を選択し、**「Less than」**を選び、「-10」と入力します。これで、値引き率が10パーセントを超える場合のみ、ワークフローが継続するようになります。

フロー条件:priceChange.percentChange が -10 未満である
完成した状態。

3. アクションを追加する

Then」の下にある**「+」をクリックし、「アクション」を選択します。アラートの場合、「社内メールを送信」が最も簡単です。他のアプリは必要ありません。「変数を追加**」を使ってテキストに変数を挿入します。例えば、次のようにします:

{{productVariant.product.title}} / {{productVariant.title}}: {{priceChange.oldPrice.amount}} -> {{priceChange.newPrice.amount}} ({{priceChange.percentChange}} %)

Flowでできることはすべてここで実行できます。タグの追加、メタフィールドの更新、SlackやERPへのHTTPリクエストの送信などです。

オプション:「コードを実行」でデータを整形する

必要な処理が、丸めや空値の代替処理、計算など、いくつかの変数を超える場合は、条件とアクションの間にFlowの「**コードを実行」**ステップを追加してください。このステップは、トリガーのデータをinputとして受け取り、後のステップで使用できるオブジェクトを返します。

Flowの「Run」コードステップが、トリガーからoldPrice、newPrice、およびpercentChangeを読み取ります
「コードの実行」は、トリガーのデータを入力として受け取り、その後に続くステップの値を返します。

4. ワークフローを有効にする

ワークフローに名前を付け、「**ワークフローを有効にする」**をクリックします。Flowはこのトリガーを持つワークフローが稼働中であることをアプリに通知し、あとはアプリが自動的に処理を行います:

  • トリガーをオンに切り替え、そして
  • 変更トリガーの場合、一致するレコードの現在の状態を一度読み取ります(ベースライン同期)。これにより、最初の変更時点で既に比較対象となるデータが存在するようになります。

大規模なカタログの場合、ベースラインの同期には数分かかることがあります。同期が完了するまでは、レコードに対する最初の変更が反映されない場合があります。

完成したワークフロー:トリガー、条件、「コードを実行」、そして右上に「ワークフローを有効にする」が表示されています
完成したワークフローです。「ワークフローを有効にする」ボタンは右上隅にあります。

5. 変更を行い、イベント履歴を確認する

テストバリエーションの価格を10%以上変更します。その後、アプリで「イベント履歴」を開いてください。アプリからFlowに送信されたすべてのイベントが、そのステータスとともに一覧表示されます。成功とは、Shopify Flowがそれを受け入れたことを意味します。

このアプリの「イベント履歴」ページには、発火したトリガーとそのステータスが一覧表示されています
「イベント履歴」には、アプリがShopify Flowに送信したすべてのイベントが一覧表示されます。

イベントをクリックすると、実際に送信された内容(条件式で認識されたのと同じ値)を確認できます。ワークフローが期待どおりに動作しなかった場合、まずここを確認してください。そのイベントが存在するか、そして想定していた値が含まれているかを確認しましょう。

「イベント履歴」にイベントが登録されました:価格が 89.00 から 69.00 へ変更され、デルタ、percentChange、および方向が記録されています。
1つのイベントが開かれた:まさにあなたの条件で検出された値そのものです。