Hi nisss,
Refer below code.
protected void Page_Load(object sender, EventArgs e)
{
if (Session["ID"] == null)
{
Response.Redirect("~/Default.aspx");
}
if (Session["ID"] != null)
{
string id = Session["ID"].ToString();
//users(id);
sqlUsers.SelectCommand =
"Select a.leaveid, " +
" p.Id, " +
" p.Name, " +
" a.start, " +
" a.end, " +
" a.total, " +
" a.dateapply, " +
" a.Type, " +
" a.Status " +
"From profile as p INNER JOIN" +
" leaveapp as a ON a.Id = p.Id" +
" Order By a.leaveid DESC";
sqlUsers.DataBind();
DataView dvUser = (DataView)sqlUsers.Select(DataSourceSelectArguments.Empty);
if (dvUser.Table.Rows.Count != 0)
{
foreach (DataRow drUser in dvUser.Table.Rows)
{
lid.Text = drUser["Id"].ToString();
lleaveid.Text = drUser["leaveid"].ToString();
lname.Text = drUser["Name"].ToString();
lstart.Text = drUser["start"].ToString();
lend.Text = drUser["end"].ToString();
ltotalapply.Text = drUser["total"].ToString();
ldateapply.Text = drUser["dateapply"].ToString();
ltype.Text = drUser["Type"].ToString();
lstatus.Text = drUser["Status"].ToString();
}
}
if (dvUser.Table.Rows.Count == 0)
{
lid.Text = id;
}
}
lbPrintAllPages.Visible = true;
lbPrintCurrentPage.Visible = false;
}
protected void ibSearch_Click(object sender, ImageClickEventArgs e)
{
lbPrintAllPages.Visible = true;
lbPrintCurrentPage.Visible = false;
string message,
id = Session["ID"].ToString();
if (ddlSearch.SelectedIndex == 0)
{
if (Regex.IsMatch(tbSearch.Text, "[0-9]"))
{
sqlUsers.SelectCommand = "SELECT a.leaveId , p.Id, p.Name, a.start, a.end, a.total, a.dateapply, a.Type, a.Status " +
" FROM profile as p INNER JOIN " +
" leaveapp as a On a.Id = p.Id " +
" Where a.leaveId='" + tbSearch.Text.Trim() + "' " +
" ORDER BY a.leaveId DESC";
gvTranList.DataBind();
lbPrintAllPages.Visible = false;
lbPrintCurrentPage.Visible = true;
}
else
{
message = "Please enter ID number!";
string returnUrl = "UserApplyLeaveList.aspx";
ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", "<script type = 'text/javascript'>" +
"window.onload=new function(){alert('" + message +
"');window.location='" + returnUrl +
"'};</script>");
}
}
if (ddlSearch.SelectedIndex == 1)
{
if (Regex.IsMatch(tbSearch.Text, "[0-9]"))
{
sqlUsers.SelectCommand = "SELECT a.leaveId , p.Id, p.Name, a.start, a.end, a.total, a.dateapply, a.Type, a.Status " +
" FROM profile as p INNER JOIN " +
" leaveapp as a On a.Id = p.Id " +
" Where p.Id='" + tbSearch.Text.Trim() + "' " +
" ORDER BY a.leaveId DESC";
gvTranList.DataBind();
lbPrintAllPages.Visible = false;
lbPrintCurrentPage.Visible = true;
}
else
{
message = "Please enter Staf I/C!";
string returnUrl = "UserApplyLeaveList.aspx";
ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", "<script type = 'text/javascript'>" +
"window.onload=new function(){alert('" + message +
"');window.location='" + returnUrl +
"'};</script>");
}
}
if (ddlSearch.SelectedIndex == 2)
{
if (Regex.IsMatch(tbSearch.Text, "[0-9]"))
{
sqlUsers.SelectCommand = "SELECT a.leaveId , p.Id, p.Name, a.start, a.end, a.total, a.dateapply, a.Type, a.Status " +
" FROM profile as p INNER JOIN " +
" leaveapp as a On a.Id = p.Id " +
" Where Year(a.start) >= '" + tbSearch.Text.Trim() + "' " +
" and Year(a.end) <= '" + tbSearch.Text.Trim() + "' " +
" ORDER BY a.start DESC";
gvTranList.DataBind();
lbPrintAllPages.Visible = false;
lbPrintCurrentPage.Visible = true;
}
else
{
message = "Please enter year!";
string returnUrl = "UserApplyLeaveList.aspx";
ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", "<script type = 'text/javascript'>" +
"window.onload=new function(){alert('" + message +
"');window.location='" + returnUrl +
"'};</script>");
}
}
if (ddlSearch.SelectedIndex == 3)
{
if (tbSearch.Text != "")
{
sqlUsers.SelectCommand = "SELECT a.leaveId , p.Id, p.Name, a.start, a.end, a.total, a.dateapply, a.Type, a.Status " +
" FROM profile as p INNER JOIN leaveapp as a On a.Id = p.Id " +
" Where Month(a.start) BETWEEN '" + tbSearch.Text.Split('-')[0].Trim() +
"' AND '" + tbSearch.Text.Split('-')[1].Trim() + "' " +
" ORDER BY a.start DESC";
gvTranList.DataBind();
lbPrintAllPages.Visible = false;
lbPrintCurrentPage.Visible = true;
}
else
{
message = "Please enter month!";
string returnUrl = "UserApplyLeaveList.aspx";
ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", "<script type = 'text/javascript'>" +
"window.onload=new function(){alert('" + message +
"');window.location='" + returnUrl +
"'};</script>");
}
}
if (ddlSearch.SelectedIndex == 4)
{
if (tbSearch.Text != "")
{
sqlUsers.SelectCommand = "SELECT a.leaveId , p.Id, p.Name, a.start, a.end, a.total, a.dateapply, a.Type, a.Status " +
" FROM profile as p INNER JOIN " +
" leaveapp as a On a.Id = p.Id " +
" Where a.Type='" + tbSearch.Text.Trim() + "' " +
" ORDER BY a.leaveId DESC";
gvTranList.DataBind();
lbPrintAllPages.Visible = false;
lbPrintCurrentPage.Visible = true;
}
else
{
message = "Please enter Type Leave!";
string returnUrl = "UserApplyLeaveList.aspx";
ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", "<script type = 'text/javascript'>" +
"window.onload=new function(){alert('" + message +
"');window.location='" + returnUrl +
"'};</script>");
}
}
}
public override void VerifyRenderingInServerForm(Control control)
{
/* Verifies that the control is rendered */
}
protected void gvTranList_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gvTranList.PageIndex = e.NewPageIndex;
DataBind();
}
protected void PrintCurrentPage(object sender, EventArgs e)
{
gvTranList.BottomPagerRow.Visible = false;
gvTranList.Columns[8].Visible = false;
gvTranList.Columns[9].Visible = false;
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);
gvTranList.RenderControl(hw);
string gridHTML = sw.ToString().Replace("\"", "'")
.Replace(System.Environment.NewLine, "");
StringBuilder sb = new StringBuilder();
sb.Append("<script type = 'text/javascript'>");
sb.Append("window.onload = new function(){");
sb.Append("var printWin = window.open('', '', 'left=0");
sb.Append(",top=0,width=1000,height=600,status=0');");
sb.Append("printWin.document.write(\"");
sb.Append(gridHTML);
sb.Append("\");");
sb.Append("printWin.document.close();");
sb.Append("printWin.focus();");
sb.Append("printWin.print();");
sb.Append("printWin.close();};");
sb.Append("</script>");
ClientScript.RegisterStartupScript(this.GetType(), "GridPrint", sb.ToString());
gvTranList.AllowPaging = true;
gvTranList.Columns[8].Visible = false;
gvTranList.Columns[9].Visible = false;
}
protected void PrintAllPages(object sender, EventArgs e)
{
gvTranList.AllowPaging = false;
gvTranList.Columns[8].Visible = false;
gvTranList.Columns[9].Visible = false;
gvTranList.DataBind();
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);
gvTranList.RenderControl(hw);
string gridHTML = sw.ToString().Replace("\"", "'")
.Replace(System.Environment.NewLine, "");
StringBuilder sb = new StringBuilder();
sb.Append("<script type = 'text/javascript'>");
sb.Append("window.onload = new function(){");
sb.Append("var printWin = window.open('', '', 'left=0");
sb.Append(",top=0,width=1000,height=600,status=0');");
sb.Append("printWin.document.write(\"");
sb.Append(gridHTML);
sb.Append("\");");
sb.Append("printWin.document.close();");
sb.Append("printWin.focus();");
sb.Append("printWin.print();");
sb.Append("printWin.close();};");
sb.Append("</script>");
ClientScript.RegisterStartupScript(this.GetType(), "GridPrint", sb.ToString());
gvTranList.AllowPaging = true;
gvTranList.DataBind();
gvTranList.Columns[8].Visible = true;
gvTranList.Columns[9].Visible = false;
}