diff --git a/HRM.BO/Common/SetupManager.cs b/HRM.BO/Common/SetupManager.cs index 99f4ceb..6160be8 100644 --- a/HRM.BO/Common/SetupManager.cs +++ b/HRM.BO/Common/SetupManager.cs @@ -1,4 +1,5 @@  +using DocumentFormat.OpenXml.Office2010.Excel; using Ease.Core.Model; using System; @@ -300,5 +301,32 @@ namespace HRM.BO return m_oReader.Types; } } + public static List ApplicableParametersForReportOptimized(Employee oEmp, List setupTypes, List details) + { + List parametersID = new List(); + + + if (setupTypes == null) return parametersID; + + + foreach (EnmSetupManagerTranType type in setupTypes) + { + int nTranID = SetupDetail.GetTranID(oEmp, type); + + if (nTranID == null || nTranID < 0) continue; + + List setupIds = details.Where(detail => detail.TranType == type + && detail.TranID == nTranID) + .Select(x => x.SetupID) + .Distinct().ToList(); + + foreach (int id in setupIds) + { + parametersID.Add(id); + } + + } + return parametersID; + } } } diff --git a/HRM.BO/HRBasic/Enums.cs b/HRM.BO/HRBasic/Enums.cs index fc8edfc..eb35ed7 100644 --- a/HRM.BO/HRBasic/Enums.cs +++ b/HRM.BO/HRBasic/Enums.cs @@ -2279,6 +2279,9 @@ namespace HRM.BO EmployeeBasicInfoEcho = 721, EmployeeEvaluationSheet = 722, LifeCycleDeletedHistor = 723, + SingleEmpLeaveBalance = 724, + MultipleEmpLeaveBalanceEcho = 725, + LeaveReportEcho = 726, //Hnm(801-900) OtBankDisbursementHnm = 801, BonusRegisterHnm = 802, @@ -3463,15 +3466,32 @@ namespace HRM.BO public enum EnumLeaveCalculationType { - Hourly = 0, - Yearly = 1, - Monthly_Earn = 2, - Hourly_365Day = 3, - Hourly_Monthly = 4, - OneDay_On_18Day_Present = 5, - Hourly_Prorated = 6, - Days_365 = 7, - Yearly_without_Prorated = 8 + //Hourly = 0, + //Yearly = 1, + //Monthly_Earn = 2, + //Hourly_365Day = 3, + //Hourly_Monthly = 4, + //OneDay_On_18Day_Present = 5, + //Hourly_Prorated = 6, + //Days_365 = 7, + //Yearly_without_Prorated = 8 + + Daily = 0, + Monthly = 1, + Yearly = 2, + //Prorated=3, + Not_Applicable = 4, + Not_Applicable_With_Prorated = 5, + + Hourly = 6, + //Yearly = 7, + Monthly_Earn = 8, + Hourly_365Day = 9, + Hourly_Monthly = 10, + OneDay_On_18Day_Present = 11, + Hourly_Prorated = 12, + Days_365 = 13, + Yearly_without_Prorated = 14 } public enum EnumLeaveparamOn diff --git a/HRM.DA/DA/Fund/Basic/GlobalFunctionDA.cs b/HRM.DA/DA/Fund/Basic/GlobalFunctionDA.cs index a9df547..8a20b37 100644 --- a/HRM.DA/DA/Fund/Basic/GlobalFunctionDA.cs +++ b/HRM.DA/DA/Fund/Basic/GlobalFunctionDA.cs @@ -1,9 +1,11 @@ -using HRM.BO; -using Ease.Core.DataAccess; -using System; -using System.Data; +using Ease.Core.DataAccess; +using Ease.Core.Model; +using Ease.Core.Utility; +using HRM.BO; using HRM.BO.Fund; using Microsoft.Data.SqlClient; +using System; +using System.Data; namespace HRM.DA { @@ -92,5 +94,43 @@ namespace HRM.DA return ""; return sCode.ToString(); } + + public static DateTime GetOperationDate() + { + DateTime opDate = DateTime.MinValue; + + TransactionContext tc = null; + try + { + tc = TransactionContext.Begin(); + + + SqlParameter[] p = new SqlParameter[1]; + p[0] = new SqlParameter("@OperationDate", SqlDbType.DateTime); + p[0].Direction = ParameterDirection.Output; + p[0].Value = DateTime.MinValue; + + tc.ExecuteNonQuery(CommandType.StoredProcedure, "[dbo].[GetOperationDate]", p); + + if (p[0].Value != null && p[0].Value != DBNull.Value) + opDate = Convert.ToDateTime(p[0].Value); + + //opDate = GlobalFunctionDA.GetOperationDate(tc); + + tc.End(); + } + catch (Exception e) + { + #region Handle Exception + if (tc != null) + tc.HandleError(); + ExceptionLog.Write(e); + + throw new ServiceException(e.Message, e); + #endregion + } + + return opDate; + } } } \ No newline at end of file diff --git a/HRM.DA/DA/Leave/LeaveDA.cs b/HRM.DA/DA/Leave/LeaveDA.cs index 6bfcca4..225ce55 100644 --- a/HRM.DA/DA/Leave/LeaveDA.cs +++ b/HRM.DA/DA/Leave/LeaveDA.cs @@ -135,7 +135,32 @@ namespace HRM.DA { return tc.ExecuteReader("SELECT * FROM Leave WHERE CODE=%s AND PayrollTypeID=%n", sLeave, payrollTypeID); } - + internal static DataSet GetELInfo(TransactionContext tc, int empID, DateTime JoinDate, DateTime toDate, DateTime availedTo) + { + string sSQL = SQLParser.MakeSQL(@"select 'Leave Availed' Item,isnull(sum(APRTOTALDAYS),0)[Value] from LEAVEENTRY + where LEAVEID=5 + and EmpID=%n + and APRFROMDATE>=%d and APRTODATE<=%d + union + select 'Present Days' Item, isnull(count(*),0)[Value] from DailyAttnProcess + where EmployeeID=%n + and AttnDate between %d and %d + and ATTENTYPE in(1,3,12) + union + select 'Encash Days' Item,isnull(sum(EncashmentDays),0)[Value] from LeaveEncashment + where EmployeeID=%n + and EncashmentFromDate >=%d and EncashmentToDate <=%d + Union + select 'Leave Availed this' Item,isnull(sum(APRTOTALDAYS),0)[Value] from LEAVEENTRY + where LEAVEID=5 + and EmpID=%n + and APRFROMDATE>=%d and APRTODATE<=%d", + empID, JoinDate, availedTo.AddDays(-1), + empID, JoinDate, toDate, + empID, JoinDate, availedTo.AddDays(-1), + empID, availedTo, toDate); + return tc.ExecuteDataSet(sSQL); + } #endregion #region Delete function diff --git a/HRM.DA/Service/Leave/EmpLeaveStatusService.cs b/HRM.DA/Service/Leave/EmpLeaveStatusService.cs index 9ed1ba4..38cb986 100644 --- a/HRM.DA/Service/Leave/EmpLeaveStatusService.cs +++ b/HRM.DA/Service/Leave/EmpLeaveStatusService.cs @@ -88,32 +88,70 @@ namespace HRM.DA if (oItem.LeaveId == 5) { - DateTime SelectedMonth = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1).LastDateOfMonth(); - from_Date = new DateTime(to_Date.Year - 2, oEmployee.JoiningDate.Month, oEmployee.JoiningDate.Day); - DataSet ds = new DailyAttnProcessService().GetEarnedLeaveOpening(oEmployee.ID, oItem.LeaveId, from_Date, to_Date); - int dCurrectedDay = 0; - if (DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month) < oEmployee.JoiningDate.Day) - dCurrectedDay = DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month); - else - dCurrectedDay = oEmployee.JoiningDate.Day; - DateTime JoiningDateBefore2YearsFromCurrentYear = new DateTime(SelectedMonth.Year, SelectedMonth.Month, dCurrectedDay).AddYears(-2);// new DateTime(DateTime.Today.Year- 2, item.JoiningDate.Month, item.JoiningDate.Day);// SelectedMonth.FirstDateOfMonth().AddYears(-2); - DateTime FirstYearStartDate = JoiningDateBefore2YearsFromCurrentYear; - DateTime FirstYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1).AddDays(-1); - DateTime LastYearStartDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1); - DateTime LastYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(2).AddDays(-1); + #region old code + //DateTime SelectedMonth = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1).LastDateOfMonth(); + //from_Date = new DateTime(to_Date.Year - 2, oEmployee.JoiningDate.Month, oEmployee.JoiningDate.Day); + //DataSet ds = new DailyAttnProcessService().GetEarnedLeaveOpening(oEmployee.ID, oItem.LeaveId, from_Date, to_Date); + //int dCurrectedDay = 0; + //if (DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month) < oEmployee.JoiningDate.Day) + // dCurrectedDay = DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month); + //else + // dCurrectedDay = oEmployee.JoiningDate.Day; + //DateTime JoiningDateBefore2YearsFromCurrentYear = new DateTime(SelectedMonth.Year, SelectedMonth.Month, dCurrectedDay).AddYears(-2);// new DateTime(DateTime.Today.Year- 2, item.JoiningDate.Month, item.JoiningDate.Day);// SelectedMonth.FirstDateOfMonth().AddYears(-2); + //DateTime FirstYearStartDate = JoiningDateBefore2YearsFromCurrentYear; + //DateTime FirstYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1).AddDays(-1); + //DateTime LastYearStartDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1); + //DateTime LastYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(2).AddDays(-1); - double secondYearLeaveAvailed = new LeaveEntryService().Get(oEmployee.ID, LastYearStartDate, LastYearEndDate, EnumLeaveStatus.Approved).Sum(x => x.ApprovedTotalDays); - //ObjectsTemplate les = LeaveEncashment.GetByEmpIDs(oEmployee.ID.Integer.ToString(), FirstYearStartDate, FirstYearEndDate); + //double secondYearLeaveAvailed = new LeaveEntryService().Get(oEmployee.ID, LastYearStartDate, LastYearEndDate, EnumLeaveStatus.Approved).Sum(x => x.ApprovedTotalDays); + ////List les = LeaveEncashment.GetByEmpIDs(oEmployee.ID.Integer.ToString(), FirstYearStartDate, FirstYearEndDate); - if (ds != null && ds.Tables.Count > 0) + //if (ds != null && ds.Tables.Count > 0) + //{ + // foreach (DataRow dr in ds.Tables[0].Rows) + // { + // oCurrStatus.OpeningBalance = Convert.ToDouble(dr[0].ToString()); + // oCurrStatus.LeaveAvailed = Convert.ToDouble(dr[1].ToString()); //secondYearLeaveAvailed; + // oCurrStatus.EncashDays = 0;// les==null?0:les.Sum(x=> Math.Round(x.EncashmentDays)); + // oCurrStatus.YearEndBalance = oCurrStatus.OpeningBalance - (oCurrStatus.LeaveAvailed + oCurrStatus.EncashDays); + // } + //} + #endregion + + DateTime dtTo = oCurrYear.EndDate < DateTime.Today ? oCurrYear.EndDate : DateTime.Today; + DateTime dtAvailed = oEmployee.JoiningDate; + LeaveYear ly = new LeaveYearService().LastLeaveYear(oCurrYear); + while (dtAvailed < ly.StartDate) { - foreach (DataRow dr in ds.Tables[0].Rows) + dtAvailed = dtAvailed.AddYears(1); + } + DataTable dt = new LeaveService().GetELInfo(oEmployee.ID, oEmployee.JoiningDate, dtTo, dtAvailed); + if (dt != null) + { + foreach (DataRow dr in dt.Rows) { - oCurrStatus.OpeningBalance = Convert.ToDouble(dr[0].ToString()); - oCurrStatus.LeaveAvailed = Convert.ToDouble(dr[1].ToString()); //secondYearLeaveAvailed; - oCurrStatus.EncashDays = 0;// les==null?0:les.Sum(x=> Math.Round(x.EncashmentDays)); - oCurrStatus.YearEndBalance = oCurrStatus.OpeningBalance - (oCurrStatus.LeaveAvailed + oCurrStatus.EncashDays); + if (dr[0].ToString() == "Leave Availed this") + { + oCurrStatus.LeaveAvailed = Convert.ToDouble(dr[1].ToString()); + } + else if (dr[0].ToString() == "Present Days") + { + oCurrStatus.OpeningBalance = Convert.ToDouble(dr[1].ToString()); + oCurrStatus.OpeningBalance = oCurrStatus.OpeningBalance == 0 ? 0 : oCurrStatus.OpeningBalance / 18; + } + else if (dr[0].ToString() == "Encash Days") + { + oCurrStatus.OpeningBalance -= Convert.ToDouble(dr[1].ToString()); + } + else if (dr[0].ToString() == "Leave Availed") + { + oCurrStatus.NormalLeaveDays = Convert.ToDouble(dr[1].ToString()); + } } + oCurrStatus.OpeningBalance -= oCurrStatus.NormalLeaveDays; + oCurrStatus.OpeningBalance = Math.Round(oCurrStatus.OpeningBalance, 2); + oCurrStatus.OpeningBalance = oItem.MaxAccumulatedDays < oCurrStatus.OpeningBalance ? oItem.MaxAccumulatedDays : oCurrStatus.OpeningBalance; + oCurrStatus.YearEndBalance = Math.Round(oCurrStatus.OpeningBalance - oCurrStatus.LeaveAvailed, 2); } oCurrYearBalance.Add(oCurrStatus); @@ -121,7 +159,7 @@ namespace HRM.DA else { - //ObjectsTemplate les = LeaveEntry.GetByLeaveID(oItem.LeaveId, empId, from_Date, to_Date); + //List les = LeaveEntry.GetByLeaveID(oItem.LeaveId, empId, from_Date, to_Date); List les = oLeaveEntries.Where(le => le.LeaveID == oItem.LeaveId && le.EmpID == empId && le.ApprovedFromDate >= from_Date && le.ApprovedFromDate <= to_Date @@ -164,9 +202,11 @@ namespace HRM.DA } else { + #region From Master + if (oDetail != null) oCurrStatus.NormalLeaveDays = 0; else continue; - //oItem.Details = new ObjectsTemplate(); + //oItem.Details = new List(); //oItem.Details.Add(oDetail); #region calculate the current year balance @@ -249,6 +289,12 @@ namespace HRM.DA } + #endregion + + #endregion + + #region From Echotex desktop App + #endregion } @@ -276,14 +322,14 @@ namespace HRM.DA { double nTotalDays = 0; TimeSpan ts = new TimeSpan(); - if (eType == EnumLeaveCalculationType.Yearly) + if (eType == EnumLeaveCalculationType.Daily) { if (presentAttnCount > 0) { nTotalDays = (double)presentAttnCount / 18; } } - else if (eType == EnumLeaveCalculationType.Yearly) + else if (eType == EnumLeaveCalculationType.Monthly) { ts = (dCurrentDate - ((emp.JoiningDate > oCurrentYear.StartDate) ? emp.JoiningDate : Global.DateFunctions.FirstDateOfYear(dCurrentDate))) @@ -301,12 +347,12 @@ namespace HRM.DA } // Else '0' , What?????????????????? } - else if (eType == EnumLeaveCalculationType.Yearly) + else if (eType == EnumLeaveCalculationType.Not_Applicable) { ts = (Global.DateFunctions.LastDateOfYear(dCurrentDate) - Global.DateFunctions.FirstDateOfYear(dCurrentDate)).Add(TimeSpan.FromDays(1)); nTotalDays = (oDetail.MaxDays * ts.Days) / 365; } - else if (eType == EnumLeaveCalculationType.Yearly) + else if (eType == EnumLeaveCalculationType.Not_Applicable_With_Prorated) { ts = (Global.DateFunctions.LastDateOfYear(dCurrentDate) - ((emp.JoiningDate > oCurrentYear.StartDate) ? emp.JoiningDate : Global.DateFunctions.FirstDateOfYear(dCurrentDate))) @@ -691,6 +737,130 @@ namespace HRM.DA //#endregion + public DataTable CurrentYearStatusOptimized(string sEmpIDs, LeaveYear lYear, EnumLeaveStatus eStatus, DateTime NextPayProcessDate) + { + DataTable dTEmpLeave = new DataTable(); + dTEmpLeave.Columns.Add("Leave", typeof(System.String)); + dTEmpLeave.Columns.Add("Opening", typeof(System.String)); + dTEmpLeave.Columns.Add("Availed", typeof(System.String)); + dTEmpLeave.Columns.Add("Balance", typeof(System.String)); + dTEmpLeave.Columns.Add("EmpNo", typeof(System.String)); + dTEmpLeave.Columns.Add("Name", typeof(System.String)); + dTEmpLeave.Columns.Add("Designation", typeof(System.String)); + dTEmpLeave.Columns.Add("Division", typeof(System.String)); + dTEmpLeave.Columns.Add("Department", typeof(System.String)); + dTEmpLeave.Columns.Add("Unit", typeof(System.String)); + dTEmpLeave.Columns.Add("CFDays", typeof(System.String)); + dTEmpLeave.Columns.Add("Floor", typeof(System.String)); + dTEmpLeave.Columns.Add("Section", typeof(System.String)); + dTEmpLeave.Columns.Add("Line", typeof(System.String)); + + try + { + + DataTable dtEmpBasicInfo = new EmployeeService().GetAllEmpBasicInfo(sEmpIDs) + .Tables[0] + .AsEnumerable() + .OrderBy(x => Convert.ToInt32(x["EmployeeID"].ToString())) + .CopyToDataTable(); + + List oCurrYearBalance = null; + List oAllEmpsCurrYearBalance = new List(); + DateTime operationDate = GlobalFunctionDA.GetOperationDate(); + if (operationDate.Date > lYear.EndDate.Date) + { + operationDate = lYear.EndDate.Date; + } + DateTime oEmpOperationDate; + DataTable oYearlyDailyAttnProcess = new DailyAttnProcessService().GetTypeWiseAttnCount(sEmpIDs, Global.DateFunctions.FirstDateOfYear(operationDate), Global.DateFunctions.LastDateOfYear(operationDate), EnumAttendanceType.Present, EnumAttendanceType.Early, EnumAttendanceType.Late, EnumAttendanceType.Delay, EnumAttendanceType.HalfDay, EnumAttendanceType.OutSideDuty) + .AsEnumerable() + .OrderBy(x => Convert.ToInt32(x["EmployeeID"].ToString())) + .CopyToDataTable(); + + + LeaveYear oCurrYear = lYear; + LeaveYear oPrvYear = new LeaveYearService().LastLeaveYear(oCurrYear); + List setupTypes = new SetupDetailService().GetTypes(EnumParameterSetup.Leave); + List setupDetails = new SetupDetailService().GetParameters(EnumParameterSetup.Leave); + List leaveParamss = new LeaveParameterService().Get(); + List leaveParamDetails = new LeaveParameterService().GetDetails(); + List oLs = new LeaveEntryService().GetByLeaveYear(oCurrYear.ID); + List oPrevStatuses = new LeaveProcessService().GetByYear(oPrvYear.ID); + List oExceptions = new LeaveExceptionService().Get(lYear.StartDate, lYear.EndDate); + Queue oEmployees = new Queue(new EmployeeService().GetByEmpIDs(sEmpIDs).OrderBy(x => x.ID)); + List oNationalHolidays = new AttnNationalHolidayService().GetByMonth(oCurrYear.StartDate, oCurrYear.EndDate); + + List leaveTypes = new LeaveService().GetAll(); + + foreach (DataRow drBasic in dtEmpBasicInfo.Rows) + { + Employee oEmp = null; + int presentCount = 0; + + if (oEmployees.Any() && oEmployees.Peek().ID == Convert.ToInt32(drBasic["EmployeeID"].ToString())) + { + oEmp = oEmployees.Dequeue(); + } + else + { + continue; + } + + oEmpOperationDate = operationDate; + + if (oEmp.EndOfContractDate != null) + { + if (oEmp.EndOfContractDate < lYear.StartDate) + continue; + + if (oEmp.EndOfContractDate.Value < operationDate) + { + oEmpOperationDate = oEmp.EndOfContractDate.Value; + } + + } + DataRow dRow = oYearlyDailyAttnProcess.AsEnumerable().FirstOrDefault(x => Convert.ToInt32(x["EmployeeID"].ToString()) == Convert.ToInt32(drBasic["EmployeeID"].ToString())); + presentCount = dRow != null ? Convert.ToInt32(dRow["Count"].ToString()) : 0; + + + List oAppLeaveParams = new LeaveParameterService().ApplicableParamsForReportOptimized(oEmp, setupTypes, setupDetails, leaveParamss, leaveTypes); + oCurrYearBalance = new EmpLeaveStatusService().CurrentYearStatusOptimized(oEmp, oEmpOperationDate, presentCount, oAppLeaveParams, oCurrYear, oLs, eStatus, oPrevStatuses, leaveParamDetails, oExceptions, oNationalHolidays, NextPayProcessDate); + + DataRow oRow = null; + foreach (EmpLeaveStatus eSts in oCurrYearBalance) + { + eSts.Leave = leaveTypes.Find(l => l.ID == eSts.LeaveId); + oRow = dTEmpLeave.NewRow(); + if (drBasic != null) + { + oRow["EmpNo"] = drBasic["EmployeeNo"]; + oRow["Name"] = drBasic["Name"]; + oRow["Designation"] = drBasic["Designation"]; + oRow["Department"] = drBasic["Department"]; + oRow["Floor"] = drBasic["Floor"]; + oRow["Section"] = drBasic["Section"]; + oRow["Line"] = drBasic["Line"]; + oRow["Unit"] = string.Empty; + } + + oRow["Leave"] = eSts.Leave.Description; + oRow["Opening"] = eSts.OpeningBalance.ToString(); + oRow["Availed"] = eSts.LeaveAvailed.ToString(); + oRow["Balance"] = eSts.ClosingBalance.ToString(); + + dTEmpLeave.Rows.Add(oRow); + + } + } + + return dTEmpLeave; + } + catch (Exception) + { + + } + return dTEmpLeave; + } } diff --git a/HRM.DA/Service/Leave/LeaveEntryService.cs b/HRM.DA/Service/Leave/LeaveEntryService.cs index 45b42c4..ae44bcb 100644 --- a/HRM.DA/Service/Leave/LeaveEntryService.cs +++ b/HRM.DA/Service/Leave/LeaveEntryService.cs @@ -2558,18 +2558,18 @@ namespace HRM.DA } } - if (lp.CalculationType == EnumLeaveCalculationType.Hourly_365Day) - { - nDays = (nDiff - nDays) > 0 ? (nDiff - nDays) * 8 : 0; - } - else if (lp.CalculationType == EnumLeaveCalculationType.Days_365) - { + //if (lp.CalculationType == EnumLeaveCalculationType.Hourly_365Day) + //{ + // nDays = (nDiff - nDays) > 0 ? (nDiff - nDays) * 8 : 0; + //} + //else if (lp.CalculationType == EnumLeaveCalculationType.Days_365) + //{ + // nDays = (nDiff - nDays) > 0 ? nDiff - nDays : 0; + //} + //else + //{ nDays = (nDiff - nDays) > 0 ? nDiff - nDays : 0; - } - else - { - nDays = (nDiff - nDays) > 0 ? nDiff - nDays : 0; - } + //} nDays -= totalDayOff; ThrowMessageForMinimumDays(leaveType, IsHalfDay && nDays == 1 ? nDays - 0.5 : nDays); diff --git a/HRM.DA/Service/Leave/LeaveParameterService.cs b/HRM.DA/Service/Leave/LeaveParameterService.cs index ce2504b..03b5f6a 100644 --- a/HRM.DA/Service/Leave/LeaveParameterService.cs +++ b/HRM.DA/Service/Leave/LeaveParameterService.cs @@ -696,7 +696,7 @@ namespace HRM.DA //List setupTypes = SetupDetail.GetTypes(setup); if (setupTypes == null) return parametersID; - //ObjectsTemplate details = SetupDetail.GetParameters(setup); + //List details = SetupDetail.GetParameters(setup); foreach (EnmSetupManagerTranType type in setupTypes) { @@ -766,7 +766,7 @@ namespace HRM.DA public List ApplicableParamsForReport(Employee oEmp, List setupTypes, List details, List leaveParamss) { List leaveParamIds = ApplicableParametersForReport(oEmp, setupTypes, details); - //ObjectsTemplate leaveParamss = LeaveParameter.Get(); + //List leaveParamss = LeaveParameter.Get(); List leaveParams = new List(); foreach (LeaveParameter lparam in leaveParamss) { @@ -846,6 +846,48 @@ namespace HRM.DA return dtl; } + public List ApplicableParamsForReportOptimized(Employee oEmp, List setupTypes, List details, List leaveParamss, List leaveTypes) + { + List leaveParamIds = SetupManager.ApplicableParametersForReportOptimized(oEmp, setupTypes, details); + //List leaveParamss = LeaveParameter.Get(); + List leaveParams = new List(); + foreach (LeaveParameter lparam in leaveParamss) + { + lparam.Leave = leaveTypes.Find(l => l.ID == lparam.LeaveId); + if (lparam.Leave.ApplicableFor != (EnumGender)oEmp.Gender && + lparam.Leave.ApplicableFor != EnumGender.Other && + lparam.Leave.ApplicableFor != EnumGender.None) + { + continue; + } + + if (leaveParamIds.Contains(lparam.ID)) + { + switch (lparam.ApplicableFor) + { + case LeaveApplicableType.Probetionary: + if (!oEmp.IsConfirmed) + { + leaveParams.Add(lparam); + } + break; + case LeaveApplicableType.Confirmed: + if (oEmp.IsConfirmed) + { + leaveParams.Add(lparam); + } + break; + case LeaveApplicableType.Regardless: + leaveParams.Add(lparam); + break; + default: + break; + } + + } + } + return leaveParams; + } #endregion } diff --git a/HRM.DA/Service/Leave/LeaveProcessService.cs b/HRM.DA/Service/Leave/LeaveProcessService.cs index 8ca8e31..576b63d 100644 --- a/HRM.DA/Service/Leave/LeaveProcessService.cs +++ b/HRM.DA/Service/Leave/LeaveProcessService.cs @@ -288,7 +288,7 @@ namespace HRM.DA { } - if (oItem.LeaveParameter.CalculationType == EnumLeaveCalculationType.Monthly_Earn + if (oItem.LeaveParameter.CalculationType == EnumLeaveCalculationType.Monthly//EnumLeaveCalculationType.Monthly_Earn && oItem.EligibleParamDetail == null) // considering joining current year and will eligible next year. { Employee emp = new EmployeeService().Get(oItem.EmpId); @@ -1444,7 +1444,7 @@ namespace HRM.DA // + current month (0, because current month not yet completed)= 19, but as per policy he will get 20 days from one year completion. // so folloiwng loic is needed to that - if (oItem.CalculationType == EnumLeaveCalculationType.Monthly_Earn) + if (oItem.CalculationType == EnumLeaveCalculationType.Monthly)//EnumLeaveCalculationType.Monthly_Earn) { double months = Global.DateFunctions.DateDiff("M", oEmployee.JoiningDate, dCurrentDate); if (oDetail.Year == 1 && months == 12) @@ -1900,7 +1900,7 @@ namespace HRM.DA nTotalDays = Math.Floor(nTotalDays); } - else if (eType == EnumLeaveCalculationType.Monthly_Earn) + else if (eType == EnumLeaveCalculationType.Monthly)/*EnumLeaveCalculationType.Monthly_Earn)*/ { if (emp.ID == 1807) { @@ -2095,7 +2095,7 @@ namespace HRM.DA // + current month (0, because current month not yet completed)= 19, but as per policy he will get 20 days from one year completion. // so folloiwng loic is needed to that - if (oItem.CalculationType == EnumLeaveCalculationType.Monthly_Earn) + if (oItem.CalculationType == EnumLeaveCalculationType.Monthly)/*EnumLeaveCalculationType.Monthly_Earn)*/ { double months = Global.DateFunctions.DateDiff("M", oEmployee.JoiningDate, dCurrentDate); if (oDetail.Year == 1 && months == 12) diff --git a/HRM.DA/Service/Leave/LeaveService.cs b/HRM.DA/Service/Leave/LeaveService.cs index 7fb1276..2246079 100644 --- a/HRM.DA/Service/Leave/LeaveService.cs +++ b/HRM.DA/Service/Leave/LeaveService.cs @@ -1,9 +1,10 @@ -using HRM.BO; -using Ease.Core.DataAccess; +using Ease.Core.DataAccess; using Ease.Core.Model; using Ease.Core.Utility; +using HRM.BO; using System; using System.Collections.Generic; +using System.Data; using System.Text; namespace HRM.DA @@ -427,6 +428,31 @@ namespace HRM.DA return false; } #endregion + public DataTable GetELInfo(int empID, DateTime JoinDate, DateTime toDate, DateTime availedTo) + { + + TransactionContext tc = null; + try + { + tc = TransactionContext.Begin(); + DataSet dSet = LeaveDA.GetELInfo(tc, empID, JoinDate, toDate, availedTo); + return dSet.Tables[0]; + } + catch (Exception e) + { + #region Handle Exception + if (tc != null) + tc.HandleError(); + ExceptionLog.Write(e); + throw new ServiceException(e.Message, e); + #endregion + } + finally + { + if (tc != null) + tc.End(); + } + } } #endregion diff --git a/HRM.Report/Class/rptEcho.cs b/HRM.Report/Class/rptEcho.cs index 23d2ad5..356628f 100644 --- a/HRM.Report/Class/rptEcho.cs +++ b/HRM.Report/Class/rptEcho.cs @@ -1,22 +1,24 @@ -using System; -using System.Collections.Generic; -using System.Data; -using System.IO; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using DocumentFormat.OpenXml.Office2010.Excel; using Ease.Core.Model; using Ease.Core.Utility; using HRM.BO; using HRM.BO.Configuration; using HRM.DA; using HRM.Report.Attendence.AttendenceDataSet; +using Microsoft.AspNetCore.JsonPatch.Operations; using Microsoft.Extensions.Configuration; using Microsoft.Reporting.NETCore; using NPOI.SS.Formula.Functions; using NPOI.XSSF.Streaming.Values; using Org.BouncyCastle.Ocsp; using Org.BouncyCastle.Utilities.Collections; +using System; +using System.Collections.Generic; +using System.Data; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; namespace HRM.Report { @@ -3221,5 +3223,164 @@ namespace HRM.Report } #endregion + + #region Leave Reports + + public byte[] ShowEmployeeIndvLeaveBalance(string sEmpID, DateTime fromDate, DateTime toDate, int leaveType, int payrollTypeID, DateTime nextPayProcessDate, string reportType) + { + ReportProcessor form = new ReportProcessor(); + + DataRow oRow = null; + LeaveYear ly = new LeaveYear(); + List leaveTypes = new LeaveService().Get(); + List _leaveYear = new LeaveYearService().Get(); + DataSet dsEmpBasicInfo = new EmployeeService().GetAllEmpBasicInfo(sEmpID); + DataRow drBasic = null; + + if (dsEmpBasicInfo.Tables[0].Rows.Count > 0) + { + drBasic = dsEmpBasicInfo.Tables[0].Rows[0]; + } + + if (drBasic == null) throw new Exception("Employee Information not found"); + + List oLeaveEntrys = new List(); + DataTable oBody = new HRM.Report.PayrollDataSet.dsEmpLeaveLedger.EmpLeaveLedgerDataTable(); + DataTable oBody2 = new HRM.Report.PayrollDataSet.dsEmpLeaveLedger.EmpInformationDataTable(); + DataTable oBody3 = new HRM.Report.PayrollDataSet.dsEmpLeaveLedger.LeaveYearDataTable(); + DataTable oBody4 = new HRM.Report.PayrollDataSet.dsEmpLeaveLedger.LeaveBalanceDataTable(); + oLeaveEntrys = new LeaveEntryService().GetEmployeeWiseLeaveDetailReport(Convert.ToInt32(sEmpID), fromDate, toDate, leaveType); + List oEmps = new List(); + Employee oEmp = new EmployeeService().Get(Convert.ToInt32(sEmpID)); + oEmps.Add(oEmp); + + + LeaveYear lyy = new LeaveYearService().GetCurrentYear(payrollTypeID); + DateTime operationDate = new GlobalFunctionService().GetOperationDate(); + if (operationDate.Date > lyy.EndDate.Date) + { + operationDate = lyy.EndDate.Date; + } + List oCurrYearStatus = new EmpLeaveStatusService().CurrentYearStatus(oEmps, lyy, operationDate, EnumLeaveStatus.Approved, nextPayProcessDate); + foreach (EmpLeaveStatus oItem in oCurrYearStatus) + { + ly = _leaveYear.Where(x => x.ID == oItem.LeaveYearID).FirstOrDefault(); + oItem.Leave = leaveTypes.Find(lt => lt.ID == oItem.LeaveId); + oBody4.Rows.Add(oItem.Leave.Description, oItem.OpeningBalance.ToString(), oItem.LeaveAvailed.ToString(), oItem.ClosingBalance.ToString(), oItem.CFDays.ToString()); + } + oRow = oBody2.NewRow(); + oRow["EmpNo"] = drBasic["EmployeeNo"]; + oRow["EmpName"] = drBasic["Name"]; + oRow["Designation"] = drBasic["Designation"]; + oRow["JoiningDate"] = Convert.ToDateTime(drBasic["JoiningDate"].ToString()).ToString("dd MMM yyyy"); + oRow["LeaveNotifier"] = string.Empty; + oRow["Department"] = drBasic["Department"]; + oRow["Floor"] = drBasic["Floor"]; + oRow["Section"] = drBasic["Section"]; + oRow["Line"] = drBasic["Line"]; + + DataSet LineManager = new EmployeeService().GetLineManagerFromOrg(Convert.ToInt32(drBasic["EmployeeID"])); + + foreach (DataRow or in LineManager.Tables[0].Rows) + { + oRow["LeaveApprover"] = or["Name"]; + } + + oRow["LeavePeriod"] = ly.Name; + + oBody2.Rows.Add(oRow); + + if (oLeaveEntrys != null) + { + foreach (LeaveEntry le in oLeaveEntrys) + { + oRow = oBody.NewRow(); + oRow["LeaveType"] = le.Leave.Description; + oRow["FromDate"] = le.ApprovedFromDate.ToString("dd MMM yyyy"); + oRow["ToDate"] = le.ApprovedToDate.ToString("dd MMM yyyy"); + oRow["TotalDays"] = le.ApprovedTotalDays; + oRow["LeaveReason"] = le.ErnLeaveRemarks; + oRow["ApplyDate"] = le.AppliedLeaveDate.ToString("dd MMM yyyy"); + oRow["ApproveDate"] = le.ApprovedLeaveDate.ToString("dd MMM yyyy"); + oRow["LeaveStatus"] = le.LeaveStatus.ToString(); + oRow["Remarks"] = le.Remarks; + + oBody.Rows.Add(oRow); + } + } + DataSet dSet = new DataSet(); + oBody.TableName = "dsEmpLeaveLedger_EmpLeaveLedger"; + dSet.Tables.Add(oBody); + oBody4.TableName = "dsEmpLeaveLedger_LeaveBalance"; + dSet.Tables.Add(oBody4); + oBody2.TableName = "dsEmpLeaveLedger_EmpInformation"; + dSet.Tables.Add(oBody2); + + + string RDLC = "LeaveLedgerEcho.rdlc"; + + return form.CommonReportViewForReports(null, dSet, null, RDLC, null, true, payrollTypeID, reportType); + } + + + public byte[] ShowMultipleEmployeeLeaveReport(string sEmpIDs, int lyyid, int payrollTypeID, DateTime nextPayProcessDate, string reportType) + { + ReportProcessor form = new ReportProcessor(); + DataTable dTEmpLeave = new HRM.Report.PayrollDataSet.dsEmpLeaveLedger.LeaveBalanceDataTable(); + + LeaveYear lyy = new LeaveYearService().Get(lyyid); + + dTEmpLeave = new EmpLeaveStatusService().CurrentYearStatusOptimized(sEmpIDs, lyy, EnumLeaveStatus.Approved, nextPayProcessDate); + + DataSet dSet = new DataSet(); + dTEmpLeave.TableName = "dsEmpLeaveLedger_LeaveBalance"; + + if (dTEmpLeave.Rows.Count > 0) + { + dSet.Tables.Add(dTEmpLeave); + List oParameters = new List(); + ReportParameter rParam = new ReportParameter("LeaveYear", string.Format("{0} - {1}", lyy.StartDate.ToString("dd MMM yyyy"), lyy.EndDate.ToString("dd MMM yyyy"))); + oParameters.Add(rParam); + string RDLC = "MultipleEmpLeaveBalance.rdlc"; + return form.CommonReportViewForReports(null, dSet, null, RDLC, oParameters, true, payrollTypeID, reportType); + //form.CommonReportViewForReports(null, ds, RDLC, oParameters); + } + else + { + throw new Exception("Leave balance not found"); + } + } + + public byte[] ShowLeaveReport(string sEmpIDs, int lyyid, int payrollTypeID, DateTime nextPayProcessDate, string reportType) + { + + ReportProcessor form = new ReportProcessor(); + DataTable dTEmpLeave = new HRM.Report.PayrollDataSet.dsEmpLeaveLedger.LeaveBalanceDataTable(); + + LeaveYear lyy = new LeaveYearService().Get(lyyid); + + dTEmpLeave = new EmpLeaveStatusService().CurrentYearStatusOptimized(sEmpIDs, lyy, EnumLeaveStatus.Approved, nextPayProcessDate); + + if (dTEmpLeave.Rows.Count > 0) + { + DataSet ds = new DataSet(); + dTEmpLeave.TableName = "dsEmpLeaveLedger_LeaveBalance"; + ds.Tables.Add(dTEmpLeave); + + List oParameters = new List(); + ReportParameter rParam = new ReportParameter("FromDate", lyy.StartDate.ToString("dd MMM yyyy")); + oParameters.Add(rParam); + rParam = new ReportParameter("ToDate", lyy.EndDate.ToString("dd MMM yyyy")); + oParameters.Add(rParam); + + string RDLC = "LeaveReportEcho.rdlc"; + return form.CommonReportViewForReports(null, ds, null, RDLC, oParameters, true, payrollTypeID, reportType); + } + else + { + throw new Exception("Leave balance not found"); + } + } + #endregion } } diff --git a/HRM.Report/HRM.Report.csproj b/HRM.Report/HRM.Report.csproj index b80f213..623d76a 100644 --- a/HRM.Report/HRM.Report.csproj +++ b/HRM.Report/HRM.Report.csproj @@ -146,6 +146,7 @@ + @@ -157,6 +158,7 @@ + @@ -169,6 +171,7 @@ + @@ -379,15 +382,20 @@ + + PreserveNewest + PreserveNewest + Always + diff --git a/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.Designer.cs b/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.Designer.cs index a6c1084..2f5656e 100644 --- a/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.Designer.cs +++ b/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.Designer.cs @@ -135,6 +135,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected dsEmpLeaveLedger(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context, false) { if ((this.IsBinarySerialized(info, context) == true)) { @@ -1956,6 +1958,12 @@ namespace HRM.Report.PayrollDataSet { private global::System.Data.DataColumn columnRemarks; + private global::System.Data.DataColumn columnApplyDate; + + private global::System.Data.DataColumn columnApproveDate; + + private global::System.Data.DataColumn columnLeaveStatus; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] public EmpLeaveLedgerDataTable() { @@ -1984,6 +1992,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected EmpLeaveLedgerDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -2117,6 +2127,30 @@ namespace HRM.Report.PayrollDataSet { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn ApplyDateColumn { + get { + return this.columnApplyDate; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn ApproveDateColumn { + get { + return this.columnApproveDate; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn LeaveStatusColumn { + get { + return this.columnLeaveStatus; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.ComponentModel.Browsable(false)] @@ -2170,7 +2204,10 @@ namespace HRM.Report.PayrollDataSet { string LateType, string WorkDayType, System.DateTime AttnDate2, - string Remarks) { + string Remarks, + string ApplyDate, + string ApproveDate, + string LeaveStatus) { EmpLeaveLedgerRow rowEmpLeaveLedgerRow = ((EmpLeaveLedgerRow)(this.NewRow())); object[] columnValuesArray = new object[] { EmpNo, @@ -2188,7 +2225,10 @@ namespace HRM.Report.PayrollDataSet { LateType, WorkDayType, AttnDate2, - Remarks}; + Remarks, + ApplyDate, + ApproveDate, + LeaveStatus}; rowEmpLeaveLedgerRow.ItemArray = columnValuesArray; this.Rows.Add(rowEmpLeaveLedgerRow); return rowEmpLeaveLedgerRow; @@ -2227,6 +2267,9 @@ namespace HRM.Report.PayrollDataSet { this.columnWorkDayType = base.Columns["WorkDayType"]; this.columnAttnDate2 = base.Columns["AttnDate2"]; this.columnRemarks = base.Columns["Remarks"]; + this.columnApplyDate = base.Columns["ApplyDate"]; + this.columnApproveDate = base.Columns["ApproveDate"]; + this.columnLeaveStatus = base.Columns["LeaveStatus"]; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -2264,6 +2307,12 @@ namespace HRM.Report.PayrollDataSet { base.Columns.Add(this.columnAttnDate2); this.columnRemarks = new global::System.Data.DataColumn("Remarks", typeof(string), null, global::System.Data.MappingType.Element); base.Columns.Add(this.columnRemarks); + this.columnApplyDate = new global::System.Data.DataColumn("ApplyDate", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnApplyDate); + this.columnApproveDate = new global::System.Data.DataColumn("ApproveDate", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnApproveDate); + this.columnLeaveStatus = new global::System.Data.DataColumn("LeaveStatus", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnLeaveStatus); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -2429,6 +2478,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected CCWiseLeaveEncashDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -2690,6 +2741,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected LeaveYearDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -2931,6 +2984,18 @@ namespace HRM.Report.PayrollDataSet { private global::System.Data.DataColumn columnShift; + private global::System.Data.DataColumn columnLeavePeriod; + + private global::System.Data.DataColumn columnLeaveApprover; + + private global::System.Data.DataColumn columnLeaveNotifier; + + private global::System.Data.DataColumn columnFloor; + + private global::System.Data.DataColumn columnSection; + + private global::System.Data.DataColumn columnLine; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] public EmpInformationDataTable() { @@ -2959,6 +3024,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected EmpInformationDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -3012,6 +3079,54 @@ namespace HRM.Report.PayrollDataSet { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn LeavePeriodColumn { + get { + return this.columnLeavePeriod; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn LeaveApproverColumn { + get { + return this.columnLeaveApprover; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn LeaveNotifierColumn { + get { + return this.columnLeaveNotifier; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn FloorColumn { + get { + return this.columnFloor; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn SectionColumn { + get { + return this.columnSection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn LineColumn { + get { + return this.columnLine; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.ComponentModel.Browsable(false)] @@ -3049,7 +3164,7 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] - public EmpInformationRow AddEmpInformationRow(string EmpNo, string EmpName, string Department, string Designation, string JoiningDate, string Shift) { + public EmpInformationRow AddEmpInformationRow(string EmpNo, string EmpName, string Department, string Designation, string JoiningDate, string Shift, string LeavePeriod, string LeaveApprover, string LeaveNotifier, string Floor, string Section, string Line) { EmpInformationRow rowEmpInformationRow = ((EmpInformationRow)(this.NewRow())); object[] columnValuesArray = new object[] { EmpNo, @@ -3057,7 +3172,13 @@ namespace HRM.Report.PayrollDataSet { Department, Designation, JoiningDate, - Shift}; + Shift, + LeavePeriod, + LeaveApprover, + LeaveNotifier, + Floor, + Section, + Line}; rowEmpInformationRow.ItemArray = columnValuesArray; this.Rows.Add(rowEmpInformationRow); return rowEmpInformationRow; @@ -3086,6 +3207,12 @@ namespace HRM.Report.PayrollDataSet { this.columnDesignation = base.Columns["Designation"]; this.columnJoiningDate = base.Columns["JoiningDate"]; this.columnShift = base.Columns["Shift"]; + this.columnLeavePeriod = base.Columns["LeavePeriod"]; + this.columnLeaveApprover = base.Columns["LeaveApprover"]; + this.columnLeaveNotifier = base.Columns["LeaveNotifier"]; + this.columnFloor = base.Columns["Floor"]; + this.columnSection = base.Columns["Section"]; + this.columnLine = base.Columns["Line"]; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -3103,6 +3230,18 @@ namespace HRM.Report.PayrollDataSet { base.Columns.Add(this.columnJoiningDate); this.columnShift = new global::System.Data.DataColumn("Shift", typeof(string), null, global::System.Data.MappingType.Element); base.Columns.Add(this.columnShift); + this.columnLeavePeriod = new global::System.Data.DataColumn("LeavePeriod", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnLeavePeriod); + this.columnLeaveApprover = new global::System.Data.DataColumn("LeaveApprover", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnLeaveApprover); + this.columnLeaveNotifier = new global::System.Data.DataColumn("LeaveNotifier", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnLeaveNotifier); + this.columnFloor = new global::System.Data.DataColumn("Floor", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnFloor); + this.columnSection = new global::System.Data.DataColumn("Section", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnSection); + this.columnLine = new global::System.Data.DataColumn("Line", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnLine); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -3276,6 +3415,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected OPIRegisterDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -3631,6 +3772,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected MaternityLeaveDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -4197,6 +4340,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected MaternityStatusDetailDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -4502,6 +4647,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSSDeductDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -4903,6 +5050,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSSAddDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -5292,6 +5441,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected GratuityLedgerDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -5607,6 +5758,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected GratuityRegisterDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -5930,6 +6083,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSSEmpInformationDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -6357,6 +6512,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected BudgetDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -6692,6 +6849,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected BudgetCCDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -7035,6 +7194,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected BudgetComparisonDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -7404,6 +7565,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSSAddItemDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -7665,6 +7828,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSSDeductItemDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -7926,6 +8091,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSSAddOtherItemDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -8185,6 +8352,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FStkinwordsDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -8452,6 +8621,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSSsalaryComponentDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -8855,6 +9026,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSEmpDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -9355,6 +9528,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSSFracsalaryDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -9720,6 +9895,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSPreLeaveDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -10029,6 +10206,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected fsdecDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -10292,6 +10471,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected fstotalDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -10541,6 +10722,8 @@ namespace HRM.Report.PayrollDataSet { private global::System.Data.DataColumn columnBalance; + private global::System.Data.DataColumn columnCFDays; + private global::System.Data.DataColumn columnEmpNo; private global::System.Data.DataColumn columnName; @@ -10565,6 +10748,12 @@ namespace HRM.Report.PayrollDataSet { private global::System.Data.DataColumn columnLateAttnAdjust; + private global::System.Data.DataColumn columnFloor; + + private global::System.Data.DataColumn columnSection; + + private global::System.Data.DataColumn columnLine; + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] public LeaveBalanceDataTable() { @@ -10593,6 +10782,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected LeaveBalanceDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -10630,6 +10821,14 @@ namespace HRM.Report.PayrollDataSet { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn CFDaysColumn { + get { + return this.columnCFDays; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] public global::System.Data.DataColumn EmpNoColumn { @@ -10726,6 +10925,30 @@ namespace HRM.Report.PayrollDataSet { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn FloorColumn { + get { + return this.columnFloor; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn SectionColumn { + get { + return this.columnSection; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public global::System.Data.DataColumn LineColumn { + get { + return this.columnLine; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.ComponentModel.Browsable(false)] @@ -10768,6 +10991,7 @@ namespace HRM.Report.PayrollDataSet { string Opening, string Availed, string Balance, + string CFDays, string EmpNo, string Name, string Designation, @@ -10779,13 +11003,17 @@ namespace HRM.Report.PayrollDataSet { string BalanceHr, string MaxAccumulatedDays, string MaxAccumulatedDaysHr, - string LateAttnAdjust) { + string LateAttnAdjust, + string Floor, + string Section, + string Line) { LeaveBalanceRow rowLeaveBalanceRow = ((LeaveBalanceRow)(this.NewRow())); object[] columnValuesArray = new object[] { Leave, Opening, Availed, Balance, + CFDays, EmpNo, Name, Designation, @@ -10797,7 +11025,10 @@ namespace HRM.Report.PayrollDataSet { BalanceHr, MaxAccumulatedDays, MaxAccumulatedDaysHr, - LateAttnAdjust}; + LateAttnAdjust, + Floor, + Section, + Line}; rowLeaveBalanceRow.ItemArray = columnValuesArray; this.Rows.Add(rowLeaveBalanceRow); return rowLeaveBalanceRow; @@ -10824,6 +11055,7 @@ namespace HRM.Report.PayrollDataSet { this.columnOpening = base.Columns["Opening"]; this.columnAvailed = base.Columns["Availed"]; this.columnBalance = base.Columns["Balance"]; + this.columnCFDays = base.Columns["CFDays"]; this.columnEmpNo = base.Columns["EmpNo"]; this.columnName = base.Columns["Name"]; this.columnDesignation = base.Columns["Designation"]; @@ -10836,6 +11068,9 @@ namespace HRM.Report.PayrollDataSet { this.columnMaxAccumulatedDays = base.Columns["MaxAccumulatedDays"]; this.columnMaxAccumulatedDaysHr = base.Columns["MaxAccumulatedDaysHr"]; this.columnLateAttnAdjust = base.Columns["LateAttnAdjust"]; + this.columnFloor = base.Columns["Floor"]; + this.columnSection = base.Columns["Section"]; + this.columnLine = base.Columns["Line"]; } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -10849,6 +11084,8 @@ namespace HRM.Report.PayrollDataSet { base.Columns.Add(this.columnAvailed); this.columnBalance = new global::System.Data.DataColumn("Balance", typeof(string), null, global::System.Data.MappingType.Element); base.Columns.Add(this.columnBalance); + this.columnCFDays = new global::System.Data.DataColumn("CFDays", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnCFDays); this.columnEmpNo = new global::System.Data.DataColumn("EmpNo", typeof(string), null, global::System.Data.MappingType.Element); base.Columns.Add(this.columnEmpNo); this.columnName = new global::System.Data.DataColumn("Name", typeof(string), null, global::System.Data.MappingType.Element); @@ -10873,6 +11110,12 @@ namespace HRM.Report.PayrollDataSet { base.Columns.Add(this.columnMaxAccumulatedDaysHr); this.columnLateAttnAdjust = new global::System.Data.DataColumn("LateAttnAdjust", typeof(string), null, global::System.Data.MappingType.Element); base.Columns.Add(this.columnLateAttnAdjust); + this.columnFloor = new global::System.Data.DataColumn("Floor", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnFloor); + this.columnSection = new global::System.Data.DataColumn("Section", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnSection); + this.columnLine = new global::System.Data.DataColumn("Line", typeof(string), null, global::System.Data.MappingType.Element); + base.Columns.Add(this.columnLine); } [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] @@ -11048,6 +11291,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected EmployeesTaxDeductionDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -11377,6 +11622,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected TaxInvestmentDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -11694,6 +11941,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected TaxChallanDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -12047,6 +12296,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected LeaveApplicationDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -12608,6 +12859,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected ShortLeaveDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -12993,6 +13246,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected MultipleEmployeeLeaveDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -13614,6 +13869,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected LeaveInformationDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -14023,6 +14280,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected LeaveLedgerDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -14469,6 +14728,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected LFAReportDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -14864,6 +15125,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSTerminalBenefitDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -15292,6 +15555,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected FSLessDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -15682,6 +15947,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected EmpDepartmentalLeaveDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -16202,6 +16469,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected TeamLeaveEmpInfoDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -16533,6 +16802,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected TeamLeaveTypeDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -16868,6 +17139,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected TeamLeaveDetailsDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -17229,6 +17502,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected BonusPaySlipDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -17590,6 +17865,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected LeaveCashAdviceDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -17897,6 +18174,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected LeaveEntrysForSchedularDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -18304,6 +18583,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected LeaveEncashDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -18679,6 +18960,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected MLPaymentDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -19175,6 +19458,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected MLBenefitDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -19713,6 +19998,8 @@ namespace HRM.Report.PayrollDataSet { [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + [System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" + + " or extended by application code.", DiagnosticId="SYSLIB0051")] protected CCWiseSalarySummaryDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : base(info, context) { this.InitVars(); @@ -20389,6 +20676,54 @@ namespace HRM.Report.PayrollDataSet { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string ApplyDate { + get { + try { + return ((string)(this[this.tableEmpLeaveLedger.ApplyDateColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'ApplyDate\' in table \'EmpLeaveLedger\' is DBNull.", e); + } + } + set { + this[this.tableEmpLeaveLedger.ApplyDateColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string ApproveDate { + get { + try { + return ((string)(this[this.tableEmpLeaveLedger.ApproveDateColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'ApproveDate\' in table \'EmpLeaveLedger\' is DBNull.", e); + } + } + set { + this[this.tableEmpLeaveLedger.ApproveDateColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string LeaveStatus { + get { + try { + return ((string)(this[this.tableEmpLeaveLedger.LeaveStatusColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'LeaveStatus\' in table \'EmpLeaveLedger\' is DBNull.", e); + } + } + set { + this[this.tableEmpLeaveLedger.LeaveStatusColumn] = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] public bool IsEmpNoNull() { @@ -20580,6 +20915,42 @@ namespace HRM.Report.PayrollDataSet { public void SetRemarksNull() { this[this.tableEmpLeaveLedger.RemarksColumn] = global::System.Convert.DBNull; } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsApplyDateNull() { + return this.IsNull(this.tableEmpLeaveLedger.ApplyDateColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetApplyDateNull() { + this[this.tableEmpLeaveLedger.ApplyDateColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsApproveDateNull() { + return this.IsNull(this.tableEmpLeaveLedger.ApproveDateColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetApproveDateNull() { + this[this.tableEmpLeaveLedger.ApproveDateColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsLeaveStatusNull() { + return this.IsNull(this.tableEmpLeaveLedger.LeaveStatusColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetLeaveStatusNull() { + this[this.tableEmpLeaveLedger.LeaveStatusColumn] = global::System.Convert.DBNull; + } } /// @@ -20834,6 +21205,102 @@ namespace HRM.Report.PayrollDataSet { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string LeavePeriod { + get { + try { + return ((string)(this[this.tableEmpInformation.LeavePeriodColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'LeavePeriod\' in table \'EmpInformation\' is DBNull.", e); + } + } + set { + this[this.tableEmpInformation.LeavePeriodColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string LeaveApprover { + get { + try { + return ((string)(this[this.tableEmpInformation.LeaveApproverColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'LeaveApprover\' in table \'EmpInformation\' is DBNull.", e); + } + } + set { + this[this.tableEmpInformation.LeaveApproverColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string LeaveNotifier { + get { + try { + return ((string)(this[this.tableEmpInformation.LeaveNotifierColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'LeaveNotifier\' in table \'EmpInformation\' is DBNull.", e); + } + } + set { + this[this.tableEmpInformation.LeaveNotifierColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string Floor { + get { + try { + return ((string)(this[this.tableEmpInformation.FloorColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'Floor\' in table \'EmpInformation\' is DBNull.", e); + } + } + set { + this[this.tableEmpInformation.FloorColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string Section { + get { + try { + return ((string)(this[this.tableEmpInformation.SectionColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'Section\' in table \'EmpInformation\' is DBNull.", e); + } + } + set { + this[this.tableEmpInformation.SectionColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string Line { + get { + try { + return ((string)(this[this.tableEmpInformation.LineColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'Line\' in table \'EmpInformation\' is DBNull.", e); + } + } + set { + this[this.tableEmpInformation.LineColumn] = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] public bool IsEmpNoNull() { @@ -20905,6 +21372,78 @@ namespace HRM.Report.PayrollDataSet { public void SetShiftNull() { this[this.tableEmpInformation.ShiftColumn] = global::System.Convert.DBNull; } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsLeavePeriodNull() { + return this.IsNull(this.tableEmpInformation.LeavePeriodColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetLeavePeriodNull() { + this[this.tableEmpInformation.LeavePeriodColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsLeaveApproverNull() { + return this.IsNull(this.tableEmpInformation.LeaveApproverColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetLeaveApproverNull() { + this[this.tableEmpInformation.LeaveApproverColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsLeaveNotifierNull() { + return this.IsNull(this.tableEmpInformation.LeaveNotifierColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetLeaveNotifierNull() { + this[this.tableEmpInformation.LeaveNotifierColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsFloorNull() { + return this.IsNull(this.tableEmpInformation.FloorColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetFloorNull() { + this[this.tableEmpInformation.FloorColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsSectionNull() { + return this.IsNull(this.tableEmpInformation.SectionColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetSectionNull() { + this[this.tableEmpInformation.SectionColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsLineNull() { + return this.IsNull(this.tableEmpInformation.LineColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetLineNull() { + this[this.tableEmpInformation.LineColumn] = global::System.Convert.DBNull; + } } /// @@ -26006,6 +26545,22 @@ namespace HRM.Report.PayrollDataSet { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string CFDays { + get { + try { + return ((string)(this[this.tableLeaveBalance.CFDaysColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'CFDays\' in table \'LeaveBalance\' is DBNull.", e); + } + } + set { + this[this.tableLeaveBalance.CFDaysColumn] = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] public string EmpNo { @@ -26198,6 +26753,54 @@ namespace HRM.Report.PayrollDataSet { } } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string Floor { + get { + try { + return ((string)(this[this.tableLeaveBalance.FloorColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'Floor\' in table \'LeaveBalance\' is DBNull.", e); + } + } + set { + this[this.tableLeaveBalance.FloorColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string Section { + get { + try { + return ((string)(this[this.tableLeaveBalance.SectionColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'Section\' in table \'LeaveBalance\' is DBNull.", e); + } + } + set { + this[this.tableLeaveBalance.SectionColumn] = value; + } + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public string Line { + get { + try { + return ((string)(this[this.tableLeaveBalance.LineColumn])); + } + catch (global::System.InvalidCastException e) { + throw new global::System.Data.StrongTypingException("The value for column \'Line\' in table \'LeaveBalance\' is DBNull.", e); + } + } + set { + this[this.tableLeaveBalance.LineColumn] = value; + } + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] public bool IsLeaveNull() { @@ -26246,6 +26849,18 @@ namespace HRM.Report.PayrollDataSet { this[this.tableLeaveBalance.BalanceColumn] = global::System.Convert.DBNull; } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsCFDaysNull() { + return this.IsNull(this.tableLeaveBalance.CFDaysColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetCFDaysNull() { + this[this.tableLeaveBalance.CFDaysColumn] = global::System.Convert.DBNull; + } + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] public bool IsEmpNoNull() { @@ -26389,6 +27004,42 @@ namespace HRM.Report.PayrollDataSet { public void SetLateAttnAdjustNull() { this[this.tableLeaveBalance.LateAttnAdjustColumn] = global::System.Convert.DBNull; } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsFloorNull() { + return this.IsNull(this.tableLeaveBalance.FloorColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetFloorNull() { + this[this.tableLeaveBalance.FloorColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsSectionNull() { + return this.IsNull(this.tableLeaveBalance.SectionColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetSectionNull() { + this[this.tableLeaveBalance.SectionColumn] = global::System.Convert.DBNull; + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public bool IsLineNull() { + return this.IsNull(this.tableLeaveBalance.LineColumn); + } + + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] + public void SetLineNull() { + this[this.tableLeaveBalance.LineColumn] = global::System.Convert.DBNull; + } } /// diff --git a/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.xsd b/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.xsd index 9b29f49..df748ca 100644 --- a/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.xsd +++ b/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.xsd @@ -31,6 +31,9 @@ + + + @@ -58,7 +61,13 @@ - + + + + + + + @@ -363,6 +372,7 @@ + @@ -375,6 +385,9 @@ + + + @@ -762,25 +775,25 @@ - + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + diff --git a/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.xss b/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.xss index ee05f35..b419a28 100644 --- a/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.xss +++ b/HRM.Report/PayrollDataSet/dsEmpLeaveLedger.xss @@ -4,56 +4,56 @@ Changes to this file may cause incorrect behavior and will be lost if the code is regenerated. --> - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/HRM.Report/RDLC/LeaveLedgerEcho.rdlc b/HRM.Report/RDLC/LeaveLedgerEcho.rdlc new file mode 100644 index 0000000..d59bb6a --- /dev/null +++ b/HRM.Report/RDLC/LeaveLedgerEcho.rdlc @@ -0,0 +1,2958 @@ + + + 0 + + + + SQL + + + 6e6d1ded-1235-4bb2-b4cc-f6711637e387 + + + + + + DummyDataSource + /* Local Query */ + true + + + + EmpNo + System.String + + + LeaveType + System.String + + + FromDate + System.String + + + ToDate + System.String + + + TotalDays + System.Double + + + LeaveReason + System.String + + + AppliedMonth + System.String + + + AttnDate + System.String + + + InTime + System.String + + + OutTime + System.String + + + Shift + System.String + + + AttnType + System.String + + + LateType + System.String + + + WorkDayType + System.String + + + AttnDate2 + System.DateTime + + + Remarks + System.String + + + ApplyDate + System.String + + + ApproveDate + System.String + + + LeaveStatus + System.String + + + + dsEmpLeaveLedger + D:\Git\EchoTex_Payroll\HRM.Report\PayrollDataSet\dsEmpLeaveLedger.xsd + EmpLeaveLedger + + + + + + + + DummyDataSource + /* Local Query */ + true + + + + EmpNo + System.String + + + EmpName + System.String + + + Department + System.String + + + Designation + System.String + + + JoiningDate + System.String + + + Shift + System.String + + + LeavePeriod + System.String + + + LeaveApprover + System.String + + + LeaveNotifier + System.String + + + Floor + System.String + + + Section + System.String + + + Line + System.String + + + + dsEmpLeaveLedger + D:\Git\EchoTex_Payroll\HRM.Report\PayrollDataSet\dsEmpLeaveLedger.xsd + EmpInformation + + + + + + + + DummyDataSource + /* Local Query */ + true + + + + Leave + System.String + + + Opening + System.String + + + Availed + System.String + + + Balance + System.String + + + EmpNo + System.String + + + Name + System.String + + + Designation + System.String + + + Division + System.String + + + Department + System.String + + + Unit + System.String + + + OpeningHr + System.String + + + AvailedHr + System.String + + + BalanceHr + System.String + + + MaxAccumulatedDays + System.String + + + MaxAccumulatedDaysHr + System.String + + + LateAttnAdjust + System.String + + + Floor + System.String + + + Section + System.String + + + Line + System.String + + + CFDays + System.String + + + + dsEmpLeaveLedger + D:\Git\EchoTex_Payroll\HRM.Report\PayrollDataSet\dsEmpLeaveLedger.xsd + LeaveBalance + + + + + + + + + + + + + + + 1.57867in + + + 1.35908in + + + 1.21662in + + + 0.92089in + + + 0.78933in + + + + + 0.2in + + + + + true + true + + + + + Leave Type + + + + + + + textbox27 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Entitlement + + + + + + + textbox28 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + CF Days + + + + + + + textbox44 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Taken + + + + + + + textbox29 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Balance + + + + + + + textbox33 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.2in + + + + + true + true + + + + + =Fields!Leave.Value + + + + + + + Leave + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Opening.Value + + + + + + + Opening + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!CFDays.Value + + + + + + + textbox45 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Availed.Value + + + + + + + Availed + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Balance.Value + + + + + + + Balance + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + After + true + + + + Detail + + + + + Detail_Collection + Output + true + + + + dsEmpLeaveLedger_LeaveBalance + 3in + 0.125in + 0.4in + 5.86459in + + + Right + + + + + + + 1in + + + 1.5in + + + 1.5in + + + 1.875in + + + + + 0.2in + + + + + true + true + + + + + ID : + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =First(Fields!EmpNo.Value, "table3") + + + + + + + EmpNo + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Date : + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Format(Today(), "dd MMM yyyy") + + + + + + + textbox37 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.2in + + + + + true + true + + + + + Name : + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =First(Fields!EmpName.Value, "table3") + + + + + + + EmpName + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Leave Report Period : + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!LeavePeriod.Value + + + + + + + textbox38 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.2in + + + + + true + true + + + + + Designation : + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Designation.Value + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Leave Approver : + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!LeaveApprover.Value + + + + + + + textbox39 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.2in + + + + + true + true + + + + + Department : + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Department.Value + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Leave Notifier : + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!LeaveNotifier.Value + + + + + + + textbox40 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.25in + + + + + true + true + + + + + Floor: + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Floor.Value + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + textbox23 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.25in + + + + + true + true + + + + + Section: + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Section.Value + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + textbox41 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.25in + + + + + true + true + + + + + Line: + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Line.Value + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + + + + + + + + textbox47 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + Detail + + + + + + + + + + + Detail_Collection + Output + true + + + + dsEmpLeaveLedger_EmpInformation + 1.25in + 0.125in + 1.55in + 5.875in + 1 + + + + + + + 0.79831in + + + 0.79831in + + + 0.39915in + + + 0.79831in + + + 0.79831in + + + 0.80865in + + + 0.79831in + + + 0.66525in + + + + + 0.375in + + + + + true + true + + + + + Leave from + + + + + + + textbox10 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Leave To + + + + + + + textbox1 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Days + + + + + + + textbox2 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Leave Type + + + + + + + textbox3 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Date Applied + + + + + + + textbox8 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Date Approved + + + + + + + textbox15 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Leave Status + + + + + + + textbox17 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Remarks + + + + + + + textbox19 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.2in + + + + + true + true + + + + + =Fields!FromDate.Value + + + + + + + textbox13 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!ToDate.Value + + + + + + + FromDate + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!TotalDays.Value + + + + + + + ToDate + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!LeaveType.Value + + + + + + + TotalDays + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!ApplyDate.Value + + + + + + + textbox14 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!ApproveDate.Value + + + + + + + textbox16 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!LeaveStatus.Value + + + + + + + textbox18 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Remarks.Value + + + + + + + textbox20 + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + + + + After + true + + + + Detail + + + + + Detail_Collection + Output + true + + + + dsEmpLeaveLedger_EmpLeaveLedger + 3.5in + 0.125in + 0.575in + 5.8646in + 2 + + + Right + + + + true + true + + + + + =Parameters!CompanyInfo.Value + + + + + + + 0.125in + 1.75in + 0.25in + 4in + 3 + + + + External + ="file:///" & Parameters!Logo.Value + image/jpg + FitProportional + 0.125in + 0.125in + 0.55in + 1.4in + 4 + + + + + + + true + true + + + + + =Parameters!Address.Value + + + + + + + true + true + + + + + Leave Report + + + + + + + textbox4 + 0.875in + 2.25in + 0.25in + 1.25in + 7 + + + 2pt + 2pt + 2pt + 2pt + + + + 4.075in + + + + + + + textbox1 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Name + + + + + + + textbox3 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Designation + + + + + + + textbox4 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Department + + + + + + + textbox14 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Floor + + + + + + + textbox5 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Section + + + + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Line + + + + + + + textbox12 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Leave Type + + + + + + + textbox20 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Entitlement (Opening Balance) + + + + + + + textbox24 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Availed Leave + + + + + + + textbox27 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + Remaining Leave + + + + + + + textbox31 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.25in + + + + + true + true + + + + + =IIF((Fields!EmpNo.Value=Previous(Fields!EmpNo.Value)),"",Fields!EmpNo.Value) + + + + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =IIF((Fields!EmpNo.Value=Previous(Fields!EmpNo.Value)),"",Fields!Name.Value) + + + + + + + Name + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =IIF((Fields!EmpNo.Value=Previous(Fields!EmpNo.Value)),"",Fields!Designation.Value) + + + + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =IIF((Fields!EmpNo.Value=Previous(Fields!EmpNo.Value)),"",Fields!Department.Value) + + + + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =IIF((Fields!EmpNo.Value=Previous(Fields!EmpNo.Value)),"",Fields!Floor.Value) + + + + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =IIF((Fields!EmpNo.Value=Previous(Fields!EmpNo.Value)),"",Fields!Section.Value) + + + + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =IIF((Fields!EmpNo.Value=Previous(Fields!EmpNo.Value)),"",Fields!Line.Value) + + + + + + + + + + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Leave.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Opening.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Availed.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + true + true + + + + + =Fields!Balance.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + + + + + + + + + + + + + + + + + + + After + true + true + + + + + =Fields!EmpNo.Value + + + + + + Detail + + + + + Detail_Collection + Output + true + + + + + + dsEmpLeaveLedger_LeaveBalance + 0.5in + 0.15in + 0.5in + 10.15in + + + + + + true + true + + + + + ="Leave Report for the Year from : "+Parameters!FromDate.Value+" - "+Parameters!ToDate.Value + + + + + + + 1in + + + + + + + 0.1in + 2.2in + 0.25in + 5.75in + + + + External + ="file:///" & Parameters!Logo.Value + image/bmp + Fit + 0.1in + 0.1in + 0.95in + 2.05in + 1 + + + + + + + true + true + + + + + =Parameters!Address.Value + + + + + + + 1.15in + 0.1in + 0in + 10.2in + 4 + + 1.75pt + + + + + + + + + + + 0.15in + 0.15in + 0.2in + 1.425in + + + + true + true + + + + + ="Page " & Globals!PageNumber & " of " & Globals!TotalPages + + + + + + + 0.1in + 9.1in + 0.2in + 1.35in + 1 + + + + + + + + + + textbox8 + 2.05in + 0.50208in + 0.85in + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Name + + + + + + + textbox7 + 0.6in + 0.50208in + 1.45in + 1 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Employee Code + + + + + + + textbox1 + 0.50208in + 0.6in + 2 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Department + + + + + + + 2.9in + 0.50208in + 0.85in + 3 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Floor + + + + + + + 3.75in + 0.50208in + 0.85in + 4 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Section + + + + + + + 4.6in + 0.50208in + 0.65in + 5 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + true + true + + + + + Line + + + + + + + 5.25in + 0.50208in + 0.45in + 6 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + ContentsOnly + + + Silver + + + 7 + 2 + + + + + + + + + + + + + + + + + + + + + + + + 0.75in + + + 0.7in + + + 0.55in + + + + + 0.25in + + + + + true + true + + + + + =Fields!Opening.Value + + + + + + + OpeningBalance + + + 2pt + 2pt + 2pt + 2pt + + + + Output + + + + + true + true + + + + + =Fields!Availed.Value + + + + + + + ClosingBalance + + + 2pt + 2pt + 2pt + 2pt + + + + Output + + + + + true + true + + + + + =Fields!Balance.Value + + + + + + + textbox9 + + + 2pt + 2pt + 2pt + 2pt + + + + Output + + + + + + + + + + + =Fields!Leave.Value + + + + 0.30208in + + + true + true + + + + + =Fields!Leave.Value + + + + + + + Leave + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + + + + 0.2in + + + true + true + + + + + Entitlement (Opening Balance) + + + + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + true + + + + 0.2in + + + true + true + + + + + Availed Leave + + + + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + true + + + + 0.2in + + + true + true + + + + + Remaining Leave + + + + + + + textbox6 + + + Silver + 2pt + 2pt + 2pt + 2pt + + + + + true + + + Output + true + + + + + + + + + =Fields!EmpNo.Value + + + + 0.6in + + + true + true + + + + + =Fields!EmpNo.Value + + + + + + + EmpNo + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + =Fields!Name.Value + + + + 1.45in + + + true + true + + + + + =Fields!Name.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + =Fields!Designation.Value + + + + 0.85in + + + true + true + + + + + =Fields!Designation.Value + + + + + + + Designation + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + =Fields!Department.Value + + + + 0.85in + + + true + true + + + + + =Fields!Department.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + =Fields!Floor.Value + + + + 0.85in + + + true + true + + + + + =Fields!Floor.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + =Fields!Section.Value + + + + 0.65in + + + true + true + + + + + =Fields!Section.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + + + + + =Fields!Line.Value + + + + 0.45in + + + true + true + + + + + =Fields!Line.Value + + + + + + 2pt + 2pt + 2pt + 2pt + + + + + Output + true + + + Output + + + Output + + + Output + + + Output + + + Output + + + Output + + + + true + true + dsEmpLeaveLedger_LeaveBalance + 0.4in + 0.05in + 0.75208in + 7.7in + + + + + + + textbox5 + 0.75in + 1.75in + 0.25in + 5.7in + + + + true + true + + + + + =Parameters!CompanyInfo.Value + + + + + + + 0.15in + 1.75in + 0.25in + 5.7in + 1 + + + + External + ="file:///" & Parameters!Logo.Value + image/bmp + Fit + 0.1in + 0.05in + 0.825in + 1.3in + 2 + + + + + + + textbox29 + 0.4in + 1.75in + 0.2in + 5.7in + 3 + + + + + + + + + + textbox18 + 0.05in + 0.05in + 0.2in + 1.75in + + + + true + true + + + + + ="Page " & Globals!PageNumber & " of " & Globals!TotalPages + + + + + + + 6.35in + 0.2in + 1.4in + 1 + + + +