CData Excel Add-In for Ponparemall を使えば、Excel から直接Ponparemall への編集や保存が可能になります。この記事では、Excel から Ponparemall にデータを移行する方法を説明します。
Ponparemall のデータを一度Excel にエクスポートして編集・データソースの一括更新を行えるだけではなく、Excel スプレッドシートに保存されているデータを一括でPonparemall にインポートすることも可能です。
今回の記事では、Orders テーブルを使います。同じことが、CData Excel Add-In で取得できるすべてのテーブルに対して実行可能です。
接続の確立
Ponparemall への接続には、Excel Add-in をインストールしたExcel の[CDATA]タブ→[Ponparemall]アイコンをクリックします。
Ponparemall に接続するには、ShopUrl、InventoryUserId、InventoryPassword、OrderUserId、OrderPassword、PaymentUserId、およびPaymentPassword が必要です。
Ponparemall へのアクセスの設定
Ponparemall には各API のId とPassword が必要です。取得するには、以下の手順に従ってください。
- Ponparemall Manager にログインし、メニューの「各種申請」の「WebAPI利用申請」をクリックします。
- Web API メニューの「WebAPIサービス利用申請」をクリックし、利用申請を行います。
- 後日、Ponparemall から必要なId とPassword が送られてきます。
Ponparemall アカウントの認証
次の接続プロパティを設定して接続します。
- ShopUrl:接続先のPonparemall Shop URL を設定。「http://storetst4.ponparemall.com/sample/」に含まれる「sample」の部分を入力します。
- InventoryUserId:「在庫API」のユーザID を設定。このプロパティは、Inventory テーブルにアクセスする場合に必要です。
- InventoryPassword:「在庫API」のパスワードを設定。このプロパティは、Inventory テーブルにアクセスする場合に必要です。
- OrderUserId:「受注API」のユーザID を設定。このプロパティは、Orders テーブルにアクセスする場合に必要です。
- OrderPassword:「受注API」のパスワードを設定。このプロパティは、Orders テーブルにアクセスする場合に必要です。
- PaymentUserId:「決済API」のユーザID を設定。このプロパティは、Payments テーブルにアクセスする場合に必要です。
- PaymentPassword:「決済API」のパスワードを設定。このプロパティは、Payments テーブルにアクセスする場合に必要です。
Ponparemall データの取得
Ponparemall にデータを挿入するには、まず該当するPonparemall のテーブルを取得します。これによりExcel スプレッドシートとPonparemall のテーブルが連携した状態になります。取得したテーブルに対し変更、もしくは追加した部分は文字が赤でハイライトされます。
- CData リボンからPonparemall ボタンをクリックします。データ選択ウィザードが表示されます。
- テーブルもしくはビューメニューから、Orders テーブルを選択します。
- [最大行数]に、取得したい最大行数を入力します。データの一括入力だけが目的の場合は1行だけを取得すれば十分です。リクエストどおりにクエリ欄にSQL クエリが表示されます。
- [シート名]に作成されるシートの名前を入力します。デフォルトでは、取得するテーブル名が新しいシート名になります。
Ponparemall へのデータの挿入
データ取得後、既存のExcel で保存されているデータを取得したテーブルの下に追加していきます。
- テーブルの最終行の下の行に、他のシートを参照する式を入力します。例:=MyOrdersSheetInExcel!A1。
- Ponparemall に挿入するセルを参照する式を入力し、セルを取得する行数分ドラグダウンします。テーブルに参照された値が表示されます。
- 挿入する行を選択して、CDATA リボンの[行を挿入]ボタンをクリックします。
各行の挿入が完了すると、Id の値が表示され、追加した値の文字が赤から黒に変わります。