メタフィールドの自動更新方法について

注文管理の注文内容の項目にメタフィールドを使用して出荷日を作成いたしました。

現在、出荷日の項目は手動で更新する必要があり、1日数百件の注文が入った場合、手動で出荷日を更新するのが手間になってしまうと考え、Shopifyフローのアプリを使用して、メタフィールドの出荷日欄を自動更新する方法がないかを確認させていただきたく、ご連絡させていただきました。

ちなみに出荷日の考え方として、下記になります。

例:11/6の15時以降の注文~11/7の14時59分59秒までの注文を翌営業日(11/8)発送。11/7の15時以降の注文~11/8の14時59分59秒までの注文を11/9発送

下図のようなフローではいかがでしょうか?

metafieldのnamespaceとkeyは、質問者様が設定した内容にご変更ください。

また、Valueの内容は下記です。

{% assign one_day = 1 | times: 24 | times: 60 | times: 60 %}{% assign two_day = 2 | times: 24 | times: 60 | times: 60 %}{% assign createdTime = order.createdAt | date: '%k' | plus: 9 %}{% if createdTime > 23 %}{% assign createdTime = order.createdAt | minus: 24 %}{% endif %}{% if createdTime < 15 %}{{ order.createdAt | date: '%s' | plus: one_day | date: '%Y-%m-%d' }}{% else %}{{ order.createdAt | date: '%s' | plus: two_day | date: '%Y-%m-%d' }}{% endif %}

1つ懸念がございまして、

土日祝日休日などで、営業日ではない日が存在する場合、

上記ではうまくいきません。

営業日ではない日が存在する場合は、

そのリストと、

上記の方法で決定された日付がそのリストの日付と一致するかどうかを判定し、

一致する場合は、日付をプラス1するというループ処理を追加する必要があります。

それは少し大変ですので、

もし、

実際の出荷時に、

Shopify上で、「発送済み」にされているようでしたら、

Flowのトリガーを、Fulfillment Createdに変更し、

そのcreatedAtを出荷日として設定するフローを組んだ方が間違い無いかもしれません。

ご参考まで。

(キュー田辺)

1 Like