动态报表导出时,如何取得客户已输入的参数呢?
如果我在参数里面输入了值,然后进行了展示,如何在点导出时在后台取得已输入过的参数呢,或者有什么办法可以直接取到当前已生成的报表对象您好,
取得输入的参数要使用动态数据源绑定。通过args.Report.Parameters.Label记录参数。
protected void WebViewer1_LocateDataSource(object sender, GrapeCity.ActiveReports.LocateDataSourceEventArgs args)
{
string productId = args.Report.Parameters.Label;
string connStr = string.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};", Server.MapPath("/Data/NWind_CHS.mdb"));
string productSql = string.Format("SELECT * From 产品 where 产品ID = {0}", productId);
DataLayer dl = new DataLayer(connStr, productSql);
args.Data = dl.DataSetData.Tables["产品"];
}
internal sealed class DataLayer
{
private DataSet dataSetData;
public DataLayer(string connStr, string productSql)
{
LoadDataToDataSet(connStr, productSql);
}
public DataSet DataSetData
{
get { return dataSetData; }
}
private void LoadDataToDataSet(string connStr, string productSql)
{
dataSetData = new DataSet();
OleDbConnection conn = new OleDbConnection(connStr);
OleDbCommand cmd = new OleDbCommand(productSql, conn);
OleDbDataAdapter adapter = new OleDbDataAdapter();
adapter.SelectCommand = cmd;
adapter.Fill(dataSetData, "产品");
}
} 回复 2楼frank.zhang的帖子
你好,这个事件怎么触发呢,我这里试了触发不了 您好,
触发的事件在另外的帖子内回复
http://gcdn.gcpowertools.com.cn/showtopic-16417.html
页:
[1]