在Quickbooks桌面中,每个项目都被归类为产品,服务或折扣等。在Quickbooks online中,我需要下载项目列表,并注意到它们不再被分类。
我正在使用的代码是这样的:
list = commonService.FindAll(new Intuit.Ipp.Data.Qbo.Item(),currentPage,itemListPageSize)as IEnumerable;
当我从Quickbooks Online下载此列表时,我需要知道它是否是产品/服务/折扣,以便我可以将其导入我们的系统,就像我们为QB Desktop所做的那样。
如何获取此项目的类别?
答案 0 :(得分:2)
QuickBooks Online没有多种不同的项目类型。这是一个与QuickBooks for Windows / Mac有很大不同的产品。
Intuit Anywhere / IDS API目前不支持QuickBooks Online的任何库存概念,尽管QuickBooks Online本身也支持这一概念。
QuickBooks Online根本没有“折扣”项目的概念(折扣只是发票上的另一个费率/金额字段,而不是像QuickBooks for Windows中的行项目)。
以下是QuickBooks Online界面的屏幕截图:
请注意,我已经添加了10%的折扣,但是不的10%折扣显示为普通订单项。这只是发票上的一个字段,可以接受折扣金额。因为它不是订单项,所以根本不需要商品类型。
这也反映在API中。
这是一个qbXML示例(注意:它不是一个行项目,根本没有引用项目类型):
<DiscountLineAdd> <!-- optional -->
<!-- BEGIN OR -->
<Amount >AMTTYPE</Amount> <!-- optional -->
<!-- OR -->
<RatePercent >PERCENTTYPE</RatePercent> <!-- optional -->
<!-- END OR -->
<IsTaxable >BOOLTYPE</IsTaxable> <!-- optional -->
<AccountRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</AccountRef>
</DiscountLineAdd>
这是一个IPP示例(同样,通知不是行项目,根本不涉及项目类型):
<Header>
<DocNumber>00010</DocNumber>
<TxnDate>2010-08-07-07:00</TxnDate>
<Msg>No Black Ink Pens</Msg>
<Note>Blue Ink pens only</Note>
<CustomerId>5</CustomerId>
<SalesTaxCodeId idDomain="QBO">1</SalesTaxCodeId>
<SalesTaxCodeName>IS_TAXABLE</SalesTaxCodeName>
<SubTotalAmt>200.00</SubTotalAmt>
<TaxAmt>100.00</TaxAmt>
<TotalAmt>298.75</TotalAmt>
<DueDate>2010-08-16-07:00</DueDate>
<BillEmail>john_doe@digitalinsight.com</BillEmail>
<DiscountAmt>-1.25</DiscountAmt>
</Header>