Result Sets
You can access the same column information about the results of a query that you can for table schemas. See Columns for the columns returned.
Retrieving Result Set Metadata
You can use the GetSchemaTable method of the SageX3CloudDataReader to retrieve result set metadata. Call GetSchemaTable after calling ExecuteReader.
Each row of the DataTable describes a column in the query's result.
C#
string connectionString = "URL=https://x3server/;OAuthAccessTokenUrl=https://auth-domain/oauth/token;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;Audience=https://api-audience;XAPIKey=your_api_key;Folder=SEED;";
using (SageX3CloudConnection conn = new SageX3CloudConnection(connectionString)) {
SageX3CloudCommand cmd = new SageX3CloudCommand("SELECT * FROM Customer WHERE Status = 'Active'", conn);
SageX3CloudDataReader rdr = cmd.ExecuteReader();
DataTable schemaTable = rdr.GetSchemaTable();
foreach (DataRow row in schemaTable.Rows) {
foreach (DataColumn col in schemaTable.Columns) {
Console.WriteLine("{0}: {1}", col.ColumnName, row[col]);
}
}
}
VB.NET
Dim connectionString As String = "URL=https://x3server/;OAuthAccessTokenUrl=https://auth-domain/oauth/token;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;Audience=https://api-audience;XAPIKey=your_api_key;Folder=SEED;"
Using conn As New SageX3CloudConnection(connectionString)
Dim cmd As New SageX3CloudCommand("SELECT * FROM Customer WHERE Status = 'Active'", conn)
Dim rdr As SageX3CloudDataReader = cmd.ExecuteReader()
Dim schemaTable As DataTable = rdr.GetSchemaTable()
For Each row As DataRow In schemaTable.Rows
For Each col As DataColumn In schemaTable.Columns
Console.WriteLine("{0}: {1}", col.ColumnName, row(col))
Next
Next
End Using