1

QODBCドライバーを使用して、カスタムアプリケーションで作成された請求書をQuickBooksにインポートするコードに取り組んでいます。ほぼ機能していますが、実際の請求書レコードを追加するINSERTで問題が発生しています。私の全体的なコードは、 http://support.flexquarters.com/esupport/index.php?_m = knowledgebase&_a = viewarticle&kbarticleid = 10726&nav=0,58,64にレイアウトされているモデルに基づいています。

この特定のケースでは、InvoiceLineテーブルへのINSERTは機能していますが、InvoiceへのINSERTは次のエラーで失敗します。

[QODBC]エラー:3140-請求書の行にQuickBooksItem""への無効な参照があります。

この場合に送信するINSERTコマンドは次のとおりです。

INSERT INTO Invoice (CustomerRefListID, ARAccountRefFullName, TxnDate, RefNumber, TermsRefFullName, TemplateRefFullName, SalesRepRefListID, ClassRefListID)
  VALUES ('80000855-1326914216', 'Receivables', {d '2012-01-17'}, '12-1005', '30 days', 'Customized Invoice', '30000-1034349330', '8F70000-912629594')

CustomerRefListID、SalesRepListID、およびClassRefListIDの値はすべて、それぞれのテーブルを検索することによって決定されます。また、用語テーブルで「30日」が発生することを確認しました。

このコマンドを生成する以前のバージョンのコードは、数日前にさまざまなデータで機能していました。SalesRepRefFullNameとClassRefFullNameを使用しました。このケースが失敗したため、使用可能な文字列が必ずしもフルネームと完全に一致するとは限らないと考えて変更しました。

どんな提案も歓迎します。

タマール

4

2 に答える 2

1

解決しました。参照されたアイテムは、請求書自体ではなく、ラインアイテムの1つに含まれていることが判明しました。いずれかの広告申込情報のRefIDが空であることに気づきませんでした。

確かに有用なエラーメッセージではありません。

于 2012-01-20T21:22:47.207 に答える
0

Quickbooksにアイテムが存在しません。最初にQuickbooksで作成してから、請求書で参照できます。

于 2012-01-19T15:30:38.980 に答える