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

来週やるExcelVBAセミナーの準備をしていて、

同じ「飛び物」でもロケットが好きな人とラジコンが好きな人がいるよな、とふと思った。 ロケットの好きな人は、 準備をきちんと整えて、万全を期して発射スイッチを押す・・・飛んだ!あんなに高く。感動! 飛ん …

no image

秀丸マクロで、HTMLの幅と高さを削除する

正規表現を使い、さらにスペースや文字数に配慮すればするほど、わかりにくいコードになる・・・もうちょっと改善の余地があるのかもしれないが、自分のスキル的にココまでが限界。 replaceallfast …

no image

ExcelVBAのコメント操作で色々手間取ったので備忘録

フォーム上のコントロールの値を特定のセルにセットするのと、コメントの背景色をセットするには: 例えば、こんな感じに。 If TextBox8.Value <> "" T …

no image

仕事in靴屋さん

店長さん、極めて博識、且つやる気十分。 腕も優秀、たいした職人。 従業員も情熱的。 よっしゃ! あとはオレがIT魂でもって別世界(金銀財宝がうなるところ)へと連れてってやらア! と、大風呂敷。 ・・・ …

no image

フリーブラシ

幾何学模様を使ったバナーをどうやって作るのか、よくわかっていない。 時間に追われ、いつも腐心して、それでもなんとかかんとか、それなりに作っているのだが、これではいけないと自分でも思っている。 今日は時 …