製品をチェック

無償トライアル:

無償トライアルへ

製品の情報と無償トライアルへ:

BigCommerce ODBC Driver

BigCommerce ODBC Driver を使って、ODBC 接続をサポートするあらゆるアプリケーション・ツールからBigCommerce にデータ連携。

BigCommerce データにデータベースと同感覚でアクセスして、BigCommerce のCustomers、Products、Orders、Transactions データに使い慣れたODBC インターフェースで双方向連携。

データ連携でお困りですか?

お問い合わせ

Delphi のBigCommerce データへのデータバインドコントロール


標準のデータアクセスコンポーネントとコントロールを備えたDelphi のBigCommerce にデータバインドします。


古川えりか
コンテンツスペシャリスト

CData ODBC Driver for BigCommerce は、ODBC 標準をサポートし、ライブBigCommerce データとビジュアルフォームデザイナおよびDelphi の他のラピッド開発ツールとの統合を可能にします。ODBC ドライバーは、データベース開発用のシングルAPI を提供することにより、Delphi のような単一のコードベースを共有するアプリケーションのデータアクセス戦略を簡素化します。この記事では、BigCommerce に接続してシンプルなVisual Component Library (VCL) アプリケーションおよびDelphi コードからデータをクエリする方法を説明します。

BigCommerce データへの新しいFireDAC 接続を作成します。

未指定の場合は、初めにODBC DSN (data source name) で接続プロパティを指定します。ドライバーのインストールの最後にアドミニストレーターが開きます。Microsoft ODBC Data Source Administrator を使用して、ODBC DSN を作成および構成できます。

BigCommerce 認証は標準のOAuth フローに基づいています。

Store ID の取得

BigCommerce Store に接続するには、StoreId が必要です。Store Id を確認するには、以下の手順に従ってください。

  1. BigCommerce アカウントにログインします。
  2. ホームページから「Advanced Settings」->「API Accounts」 を選択します。
  3. 「Create API Account」->「Create V2/V3 API Token」をクリックします。
  4. 画面にAPI Path という名前のテキストボックスが表示されます。
  5. テキストボックス内に、次の構造のURL が表示されます:https://api.bigcommerce.com/stores/{Store Id}/v3。
  6. 上記で示したように、Store Id は'stores/' と'/v3' パスパラメータの間にあります。
  7. Store Id を取得したら、「キャンセル」 をクリックするか、まだ持っていない場合はAPI Account の作成に進むことができます。

パーソナルアクセストークンの取得

加えて、自分のデータをテストおよびアクセスするには、個人用トークンを取得する必要があります。個人用トークンを取得する方法は次のとおりです。

  1. BigCommerce アカウントにログインします。
  2. ホームページから「Advanced Settings」->「API Accounts」 を選択します。
  3. 「Create API Account」->「Create V2/V3 API Token」をクリックします。
  4. アカウント名を入力します。
  5. 作成するAPI Account の「OAuth Scopes」を選択します。本製品 は"None" とマークされたデータにアクセスできません。また、"read-only" とマークされたデータを変更できません。
  6. 「保存」をクリックします。

BigCommerce への認証

次に、以下を設定してデータに接続できます。
  • StoreId:API Path テキストボックスから取得したStore ID に設定。
  • OAuthAccessToken:生成したトークンに設定。
  • InitiateOAuth:OFF に設定。

以下のステップに従ってData Explorer を使用し、BigCommerce へのFireDAC 接続を作成できます。

  1. 新しいVCL Forms アプリケーションの[Data Explorer]で[FireDAC]ノードを展開します。
  2. [Data Explorer]で[ODBC Data Source]ノードを右クリックします。
  3. [Add New Connection]をクリックします。
  4. 接続の名前を入力します。
  5. 表示される[FireDAC Connection Editor]で、[DataSource]プロパティをODBC DSN for BigCommerce の名前に設定します。
A FireDAC connection to the ODBC data source.(Salesforce is shown.)

BigCommerce データに接続できるVCL アプリケーションの作成

以下のステップに従って、クエリの結果をグリッドに表示するシンプルなVCL アプリケーションからBigCommerce のクエリの実行を開始します。

  1. TFDConnection コンポーネントフォームにドロップし、以下のプロパティを設定します。

    • ConnectionDefName:BigCommerce へのFireDAC 接続を選択します。
    • Connected:メニューから[True]を選択し、表示されるダイアログで資格情報を入力します。
  2. TFDQuery コンポーネントをフォームにドロップし、以下のプロパティを設定します。

    • Connection:コンポーネントがまだ指定されていない場合は、このプロパティを[TFDConnection]コンポーネントに設定します。
    • SQL:[SQL]プロパティ内のボタンをクリックし、クエリを入力します。例:

      SELECT FirstName, LastName FROM Customers WHERE FirstName = 'Bob'
    • Active:このプロパティをtrue に設定します。
  3. TDataSource コンポーネントをフォームにドロップし、以下のプロパティを設定します。

    • DataSet:このプロパティのメニューで、TFDQuery コンポーネントの名前を選択します。
  4. TDBGrid コントロールをフォームにドロップし、以下のプロパティを設定します。

    • DataSource:TDataSource の名前を選択します。
  5. 実行時エラーを回避するために、TFDGUIxWaitCursor をフォームにドロップします。
Components in FireDAC used to databind an editable grid to the data source.(Salesforce is shown.)

FireDAC コンポーネントを使用してBigCommerce へのコマンドを実行

TFDConnection およびTFQuery コンポーネントを使用してBigCommerce へのクエリを実行できます。このセクションでは、TFQuery コンポーネントを使用してクエリを実行するBigCommerce 固有の例を示します。

BigCommerce データに接続

データソースに接続するには、TFDConnection コンポーネントの[Connected]プロパティをtrue に設定します。コードでも同じプロパティを設定できます。

FDConnection1.ConnectionDefName := 'mybigcommerce'; FDConnection1.Connected := true;

パラメータクエリの作成

パラメータ化されたリソースはパフォーマンスを向上させることができます。ステートメントの準備は、システムリソースと時間の面でコストがかかります。ステートメントの準備中、接続がアクティブで開いている必要があるためです。FireDACはデフォルトで、同じクエリが何度もリコンパイルされないようにクエリを準備します。ステートメントの準備を無効にするには、ResourceOptions.DirectExecute を[True]に設定します。クエリを一回だけ実行する必要がある場合などに設定します。

クエリの実行

select クエリなど、結果セットを返すクエリを実行するには、Open メソッドを使用します。Open メソッドは、クエリを実行して結果セットを返し、それを開きます。クエリが結果セットを生成しない場合、Open メソッドはエラーを返します。

FDQuery1.Open('select * from Customers where FirstName = :FirstName',['Bob']);

delete のような結果セットを返さないクエリを実行するには、ExecSQL メソッドを使用します。クエリが結果セットを返す場合、ExecSQL メソッドはエラーを返します。影響を受ける行の数を取得するには、[TFD.RowsAffected]プロパティを使用します。

FDQuery1.ExecSQL('delete from Customers where Id= :myId',['x12345']); i := FDQuery1.RowsAffected;