我正在使用Consolibyte的"DevKit"(example_web_connector.php)尝试与Quickbooks WebConnector集成。
我收到了ItemInventoryQueryRq
的这个烦人的错误。
查询请求在QuickBooks 中找不到匹配的对象
有人告诉我,这个错误意味着WebConnector没有可检索的记录,但我正在查看Quickbooks中的项目,那里有很多。我使用的是最简单的请求XML,没有过滤器,所以我认为它应该得到所有过滤器。
以下是请求XML:
<?xml version="1.0" ?>
<?qbxml version="8.0" ?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<ItemInventoryQueryRq>
</ItemInventoryQueryRq>
</QBXMLMsgsRq>
</QBXML>
SOAP请求的顺序是
- 传入:服务器版本
- 传出:serverVersionResponse
- 传入:客户端版本
- 传出:clientVersionResponse
- 传入:验证(此时我"排队"产品请求)
- 传出:authenticateResponse
- 传入:sendRequestXML(包括一堆Quickbooks"公司"数据)
- 传出:ItemInventoryQueryRq
- 传入:ItemInventoryQueryRs(包含状态消息:"查询请求在QuickBooks中未找到匹配的对象")
查询请求在QuickBooks 中找不到匹配的对象
这正是它所说的——你搜索了一些东西,但没有什么能与你的搜索相匹配。
有人告诉我,这个错误意味着WebConnector没有可检索的记录,但我正在查看Quickbooks中的项目,那里有很多。
那么这里有两个错误之一。任一:
a) 你有一个严重损坏的QuickBooks公司文件(不太可能)
或
b) 您要么没有查看,要么没有查询正确的项目
您是否100%肯定您在QuickBooks中查看的是库存项目,而不是其他类型的项目(服务、组装、折扣、增值税、非库存等)?
您是否100%肯定这是您发送给QuickBooks的查询?
我敢打赌,如果你没有看到正确的项目类型,或者正在向QuickBooks发送不同的查询,那将是非常好的$$$。。。