我正在尝试为我的员工开发一个简单的应用程序,以便在远程(访问)数据库上记录他们的时间和费用,然后将其与QuickbooksPro同步。我设法让QBFC工作,我现在的问题是理解Quickbooks中的底层数据库结构(字段名称等) - 例如所以我知道要添加到查询中的元素等。
我通过反复试验找到了以下(EntityRef,CustomerRef),并查看了使用QOBDC提取的表格;但是,某处必须有文件记录 - 任何人都知道在哪里?
TimeDataQry.IncludeRetElementList.Add("EntityRef")
TimeDataQry.IncludeRetElementList.Add("CustomerRef")
TimeDataQry.IncludeRetElementList.Add("TxnDate")
TimeDataQry.IncludeRetElementList.Add("BillableStatus")
TimeDataQry.IncludeRetElementList.Add("Duration")
TimeDataQry.IncludeRetElementList.Add("TimeModified")
答案 0 :(得分:1)
使用QuickBooks OSR(在Chrome中效果最佳):
从“选择消息”下拉列表中选择您正在处理的请求/对象类型,然后单击任何节点以查看节点上的文档。
例如,您在上面发布的内容看起来就像是在查看时间跟踪条目。以下是您从OSR获得的关于 EntityRef 的信息:
<强>实体强>
QuickBooks“实体”是客户,供应商,员工或 QuickBooks上的人“其他名字”列表。需要注意的特殊情况:
- 在BillToPayQuery消息中,EntityRef引用供应商名称。
- 在 A / R账户的JournalCreditLine和JournalDebitLine消息, EntityRef必须引用客户,否则交易不会 被记录下来。对于A / P帐户,EntityRef必须引用供应商,或 否则交易将不会被记录。
- 在TimeTracking消息中, EntityRef不能引用客户,也不能引用员工,供应商或 在追踪时间的“其他名称”清单上的人。
非常简单,非常详细。
值得注意的是, QuickBooks API几乎完全反映了QuickBooks GUI 。例如,在QuickBooks GUI中创建发票时,您将看到如下字段:
然后,如果您在API中查看 InvoiceAdd ,您会找到以下字段:
将两个和两个放在一起并确定这些字段与GUI中显示的字段匹配应该非常困难。
答案 1 :(得分:0)
我使用QODBC和RSSBus创建了应用程序,我更喜欢RSSBus。原因有很多,但对于初学者来说,QODBC实际上是一个使用DNS的驱动程序,这可能会令人困惑,必须在每台要使用它的计算机上进行设置,而RSSBus则没有。 QODBC和RSSBus所做的是将QB数据库包装在类似sqlserver的数据库中,因此从QODBC工具中提取的任何表结构很可能与通过QBFC可以使用的任何内容无关。
我现在更喜欢RSSBus,但这里有两个文档的链接:
RSSBus - http://www.rssbus.com/kb/help/RQR3-A/pg_imetracking.rst
QODBC - http://doc.qodbc.com/qodbc/Qodbc_20_us.html
此外,这个SO问题可能有所帮助 - QuickBooks QBFC explanation。请注意,他说有300多页的文档。有点太多imo。
答案 2 :(得分:0)
以下是关于表模式的QODBC文档: All Tables。 如果您需要特定的美国相关表格分组,如客户和AR,请在此处查看: Tables by Group