尝试在Quickbooks SDK中获取或设置销售税国家/地区

时间:2012-07-26 13:48:49

标签: quickbooks

我正在使用Quickbooks SDK v11与C#应用程序集成。几乎一切正常,但我对销售税国家有问题。我想将客户记录添加到Quickbooks中,我无法弄清楚如何做到这一点。

要查看Quickbooks中的内容,我正在使用以下代码段:

ICustomerRet ret = [My code to retrieve a customer];
ENSalesTaxCountry stc = (ENSalesTaxCountry)ret.SalesTaxCountry.GetValue();

这适用于英国客户,但如果客户的销售税国家为法国,则GetValue()调用会抛出异常。

使用Intellisense进行调查显示,我的ENSalesTaxCountry类型只有三种选择:stcAustralia,stcCanada和stcUK - 显然不包括法国。

SDK enum似乎只支持这三个国家,而Quickbooks本身也支持其他一些国家。

有关如何修补SDK或以其他方式解决问题的任何想法?

1 个答案:

答案 0 :(得分:1)

无需依赖智能感知文档 - 您可以使用IDN Onscreen Reference获取SDK查询和响应的完整说明。您显然要么使用加拿大版或英国版QuickBooks,所以请务必检查允许CA或UK 2008 + ,然后选择 CA UK 表示您正在使用的版本。

但是,一旦您这样做,您将看到SDK支持的唯一销售税国家是澳大利亚,英国和加拿大。为了确定qbXML是返回France还是其他未记录的值,可以在ICustomerRet接口上调用ToXmlString()方法。这将为您提供原始的qbXML。如果价值"法国"在那里,你应该能够看到它。

如果您发现qbXML支持未记录的国家/地区,您可以尝试将它们包含在客户添加请求中,但您必须自己构建qbXML并使用请求处理器组件而不是QBFC来发送消息。

您可以通过在Intuit开发人员论坛中发帖获得更多相关信息,在论坛中您可以找到UKCanadian QuickBooks开发的专用论坛。事实上,英国论坛现在有an active discussion on sales tax countries,但你不会发现它令人鼓舞。