在我工作的公司,我们在Dev环境中拥有以下技术 - 公司自己的C#Web应用程序,名为companyABCDevapplication - 安装Quick Books Web Connector - 安装Quick books Quickbooks Desktop 2017 Premier试用版
我的任务是创建一个接口Web服务,该服务将由Quick Books Web Connector安装程序调用,以便与我们的公司ABCDevapplication进行通信
以下是用于本地开发的技术:
Intuit Quickbooks Desktop 2017卓越试用版
Intuit QuickBooks Web连接器版本2.2.0.71
Microsoft Visual Studio Enterprise 2015
版本14.0.25431.01更新3
Microsoft .NET FrameworkVersion 4.6.01055
<?xml version="1.0" encoding="utf-16"?>
<?qbxml version="13.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<InvoiceAddRq requestID="0">
<InvoiceAdd defMacro="TxnID:8465928136">
<CustomerRef>
<FullName>la lakers</FullName>
</CustomerRef> <TemplateRef>
<FullName>Intuit Product Invoice</FullName>
</TemplateRef>
</InvoiceAdd>
</InvoiceAddRq>
</QBXMLMsgsRq>
</QBXML>
如果您查看上面的QBXML代码,您会注意到我们只想在quickbooks中创建一个Invoice但是包含了包含项目列表,但是当我们的应用程序通过我们的Web服务将它发送到Quickbooks时,它会给我们以下错误和Quickbooks Web连接器:
<?xml version=\"1.0\" ?>
<QBXML>
<QBXMLMsgsRs>
<InvoiceAddRs requestID="0" statusCode="3180" statusSeverity="Error" statusMessage="There was an error when saving a Invoice. QuickBooks error message: The transaction is empty." />
</QBXMLMsgsRs>
</QBXML>
是否可以使用QuickBooks Web Connector版本2.2.0.71和Quickbooks Desktop 2017 Premier试用版创建包含任何发票行项目的发票?如果是,xml应该是什么样的?有人可以提供样品吗?
答案 0 :(得分:1)
就像手动使用QuickBooks一样,您需要在行中输入内容以保存发票。但是,您不需要在发票上有项目或金额,只需将信息添加到“说明”列即可。你不能只有一个空间,但是你可能想要一个句号或下划线作为描述:XML看起来像:
<?xml version="1.0" encoding="utf-16"?>
<?qbxml version="13.0"?>
<QBXML>
<QBXMLMsgsRq onError="stopOnError">
<InvoiceAddRq requestID="0">
<InvoiceAdd defMacro="TxnID:8465928136">
<CustomerRef>
<FullName>la lakers</FullName>
</CustomerRef>
<TemplateRef>
<FullName>Intuit Product Invoice</FullName>
</TemplateRef>
<InvoiceLineAdd>
<Desc>.</Desc>
</InvoiceLineAdd>
</InvoiceLineAdd>
</InvoiceAdd>
</InvoiceAddRq>
“