ADO.NET Provider for QuickBooks POS

Build 23.0.8839

Querying with the DataReader

The CData ADO.NET Provider for QuickBooks POS implements two ADO.NET interfaces you can use to retrieve data from QuickBooks POS: QuickBooksPOSDataAdapter and QuickBooksPOSDataReader objects. Whereas QuickBooksPOSDataAdapter objects retrieve a single result set of all the data that matches a query, QuickBooksPOSDataReader objects fetch data in subset increments as needed.

Using the QuickBooksPOSDataReader

The QuickBooksPOSDataReader retrieves data faster than the QuickBooksPOSDataAdapter because it can retrieve data in pages. As you read data from the QuickBooksPOSDataReader, it periodically requests the next page of results from the data source, if required. This causes results to be returned at a faster rate. The following example selects all the columns from the Customers table:

C#

string connectionString = "user=myuseraccount;password=mypassword;URL=http://localhost:2080;qbxmlversion=3.0;";

using (QuickBooksPOSConnection connection = new QuickBooksPOSConnection(connectionString)) {
  QuickBooksPOSCommand cmd = new QuickBooksPOSCommand("SELECT * FROM Customers", connection);
  
  QuickBooksPOSDataReader rdr = cmd.ExecuteReader();

  while (rdr.Read()) {
    Console.WriteLine(String.Format("\t{0} --> \t\t{1}", rdr["ListId"], rdr["LastName"]));
  }
}

VB.NET

Dim connectionString As String = "user=myuseraccount;password=mypassword;URL=http://localhost:2080;qbxmlversion=3.0;"

Using connection As New QuickBooksPOSConnection(connectionString)
  Dim cmd As New QuickBooksPOSCommand("SELECT * FROM Customers", connection)

  Dim rdr As QuickBooksPOSDataReader = cmd.ExecuteReader()

  While rdr.Read()
    Console.WriteLine([String].Format(vbTab & "{0} --> " & vbTab & vbTab & "{1}", rdr("ListId"), rdr("LastName")))
  End While
End Using

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839