Uni Objects .NET Running Query and getting result set <p>I've been playing around with UniObjects .NET.</p> <p>I would like to be able to run a SELECT query and get the data in to a form where I can run through the data.</p> <p>The documentation I've been using is at <a href="http://www.rocketsoftware.com/u2/products/universe/resources/technical-manuals/universe-v11r1/uonet-v11r1.pdf" rel="nofollow">http://www.rocketsoftware.com/u2/products/universe/resources/technical-manuals/universe-v11r1/uonet-v11r1.pdf</a></p> <p>I'm currently running the query using</p> <pre><code> // UniCommans is a new instance of the CreateUniCommand() method UniCommand cmd = us1.CreateUniCommand(); string UVDatabaseName = "SLCUST"; // Command is the query that will be sent to the server to be rum cmd.Command = "SELECT " + UVDatabaseName + " USING DICT " + UVDatabaseName + " WITH CUSREF PRICECODE"; </code></pre> <p>But I don't know how to get the data in to one of the data types objects that they provide:</p> <ul> <li>UniDynArray</li> <li>UniFile</li> <li><p>UniSelectList</p> <pre><code> // OpenSession is used to open a new session to the database us1 = UniObjects.OpenSession("92.0.0.1", "username", "password", "/path/TOFILE", "uvcs"); // Create new instance a UniCommand UniCommand cmd = us1.CreateUniCommand(); string UVDatabaseName = "SLCUST"; // Command is the query that will be sent to the server to be run cmd.Command = "SELECT " + UVDatabaseName + " USING DICT " + UVDatabaseName + " WITH CUSREF PRICECODE"; // Buffer size for receiving data can be get/set using CommandBlockSize // 0 is unlimited, the full data set will be received cmd.CommandBlockSize = 0; // Execute() executes the Command on the server cmd.Execute(); // A status response is returned as a string in Response string response_str = cmd.Response; Console.WriteLine(response_str); // Check for the response of the UniCommand // UVS_COMPLETE = The command was completed, or unsuccessful if (cmd.CommandStatus == UniObjectsTokens.UVS_COMPLETE) { // How do I loop through the data set from my query? } </code></pre></li> </ul> <p>I've worked out that I can run through a WHOLE table by using the following code:</p> <pre><code>// Create a Uni file, required for you can use a database file UniFile custfile = us1.CreateUniFile("SLCUST"); // Create a select list from the ID returned from cmd.Response; UniSelectList selectList = us1.CreateUniSelectList(0); selectList.Select(custfile); bool lLastRecord = selectList.LastRecordRead; while (!lLastRecord) { string s = selectList.Next(); Console.WriteLine("Record ID:" + s); lLastRecord = selectList.LastRecordRead; } </code></pre> <p>When I run the command I get the following response string</p> <blockquote> <p>4665 record(s) selected to SELECT list #0</p> </blockquote> <p>It's just how access the list '0', I've tried but it's how to massage it in to the right class type:</p> <pre><code>UniSelectList selectList = us1.CreateUniSelectList(0); </code></pre>