我正在使用QuickBooks通过quickbooks连接器工具将我的web应用程序连接到Quickbooks。它在插入数据时工作得很好,但在尝试更新它时会出现以下错误:
0x80040400: QuickBooks在分析提供的XML文本流时发现错误。
此链接显示可用的xml选项:
http://dev.developer.intuit.com/qbSDK-current/OSR/OnscreenRef/index-QBD.html
$xml = '<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="2.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<EstimateModRq requestID="' . $requestID . '">
<EstimateMod>
<TxnID>B9-1340134119</TxnID>
<EditSequence>1340134119</EditSequence>
<CustomerRef>
<FullName>cliente prueba</FullName>
</CustomerRef>
<TxnDate>2009-01-09</TxnDate>
<RefNumber>16466</RefNumber>
<EstimateLineMod>
<TxnLineID>-1</TxnLineID>
<ItemRef>
<FullName>Sales</FullName>
</ItemRef>
<Desc>gift certificate</Desc>
<Quantity>4</Quantity>
<Rate>11.00</Rate>
</EstimateLineMod>
</EstimateMod>
</EstimateModRq>
</QBXMLMsgsRq>
</QBXML>';发布于 2012-06-20 23:30:47
如果您引用QuickBooks OSR (最好是这里的最新版本:http://developer.intuit.com/qbsdk-current/common/newosr/index.html),您会注意到EstimateMod请求被这样标记:
EstimateMod (3.0)这意味着在qbXML version SDK3.0之前不支持EstimateMod (如果您需要更多详细信息,请参阅QuickBooks .PDF文档中有关qbXML版本的更多信息)。
您正在使用qbXML version 2.0
<?qbxml version="2.0"?>将其更改为更高的版本(6.0或更高版本是最好的支持版本- 6.0提供了与大多数QuickBooks版本的最大范围的兼容性),您应该已经完成了所有设置。
https://stackoverflow.com/questions/11122576
复制相似问题