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

AccessのDoCmd.OpenForm acPreviewでデータが表示されない

なぜか、フォームに新規データを入力し、印刷プレビュー(DoCmd.OpenForm “見積請求書F”, acPreview)した際に、それまで入力したデータが消えたようになる。 …

no image

久々にExcelVBAの仕事が来て戸惑う。

フォームのアクティブ時にトグルボタンに値をセットしたらなぜかClickイベントが動いてしまい、そのイベントをキャンセルする方法をググルもわからず(AccessではできるがExcelではできない?)、結 …

TeraStationからQnapへのデータ移行

使用開始から5年を過ぎた会社のNAS。TeraStation TS-WXL973。 使用済み容量が90%を超え、本年度中にはパンクすることが目に見えてきたので、NASを新調することにした。 ネットで評 …

no image

さくらインターネットは「IMAP関数の使用」が×になっている

・・・よって、osTicketもfreeTicketも、使えない。 両方ともインストールしてナンデカナナンデカナと悩んでいた時間が・・・。

no image

Artisteer4は、ダメダメ

Artisteerを使っている。 この秋9月からバージョン4になり、CSS3に対応した。 デフォルトデザインが白のシンプルなデザインになり、またスライドを挿入できるなど、機能もアップした。 そこで、今 …