Hi
I have written code for passig query to sub report from asp.net,c#.but the query displays all the records even if i give where cluase in sql query
Please refer the code below
protected void Button1_Click(object sender, EventArgs e)
{
TableLogOnInfo crTableLogOnInfo = new TableLogOnInfo();
ConnectionInfo crConnectionInfo = new ConnectionInfo();
CrystalDecisions.CrystalReports.Engine.Database crDatabase;
CrystalDecisions.CrystalReports.Engine.Tables crTables;
ReportDocument doc = new ReportDocument();
doc.Load(Server.MapPath("CrystalReport1.rpt"));
crConnectionInfo.ServerName = "newserver";
crConnectionInfo.DatabaseName = "";
crConnectionInfo.UserID = "";
crConnectionInfo.Password = ";
crConnectionInfo.Type = ConnectionInfoType.SQL;
crConnectionInfo.IntegratedSecurity = false;
crDatabase = doc.Database;
crTables = crDatabase.Tables;
string sqlCon = ""
SqlConnection conn = new SqlConnection(sqlCon);
conn.Open();
string sql123 = "select * from jobs where JobNumber=" + TextBox1.Text + "";
SqlCommand cmd = new SqlCommand(sql123, conn);
cmd.CommandType = CommandType.Text;
SqlDataAdapter adpt = new SqlDataAdapter(cmd);
DataSet dataSet = new DataSet();
adpt.Fill(dataSet, "Customers");
foreach (CrystalDecisions.CrystalReports.Engine.Table crTable in crTables)
{
crTableLogOnInfo = crTable.LogOnInfo;
crTableLogOnInfo.ConnectionInfo = crConnectionInfo;
crTable.ApplyLogOnInfo(crTableLogOnInfo);
}
doc.SetDataSource(dataSet.Tables[0]);
conn.Close();
sqlCon = "";
conn = new SqlConnection(sqlCon);
conn.Open();
string sql1234 = "select * from JOBSDOCUMENTS where JobNumber=" + TextBox1.Text + "";
cmd = new SqlCommand(sql1234, conn);
cmd.CommandType = CommandType.Text;
adpt = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
adpt.Fill(ds, "Customers1");
doc.Subreports["CrystalReport2.rpt"].SetDataSource(ds.Tables[0]);
CrystalReportViewer1.ReportSource = doc;
}Thanks
chandran