IT仕事 Shopify

難解なAPIを使わずにShopifyの注文データをAccessに取り込む

投稿日:2021年10月12日 更新日:

Shopify側

・Matrixfyアプリをインストールする。
・Matrixfyはデモプランでも最大10件ダウンロードできる。スケジュールタスクは何個でも作成できるので、例えば、コンビニ知らはい、銀行振り込み、代引きの3つのタスクを作れば、最大30件を一度にダウンロードできる。
・Matrixfyの設定により、定期的に注文ファイルをアプリ用のWebフォルダに作成してくれる。例えば1時間ごとに生成するようにする。リンクはランダムな英数字混じりになっているために容易に推測されないものになってはいるし、たしかShopifyアプリのディレクトリは外部から検索できないようになっているので、ある程度安全性は高いと思う。
・例えば自分のリンクは「・・・export_order_d.csv?job=69934904&kind=exported」となっているが「?」以降は省いて「・・・export_order_d.csv」とする。こうしておかないと、最新状態が取得できない。

参考:
Shopify(Matrixify)でスケジュール化したJobのキャンセル – Home and Abroad

PowerShell側

・Shopifyのダウンロードリンクを、ファイルとして保存するPowerShellの処理ファイル(例えばGetCsv.ps1)を作る。
・処理ファイルには、Shopify(Matrixify)の定期更新で生成される注文ファイルを、指定フォルダにダウンロードする処理を書く。自分は、社内のファイルサーバのディレクトリを指定した。

参考:
windowsのコマンド(DOS/PowerShell)でファイルをダウンロードする方法について | あいしんくいっと

Access側

・上記で作成したPowerShellファイル「GetCsv.ps1」をAccessのフォームに配置したボタンで呼び出すことで、CSVが最新化されるようにする。
・自分はそのCSVファイルをリンクテーブル化し、他の処理でクエリから呼び出して利用している。

参考:
【VBA】PowerShellファイルを同期実行する | 現場で使える! Excel/VBA実践ガイド

それにしてもすごいぞ、Matrixfy! 最近、Matrixifyが神に見えてきています。

-IT仕事, Shopify

執筆者:

関連記事

no image

Nvu

とあるWebサイトを作っている。

no image

迷惑メール

仕事にプライベートにYahooメールを使っている。 ここのところ、やけに迷惑メールが多い。 Yahooメールにはオプションで受信拒否やフィルタ機能もあるのでそれらを使ってはいるのだが、それぞれ100ア …

JQueryでカレンダー入力機能

以下を参考に、ZeroMailというメールフォームスクリプトにカレンダー入力機能を追加。 Datepicker | jQuery UI 1.10 日本語リファレンス | js STUDIO 他のサイト …

no image

AutoHotkeyでNumLockキーをBackSpaceに入れ替え

会社で使っている、HP ProBook470のキーボードが使いにくい。 BackSpaceが小さく、隣のNumLockを間違えて押してしまう。 以下のリンクを参考に、AutoHotkeyというソフトで …

no image

PXE Terminael Server for HTTP-FUSE KNOPPIX

PXE Terminael Server for HTTP-FUSE KNOPPIXを使ってみた。 サイトからISOイメージをダウンロードして、CDに焼いた。 ISOイメージを焼くのは初めてだったが、 …