我正在尝试使用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);
为了为这个供应商特定账单定义自定义供应商地址,我需要做些什么特别的事情吗?
答案 0 :(得分:0)
你还没有真正提供足够的信息来解决这个问题(QuickBooks年份/版本,你的代码的其余部分等等)所以我只想在这里抛出疯狂猜测...
在QuickBooks 2014及更新版本之前,不支持VendorAddress
请求的BillAdd
节点。因此,如果您使用的是QuickBooks 2013或更早版本的版本......则无法使用这些节点。
此外,QuickBooks API版本本身已经过版本化,因此如果您指定使用低于13.0
的任何版本的qbXML,则无法使用这些节点。
由于您没有发布您正在使用的QuickBooks版本或您在其余代码中指定的qbXML版本,因此很难确定这是否是问题...