using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;namespace CrystalEg
{
/// <summary>
/// CrystalPush 的摘要说明。
/// </summary>
public class CrystalPush : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox tb;
protected System.Web.UI.WebControls.Button bt;
protected CrystalDecisions.Web.CrystalReportViewer CrystalReportViewer1;
private void Page_Load(object sender, System.EventArgs e)
{
this.BindReport();
} #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.bt.Click += new System.EventHandler(this.bt_Click);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion private void BindReport()
{
string word = "",sql = "";
//指定连接数据库字符串
string strConn = "Server=127.0.0.1;DataBase=Northwind;UID=sa;PWD=";
//实例化报表文件
CrystalReport2 oCR = new CrystalReport2();
//实例化数据集
Dataset1 ds = new Dataset1();
//获得连接
SqlConnection MyConn = new SqlConnection(strConn);
MyConn.Open();
//查询语句
sqllist();
sql = "select * from Customers "+ word +"";
//实例化数据适配器
SqlDataAdapter MyAdapter = new SqlDataAdapter(sql,MyConn);
//填充数据集
MyAdapter.Fill(ds,"Customers");
//报表文件绑定数据集
oCR.SetDataSource(ds);
//指定CrystalReportViewer1控件的ReportSource属性
this.CrystalReportViewer1.ReportSource = oCR;
} #region 查询条件
public void sqllist()
{
string word = "",ttb = "";
if(Request.QueryString["tb"] != null)
{
ttb = Request.QueryString["tb"].ToString();
if(ttb.ToString() != "")
{
if(word.ToString() == "")
{
word += "where ";
}
else
{
word += " and ";
}
word += "customerid like '%" + ttb + "%' ";
}
}
}
#endregion #region 查询
public void bt_Click(object sender,System.EventArgs e)
{
string ttb = "";
ttb = tb.Text;
if(ttb.ToString() == "")
{
Response.Write("<script language='javascript'>alert('请输入关键字!');history.back();</script>");
return;
}
else
{
Response.Redirect("CrystalPush.aspx?tb="+ Server.UrlEncode(ttb) +"");
}
}
#endregion
}
}
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;namespace CrystalEg
{
/// <summary>
/// CrystalPush 的摘要说明。
/// </summary>
public class CrystalPush : System.Web.UI.Page
{
protected System.Web.UI.WebControls.TextBox tb;
protected System.Web.UI.WebControls.Button bt;
protected CrystalDecisions.Web.CrystalReportViewer CrystalReportViewer1;
private void Page_Load(object sender, System.EventArgs e)
{
this.BindReport();
} #region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.bt.Click += new System.EventHandler(this.bt_Click);
this.Load += new System.EventHandler(this.Page_Load); }
#endregion private void BindReport()
{
string word = "",sql = "";
//指定连接数据库字符串
string strConn = "Server=127.0.0.1;DataBase=Northwind;UID=sa;PWD=";
//实例化报表文件
CrystalReport2 oCR = new CrystalReport2();
//实例化数据集
Dataset1 ds = new Dataset1();
//获得连接
SqlConnection MyConn = new SqlConnection(strConn);
MyConn.Open();
//查询语句
sqllist();
sql = "select * from Customers "+ word +"";
//实例化数据适配器
SqlDataAdapter MyAdapter = new SqlDataAdapter(sql,MyConn);
//填充数据集
MyAdapter.Fill(ds,"Customers");
//报表文件绑定数据集
oCR.SetDataSource(ds);
//指定CrystalReportViewer1控件的ReportSource属性
this.CrystalReportViewer1.ReportSource = oCR;
} #region 查询条件
public void sqllist()
{
string word = "",ttb = "";
if(Request.QueryString["tb"] != null)
{
ttb = Request.QueryString["tb"].ToString();
if(ttb.ToString() != "")
{
if(word.ToString() == "")
{
word += "where ";
}
else
{
word += " and ";
}
word += "customerid like '%" + ttb + "%' ";
}
}
}
#endregion #region 查询
public void bt_Click(object sender,System.EventArgs e)
{
string ttb = "";
ttb = tb.Text;
if(ttb.ToString() == "")
{
Response.Write("<script language='javascript'>alert('请输入关键字!');history.back();</script>");
return;
}
else
{
Response.Redirect("CrystalPush.aspx?tb="+ Server.UrlEncode(ttb) +"");
}
}
#endregion
}
}
解决方案 »
- 都快疯了!!GridView中加入DropDownList后更新问题!!
- 怎么在log文件中定位到与当前异常信息相关的信息?
- (满分,不够再加)求一个页面间传值的实例.
- 问一个关于GridView获取控件值的问题?
- 请教关于DataKeyNames的问题
- 紧急请教,TREEVIEW及在其他机器调试的古怪问题。
- 100分求解
- 如何在Form based Auth的基础上添加一个使用token的SSO?
- 系统老是说用户使用web站点过多?
- 用window.showModalDialog打开新窗口中,为什么session的值总是经常丢失,而window.open就不会呢???
- DATAGRID属性生成器的问题(实在是没分~~~~)
- web自定义控件动态设置
sql = "select * from Customers where 1=1";
if (tb != "")
sql += " and customerid like '%" +tb+ "%'";
//实例化数据适配器
SqlDataAdapter MyAdapter = new SqlDataAdapter(sql,MyConn);
//填充数据集
MyAdapter.Fill(ds,"Customers");
//报表文件绑定数据集
oCR.SetDataSource(ds);
//指定CrystalReportViewer1控件的ReportSource属性
this.CrystalReportViewer1.ReportSource = oCR;
虽然你调用sqllist(),对BindReport()没有啥关系的,不是同一变量
所以查询的一直是全部
--------
可以这样
sqllist(ref word);
---------
#region 查询条件
public void sqllist(ref word)
{
string ttb = "";
if(Request.QueryString["tb"] != null)
{
ttb = Request.QueryString["tb"].ToString();
if(ttb.ToString() != "")
{
if(word.ToString() == "")
{
word += "where ";
}
else
{
word += " and ";
}
word += "customerid like '%" + ttb + "%' ";
}
}
}
public void sqllist(ref word)
提示输入标识符....