Wednesday, April 13, 2011

use accented characters with quickbooks SDK

Using the Quickbooks SDK QBFC 7.0. When I attempt to get a list of all customers in quickbooks, if any of the customers have an accented character in their name like รจ then I get an exception:

An Exception occurred! Type:UTFDataFormatException, Message: invalid byte 2 (<) 
of a 3-byte sequence. SAXParseException: error ar line 1, column 23 in XML data.

Several Intuit forums have said that I have to change the XML to UTF-8 (which is all they say, they give no real solution), the QBFC clearly does use XML for sending and receiving data, but I can't find anyway to override the default encoding.

The request is created with the following code. The exception occurs on DoRequests()

IMsgSetRequest req = Session.GetLatestMsgSetRequest();
ICustomerQuery cq = req.AppendCustomerQueryRq();
IMsgSetResponse responseSet = Session.QBSM.DoRequests(req);
From stackoverflow
  • I don't know of a solution in the QBFC, but as a workaround you could go directly to qbXML, and send and receive the response for this particular message using XML. It sounds like you have a limitation in the QBFC, which is really a wrapper for the underlying XML.

  • The overflow appear when I tried to view trial balance report, some accounts display with overflow as it does not show any numbers.

    What you think is a problem.

    Thanks

    Richard

0 comments:

Post a Comment