
step1:Create a new Crystal Report --Go To Vistual Studio - File-New- Website-Name-CrystalReport1.rpt
After that we design like this.
Step2: Creating A new Web Page -- Go To Vistual Studio - File-New- Website-Name-Employee.aspx
step3:Write The Below Code in employee.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="EmployeeTimesheetEmpRpt.aspx.cs" Inherits="EmployeeTimesheetEmpRpt" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server">
<table widht="100%">
<tr>
<td colspan="2">
<table align="center" style="width: 100%">
<tr>
<td>
<asp:Label ID="lblEmployee" Text="Employee" runat="server"></asp:Label>
</td>
<td>
<asp:DropDownList ID="ddlEmployee" runat="server" Width="150px">
</asp:DropDownList>
<asp:RequiredFieldValidator ID="RfvEmployee" runat="server" ControlToValidate="ddlEmployee"
CssClass="failureNotification" InitialValue="-1" ErrorMessage="Please Select Employee"
ToolTip="employee is required" ValidationGroup="Timesheet">Please Select Employee</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td class="style1" colspan="2" align="left">
<asp:Button ID="btnView" runat="server" Text="View All Employees" ValidationGroup="Timesheet" onclick="btnView_Click"
/>
</td>
<td class="style1" colspan="2" align="center">
</td>
</tr>
</table>
</td>
</tr>
</table>
</asp:Content>
step4:Write the code in employee.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
using HRMcore;
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
public partial class EmployeeTimesheetEmpRpt : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
BindEmployees();
}
protected void btnView_Click(object sender, EventArgs e)
{
try
{
int empId = Convert.ToInt32(ddlEmployee.SelectedValue);
DataTable dt = null;
dt = EmployeeTimeSheetDataAccess.GetTimeSheetReportByEmp(empId);
if (dt != null && dt.Rows.Count > 0)
{
ReportDocument cryRpt = new ReportDocument();
cryRpt.Load(Server.MapPath("~/rptEmployeeWise.rpt"));
cryRpt.SetDataSource(dt);
// ReportViewer.ReportSource = cryRpt;
cryRpt.ExportToHttpResponse(ExportFormatType.Excel, Response, true, "EmployeeTimeSheet");
}
Session["Timesheet"] = dt;
}
catch (Exception ex)
{
AppLog.Error(ex);
}
}
public void BindEmployees()
{
DataTable dt = new DataTable();
dt = EmployeeDataAccess.GetAllEmployee();
ddlEmployee.DataSource = dt;
ddlEmployee.DataTextField = "Name";
ddlEmployee.DataValueField = "id";
ddlEmployee.DataBind();
ListItem item = new ListItem("--Select Employee---","-1");
ddlEmployee.Items.Insert(0, item);
}
}
No comments:
Post a Comment