删除从QBSDK到IPP的条目?

时间:2011-11-23 22:02:57

标签: quickbooks intuit-partner-platform

我们目前正在使用Windows QBSDK与QuickBooks进行交互。我们正在评估未来的IPP。但是,QBSDK使用ListID的/ TransactionID来标识对象,而IPP使用不同的方案。有没有办法确定两者之间的映射?

1 个答案:

答案 0 :(得分:4)

在IDN问了同样的问题,并被告知没有人去执行这个翻译。但是,来自合作伙伴的一点帮助,一些仔细观察IPP和QuickBooks之间的结果,我有一个相当不错的答案。

QuickBooks中的典型ID如下所示:

80000001-1296949588

第一部分是标识符,第二部分是某种形式的时间戳。

将第一部分视为32位十六进制数,然后关闭高位。在这种情况下,您将得到1。

如果您在QB中首先创建记录然后同步到IPP,您将找到以这种方式识别的记录:

<Id idDomain="QB">1</Id>

如果您首先在IPP中创建记录,您将找到以这种方式识别的记录:

<Id idDomain="NG">1</Id>

同步后,您会找到一个外部记录参考,例如:

<ExternalKey idDomain="QB">3</ExternalKey>

这将与QuickBooks中的交易ID匹配:

80000003-1299163737

不幸的是,由于QuickBooks中标识符末尾附加了时间戳,因此此变换不是同构的。因此,从QuickBooks ID转换为基于IPP的ID是很容易的。翻译另一种方式需要在QuickBooks中枚举记录并匹配ID。