【发布时间】:2018-05-24 22:48:53
【问题描述】:
我在 QuickBooks Web-Connector 上运行此代码以添加 SalesOrder
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?qbposxml version="3.0"?>
<QBPOSXML>
<QBPOSXMLMsgsRq onError="stopOnError">
<SalesOrderAddRq requestID="253182747">
<SalesOrderAdd>
<CustomerListID>400001000663</CustomerListID>
<SalesOrderType>SalesOrder</SalesOrderType>
<SalesOrderItemAdd>
<ListID>288</ListID>
<Qty>2</Qty>
</SalesOrderItemAdd>
</SalesOrderAdd>
</SalesOrderAddRq>
</QBPOSXMLMsgsRq>
</QBPOSXML>
并且我已经在 Quickbooks POS 应用程序的客户列表中的 xml 代码中通过其 ID 引用了客户,但它一直返回此错误 - 找不到客户:
<QBPOSXML>
<QBPOSXMLMsgsRs>
<SalesOrderAddRs requestID="253182747" statusCode="20006" statusMessage="Customer 400001000663 not found" statusSeverity="Error">
<SalesOrderRet/>
</SalesOrderAddRs>
</QBPOSXMLMsgsRs>
</QBPOSXML>
我在这里仔细检查了参考资料和代码示例: https://developer-static.intuit.com/qbSDK-current/Common/newOSR/index.html 但仍然无法弄清楚为什么。 非常感谢任何帮助。
更新: 这是客户列表中显示其 ID 的客户 Customer in POS
SDK 文档中的 CustomerID 数据类型是:唯一的 QBPOS ID 值,用于标识所引用的客户。
【问题讨论】:
-
您能否向我们展示该客户的客户记录,并显示其 ID?如果需要,只需向我们显示从保存的数据中读取的 id,仅此而已。我只是想确保你的 id 是正确的。
-
@AgapwIesu 完成,我更新了问题及其内容
-
该客户 ID 的数据类型是什么?
-
@AgapwIesu 如问题链接中所写:IDTYPE IDTYPE(标识符类型)是理论上最大长度为 36 位的字符串,但允许的最大值取决于具体情况。从 QuickBooks 返回的 IDTYPE 是对象 ID 和创建时间的串联,用连字符分隔。
-
因此,如果它是字符串类型,那么您链接的图形显示它有一个额外的数字,您没有包含在上面的代码中,即前导零。在字符串类型中,
400001000663与0400001000663不同。
标签: xml quickbooks