本記事では CData サポート担当からこんなことを聞かれたらどこを確認すべきか?という観点で、よく頂くお問合せ内容をご紹介します。
記事はこちら →CData ODBC Driver for FinancialForce は、PHP アプリケーションからのFinancialForce データへの連携を可能にします。本記事では、FinancialForce データをPHP のビルトインODBC 機能でクエリを実行する手順を説明します。
FinancialForce に接続するDSN を作成します。
There are several authentication methods available for connecting to FinancialForce: login credentials, SSO, and OAuth.
Set the User and Password to your login credentials. Additionally, set the SecurityToken. By default, the SecurityToken is required, but you can make it optional by allowing a range of trusted IP addresses.
To disable the security token:
To obtain the security token:
If you do not have access to the user name and password or do not want to require them, use the OAuth user consent flow. See the OAuth section in the Help for an authentication guide.
Set UseSandbox to true (false by default) to use a FinancialForce sandbox account. Ensure that you specify a sandbox user name in User.
一般的な接続文字列:
User=myUser;Password=myPassword;Security Token=myToken;
ビルトインのデータソースアドミニストレーターでDSN 設定をします。ドライバーのインストールの最後にアドミニストレーターが開きます。ヘルプの「はじめに」でODBC データソースアドミニストレータでFinancialForce に接続するDSN の設定方法を参照してください。
odbc_connect を呼び出して、FinancialForce への接続を開きます。 odbc_pconnect メソッドでも可能です。コネクションを閉じるには、odbc_close もしくはodbc_close_all を使います。
$conn = odbc_connect("CData ODBC FinancialForce Source","user","password");
コネクションはodbc_connect で開かれ、スクリプトが終わると終了します。odbc_pconnect メソッドで開いたコネクションは、スクリプトが終わっても開いたままです。これにより同じクレデンシャルであれば他のスクリプトでコネクションを共有することが可能です:
$conn = odbc_pconnect("CData ODBC FinancialForce Source","user","password");
...
odbc_close($conn); //persistent connection must be closed explicitly
odbc_prepare を使って、Prepared ステートメントおよびパラメータライズドクエリを作成します。
$query = odbc_prepare($conn, "SELECT * FROM Account WHERE Industry = ?");
Prepared ステートメントをodbc_execute を使って実行します。
$conn = odbc_connect("CData ODBC FinancialForce Source","user","password");
$query = odbc_prepare($conn, "SELECT * FROM Account WHERE Industry = ?");
$success = odbc_execute($query, array('Floppy Disks'));
Non-Parameterized クエリは、odbc_exec を使います。
$conn = odbc_connect("CData ODBC FinancialForce Source","user","password");
$query = odbc_exec($conn, "SELECT * FROM Account");
odbc_fetch_array ファンクションの結果セット配列としてアクセスします。
$conn = odbc_connect("CData ODBC FinancialForce data Source","user","password");
$query = odbc_exec($conn, "SELECT * FROM Account");
while($row = odbc_fetch_array($query)){
echo $row["BillingState"] . "\n";
}
odbc_result_all ファンクションで、結果セットをHTML テーブルとして表示します。
$conn = odbc_connect("CData ODBC FinancialForce data Source","user","password");
$query = odbc_prepare($conn, "SELECT * FROM Account WHERE Industry = ?");
$success = odbc_execute($query, array('Floppy Disks'));
if($success)
odbc_result_all($query);
スタンドアロンのテスト環境をたちあげる簡単な方法はPHP のビルトインテストサーバーを使うことです。手順はこちらです:
PHP の最新版のバイナリのダウンロード。
フォルダにファイルを入れる。
フォルダを開く。
php.ini-development をphp.ini に変更。
ブラウザからテストスクリプトにアクセスするためのコマンドを実行。
php -S localhost:8000 -t C:\path-to-your-scripts -c C:\path-to-php\php.ini
サポートされているSQL の詳細は、ヘルプドキュメントを参照してください。上のサンプルは、PHP community documentation for all ODBC functions のFinancialForce に特化したものです。