是否有链接QuickBooks和外部系统的首选方法?
我应该将外部对象的PK存储在QB外部ID字段中,还是将QB对象的外部ID存储为外部对象中的FK?既?
还有其他选择吗?
感谢。
编辑,因为我无法回答我自己的问题:
我决定选择自定义字段。
我尝试更改作业上的外部ID字段,但它似乎是只读的。我可以创建一个ID,作业服务似乎完成了更新,但即使在同步之后,外部ID也不会改变。在将来的某个时候,我可能会将外部ID放在另一侧的相应表中,但此时我不需要它。
答案 0 :(得分:1)
所有QB项似乎都有一个由屏幕参考描述的唯一ID,通常是列表对象的ListID。我会在我的外部应用程序中使用它。
其他对象,每个示例发票等,都有一个唯一的内部QB ID,您可以使用它来引用它们,如OSR中所述。
根据示例,我将使用发票的txnID来引用外部应用程序中的发票。
TxnID
QuickBooks generates a unique TxnID for each transaction that is added to QuickBooks. A TxnID returned from a request can be used to refer to the transaction in subsequent requests.
https://member.developer.intuit.com/qbSDK-current/Common/newOSR/index.html
答案 1 :(得分:1)
有两种方法可以与QuickBooks集成。第一个是QBXML SDK v13,Luis引用了查找OSR中的字段。另一种首选方法是通过QuicKBooks REST API。
我相信Eric指的是包含REST API的REST API和Java SDK。 在这种情况下,当您对记录进行多次更新时,您需要对象的ID和同步令牌。
您可以在此处查看帐户参考(作为示例) https://developer.intuit.com/docs/0025_quickbooksapi/0050_data_services/v2/0500_quickbooks_windows/0600_object_reference/account
的问候, 震动
答案 2 :(得分:1)
我注意到QBD中的许多对象都有一个AlternateID字段。但是,文档声明它不受支持。 我也使用自定义字段,但文档说该字段必须在QuickBooks中创建,而不是由API创建。 (该字段必须首先在API可以使用之前创建)。
我知道我可以修改我的应用程序以维护所有QB ID,但对于双向集成,我也希望在QB字段中包含我的ID。