PHPでodbc経由でQuickBooksデータベースに接続しますか?
-
03-07-2019 - |
質問
[編集]
ウェブフォームでユーザーからクレジットアプリケーションデータを収集しています。
WebフォームをQBに直接結び付けていません。
QBのテーブル構造がこのデータコレクションのために何であるか、または実際にQBを直接操作したことがないため、どのようにユーザーに表示するかはわかりません。しかし、私のオフィスの他の人はそうします。
オープンソース/無料のオプションに関する情報はまだあります。
最初に必要なオプションを削除して、問題を簡素化します。
フラットファイルをクイックブックにインポートすることについて話しましょう。
使用できるクイックブックのコピーがないため、クイックブックにネイティブなオプションが存在するかどうかはわかりませんが、QBがインポート用の.iniファイルを期待しているというおしゃべりがウェブ上で見られます。 (まだ期待されている形式はわかりませんが、後で解決します)
フラットファイルをmySQLからクイックブックにインポートした場合や、洞察を提供するリンクを知っている場合は、ストーリーを共有してください(今のところあまり見当たりません)。
[編集の終了]
このシナリオはおそらく一般的ではないことを理解していますが、2つの方法のいずれかで既存のクイックブックデータベースに接続する必要があります。
1)Webサイトで実行されているphpスクリプトから直接-ユーザーが指定したデータをWebからクイックブックに直接挿入します。
または
2)ユーザーのデータを直接mySQLデータベースに入れ、後でmySQLからクイックブックにデータをエクスポートします。
最初のオプションが実行可能な場合は、クイックブックデータベースへのodbc接続の確立に関するご意見をお寄せください。
次のようなことでそれを実行できますか
try {
$conn = @odbc_connect("DSNName", "", "", "SQL_CUR_USE_ODBC");
// un and pw parameters are passed as empty strings since the DSN
// has knowledge of the password already.
// 4th parameter is optional
$exec = @odbc_exec($conn, $insert) or die ("exec error");
echo "success!";
}
catch (Exception $e) {
echo $e->getMessage();
} // end try catch
解決
3番目のオプションが役立つ場合があります。
オプション1-QODBC:シンプルさを求めている場合、上記のQodbcがそれを行う主な製品であり、費用がかかります。
オプション2-Quickbooks SDK: SDKを使用してXML構造を使用しても問題ない場合は、開発者ネットワークでいくつかの優れたリソースを見つけることができます。 SDKのアカウントは無料で、かなり簡単に使用できます。
これは1つに要約します。無料で使いたい場合は、手に入れられないかもしれません。QODBCは、前回チェックしたときに手ごろな価格です。
どちらのアプローチでも注意すべき重要な点が1つあります。Quickbooksにデータを書き込むテーブルがSDKとQODBCで利用できることを確認してください。
Quickbooksが古くなるにつれて、一部のテーブルへのアクセスがなくなりました。たとえば、Intuitの給与計算サービスと競合するため、給与計算控除テーブルに直接書き込むことはできません。
オプション3-直接SQL操作: Intuitは、SQLデータ内のデータを暗号化して、直接アクセスできないようにします。
編集:オプション4-Quickbooks Web Connector Quickbooksを使用してコンピューター上に存在し、ユーザーとの対話を行うSOAPラッパー。無料です。
がんばって!
他のヒント
ODBCアクセスが必要な場合、QODBCが唯一の選択肢です。
QuickBooks Enterprise Editionの新しいバージョンはSQLデータベースバックエンドを使用しますが、SQLテーブルに直接アクセスすることはできません 。データベースをロックダウンしているため、実際にデータを照会することはできません。
AccessBooksは別のオプションで、QuickBooksからMySQLにデータをミラーリングし、データをQuickBooksにプッシュバックできます。私はそれが少し不安定になる可能性があると聞きました。
QuickBooks SDKを使用して、QuickBooks GUIでできることはほとんど何でもできますが、もう少し手間がかかります。 WebアプリケーションをQuickBooksと統合する場合は、Webコネクタを使用することをお勧めします。私は、非常に安定していて人気のあるQuickBooks / PHPフレームワークの開発者であり、おそらくあなたに役立つでしょう:
https://idnforums.intuit.com/messageview.aspx?catid = 56& threadid = 9164
QBスキーマ全体をデータベースにミラーリングするサポートを追加し、同期を維持し、変更をQuickBooksにプッシュバックできるようにしています。ただし、作業はまだ完了していません。現在、QuickBooksからデータを取得し、非常にうまく同期を維持しています。
IIFファイルをQuickBooksにインポートすることもできますが、現在はIntuitによってサポートされておらず、廃止された形式です。使用しないことを強くお勧めします。理由は次のとおりです。 http://wiki.consolibyte.com/wiki/doku.php/quickbooks_integration_methods
すでにこれを見たことがあるかもしれませんが、最初のシナリオの要件、セットアップ手順、およびサンプルコードを提供しているように見えるので、見たくない場合があります。
インポートが何を達成するのか正確にはわからない:クイックブックにどんな種類のトランザクションをプッシュしますか?
QuickBooks SDKを使用してデータ、特にトランザクションデータをクイックブックにプッシュして、調整、投稿などをクイックブック自体で処理できるようになり、大きな成功を収めました。これは利用可能なオプションですか?
多くの SDKに関する情報はこちら
で入手できます。QuickBooks Enterprise 2011ではこれが変更され、実際のODBCアクセス(制限された権限および限られた量のテーブルへのアクセスが可能)が可能になり、SQLツールを使用してODBCアクセス経由でマッピングできます。