如何在QuickBooks Desktop的QBXML响应中验证TimeModified时间戳值?

时间:2014-03-25 15:45:30

标签: synchronization quickbooks qbxml qbwc

我正在使用QuickBooks Web Connector将QuickBooks Desktop员工和客户与我们的第三方Web应用程序双向同步。我们计划将QBXML中返回的TimeModified值与系统中记录的最后一次更改的时间戳进行比较,以确定哪个版本(QBD或我们的版本)是最新版本。

我发现用户可以在本地计算机(即运行QBD和QBWC)上将日期和时间更改为不正确的时间,从而导致QBXML结果中的TimeCreated和TimeModified字段具有不正确的修改时间戳值。这可能会导致数据完整性问题,特别是如果日期是在过去或将来设置的,则比较将无效并且记录可能会被永久忽略或错误更新。

有没有办法获得QuickBooks Desktop主机的系统时间?我能想到的唯一方法是修改一个对象然后读取它的TimeModified值,但这看起来像是一个黑客。

1 个答案:

答案 0 :(得分:1)

我面临同样的问题,QuickBooks根本不考虑UTC时间。这个时区都是假的,导致获取数据时出现问题。

我认为最好的方法就是在收到TimeModified时订购TimeModified,然后花费最新时间并在其上进行+1秒。

这也是您提到QuickBooks Web Connector TimeModified offset does not account for Daylight Savings time时遇到的问题,您必须在启用dst时删除delta dst。