首页 > 解决方案 > Quickbooks 与我期望的 qbXML 版本不兼容

问题描述

我有一个使用 Quickbooks SDK 版本 13 构建的自制 C++ 应用程序。该应用程序的目的是允许我通过从网络端口接收 XML 字符串来与 Quickbooks 交谈。我能够使用 qbXML 2.1 版进行通信。它正在与 Quickbooks Enterprise 版本 16 交谈。那么,当我运行主机查询时,我很惊讶......

<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="2.1"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<HostQueryRq></HostQueryRq>
</QBXMLMsgsRq>
</QBXML>

...输出是这样的:

<?xml version="1.0" ?>
<QBXML>
<QBXMLMsgsRs>
<HostQueryRs statusCode="0" statusSeverity="Info" statusMessage="Status OK">
<HostRet>
<ProductName>Intuit QuickBooks Enterprise Solutions: Manufacturing and Wholesale 16.0</ProductName>
<MajorVersion>26</MajorVersion>
<MinorVersion>0</MinorVersion>
<SupportedQBXMLVersion>1.0</SupportedQBXMLVersion>
<SupportedQBXMLVersion>1.1</SupportedQBXMLVersion>
<SupportedQBXMLVersion>2.0</SupportedQBXMLVersion>
<SupportedQBXMLVersion>2.1</SupportedQBXMLVersion>
</HostRet>
</HostQueryRs>
</QBXMLMsgsRs>
</QBXML>

SDK 13 版显然应该可以使用 qbXML 13 版,Quickbooks Enterprise 16 应该兼容高于 2.1 的 qbXML。我需要使用 qbXML 的一项功能,该功能仅在 qbXML 2.1 之后可用。 Intuit 的这些发行说明指出,Quickbooks Enterprise 14.0 与 qbXML 版本 13.0、12.0、11.0、10.0、9.0、8.0、7.0、6.0、5.0、4.1、4.0、3.0、2.1、2.0、1.1 和 1.0 兼容。当然,像 16 这样的更高版本也将与这些兼容。

为什么 Quickbooks 告诉我它只能使用 qbXML 2.1?我该怎么做才能使用更新的版本?

<?qbxml version="2.1"?>编辑:抱歉,在更改为<?qbxml version="13.0"?>2.1 或任何高于 2.1 的值返回错误之前我忘了提及,80040428这意味着“当前请求处理器不支持该请求”。另外,如果我使用<?qbxml version="2.0"?>,我仍然会得到<SupportedQBXMLVersion>2.1</SupportedQBXMLVersion>

标签: quickbooksqbxml

解决方案


为什么 Quickbooks 告诉我它只能使用 qbXML 2.1?

因为你只使用 2.1。只需使用不同的版本。2.1大约15岁。

改变这个:

<?qbxml version="2.1"?>

对于这样的事情:

<?qbxml version="13.0"?>


推荐阅读