Quickbooks QBFC添加帐单时出错

时间:2014-07-03 17:35:02

标签: c# quickbooks qbfc

我正在尝试使用C#中的QBFC向quickbooks添加供应商账单。我的问题是,如果我想为这个特定的供应商定义一个自定义地址(对于这个特定的账单),它会抛出错误说

QuickBooks found an error when parsing the provided XML text stream

我的测试代码如下:

 IBillAdd billAddRq = this.mainRequestMsgSet.AppendBillAddRq();

 billAddRq.VendorRef.FullName.SetValue(vendBill.transaction.Name);
 billAddRq.TxnDate.SetValue(Convert.ToDateTime(vendBill.transaction.Date));
 billAddRq.RefNumber.SetValue(vendBill.transaction.DocNum);
 billAddRq.VendorAddress.Addr1.SetValue("test");
 billAddRq.VendorAddress.Addr2.SetValue("test");
 billAddRq.VendorAddress.Addr3.SetValue("test");
 billAddRq.VendorAddress.Addr4.SetValue("test");
 billAddRq.VendorAddress.Addr5.SetValue("test");

但是,如果我删除了对VendorAddress的所有调用,并且只是将其保留为以下内容,则代码可以正常工作:

 IBillAdd billAddRq = this.mainRequestMsgSet.AppendBillAddRq();

 billAddRq.VendorRef.FullName.SetValue(vendBill.transaction.Name);
 billAddRq.TxnDate.SetValue(Convert.ToDateTime(vendBill.transaction.Date));
 billAddRq.RefNumber.SetValue(vendBill.transaction.DocNum);

为了为这个供应商特定账单定义自定义供应商地址,我需要做些什么特别的事情吗?

1 个答案:

答案 0 :(得分:0)

你还没有真正提供足够的信息来解决这个问题(QuickBooks年份/版本,你的代码的其余部分等等)所以我只想在这里抛出疯狂猜测...

在QuickBooks 2014及更新版本之前,不支持VendorAddress请求的BillAdd节点。因此,如果您使用的是QuickBooks 2013或更早版本的版本......则无法使用这些节点。

此外,QuickBooks API版本本身已经过版本化,因此如果您指定使用低于13.0的任何版本的qbXML,则无法使用这些节点。

由于您没有发布您正在使用的QuickBooks版本或您在其余代码中指定的qbXML版本,因此很难确定这是否是问题...