如何按订单号查询销售订单?

时间:2013-07-19 04:49:34

标签: quickbooks intuit-partner-platform

我对.NET DevKit感到沮丧,现在正考虑将我的应用程序转换为XML。但我仍然无法弄清楚如何执行非常基本的查询。

如何按订单号检索QBD销售订单?这是QBD UI中的“销售订单编号”,SDK中的“RefNumber”和IPP中的“DocNumber”。

以防万一有人需要我用人类可读的唯一ID来解释用于查找记录的用例:我正在集成一个系统,我们在导入后无法存储QB事务ID销售订单。因此,如果该系统稍后要查询QB以检查销售订单的状态,则需要通过该系统的唯一订单#来执行此操作。

我已经拥有所有文档的链接;谢谢。我只需要知道如何执行此查询。同样,我需要为发票和采购订单执行此操作。

我对Items需要相同的东西,用例是如果我们从另一个系统导入项目,我们需要按名称查询QB项目列表,看看我们是否已在QB中拥有该项目。

1 个答案:

答案 0 :(得分:1)

对于ITEMS,您可以使用ItemConsolidated和NameContains过滤器。例如,XML看起来像:

POST https://services.intuit.com/sb/itemconsolidated/v2/<realmID>
...
<?xml version="1.0" encoding="UTF-8"?>
<ItemConsolidatedQuery xmlns="http://www.intuit.com/sb/cdm/v2"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLocation="http://www.intuit.com/sb/cdm/v2     RestDataFilter.xsd ">
    <NameContains>Your item name goes here</NameContains>
</ItemConsolidatedQuery>

它不会是完美的,因为Intuit只支持“NameContains”(项目名称包含你指定的字符串)而不是“NameEquals”,但你可以循环查看你得到的内容并从客户端过滤它那里。

对于SALES ORDERS,遗憾的是,Intuit Data Services目前不支持DocNumber查询。

相反,针对您的情况的解决方法可能是查询所有销售订单,然后在应用程序中缓存每个销售订单的Id和DocNumber值。当您需要查找某些内容时,在缓存中查找Id,然后按Id值查询。它并不漂亮......但它确实是你能够做到你所描述的唯一方式。