2014-07-16 104 views
0

我使用QB 12,我使用RSS Bus将Quickbooks与我的项目集成。不支持QBXML版本错误

在插入BillPaymentCheck时出现QBXML版本不支持的错误。

如果你看看这个链接,它说支持QBXML版本6或更高版本。

我将版本更改为6,但没有奏效。

下面是我的详细信息代码:

foreach (DAL.ACHTransaction dalTransaction in lstTransactions) 
      { 
       string PayeeId = dbCntxt.TechnicianBillingRecords.Where(c => c.BillId == dalTransaction.BillId).FirstOrDefault().TechnicianBilling.TechnicianTripDetail.Technician.QBId; 
       QuickBooks qbCntxt = new QuickBooks(); 
       Bill qbBill = qbCntxt.Bills.Where(c => c.ID == dalTransaction.BillId).FirstOrDefault(); 
       BillPaymentCheck billCheck = new BillPaymentCheck(); 

       string bankAccntId = dbCntxt.Configurations.Where(c => c.ConfigKey == "BankId").FirstOrDefault().ConfigValues; 


       billCheck.Amount = dalTransaction.Amount; 
       billCheck.PayeeId = PayeeId; 
       billCheck.ReferenceNumber = "ACH"; 
       billCheck.BankAccountId = bankAccntId; 
       string appliedTo = "<BillPaymentChecksAppliedTo><Row><AppliedToRefId>" + dalTransaction.BillId + "</AppliedToRefId><AppliedToAmount>" + dalTransaction.Amount.ToString() + "</AppliedToAmount></Row></BillPaymentChecksAppliedTo>"; 
       billCheck.AppliedToAggregate = appliedTo; 
       qbCntxt.AddToBillPaymentChecks(billCheck); 
       qbBill.IsPaid = 1; 
       qbCntxt.SaveChanges(); 
       dalTransaction.IsProccessedInQB = true; 
       dbCntxt.SaveChanges(); 
      } 

谁能帮我这。

感谢, Dhaval舒克拉

+0

您使用的是QuickBooks的哪一年版本?您也没有发布链接。你在哪里设置qbXML版本? –

+0

我正在使用QB 12.0,您能否告知如何设置QBXML版本? –

+0

http://www.rssbus.com/kb/help/rqr1-a/RSBQuickBooks_p_QBXMLVersion.rst –

回答

0

我不知道RSS总线,所以这可能并非如此,但也有需要的不仅仅是基本交易一个更高级别的事务中的某些功能。例如,BillPaymentCheckAdd至少需要版本2,但如果使用备注字段,则至少需要版本3.如果使用ExchangeRate,则至少需要版本8,ExternalGUID需要9,DiscountAmount需要10和DiscountClassRef需求11.

如果您将版本设置为版本11,这是BillPaymentCheckAdd所有组件中的最高版本,并且错误消失,那么RSS总线可能会在内部设置其中一个字段没有指定,导致它需要更高版本的QBXML。

+0

如何在Quickbooks中设置QBXML版本? –

+0

我不使用RSS Bus,所以不能100%确定,但它看起来像您可以设置的[documentation](http://www.rssbus.com/kb/help/RQR4-A/Connection.rst)连接字符串中的版本。包含“QBXMLVersion = 11.0;”在你的字符串的某处应该工作。 – Hpjchobbes

相关问题