本节我们将展示如何在?GBase 和?GBASE南大通用ADO.NET 中使用 Crystal Reports XI。
创建数据源
在 Crystal Reports 中创建报表时,可利用两种方法获取 GBase 数据源数
据。
1) 第一种方法是在设计报告时使用GBASE南大通用ODBC 作为一个 ADO 数据源,可
以浏览数据库,并且依靠拖拽来选择表和字段建立报表。
2) 第二种方法是在GBASE南大通用.NET 程序中创建一个 DataSet 并将其保存为 XML 格式
文件,使用该 XML 文件能够作为一个 GBase ADO.NET XML 数据源用来设计
报表。当在应用程序中只显示这个报表时可以这样做,但是在设计时很不
方便,因为在创建数据集时必须选择所有相关的列。如果漏掉一列,就必
须在建立报表前重新创建数据集。
下面的代码演示将一个查询的结果生成一个 DataSet 并把它写入 XML 文件
保存到硬盘上。
C# 示例:
GBaseConnection conn;
GBaseCommand cmd;
GBaseDataAdapter gsAdapter;
conn = new GBaseConnection();
cmd = new GBaseCommand();
gsAdapter = new GBaseDataAdapter();
conn.ConnectionString =
"server=127.0.0.1;uid=root;pwd=1111;database=test;pooling=false"
;
try
{
cmd.CommandText = "SELECT city.name AS cityName,
city.population AS CityPopulation, " +
"country.name, country.population, country.continent " +
"FROM country, city ORDER BY country.continent, country.name";
cmd.Connection = conn;
gsAdapter.SelectCommand = cmd;
gsAdapter.Fill(gsData);
gsData.WriteXml(@"C:\dataset.xml", XmlWriteMode.WriteSchema);
}
catch (GBaseException ex)
{
MessageBox.Show(ex.Message, "Report could not be created",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}