我正在使用Excel VBA在本地访问quickbooks。我有代码来拉取所有客户并解析结果以及拉出所有发票并解析结果。我可以基于RefID和特定发票以同样的方式拉取特定客户。我想要做的是为特定客户提取所有发票,但无法弄明白。 Quickbooks OSR似乎也不适合我。我尝试过不同的浏览器,但无论我做什么,我都无法滚动浏览消息列表。每当我点击列表的向上或向下箭头时,列表就会消失,所以我能看到的唯一细节是CreditMemoMod(3.0)。这可以获得一张发票:
<InvoiceQueryRq requestID="2">
<RefNumber>60522</RefNumber>
<IncludeLineItems>true</IncludeLineItems>
</InvoiceQueryRq>
但这并不能为客户提供所有这些服务:
<InvoiceQueryRq requestID="2">
<CustomerRef>
<ListID>'3000000-866741515'</ListID>
</CustomerRef>
<IncludeLineItems>true</IncludeLineItems>
</InvoiceQueryRq>
以及它的几种变体,但这似乎不起作用。有什么想法吗?
非常感谢。
答案 0 :(得分:0)
使用ListId或FullName。
IDTYPE STRTYPE
ListID没有报价。
答案 1 :(得分:0)
查询几乎是正确的。 &#39; laoche&#39;忘记了<EntityFilter>
标记。在QuickBooks中获取特定客户的发票,您需要使用以下QBXML:
<?xml version="1.0" encoding="utf-8"?>
<?qbxml version="13.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<InvoiceQueryRq >
<EntityFilter>
<!--<ListID >80000002-1508838192</ListID>-->
<FullName>Will Smith</FullName>
</EntityFilter>
</InvoiceQueryRq>
</QBXMLMsgsRq>
</QBXML>
所有过滤功能都可以在consolibyte repo上找到。