こんにちは。CData Software Japan の色川です。
拡大を続けるEC 市場において、販売側として通販を事業とされる場合、物流に関する多くの業務を担ってくれるWMS(倉庫管理システム)は欠かせない仕組みの1つかと思います。入荷・出荷や在庫の管理など、物流に関する多くの業務を担ってくれるWMS と自社のEC サイトや基幹システムとの間でデータ連携は必要不可欠ですが、物流の小口化・多頻度化や荷主ニーズの複雑化が進んでいる昨今では、それらをよりタイムリーに実現するためにWMS とのデータ連携を自動化したいニーズも高まっているようです。
この記事では「CData Arc で、日本郵便WMS のWebAPI との連携を自動化する」方法をご紹介します。
日本郵便WMS
日本郵便WMS は、通販事業者の商品を扱うために機能強化した、クラウド型物流センター倉庫管理システム(WMS)です。日本郵便WMS では利用者側のIT システムとの連携で利用できるWeb API 機能もオプションで提供されています。
CData Arc
CData Arc は、CData 製品の中で「自動化/Automate」を担うデータ連携ツールです。「B2B 連携をもっとシンプルに」をコンセプトに、ファイル連携 & DB 連携 & API 連携といったB2B 連携に必要なすべてをノーコード・ローコードでつなぐことができるプラットフォームです。
この記事のシナリオ
日本郵便WMS のWeb API では「インタフェース(ファイル)のアップロード」と「インタフェース(ファイル)のエクスポート」をサポートする機能が提供されています。
日本郵便WMS のWeb API 仕様については、こちらで確認することができますが、「セッション情報による認証処理」と「アップロード(インポート通信)に必要なマルチパートでのファイルアップロード処理」がポイントになりそうです。
そこで、この記事では「外部から取得したCSV ファイルを、日本郵便WMS のWeb API(以下、WMS API)を利用してインポートするシナリオ」をご紹介します。
より具体的には「外部(ローカルファイルシステム上)に用意した品目登録用のCSV ファイルを取得」して、「WMS API へログイン実行しセッション情報を取得」し「WMS API へCSV ファイルを送信しファイル取り込み要求」を実施した後に「WMS API からログアウト」する一連の流れを自動化します。
この記事では、WMS API 連携にフォーカスしてご紹介するためにそのままインポートできるCSV ファイルをあらかじめ用意していますが、SFTP などをはじめとしたファイルベースで連携されるデータや様々なSaaS やアプリケーションなどから取得できるデータを編集・変換してからWMS API へ連携したいケースはArc の得意領域です。
なお、日本郵便WMS 自体の機能や操作、WMS API の詳細な仕様やインタフェースフォーマットなどについては、日本郵便WMS から提供される情報をご確認ください。
連携フローの作成
このシナリオで作成する連携フローは以下のような流れになっています。
# |
コネクタ |
内容 |
1 |
File |
WMS API にインポート通信(アップロード)するCSV ファイルを取得 |
2 |
Script |
WMS API のログイン通信を実行してセッション情報を取得して、1 で取得したファイル(処理対象メッセージファイル)のメタデータに設定 |
3 |
REST |
WMS API のインポート通信(アップロード)を実行してCSV ファイルを送信しファイル取り込みをリクエスト |
4 |
Script |
WMS API のログアウト通信を実行 |
このシナリオではインポート用のCSV ファイルを以下のように準備しました。
フローの実行前には、この品目コードを持つ品目がWMS のマスタに存在していない状態です。
それではArc のフローデザイナーで連携フローを作成していきます。
1. File コネクタ
最初に「WMS API にインポート通信(アップロード)するCSV ファイルを取得」するFile コネクタを設定します。この連携フローのはじまり(起点)となるコネクタです。「受信」アクションで構成します。
準備したインポート用のCSV ファイルを取得できるように「パス」と「ファイルマスク」を指定します。
2. Script コネクタ
次に「WMS API のログイン通信を実行してセッション情報を取得」して「File コネクタで取得したファイル(処理対象メッセージファイル)のメタデータに設定」するScript コネクタを設定します。このシナリオでポイントになる部分の1つです。
このコネクタではArcScript のhttpPost オペレーションを利用して「WMS API のログイン通信を実行してセッション情報を取得」します。httpPost オペレーションでは対象エンドポイントへのPOST リクエストはもちろん、煩雑になりがちな設定されたCookie の取得などもとてもシンプルに実現することができます。このコネクタではhttpPost オペレーションのアウトプット属性で得られる「allcookies」をシンプルにメッセージヘッダーに設定して後続のコネクタで利用できるように構成しました。Referer は静的な値ですが、同じようにメッセージヘッダーに構成しています。
この記事では、ログイン情報に相当するリクエストデータを文字列で静的に指定していますが、外部にJSON ファイルとして用意しておき、fileRead オペレーションなどで取得するように構成するのも簡単です。
このコネクタでメッセージヘッダーをこのように構成することで、実行時にはコネクタからアウトプットされるメッセージファイルのヘッダーに以下のようにCookie やReferer として利用したい値が設定され、後続のコネクタへと渡されていく事になります。
3. REST コネクタ
次に「WMS API のインポート通信(アップロード)を実行してCSV ファイルを送信しファイル取り込みをリクエスト」するREST コネクタを設定します。このシナリオでポイントになるもう1つの部分ですが、設定自体はシンプルです。
まず、このコネクタではCookie やReferer などリクエストヘッダーを指定する際、インプットファイルのメッセージヘッダーに構成された値をArcScript を利用して取得して設定します。それを可能にできるように「高度な設定」の「ヘッダー内のArcScript を許可」しておきます。
準備ができたら設定に戻り、「メソッド&URL」はWMS API で指定された通りの値で構成します。ポイントはヘッダーでのCookie やReferer ですが指定自体はシンプルです。
ボディの種類には「form-data」を選択し、インプットファイルであるCSV ファイルを「uploadFile」に。残りのform-data の名前、値もWMS API で指定された通りの値で構成します。
なお、この記事では設定の分かりやすさからインポート通信の実行はREST コネクタで構成しましたが、もしREST コネクタで設定可能な項目以上に細かくチューニングしたい場合は、Script コネクタでhttpUpload オペレーションを利用することもできます。
4. Script コネクタ
最後に「WMS API のログアウト通信を実行」するScript コネクタを設定します。このコネクタは終端(Terminal)となるように構成しました。
このコネクタもログイン通信と同じように、ArcScript のhttpPost オペレーションを利用しますが、メッセージヘッダーに構成されている値を利用してPOST リクエストを行うのみですので構成はシンプルです。
これで「取得したCSV ファイルを、日本郵便WMS のWeb API を利用してインポートするシナリオ」のフローが完成しました。
連携フローの実行
作成したフローを実行して確認してみましょう。トリガー開始から「手動で受信」を実行します。起点となるFile コネクタのアウトプットタブから「受信」を実行することと同等です。
「詳しくはこちら」から表示できるメッセージビューアで、作成したフローの一連の実行状況を確認します。無事に一連の流れが成功していることが確認できます。
日本郵便WMS の品目マスタに期待通りに登録されていることが確認できます。
日本郵便WMS のインタフェース履歴照会でもインポート通信(アップロードリクエスト)が正常に処理されたことが確認できます。
まとめ
この記事では「CData Arc で、日本郵便WMS のWebAPI との連携を自動化する」方法をご紹介しました。
この記事では連携フローを構成する上でのポイントにフォーカスして(かいつまんだ形で)ご紹介しました。実際に「日本郵便WMS のWebAPI と連携したいユースケース」をお持ちの方は、トライアルの準備を進められる中でぜひサポートデスクへお知らせください。ご紹介したポイント以外の部分も含めて、皆さんがArc で実現したい連携シナリオをサポートします。
CData Arc はシンプルで拡張性の高いコアフレームワークに、豊富なMFT・EDI・エンタープライズコネクタを備えたパワフルな製品です。CData Drivers との組み合わせで270を超えるアプリケーションへの連携を実現できます。
皆さんのつなぎたいシナリオでぜひ CData Arc を試してみてください。
CData Arc - セキュアなデータ連携とマネージドファイル転送(MFT)
製品を試していただく中で何かご不明な点があれば、テクニカルサポートへお気軽にお問い合わせください。
CData Software Japan - Support Form
この記事では CData Arc™ 2024 - 24.2.8980.0 を利用しています
関連コンテンツ