รายละเอียดของการตอบ ::
ค่าถูกต้องทุกอย่างครับ status.text รับค่ามาจาก Gridview เป็น id ตัวเลขครับ ถ้าผมดักด้วยอีกปุ่มออกปกติครับ แค่อยากให้มีปุ่มเดียวกดปริ้นแล้ววออก report เลยครับ
protected void Print_Click(object sender, EventArgs e)
{
{
int rowind = ((GridViewRow)(sender as Control).NamingContainer).RowIndex;
Button cb = (Button)GridView1.Rows[rowind].FindControl("Print");
status.Text = GridView1.Rows[rowind].Cells[0].Text;
if (status.Text ==status.Text)
{
reports();
}
}
}
//report
public void reports()
{
SqlConnection objConn = new SqlConnection();
SqlCommand objCmd = new SqlCommand();
SqlDataAdapter dtAdapter = new SqlDataAdapter();
DataSet ds = new DataSet();
DataTable dt = null;
string strConnString = null;
string strSQL = null;
strConnString = "Server=120.100.100.200;UID=sa;PASSWORD=tum;database=rubber_plant;Max Pool Size=400;Connect Timeout=600;";
strSQL = "SELECT * FROM View_Orderplant WHERE Plantid = '" + this.status.Text + "' ";
objConn.ConnectionString = strConnString;
var _with1 = objCmd;
_with1.Connection = objConn;
_with1.CommandText = strSQL;
_with1.CommandType = CommandType.Text;
dtAdapter.SelectCommand = objCmd;
dtAdapter.Fill(ds, "DataTable1");
dt = ds.Tables[0];
dtAdapter = null;
objConn.Close();
objConn = null;
ReportDocument rpt = new ReportDocument();
rpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
rpt.Load(Server.MapPath("webpage/report/CrystalReport1.rpt"));
rpt.SetDataSource(dt);
this.CrystalReportViewer1.ReportSource = rpt;
}
}