Compare commits

..

No commits in common. "devqc" and "dev_Mohaimen" have entirely different histories.

100 changed files with 8753 additions and 74237 deletions

View File

@ -1166,7 +1166,7 @@ namespace DatabaseComparison
GO"); GO");
sql.AppendFormat("\r\n\r\n"); sql.AppendFormat("\r\n\r\n");
sql.AppendFormat(@"CREATE VIEW VW_EMPDigitalServiceBook AS sql.AppendFormat(@"CREATE VIEW VW_EMPDigitalServiceBook AS
SELECT E.EMPLOYEEID, E.EMPLOYEENO, E.BANGLANAME AS NAME, E.FATHERNAME, E.MOTHERNAME, ES.NAME AS SPOUSENAME, E.JOININGDATE, E.EMPLOYEESTATUS, SELECT E.EMPLOYEEID, E.EMPLOYEENO, E.BENGALINAME AS NAME, E.FATHERNAME, E.MOTHERNAME, ES.NAME AS SPOUSENAME, E.JOININGDATE, E.EMPLOYEESTATUS,
DES.NAMEINBANGLA AS DESIGNATION, EC.PARMANENTADDRESS AS PARMANENTADDRESS, EC.PRESENTADDRESS AS PRESENTADDRESS, EC.PERMANENTPOSTOFFICE AS POSTOFFICE, DES.NAMEINBANGLA AS DESIGNATION, EC.PARMANENTADDRESS AS PARMANENTADDRESS, EC.PRESENTADDRESS AS PRESENTADDRESS, EC.PERMANENTPOSTOFFICE AS POSTOFFICE,
EC.PERMANENTPOSTCODENO AS POSTCODENO, EC.PERMANENTVILLAGE AS VILLAGE, EC.PERMANENTROADNO AS ROADNO, EC.PERMANENTPOSTCODENO AS POSTCODENO, EC.PERMANENTVILLAGE AS VILLAGE, EC.PERMANENTROADNO AS ROADNO,
EC.PERMANENTWARDNO AS WARDNO, E.BIRTHDATE AS BIRTHDATE, E.PHOTOPATH AS PHOTO, E.NATIONALID AS NIDNO, E.HEIGHT AS HEIGHT, E.BLOODGROUP AS BLOODGROUP, EC.PERMANENTWARDNO AS WARDNO, E.BIRTHDATE AS BIRTHDATE, E.PHOTOPATH AS PHOTO, E.NATIONALID AS NIDNO, E.HEIGHT AS HEIGHT, E.BLOODGROUP AS BLOODGROUP,

View File

@ -1,7 +1,6 @@
using Ease.Core.Model; using Ease.Core.Model;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Data;
using System.Drawing; using System.Drawing;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
@ -505,20 +504,6 @@ namespace HRM.BO
return isNullOrWhiteSpace; return isNullOrWhiteSpace;
} }
public static string[] GetDFSL(DataTable dt, string nDepartmentID)
{
string sDes = "";
foreach (DataRow dr in dt.Rows)
{
if (dr[0].ToString() == nDepartmentID)
{
sDes = dr[3].ToString();
break;
}
}
string[] values = sDes.Split(',');
return values;
}
} }
public class CustomException : Exception public class CustomException : Exception

View File

@ -1,5 +1,4 @@
 
using DocumentFormat.OpenXml.Office2010.Excel;
using Ease.Core.Model; using Ease.Core.Model;
using System; using System;
@ -301,32 +300,5 @@ namespace HRM.BO
return m_oReader.Types; return m_oReader.Types;
} }
} }
public static List<int> ApplicableParametersForReportOptimized(Employee oEmp, List<EnmSetupManagerTranType> setupTypes, List<SetupDetail> details)
{
List<int> parametersID = new List<int>();
if (setupTypes == null) return parametersID;
foreach (EnmSetupManagerTranType type in setupTypes)
{
int nTranID = SetupDetail.GetTranID(oEmp, type);
if (nTranID == null || nTranID < 0) continue;
List<int> 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;
}
} }
} }

View File

@ -596,74 +596,38 @@ namespace HRM.BO
public const string EmpMaritalStatus = "<<EmpMaritalStatus>>"; public const string EmpMaritalStatus = "<<EmpMaritalStatus>>";
// Bangla Tags // Bangla Tags
//public const string EmpNameBangla = "<<bvg>>"; public const string EmpNameBangla = "<<bvg>>";
//public const string EmpCodeBangla = "<<‡KvW>>"; public const string EmpCodeBangla = "<<‡KvW>>";
//public const string EmpWorkType = "<<Kv‡RiaiY>>"; public const string EmpWorkType = "<<Kv‡RiaiY>>";
//public const string EmpSpouseName = "<<¯^vgx/¯¿xibvg>>"; public const string EmpSpouseName = "<<¯^vgx/¯¿xibvg>>";
//public const string JoiningDateBangla = "<<‡hvM`vb>>"; public const string JoiningDateBangla = "<<‡hvM`vb>>";
//public const string EmpDesignaionBangla = "<<c`ex>>"; public const string EmpDesignaionBangla = "<<c`ex>>";
//public const string EmpDepartmentBangla = "<<wefvM>>"; public const string EmpDepartmentBangla = "<<wefvM>>";
//public const string BirthDateBangla = "<<Rb¥ZvwiL>>"; public const string BirthDateBangla = "<<Rb¥ZvwiL>>";
//public const string ProbationDateBangla = "<<wk¶vbexkZvwiL>>"; public const string ProbationDateBangla = "<<wk¶vbexkZvwiL>>";
//public const string GradeBangla = "<<†MÖW>>"; public const string GradeBangla = "<<†MÖW>>";
//public const string BasicSalaryBangla = "<<gyj†eZb>>"; public const string BasicSalaryBangla = "<<gyj†eZb>>";
//public const string HouseRentBangla = "<<evoxfvov>>"; public const string HouseRentBangla = "<<evoxfvov>>";
//public const string ConveyenceBangla = "<<hvZvqvZfvZv>>"; public const string ConveyenceBangla = "<<hvZvqvZfvZv>>";
//public const string MedicalBangla = "<<wPwKrmvfvZv>>"; public const string MedicalBangla = "<<wPwKrmvfvZv>>";
//public const string FoodBangla = "<<Lv`¨fvZv>>"; public const string FoodBangla = "<<Lv`¨fvZv>>";
//public const string AttendenceBonusBangla = "<<ab>>"; public const string AttendenceBonusBangla = "<<ab>>";
//public const string ConductBonusBangla = "<<cb>>"; public const string ConductBonusBangla = "<<cb>>";
//public const string FatherNameBangla = "<<wcZvibvg>>"; public const string FatherNameBangla = "<<wcZvibvg>>";
//public const string MotherNameBangla = "<<gvZvibvg>>"; public const string MotherNameBangla = "<<gvZvibvg>>";
//public const string SpouseNameBangla = "<<¯úvD†Ri bvg>>"; public const string SpouseNameBangla = "<<¯úvD†Ri bvg>>";
//public const string VillagePABangla = "<<¯vqxMÖvg>>"; public const string VillagePABangla = "<<¯vqxMÖvg>>";
//public const string PostOfficePABangla = "<<¯vqx‡cvóAwdm>>"; public const string PostOfficePABangla = "<<¯vqx‡cvóAwdm>>";
//public const string ThanaPABangla = "<<¯vqx_vbv>>"; public const string ThanaPABangla = "<<¯vqx_vbv>>";
//public const string DistrictPABangla = "<<¯vqx‡Rjv>>"; public const string DistrictPABangla = "<<¯vqx‡Rjv>>";
//public const string VillageTABangla = "<<eZ©gvbMÖvg>>"; public const string VillageTABangla = "<<eZ©gvbMÖvg>>";
//public const string PostOfficeTABangla = "<<eZ©gvb‡cvóAwdm>>"; public const string PostOfficeTABangla = "<<eZ©gvb‡cvóAwdm>>";
//public const string ThanaTABangla = "<<eZ©gvb_vbv>>"; public const string ThanaTABangla = "<<eZ©gvb_vbv>>";
//public const string DistrictTABangla = "<<eZ©gvb‡Rjv>>"; public const string DistrictTABangla = "<<eZ©gvb‡Rjv>>";
//public const string TotalTakaBangla = "<<me©‡gvU>>"; public const string TotalTakaBangla = "<<me©‡gvU>>";
//public const string SectionBangla = "<<‡mKkb>>"; public const string SectionBangla = "<<‡mKkb>>";
//public const string BloodGroupBangla = "<<i‡³iMÖæc>>"; public const string BloodGroupBangla = "<<i‡³iMÖæc>>";
//public const string FloorBangla = "<<‡d¬vi>>"; public const string FloorBangla = "<<‡d¬vi>>";
public const string EmpNameBangla = "EmpNameBangla";
public const string EmpCodeBangla = "EmpCodeBangla";
public const string EmpWorkType = "EmpWorkType";
public const string EmpSpouseName = "EmpSpouseName";
public const string JoiningDateBangla = "JoiningDateBangla";
public const string EmpDesignaionBangla = "EmpDesignaionBangla";
public const string EmpDepartmentBangla = "EmpDepartmentBangla";
public const string BirthDateBangla = "BirthDateBangla";
public const string ProbationDateBangla = "ProbationDateBangla";
public const string GradeBangla = "GradeBangla";
public const string BasicSalaryBangla = "BasicSalaryBangla";
public const string HouseRentBangla = "HouseRentBangla";
public const string ConveyenceBangla = "ConveyenceBangla";
public const string MedicalBangla = "MedicalBangla";
public const string FoodBangla = "FoodBangla";
public const string AttendenceBonusBangla = "AttendenceBonusBangla";
public const string ConductBonusBangla = "ConductBonusBangla";
public const string FatherNameBangla = "FatherNameBangla";
public const string MotherNameBangla = "MotherNameBangla";
public const string SpouseNameBangla = "SpouseNameBangla";
public const string VillagePABangla = "VillagePABangla";
public const string PostOfficePABangla = "PostOfficePABangla";
public const string ThanaPABangla = "ThanaPABangla";
public const string DistrictPABangla = "DistrictPABangla";
public const string VillageTABangla = "VillageTABangla";
public const string PostOfficeTABangla = "PostOfficeTABangla";
public const string ThanaTABangla = "ThanaTABangla";
public const string DistrictTABangla = "DistrictTABangla";
public const string TotalTakaBangla = "TotalTakaBangla";
public const string SectionBangla = "SectionBangla";
public const string BloodGroupBangla = "BloodGroupBangla";
public const string FloorBangla = "FloorBangla";
#endregion #endregion
@ -2279,11 +2243,6 @@ namespace HRM.BO
EmployeeBasicInfoEcho = 721, EmployeeBasicInfoEcho = 721,
EmployeeEvaluationSheet = 722, EmployeeEvaluationSheet = 722,
LifeCycleDeletedHistor = 723, LifeCycleDeletedHistor = 723,
SingleEmpLeaveBalance = 724,
MultipleEmpLeaveBalanceEcho = 725,
LeaveReportEcho = 726,
LeaveRegisterBangla = 727,
LeaveEncashment = 728,
//Hnm(801-900) //Hnm(801-900)
OtBankDisbursementHnm = 801, OtBankDisbursementHnm = 801,
BonusRegisterHnm = 802, BonusRegisterHnm = 802,
@ -3468,32 +3427,15 @@ namespace HRM.BO
public enum EnumLeaveCalculationType public enum EnumLeaveCalculationType
{ {
//Hourly = 0, Hourly = 0,
//Yearly = 1, Yearly = 1,
//Monthly_Earn = 2, Monthly_Earn = 2,
//Hourly_365Day = 3, Hourly_365Day = 3,
//Hourly_Monthly = 4, Hourly_Monthly = 4,
//OneDay_On_18Day_Present = 5, OneDay_On_18Day_Present = 5,
//Hourly_Prorated = 6, Hourly_Prorated = 6,
//Days_365 = 7, Days_365 = 7,
//Yearly_without_Prorated = 8 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 public enum EnumLeaveparamOn

View File

@ -281,16 +281,16 @@ namespace HRM.BO
set { _incrementNo = value; } set { _incrementNo = value; }
} }
#endregion #endregion
#region payrollTypeID : int #region payrollTypeID : int
private int _payrollTypeID; private int _payrollTypeID;
public int PayrollTypeID public int PayrollTypeID
{ {
get { return _payrollTypeID; } get { return _payrollTypeID; }
set { _payrollTypeID = value; } set { _payrollTypeID = value; }
} }
#endregion #endregion
#region punishmentID : int #region payrollTypeID : int
private int _punishmentID; private int _punishmentID;
public int PunishmentID public int PunishmentID
@ -299,7 +299,7 @@ namespace HRM.BO
set { _punishmentID = value; } set { _punishmentID = value; }
} }
#endregion #endregion
#region complainID : int #region payrollTypeID : int
private int _complainID; private int _complainID;
public int ComplainID public int ComplainID
@ -320,27 +320,27 @@ namespace HRM.BO
#endregion #endregion
#region IsTransferReceived : bool #region IsTransferReceived : bool
private bool _isTransferReceived; private bool _isTransferReceived;
public bool IsTransferReceived public bool IsTransferReceived
{ {
get { return _isTransferReceived; } get { return _isTransferReceived; }
set { _isTransferReceived = value; } set { _isTransferReceived = value; }
} }
#endregion
#region Employee : Employee
public Employee Employee { get; set; }
public HREmployee HREmployee { get; set; }
public List<EmployeeCostCenter> EmployeeCostCenters { get; set; }
public EmployeeGradeSalary EmployeeGradeSalary { get; set; }
public List<OrganogramEmployee> Orgemployees { get; set; }
#endregion #endregion
#region Employee : Employee
public Employee Employee { get; set; }
public HREmployee HREmployee { get; set; }
public List<EmployeeCostCenter> EmployeeCostCenters { get; set; }
public EmployeeGradeSalary EmployeeGradeSalary { get; set; }
public List<OrganogramEmployee> Orgemployees { get; set; }
#endregion
#region HREmployee : HREmployee #region HREmployee : HREmployee
//private HREmployee _hremployee; //private HREmployee _hremployee;
@ -554,7 +554,6 @@ namespace HRM.BO
#endregion #endregion
public string CreatedByUser { get; set; }
} }

View File

@ -77,7 +77,6 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="DocumentFormat.OpenXml" Version="3.3.0" />
<PackageReference Include="iTextSharp" Version="5.5.13.3" /> <PackageReference Include="iTextSharp" Version="5.5.13.3" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.12" /> <PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.12" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" /> <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />

View File

@ -1,16 +1,12 @@
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
//using Microsoft.Office.Interop;
using Microsoft.Office.Interop.Word;
using System; using System;
using System.Collections;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text;
using System.Collections;
using System.Data; using System.Data;
using System.IO; using System.IO;
using System.Linq; //using Microsoft.Office.Interop;
using Microsoft.Office.Interop.Word;
using System.Reflection; using System.Reflection;
using System.Text;
using Paragraph = DocumentFormat.OpenXml.Wordprocessing.Paragraph;
namespace HRM.BO namespace HRM.BO
{ {
@ -19,7 +15,6 @@ namespace HRM.BO
private Hashtable _Pair; private Hashtable _Pair;
private string _OriginalFile; private string _OriginalFile;
private string _PreparedFile; private string _PreparedFile;
public string PreparedFile => _PreparedFile;
private Application _wordapp; private Application _wordapp;
public MSWord() public MSWord()
{ {
@ -45,13 +40,13 @@ namespace HRM.BO
} }
} }
//public string PreparedFile public string PreparedFile
//{ {
// get get
// { {
// return _PreparedFile; return _PreparedFile;
// } }
//} }
public void DeleteFile() public void DeleteFile()
{ {
@ -188,70 +183,6 @@ namespace HRM.BO
} }
} }
public void ReplaceWordsDocx(string destFileName, Hashtable tagValueHashTable)
{
if (tagValueHashTable == null || tagValueHashTable.Count == 0)
return;
CreateCopy(destFileName);
try
{
if (!Path.GetExtension(_PreparedFile).Equals(".docx", StringComparison.OrdinalIgnoreCase))
throw new InvalidOperationException("Only .docx files are supported. Please convert your template to .docx.");
using (WordprocessingDocument wordDoc = WordprocessingDocument.Open(_PreparedFile, true))
{
var docPart = wordDoc.MainDocumentPart;
var texts = docPart.Document.Descendants<Text>().ToList();
string docText;
// Load the entire document XML
using (StreamReader sr = new StreamReader(docPart.GetStream()))
{
docText = sr.ReadToEnd();
}
// Perform replacements
_Pair = (tagValueHashTable != null) ? tagValueHashTable : new Hashtable();
foreach (string key in _Pair.Keys)
{
//FindText = sKey;
//ReplaceText = tagValueHashTable[sKey];
string value = tagValueHashTable[key]?.ToString() ?? string.Empty;
docText = docText.Replace(key, value);
}
// Write updated XML back
using (StreamWriter sw = new StreamWriter(docPart.GetStream(FileMode.Create)))
{
sw.Write(docText);
}
}
//using (WordprocessingDocument wordDoc = WordprocessingDocument.Open(_PreparedFile, true))
//{
// var docPart = wordDoc.MainDocumentPart;
// foreach (var text in docPart.Document.Descendants<Text>())
// {
// foreach (string key in tagValueHashTable.Keys)
// {
// string value = tagValueHashTable[key]?.ToString() ?? string.Empty;
// if (text.Text.Contains(key))
// {
// text.Text = text.Text.Replace(key, value);
// }
// }
// }
// docPart.Document.Save();
//}
}
catch (Exception ex)
{
throw new Exception("Error: Could not read file from disk. Original error: " + ex.Message);
}
}
public void printDoc() public void printDoc()
{ {
Microsoft.Office.Interop.Word.Application ac = new Microsoft.Office.Interop.Word.Application(); Microsoft.Office.Interop.Word.Application ac = new Microsoft.Office.Interop.Word.Application();

View File

@ -42,7 +42,6 @@ namespace HRM.BO
List<DataPermission> getUsersByUserType(EnumUserType userType); List<DataPermission> getUsersByUserType(EnumUserType userType);
void InsertDataPermission(DataPermission item); void InsertDataPermission(DataPermission item);
int Save(DataPermission item); int Save(DataPermission item);
void Save(List<DataPermission> oDataPermissions);
void Delete(int id); void Delete(int id);
} }

View File

@ -3769,9 +3769,8 @@ AND ea.EMPLOYEEID=emp.EMPLOYEEID AND ea.LASTLEVEL=1),'') LastAcademic ,
{ {
tc.CommandTimeOut = 60; tc.CommandTimeOut = 60;
string sSQL = SQLParser.MakeSQL(@"SELECT EMPLOYEEID, EMPLOYEENO, NAME, FATHERNAME, MOTHERNAME, SPOUSENAME, JOININGDATE, string sSQL = SQLParser.MakeSQL(@"SELECT EMPLOYEEID, EMPLOYEENO, NAME, FATHERNAME, MOTHERNAME, SPOUSENAME, JOININGDATE,
DESIGNATION, BIRTHDATE, NIDNO, HEIGHT, BLOODGROUP, DESIGNATION, BIRTHDATE, NIDNO, HEIGHT, BLOODGROUP, PARMANENTADDRESS, PARMANENTDISTRICT,
PARMANENTADDRESS, PRESENTADDRESS, POSTOFFICEPA, DISTRICTPA,THANAPA,VILLAGEPA, ROADNOPA, WARDNOPA, POSTOFFICETA, DISTRICTTA, THANATA, VILLAGETA, ROADNOTA, WARDNOTA, PARMANENTTHANA, PRESENTADDRESS, LMDESIGNATION, PHOTO, EDUCATIONLEVEL
LMDESIGNATION, PHOTO, EDUCATIONLEVEL
FROM dbo.VW_EMPDIGITALSERVICEBOOK FROM dbo.VW_EMPDIGITALSERVICEBOOK
WHERE EMPLOYEEID = %n", empID); WHERE EMPLOYEEID = %n", empID);
return tc.ExecuteDataSet(sSQL); return tc.ExecuteDataSet(sSQL);
@ -4151,85 +4150,6 @@ AND ea.EMPLOYEEID=emp.EMPLOYEEID AND ea.LASTLEVEL=1),'') LastAcademic ,
return tc.ExecuteDataTable( return tc.ExecuteDataTable(
"SELECT e.employeeId as id, e.employeeNo, e.name FROM employee e WHERE e.payrolltypeid=%n", payrolltypeid); "SELECT e.employeeId as id, e.employeeNo, e.name FROM employee e WHERE e.payrolltypeid=%n", payrolltypeid);
} }
internal static DataSet GetEmpDetailsEcho(TransactionContext tc, string sEmpID)
{
DataSet oEmpDetails = new DataSet();
try
{
string sql =
SQLParser.MakeSQL(
@"SELECT Emp.employeeID, Emp.EMPLOYEENO,Emp.Name,Emp.DepartmentID,Emp.BIRTHDATE,Emp.JOININGDATE,Emp.DATEOFCONFIRMATION,
Cat.Description as Category, Bangla.BanglaName, Bangla.BanglaDesignation, Bangla.DEPARTMENTBANGLA, Bangla.SectionBangla,
Emp.GENDER,Emp.MARITALSTATUSID,Emp.MOBILENO,Emp.EMAILADDRESS,Emp.ACCOUNTNO,Emp.OutPayAccountNo,
Emp.BASICSALARY,Emp.GrossSalary,Emp.VendorCode,Emp.TAXAMOUNT,Deg.NAME AS DegName,Dep.DESCRIPTION AS DepDes,
GD.DESCRIPTION AS GDDes,BK.NAME AS Bank,BR.NAME AS Branch,BKOUT.NAME AS OUTPayBank,BROUT.NAME As OUTPayBranch,
RG.NAME AS RegName,Loc.Description as Locdes,IsNull(ac.CardNumber,'') as CardNo,na.Description AS Nationality,
Emp.FATHERNAME,Emp.MOTHERNAME,eSpouse.Name AS Spouse,Emp.NationalID,Emp.BLOODGROUP,eContact.PARMANENTADDRESS AS PerVillage,
dis1.[NAME] AS PerDist,t1.[NAME] AS PerThana,eContact.PRESENTADDRESS AS TempVillage,eContact.PresentPO,eContact.PermanentPO,dis2.[NAME] AS TempDist,
t2.[NAME] AS TempThana,eContact.PERSONALTELEPHONE AS LANDPHONE,eContact.PARMANENTMOBILE AS OFFICEMOBILE
FROM EMPLOYEE AS Emp
LEFT Outer JOIN DESIGNATION AS Deg ON Emp.DESIGNATIONID=Deg.DESIGNATIONID
LEFT OUTER JOIN Department AS Dep ON Emp.DEPARTMENTID=Dep.DEPARTMENTID
LEFT OUTER JOIN Grades AS GD ON Emp.GRADEID=GD.GRADEID
LEFT OUTER JOIN Religion AS RG ON Emp.RELIGIONID=RG.RELIGIONID
LEFT OUTER JOIN Branches AS BR ON Emp.BRANCHID=BR.BRANCHID
LEFT OUTER JOIN BANKS AS BK ON BK.BANKID=BR.BANKID
LEFT OUTER JOIN Branches AS BROUT ON Emp.OUTPayBRANCHID=BROUT.BRANCHID
LEFT OUTER JOIN BANKS AS BKOUT ON BKOUT.BANKID=BROUT.BANKID
LEFT OUTER JOIN Location AS Loc ON Emp.LocationID=Loc.LocationID
LEFT OUTER JOIN AccessCard ac ON Emp.CardID = ac.AccessCardID
LEFT OUTER JOIN NATIONALITY na ON Emp.NationalityID = na.NATIONALITYID
LEFT OUTER JOIN EMPSPOUSE eSpouse ON Emp.EMPLOYEEID = eSpouse.EMPLOYEEID
LEFT OUTER JOIN EMPCONTACT eContact ON Emp.EMPLOYEEID = eContact.EMPLOYEEID
LEFT OUTER JOIN DISTRICT dis1 ON eContact.PARMANENTDISTRICTID = dis1.DISTRICTID
LEFT OUTER JOIN THANA t1 ON eContact.PARMANENTTHANAID = t1.THANAID
LEFT OUTER JOIN DISTRICT dis2 ON eContact.PRESENTDISTRICTID = dis2.DISTRICTID
LEFT OUTER JOIN Thana t2 ON eContact.PRESENTTHANAID = t2.THANAID
LEFT OUTER JOIN Category Cat on emp.categoryid = cat.categoryID
LEFT OUTER JOIN vw_EmployeeImportantInfo Bangla on Emp.EmployeeID = Bangla.EmployeeID
ORDER BY Emp.EMPLOYEENO");
// string sql =
// SQLParser.MakeSQL(
// @"SELECT Emp.EMPLOYEENO,Emp.Name,Emp.DepartmentID,Emp.BIRTHDATE,Emp.JOININGDATE,Emp.DATEOFCONFIRMATION,
// Cat.Description as Category, Bangla.BanglaName, Bangla.BanglaDesignation, Bangla.DEPARTMENTBANGLA, Bangla.SectionBangla,
//Emp.GENDER,Emp.MARITALSTATUSID,Emp.MOBILENO,Emp.EMAILADDRESS,Emp.ACCOUNTNO,Emp.OutPayAccountNo,
//Emp.BASICSALARY,Emp.GrossSalary,Emp.VendorCode,Emp.TAXAMOUNT,Deg.NAME AS DegName,Dep.DESCRIPTION AS DepDes,
//GD.DESCRIPTION AS GDDes,BK.NAME AS Bank,BR.NAME AS Branch,BKOUT.NAME AS OUTPayBank,BROUT.NAME As OUTPayBranch,
//RG.NAME AS RegName,Loc.Description as Locdes,IsNull(ac.CardNumber,'') as CardNo,na.Description AS Nationality,
//Emp.FATHERNAME,Emp.MOTHERNAME,eSpouse.Name AS Spouse,Emp.NationalID,Emp.BLOODGROUP,eContact.PARMANENTADDRESS AS PerVillage,
//dis1.[NAME] AS PerDist,t1.[NAME] AS PerThana,eContact.PRESENTADDRESS AS TempVillage,eContact.PresentPO,eContact.PermanentPO,dis2.[NAME] AS TempDist,
//t2.[NAME] AS TempThana,eContact.PERSONALTELEPHONE AS LANDPHONE,eContact.PARMANENTMOBILE AS OFFICEMOBILE
//FROM EMPLOYEE AS Emp
//LEFT Outer JOIN DESIGNATION AS Deg ON Emp.DESIGNATIONID=Deg.DESIGNATIONID
//LEFT OUTER JOIN Department AS Dep ON Emp.DEPARTMENTID=Dep.DEPARTMENTID
//LEFT OUTER JOIN Grades AS GD ON Emp.GRADEID=GD.GRADEID
//LEFT OUTER JOIN Religion AS RG ON Emp.RELIGIONID=RG.RELIGIONID
//LEFT OUTER JOIN Branches AS BR ON Emp.BRANCHID=BR.BRANCHID
//LEFT OUTER JOIN BANKS AS BK ON BK.BANKID=BR.BANKID
//LEFT OUTER JOIN Branches AS BROUT ON Emp.OUTPayBRANCHID=BROUT.BRANCHID
//LEFT OUTER JOIN BANKS AS BKOUT ON BKOUT.BANKID=BROUT.BANKID
//LEFT OUTER JOIN Location AS Loc ON Emp.LocationID=Loc.LocationID
//LEFT OUTER JOIN AccessCard ac ON Emp.CardID = ac.AccessCardID
//LEFT OUTER JOIN NATIONALITY na ON Emp.NationalityID = na.NATIONALITYID
//LEFT OUTER JOIN EMPSPOUSE eSpouse ON Emp.EMPLOYEEID = eSpouse.EMPLOYEEID
//LEFT OUTER JOIN EMPCONTACT eContact ON Emp.EMPLOYEEID = eContact.EMPLOYEEID
//LEFT OUTER JOIN DISTRICT dis1 ON eContact.PARMANENTDISTRICTID = dis1.DISTRICTID
//LEFT OUTER JOIN THANA t1 ON eContact.PARMANENTTHANAID = t1.THANAID
//LEFT OUTER JOIN DISTRICT dis2 ON eContact.PRESENTDISTRICTID = dis2.DISTRICTID
//LEFT OUTER JOIN Thana t2 ON eContact.PRESENTTHANAID = t2.THANAID
// LEFT OUTER JOIN Category Cat on emp.categoryid = cat.categoryID
// LEFT OUTER JOIN vw_EmployeeImportantInfo Bangla on Emp.EmployeeID = Bangla.EmployeeID
//WHERE Emp.EMPLOYEEID IN(%q) ORDER BY Emp.EMPLOYEENO", sEmpID);
oEmpDetails = tc.ExecuteDataSet(sql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return oEmpDetails;
}
} }
#endregion #endregion

View File

@ -1,11 +1,9 @@
using Ease.Core.DataAccess; using HRM.BO;
using Ease.Core.Model; using Ease.Core.DataAccess;
using Ease.Core.Utility;
using HRM.BO;
using HRM.BO.Fund;
using Microsoft.Data.SqlClient;
using System; using System;
using System.Data; using System.Data;
using HRM.BO.Fund;
using Microsoft.Data.SqlClient;
namespace HRM.DA namespace HRM.DA
{ {
@ -94,43 +92,5 @@ namespace HRM.DA
return ""; return "";
return sCode.ToString(); 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;
}
} }
} }

View File

@ -1095,31 +1095,6 @@ namespace HRM.DA
return ds; return ds;
} }
public static IDataReader GetAllEmpAcademics(TransactionContext tc)
{
return tc.ExecuteReader(@"SELECT [INSTITUTENAME]
,[EDUCATIONTYPEID]
,[ACADEMICID]
,[EMPLOYEEID]
,[EDUCATIONLEVELID]
,[EDUCATIONTYPEID]
,[DISCIPLINEID]
,[INSTITUTIONID]
,[PASSINGYEAR]
,[CLASSORDIVISION]
,[GPAORMARKS]
,[LASTLEVEL]
,[OUTOF]
,[RESULTTYPEID]
,[PHOTOPATH]
,[DOCSUBMISSIONDATE]
,[LastLevelNonTech]
,[ProfileStatus]
, iif(isnull(empfileuploadid, 0) > 0, 1, 0) HasAttachment
from[EMPACADEMIC] ea
left join empfileupload eu on eu.empid = ea.employeeid and
eu.referenceid = ea.ACADEMICID and eu.fileType = 10");
}
#endregion #endregion
#region EmpAchievements Get #region EmpAchievements Get

View File

@ -135,32 +135,7 @@ namespace HRM.DA
{ {
return tc.ExecuteReader("SELECT * FROM Leave WHERE CODE=%s AND PayrollTypeID=%n", sLeave, payrollTypeID); 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 #endregion
#region Delete function #region Delete function

View File

@ -60,11 +60,6 @@ namespace HRM.Service
//return tc.ExecuteReader("SELECT * FROM LEAVEEncashment WHERE EmployeeID IN (%q) AND Encashmentfromdate >= %d AND Encashmenttodate<=%d", empIDs, FirstDateOfYear, LastDateOfYear); //return tc.ExecuteReader("SELECT * FROM LEAVEEncashment WHERE EmployeeID IN (%q) AND Encashmentfromdate >= %d AND Encashmenttodate<=%d", empIDs, FirstDateOfYear, LastDateOfYear);
return tc.ExecuteReader("SELECT * FROM LEAVEEncashment WHERE EmployeeID IN (%q) AND Encashmentfromdate >= %d ", empIDs, FirstDateOfYear); return tc.ExecuteReader("SELECT * FROM LEAVEEncashment WHERE EmployeeID IN (%q) AND Encashmentfromdate >= %d ", empIDs, FirstDateOfYear);
} }
internal static IDataReader GetByEmpIDs(TransactionContext tc, string empIDs, int leaveyearid, DateTime EncashMonth)
{
string sql = SQLParser.MakeSQL(@"SELECT * FROM LEAVEEncashment WHERE EmployeeID IN (%q) and LeaveYearID = %n and EncashMonth Between %d and %d", empIDs, leaveyearid, EncashMonth.FirstDateOfMonth(), EncashMonth.LastDateOfMonth());//
return tc.ExecuteReader(sql);
}
internal static DataSet GetData(TransactionContext tc, int nYearID) internal static DataSet GetData(TransactionContext tc, int nYearID)
{ {
DataSet rawData = new DataSet(); DataSet rawData = new DataSet();

View File

@ -44,7 +44,24 @@ namespace HRM.DA
#region Get Function #region Get Function
#region GetUsersByUserType internal static IDataReader Get(TransactionContext tc, EnumStatus status)
{
if (EnumStatus.Active == status || EnumStatus.Inactive == status)
{
return tc.ExecuteReader("SELECT * FROM Religion Where Status=%n Order By SequenceNo", status);
}
else
{
return tc.ExecuteReader("SELECT * FROM Religion Order By SequenceNo");
}
}
internal static IDataReader Get(TransactionContext tc, int ID)
{
return tc.ExecuteReader("SELECT * FROM Religion WHERE ReligionID=%n", ID);
}
#region
internal static IDataReader GetUsersByUserType(TransactionContext tc, EnumUserType type) internal static IDataReader GetUsersByUserType(TransactionContext tc, EnumUserType type)
{ {
return tc.ExecuteReader("SELECT * FROM Users where UserType = %n", type); return tc.ExecuteReader("SELECT * FROM Users where UserType = %n", type);
@ -64,7 +81,6 @@ namespace HRM.DA
} }
} }
#endregion #endregion
internal static void InsertDataPermission(TransactionContext tc, DataPermission item) internal static void InsertDataPermission(TransactionContext tc, DataPermission item)
{ {
item.CreatedDate = DateTime.Now; item.CreatedDate = DateTime.Now;
@ -97,17 +113,6 @@ namespace HRM.DA
userid, payrolltypeid, userid, payrolltypeid, userid, payrolltypeid); userid, payrolltypeid, userid, payrolltypeid, userid, payrolltypeid);
} }
internal static bool PermissionAlreadyExsits(TransactionContext tc, DataPermission item)
{
bool Exist = false;
string sql = SQLParser.MakeSQL("SELECT COUNT(*) FROM DATAPERMISSION WHERE USERID=%n AND REFERENCEID=%n AND PERMISSIONTYPE=%n AND PAYROLLTYPEID=%n", item.UserID, item.ReferenceID, item.PermissionType, item.PayrollTypeID);
Object obj =
tc.ExecuteScalar(sql);
Exist = Convert.ToInt32(obj) > 0 ? true : false;
return Exist;
}
#endregion #endregion
#region Delete function #region Delete function

View File

@ -443,7 +443,7 @@ namespace HRM.DA
foreach(var item in Groupdate) foreach(var item in Groupdate)
{ {
Thread myNewThread = new Thread(() => Process(item.Key, Thread myNewThread = new Thread(() => Process(item.Key,
EnumProcessMode.Auto, oemp.PayrollTypeID, ouser.ID, emps, false)); EnumProcessMode.Auto, oemp.PayrollTypeID, ouser.ID, emps));
myNewThread.Start(); myNewThread.Start();
} }
@ -462,16 +462,16 @@ namespace HRM.DA
_shifts = new ShiftService().GetAllShift(); _shifts = new ShiftService().GetAllShift();
for (DateTime currentDate = ProcessDate; currentDate <= endDate; currentDate = currentDate.AddDays(1)) for (DateTime currentDate = ProcessDate; currentDate <= endDate; currentDate = currentDate.AddDays(1))
{ {
Process(currentDate, EnumProcessMode.Auto, payrollTypeID, processUserID, emp, false); Process(currentDate, EnumProcessMode.Auto, payrollTypeID, processUserID, emp);
} }
} }
public void Process(DateTime fromDate, EnumProcessMode prMode, int payrollTypeID, int processUserID, List<Employee> emps, bool overrideManualEntry) public void Process(DateTime fromDate, EnumProcessMode prMode, int payrollTypeID, int processUserID, List<Employee> emps)
{ {
bool isEchoTex = new SystemConfigarationService().GetconfigBooleanValue(EnumConfigurationType.Logic, "attendence", "echotexprocess"); bool isEchoTex = new SystemConfigarationService().GetconfigBooleanValue(EnumConfigurationType.Logic, "attendence", "echotexprocess");
if (isEchoTex == true) if (isEchoTex == true)
{ {
echoTexProcess(fromDate, prMode, payrollTypeID, processUserID, emps, overrideManualEntry); echoTexProcess(fromDate, prMode, payrollTypeID, processUserID, emps);
return; return;
} }
_attnRunSummary = new AttnProcessRunSummary(); _attnRunSummary = new AttnProcessRunSummary();
@ -2565,7 +2565,7 @@ namespace HRM.DA
public void echoTexProcess(DateTime Attdate, EnumProcessMode prMode, int payrolltypeid, int processUserID, List< Employee> employees, bool overrideManualEntry) public void echoTexProcess(DateTime Attdate, EnumProcessMode prMode, int payrolltypeid, int processUserID, List< Employee> employees)
{ {
AttnProcessRunSummary oAttnRunSummary = new AttnProcessRunSummary(); AttnProcessRunSummary oAttnRunSummary = new AttnProcessRunSummary();
@ -2668,7 +2668,7 @@ namespace HRM.DA
.FirstOrDefault(obj => obj.EmployeeID == emp.ID); .FirstOrDefault(obj => obj.EmployeeID == emp.ID);
// 2. If Attendendence is manually enterred // 2. If Attendendence is manually enterred
if (manualEntry != null && overrideManualEntry == false) if (manualEntry != null)
{ {
// 2.1 If Both In and Out are Manually Enterred then add the item // 2.1 If Both In and Out are Manually Enterred then add the item
if (!manualEntry.OnlyManualInTime && !manualEntry.OnlyManualOutTime) if (!manualEntry.OnlyManualInTime && !manualEntry.OnlyManualOutTime)

View File

@ -5877,29 +5877,5 @@ namespace HRM.DA
} }
return table; return table;
} }
public DataSet GetEmpDetailsEcho(string sEmpID)
{
DataSet oEmpDetails = new DataSet();
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin();
oEmpDetails = EmployeeDA.GetEmpDetailsEcho(tc, sEmpID);
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
return oEmpDetails;
}
} }
} }

View File

@ -4177,35 +4177,6 @@ namespace HRM.DA
return ds; return ds;
} }
public List<EmpAcademic> GetAllEmpAcademics()
{
List<EmpAcademic> oEmpAcademics = new List<EmpAcademic>();
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin();
DataReader dr = new DataReader(HREmployeeDA.GetAllEmpAcademics(tc));
oEmpAcademics = this.CreateEmpAcademicObjects(dr);
dr.Close();
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
return oEmpAcademics;
}
#endregion #endregion

View File

@ -88,70 +88,32 @@ namespace HRM.DA
if (oItem.LeaveId == 5) if (oItem.LeaveId == 5)
{ {
#region old code DateTime SelectedMonth = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1).LastDateOfMonth();
//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);
//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);
//DataSet ds = new DailyAttnProcessService().GetEarnedLeaveOpening(oEmployee.ID, oItem.LeaveId, from_Date, to_Date); int dCurrectedDay = 0;
//int dCurrectedDay = 0; if (DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month) < oEmployee.JoiningDate.Day)
//if (DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month) < oEmployee.JoiningDate.Day) dCurrectedDay = DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month);
// dCurrectedDay = DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month); else
//else dCurrectedDay = oEmployee.JoiningDate.Day;
// 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 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 FirstYearStartDate = JoiningDateBefore2YearsFromCurrentYear; DateTime FirstYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1).AddDays(-1);
//DateTime FirstYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1).AddDays(-1); DateTime LastYearStartDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1);
//DateTime LastYearStartDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1); DateTime LastYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(2).AddDays(-1);
//DateTime LastYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(2).AddDays(-1);
//double secondYearLeaveAvailed = new LeaveEntryService().Get(oEmployee.ID, LastYearStartDate, LastYearEndDate, EnumLeaveStatus.Approved).Sum(x => x.ApprovedTotalDays); double secondYearLeaveAvailed = new LeaveEntryService().Get(oEmployee.ID, LastYearStartDate, LastYearEndDate, EnumLeaveStatus.Approved).Sum(x => x.ApprovedTotalDays);
////List<LeaveEncashment> les = LeaveEncashment.GetByEmpIDs(oEmployee.ID.Integer.ToString(), FirstYearStartDate, FirstYearEndDate); //ObjectsTemplate<LeaveEncashment> 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)
{ {
dtAvailed = dtAvailed.AddYears(1); foreach (DataRow dr in ds.Tables[0].Rows)
}
DataTable dt = new LeaveService().GetELInfo(oEmployee.ID, oEmployee.JoiningDate, dtTo, dtAvailed);
if (dt != null)
{
foreach (DataRow dr in dt.Rows)
{ {
if (dr[0].ToString() == "Leave Availed this") oCurrStatus.OpeningBalance = Convert.ToDouble(dr[0].ToString());
{ oCurrStatus.LeaveAvailed = Convert.ToDouble(dr[1].ToString()); //secondYearLeaveAvailed;
oCurrStatus.LeaveAvailed = Convert.ToDouble(dr[1].ToString()); oCurrStatus.EncashDays = 0;// les==null?0:les.Sum(x=> Math.Round(x.EncashmentDays));
} oCurrStatus.YearEndBalance = oCurrStatus.OpeningBalance - (oCurrStatus.LeaveAvailed + oCurrStatus.EncashDays);
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); oCurrYearBalance.Add(oCurrStatus);
@ -159,7 +121,7 @@ namespace HRM.DA
else else
{ {
//List<LeaveEntry> les = LeaveEntry.GetByLeaveID(oItem.LeaveId, empId, from_Date, to_Date); //ObjectsTemplate<LeaveEntry> les = LeaveEntry.GetByLeaveID(oItem.LeaveId, empId, from_Date, to_Date);
List<LeaveEntry> les = oLeaveEntries.Where(le => le.LeaveID == oItem.LeaveId List<LeaveEntry> les = oLeaveEntries.Where(le => le.LeaveID == oItem.LeaveId
&& le.EmpID == empId && le.EmpID == empId
&& le.ApprovedFromDate >= from_Date && le.ApprovedFromDate <= to_Date && le.ApprovedFromDate >= from_Date && le.ApprovedFromDate <= to_Date
@ -202,11 +164,9 @@ namespace HRM.DA
} }
else else
{ {
#region From Master
if (oDetail != null) oCurrStatus.NormalLeaveDays = 0; if (oDetail != null) oCurrStatus.NormalLeaveDays = 0;
else continue; else continue;
//oItem.Details = new List<LeaveParameterDetail>(); //oItem.Details = new ObjectsTemplate<LeaveParameterDetail>();
//oItem.Details.Add(oDetail); //oItem.Details.Add(oDetail);
#region calculate the current year balance #region calculate the current year balance
@ -289,12 +249,6 @@ namespace HRM.DA
} }
#endregion
#endregion
#region From Echotex desktop App
#endregion #endregion
} }
@ -322,14 +276,14 @@ namespace HRM.DA
{ {
double nTotalDays = 0; double nTotalDays = 0;
TimeSpan ts = new TimeSpan(); TimeSpan ts = new TimeSpan();
if (eType == EnumLeaveCalculationType.Daily) if (eType == EnumLeaveCalculationType.Yearly)
{ {
if (presentAttnCount > 0) if (presentAttnCount > 0)
{ {
nTotalDays = (double)presentAttnCount / 18; nTotalDays = (double)presentAttnCount / 18;
} }
} }
else if (eType == EnumLeaveCalculationType.Monthly) else if (eType == EnumLeaveCalculationType.Yearly)
{ {
ts = (dCurrentDate - ((emp.JoiningDate > oCurrentYear.StartDate) ? ts = (dCurrentDate - ((emp.JoiningDate > oCurrentYear.StartDate) ?
emp.JoiningDate : Global.DateFunctions.FirstDateOfYear(dCurrentDate))) emp.JoiningDate : Global.DateFunctions.FirstDateOfYear(dCurrentDate)))
@ -347,12 +301,12 @@ namespace HRM.DA
} }
// Else '0' , What?????????????????? // Else '0' , What??????????????????
} }
else if (eType == EnumLeaveCalculationType.Not_Applicable) else if (eType == EnumLeaveCalculationType.Yearly)
{ {
ts = (Global.DateFunctions.LastDateOfYear(dCurrentDate) - Global.DateFunctions.FirstDateOfYear(dCurrentDate)).Add(TimeSpan.FromDays(1)); ts = (Global.DateFunctions.LastDateOfYear(dCurrentDate) - Global.DateFunctions.FirstDateOfYear(dCurrentDate)).Add(TimeSpan.FromDays(1));
nTotalDays = (oDetail.MaxDays * ts.Days) / 365; nTotalDays = (oDetail.MaxDays * ts.Days) / 365;
} }
else if (eType == EnumLeaveCalculationType.Not_Applicable_With_Prorated) else if (eType == EnumLeaveCalculationType.Yearly)
{ {
ts = (Global.DateFunctions.LastDateOfYear(dCurrentDate) - ((emp.JoiningDate > oCurrentYear.StartDate) ? ts = (Global.DateFunctions.LastDateOfYear(dCurrentDate) - ((emp.JoiningDate > oCurrentYear.StartDate) ?
emp.JoiningDate : Global.DateFunctions.FirstDateOfYear(dCurrentDate))) emp.JoiningDate : Global.DateFunctions.FirstDateOfYear(dCurrentDate)))
@ -737,333 +691,6 @@ namespace HRM.DA
//#endregion //#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<EmpLeaveStatus> oCurrYearBalance = null;
List<EmpLeaveStatus> oAllEmpsCurrYearBalance = new List<EmpLeaveStatus>();
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<EnmSetupManagerTranType> setupTypes = new SetupDetailService().GetTypes(EnumParameterSetup.Leave);
List<SetupDetail> setupDetails = new SetupDetailService().GetParameters(EnumParameterSetup.Leave);
List<LeaveParameter> leaveParamss = new LeaveParameterService().Get();
List<LeaveParameterDetail> leaveParamDetails = new LeaveParameterService().GetDetails();
List<LeaveEntry> oLs = new LeaveEntryService().GetByLeaveYear(oCurrYear.ID);
List<EmpLeaveStatus> oPrevStatuses = new LeaveProcessService().GetByYear(oPrvYear.ID);
List<LeaveException> oExceptions = new LeaveExceptionService().Get(lYear.StartDate, lYear.EndDate);
Queue<Employee> oEmployees = new Queue<Employee>(new EmployeeService().GetByEmpIDs(sEmpIDs).OrderBy(x => x.ID));
List<AttnNationalHoliday> oNationalHolidays = new AttnNationalHolidayService().GetByMonth(oCurrYear.StartDate, oCurrYear.EndDate);
List<Leave> 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<LeaveParameter> 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;
}
public DataTable CurrentYearStatusForEncashment(string sEmpIDs, LeaveYear lYear, EnumLeaveStatus eStatus, DateTime EncashMonth)
{
DataTable dTEmpLeave = new DataTable();
dTEmpLeave.Columns.Add("EmpName", typeof(System.String));
dTEmpLeave.Columns.Add("JoiningDate", typeof(System.String));
dTEmpLeave.Columns.Add("EmpNo", typeof(System.String));
dTEmpLeave.Columns.Add("Designation", typeof(System.String));
dTEmpLeave.Columns.Add("AccountNo", typeof(System.String));
dTEmpLeave.Columns.Add("TINNo", typeof(System.String));
dTEmpLeave.Columns.Add("Department", typeof(System.String));
dTEmpLeave.Columns.Add("Floor", typeof(System.String));
dTEmpLeave.Columns.Add("Section", typeof(System.String));
dTEmpLeave.Columns.Add("Line", typeof(System.String));
dTEmpLeave.Columns.Add("CC", typeof(System.String));
dTEmpLeave.Columns.Add("CCCode", typeof(System.String));
dTEmpLeave.Columns.Add("Grade", typeof(System.String));
dTEmpLeave.Columns.Add("Gross", typeof(System.String));
dTEmpLeave.Columns.Add("Present", typeof(System.String));
dTEmpLeave.Columns.Add("Holiday", typeof(System.String));
dTEmpLeave.Columns.Add("Abcent", typeof(System.String));
dTEmpLeave.Columns.Add("CL", typeof(System.String));
dTEmpLeave.Columns.Add("SL", typeof(System.String));
dTEmpLeave.Columns.Add("SPL", typeof(System.String));
dTEmpLeave.Columns.Add("COM", typeof(System.String));
dTEmpLeave.Columns.Add("PL", typeof(System.String));
dTEmpLeave.Columns.Add("ML", typeof(System.String));
dTEmpLeave.Columns.Add("LWOP", typeof(System.String));
dTEmpLeave.Columns.Add("EL", typeof(System.String));
dTEmpLeave.Columns.Add("ELDays", typeof(System.String));
dTEmpLeave.Columns.Add("ELPayment", typeof(System.String));
dTEmpLeave.Columns.Add("TDSAIT", typeof(System.String));
dTEmpLeave.Columns.Add("Net", typeof(double));
dTEmpLeave.Columns.Add("Remarks", typeof(System.String));
dTEmpLeave.Columns.Add("Signature", typeof(System.String));
dTEmpLeave.Columns.Add("NetSum", typeof(string));
dTEmpLeave.Columns.Add("EnjoyedLeave", typeof(double));
dTEmpLeave.Columns.Add("EncashmentFromDate", typeof(System.DateTime));
dTEmpLeave.Columns.Add("EncashmentToDate", typeof(System.DateTime));
dTEmpLeave.Columns.Add("LeaveBalance", typeof(double));
try
{
DataTable dtEmpBasicInfo = new EmployeeService().GetAllEmpBasicInfo(sEmpIDs)
.Tables[0]
.AsEnumerable()
.OrderBy(x => Convert.ToInt32(x["EmployeeID"].ToString()))
.CopyToDataTable();
List<LeaveEncashment> leaveEncashments = new LeaveEncashmentService().GetByEmpIDs(sEmpIDs, lYear.ID, EncashMonth);
//List<EmpLeaveStatus> oCurrYearBalance = null;
//List<EmpLeaveStatus> oAllEmpsCurrYearBalance = new List<EmpLeaveStatus>();
//DateTime operationDate = GlobalFunctions.GetOperationDate();
//if (operationDate.Date > lYear.EndDate.Date)
//{
// operationDate = lYear.EndDate.Date;
//}
//DateTime oEmpOperationDate;
//DataTable oYearlyDailyAttnProcess = DailyAttnProcess.GetTypeWiseAttnCount(sEmpIDs, operationDate.FirstDateOfYear(), operationDate.LastDateOfYear(), 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 = LeaveYear.LastLeaveYear(oCurrYear);
//List<EnmSetupManagerTranType> setupTypes = SetupDetail.GetTypes(EnumParameterSetup.Leave);
//List<SetupDetail> setupDetails = SetupDetail.GetParameters(EnumParameterSetup.Leave);
//List<LeaveParameter> leaveParamss = LeaveParameter.Get();
//List<LeaveParameterDetail> leaveParamDetails = new LeaveParameter().GetAllDetails();
//List<LeaveEntry> oLs = LeaveEntry.GetByLeaveYear(oCurrYear.ID.Integer);
//List<EmpLeaveStatus> oPrevStatuses = EmpLeaveStatus.GetAllPrvYearStatus(oCurrYear.ID.Integer);
//List<LeaveException> oExceptions = LeaveException.Get(lYear.StartDate, lYear.EndDate);
Queue<Employee> oEmployees = new Queue<Employee>(new EmployeeService().GetByEmpIDs(sEmpIDs).OrderBy(x => x.ID));
double net = 0;
foreach (DataRow drBasic in dtEmpBasicInfo.Rows)
{
//Employee oEmp = null;
////int presentCount = 0;
//if (oEmployees.Any() && oEmployees.Peek().ID.Integer == Convert.ToInt32(drBasic["EmployeeID"].ToString()))
//{
// oEmp = oEmployees.Dequeue();
//}
//else
//{
// continue;
//}
LeaveEncashment le = leaveEncashments.Where(x => x.EmployeeID == Convert.ToInt32(drBasic["EmployeeID"].ToString())).FirstOrDefault();
if (le == null)
{
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<LeaveParameter> oAppLeaveParams = LeaveParameter.ApplicableParamsForReportOptimized(oEmp, setupTypes, setupDetails, leaveParamss);
//oCurrYearBalance = EmpLeaveStatus.CurrentYearStatusOptimized(oEmp, oEmpOperationDate, presentCount, oAppLeaveParams, oCurrYear, oLs, eStatus, oPrevStatuses, leaveParamDetails, oExceptions);
DataRow oRow = null;
oRow = dTEmpLeave.NewRow();
net = 0;
if (drBasic != null)
{
oRow["EmpNo"] = drBasic["EmployeeNo"];
oRow["EmpName"] = 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["JoiningDate"] = Convert.ToDateTime(drBasic["JoiningDate"].ToString()).ToString("dd MMM yyyy");
oRow["AccountNo"] = drBasic["ACCOUNTNO"];
oRow["TINNo"] = drBasic["TINNO"];
oRow["CC"] = "";
oRow["CCCode"] = "";
oRow["Grade"] = drBasic["GradeName"];
oRow["Gross"] = le.GrossSalary.ToString("N2"); //Convert.ToDouble(drBasic["GROSSSALARY"].ToString()).ToString("N2");
oRow["Present"] = le.presentDays.ToString();/*le.PresentDays.ToString();*/
oRow["Holiday"] = le.holiDays.ToString();/*le.HoliDays.ToString();*/
oRow["Abcent"] = le.absentDays.ToString();/*le.AbsentDays.ToString();*/
oRow["ELDays"] = le.EncashmentDays.ToString("N2");
oRow["ELPayment"] = le.Amount.ToString("N2");
oRow["TDSAIT"] = le.TaxAmount.ToString("N2");
oRow["CL"] = "0";
oRow["SL"] = "0";
oRow["SPL"] = "0";
oRow["COM"] = "0";
oRow["PL"] = "0";
oRow["ML"] = "0";
oRow["LWOP"] = "0";
oRow["EL"] = "0";
oRow["Net"] = le.Amount;
oRow["EnjoyedLeave"] = le.enjoyedLeave;/*le.EnjoyedLeave;*/
oRow["EncashmentFromDate"] = le.EncashmentFromDate;
oRow["EncashmentToDate"] = le.EncashmentToDate;
oRow["LeaveBalance"] = le.LeaveBalance;
}
//foreach (EmpLeaveStatus eSts in oCurrYearBalance)
//{
// switch (eSts.Leave.Code)
// {
// case "CL":
// oRow["CL"] = eSts.ClosingBalance.ToString();
// break;
// case "SL":
// oRow["SL"] = eSts.ClosingBalance.ToString();
// break;
// case "SPL":
// oRow["SPL"] = eSts.ClosingBalance.ToString();
// break;
// case "COM":
// oRow["COM"] = eSts.ClosingBalance.ToString();
// break;
// case "PL":
// oRow["PL"] = eSts.ClosingBalance.ToString();
// break;
// case "ML":
// oRow["ML"] = eSts.ClosingBalance.ToString();
// break;
// case "LWOP":
// oRow["LWOP"] = eSts.ClosingBalance.ToString();
// break;
// case "EL":
// oRow["EL"] = eSts.ClosingBalance.ToString();
// break;
// default:
// break;
// }
//}
dTEmpLeave.Rows.Add(oRow);
}
return dTEmpLeave;
}
catch (Exception ex)
{
}
return dTEmpLeave;
}
} }

View File

@ -39,12 +39,8 @@ namespace HRM.Service
oLeaveEncashment.CreatedDate = oReader.GetDateTime("CreatedDate").Value; oLeaveEncashment.CreatedDate = oReader.GetDateTime("CreatedDate").Value;
oLeaveEncashment.ModifiedBy = oReader.GetString("ModifiedBy") == null ? 0 : oReader.GetInt32("ModifiedBy").Value; oLeaveEncashment.ModifiedBy = oReader.GetString("ModifiedBy") == null ? 0 : oReader.GetInt32("ModifiedBy").Value;
oLeaveEncashment.ModifiedDate = oReader.GetDateTime("ModifiedDate"); oLeaveEncashment.ModifiedDate = oReader.GetDateTime("ModifiedDate");
oLeaveEncashment.BasicSalary = oReader.GetDouble("BasicSalary", true, 0); oLeaveEncashment.BasicSalary = oReader.GetDouble("BasicSalary").Value;
oLeaveEncashment.ESSSubmittedDays = oReader.GetDouble("ESSSubmittedDays", true, 0); oLeaveEncashment.ESSSubmittedDays = oReader.GetDouble("ESSSubmittedDays").Value;
oLeaveEncashment.presentDays = oReader.GetDouble("PresentDays").Value;
oLeaveEncashment.absentDays = oReader.GetDouble("AbsentDays").Value;
oLeaveEncashment.enjoyedLeave = oReader.GetDouble("EnjoyedLeave").Value;
oLeaveEncashment.holiDays = oReader.GetDouble("HoliDays").Value;
this.SetObjectState(oLeaveEncashment, Ease.Core.ObjectState.Saved); this.SetObjectState(oLeaveEncashment, Ease.Core.ObjectState.Saved);
} }
protected override T CreateObject<T>(DataReader oReader) protected override T CreateObject<T>(DataReader oReader)
@ -609,37 +605,6 @@ namespace HRM.Service
(((end.Month > start.Month) || (((end.Month > start.Month) ||
((end.Month == start.Month) && (end.Day >= start.Day))) ? 1 : 0); ((end.Month == start.Month) && (end.Day >= start.Day))) ? 1 : 0);
} }
public List<LeaveEncashment> GetByEmpIDs(string empIDs, int leaveyearid, DateTime EncashMonth)
{
List<LeaveEncashment> employees = new List<LeaveEncashment>();
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin();
DataReader dr = new DataReader(LeaveEncashmentDA.GetByEmpIDs(tc, empIDs, leaveyearid, EncashMonth));
employees = this.CreateObjects<LeaveEncashment>(dr);
dr.Close();
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
return employees;
}
} }
#endregion #endregion
} }

View File

@ -2558,18 +2558,18 @@ namespace HRM.DA
} }
} }
//if (lp.CalculationType == EnumLeaveCalculationType.Hourly_365Day) if (lp.CalculationType == EnumLeaveCalculationType.Hourly_365Day)
//{ {
// nDays = (nDiff - nDays) > 0 ? (nDiff - nDays) * 8 : 0; nDays = (nDiff - nDays) > 0 ? (nDiff - nDays) * 8 : 0;
//} }
//else if (lp.CalculationType == EnumLeaveCalculationType.Days_365) else if (lp.CalculationType == EnumLeaveCalculationType.Days_365)
//{ {
// nDays = (nDiff - nDays) > 0 ? nDiff - nDays : 0;
//}
//else
//{
nDays = (nDiff - nDays) > 0 ? nDiff - nDays : 0; nDays = (nDiff - nDays) > 0 ? nDiff - nDays : 0;
//} }
else
{
nDays = (nDiff - nDays) > 0 ? nDiff - nDays : 0;
}
nDays -= totalDayOff; nDays -= totalDayOff;
ThrowMessageForMinimumDays(leaveType, IsHalfDay && nDays == 1 ? nDays - 0.5 : nDays); ThrowMessageForMinimumDays(leaveType, IsHalfDay && nDays == 1 ? nDays - 0.5 : nDays);

View File

@ -696,7 +696,7 @@ namespace HRM.DA
//List<EnmSetupManagerTranType> setupTypes = SetupDetail.GetTypes(setup); //List<EnmSetupManagerTranType> setupTypes = SetupDetail.GetTypes(setup);
if (setupTypes == null) return parametersID; if (setupTypes == null) return parametersID;
//List<SetupDetail> details = SetupDetail.GetParameters(setup); //ObjectsTemplate<SetupDetail> details = SetupDetail.GetParameters(setup);
foreach (EnmSetupManagerTranType type in setupTypes) foreach (EnmSetupManagerTranType type in setupTypes)
{ {
@ -766,7 +766,7 @@ namespace HRM.DA
public List<LeaveParameter> ApplicableParamsForReport(Employee oEmp, List<EnmSetupManagerTranType> setupTypes, List<SetupDetail> details, List<LeaveParameter> leaveParamss) public List<LeaveParameter> ApplicableParamsForReport(Employee oEmp, List<EnmSetupManagerTranType> setupTypes, List<SetupDetail> details, List<LeaveParameter> leaveParamss)
{ {
List<int> leaveParamIds = ApplicableParametersForReport(oEmp, setupTypes, details); List<int> leaveParamIds = ApplicableParametersForReport(oEmp, setupTypes, details);
//List<LeaveParameter> leaveParamss = LeaveParameter.Get(); //ObjectsTemplate<LeaveParameter> leaveParamss = LeaveParameter.Get();
List<LeaveParameter> leaveParams = new List<LeaveParameter>(); List<LeaveParameter> leaveParams = new List<LeaveParameter>();
foreach (LeaveParameter lparam in leaveParamss) foreach (LeaveParameter lparam in leaveParamss)
{ {
@ -846,48 +846,6 @@ namespace HRM.DA
return dtl; return dtl;
} }
public List<LeaveParameter> ApplicableParamsForReportOptimized(Employee oEmp, List<EnmSetupManagerTranType> setupTypes, List<SetupDetail> details, List<LeaveParameter> leaveParamss, List<Leave> leaveTypes)
{
List<int> leaveParamIds = SetupManager.ApplicableParametersForReportOptimized(oEmp, setupTypes, details);
//List<LeaveParameter> leaveParamss = LeaveParameter.Get();
List<LeaveParameter> leaveParams = new List<LeaveParameter>();
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 #endregion
} }

View File

@ -288,7 +288,7 @@ namespace HRM.DA
{ {
} }
if (oItem.LeaveParameter.CalculationType == EnumLeaveCalculationType.Monthly//EnumLeaveCalculationType.Monthly_Earn if (oItem.LeaveParameter.CalculationType == EnumLeaveCalculationType.Monthly_Earn
&& oItem.EligibleParamDetail == null) // considering joining current year and will eligible next year. && oItem.EligibleParamDetail == null) // considering joining current year and will eligible next year.
{ {
Employee emp = new EmployeeService().Get(oItem.EmpId); 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. // + 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 // so folloiwng loic is needed to that
if (oItem.CalculationType == EnumLeaveCalculationType.Monthly)//EnumLeaveCalculationType.Monthly_Earn) if (oItem.CalculationType == EnumLeaveCalculationType.Monthly_Earn)
{ {
double months = Global.DateFunctions.DateDiff("M", oEmployee.JoiningDate, dCurrentDate); double months = Global.DateFunctions.DateDiff("M", oEmployee.JoiningDate, dCurrentDate);
if (oDetail.Year == 1 && months == 12) if (oDetail.Year == 1 && months == 12)
@ -1900,7 +1900,7 @@ namespace HRM.DA
nTotalDays = Math.Floor(nTotalDays); nTotalDays = Math.Floor(nTotalDays);
} }
else if (eType == EnumLeaveCalculationType.Monthly)/*EnumLeaveCalculationType.Monthly_Earn)*/ else if (eType == EnumLeaveCalculationType.Monthly_Earn)
{ {
if (emp.ID == 1807) 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. // + 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 // so folloiwng loic is needed to that
if (oItem.CalculationType == EnumLeaveCalculationType.Monthly)/*EnumLeaveCalculationType.Monthly_Earn)*/ if (oItem.CalculationType == EnumLeaveCalculationType.Monthly_Earn)
{ {
double months = Global.DateFunctions.DateDiff("M", oEmployee.JoiningDate, dCurrentDate); double months = Global.DateFunctions.DateDiff("M", oEmployee.JoiningDate, dCurrentDate);
if (oDetail.Year == 1 && months == 12) if (oDetail.Year == 1 && months == 12)

View File

@ -1,10 +1,9 @@
using Ease.Core.DataAccess; using HRM.BO;
using Ease.Core.DataAccess;
using Ease.Core.Model; using Ease.Core.Model;
using Ease.Core.Utility; using Ease.Core.Utility;
using HRM.BO;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Data;
using System.Text; using System.Text;
namespace HRM.DA namespace HRM.DA
@ -428,31 +427,6 @@ namespace HRM.DA
return false; return false;
} }
#endregion #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 #endregion

View File

@ -1,14 +1,13 @@
using Ease.Core.DataAccess; using System;
using Ease.Core.Model;
using Ease.Core.Utility;
using HRM.BO;
using HRM.DA;
using HRM.Service;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using HRM.BO;
using HRM.DA;
using Ease.Core.DataAccess;
using Ease.Core.Model;
using Ease.Core.Utility;
namespace HRM.DA namespace HRM.DA
{ {
@ -240,40 +239,6 @@ namespace HRM.DA
#endregion #endregion
} }
} }
public void Save(List<DataPermission> oDataPermissions)
{
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin(true);
int id = tc.GenerateID("DataPermission", "DataPermissionID");
foreach (DataPermission oDataPermission in oDataPermissions)
{
bool exists = DataPermissionDA.PermissionAlreadyExsits(tc, oDataPermission);
if (oDataPermission.IsNew && !exists)
{
base.SetObjectID(oDataPermission, id);
DataPermissionDA.Insert(tc, oDataPermission);
id++;
}
else
{
//DataPermissionDA.Update(tc, oDataPermission);
}
}
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException("Failed to Save Leave Year: " + e.Message, e);
#endregion
}
}
public void Delete(int id) public void Delete(int id)
{ {
TransactionContext tc = null; TransactionContext tc = null;

View File

@ -1,21 +1,20 @@
using Ease.Core.Model; using System;
using Ease.Core.Utility;
using Ease.CoreV35;
using HRM.BO;
using HRM.DA;
using Microsoft.Reporting.NETCore;
using Org.BouncyCastle.Ocsp;
using Payroll.BO;
using Payroll.Service;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel; using System.ComponentModel;
using System.Data; using System.Data;
using System.Drawing; using System.Drawing;
using System.IO;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using Payroll.BO;
using Ease.CoreV35;
using Ease.Core.Model;
using Ease.Core.Utility;
using System.Windows.Forms; using System.Windows.Forms;
using HRM.BO;
using HRM.DA;
using System.IO;
using Microsoft.Reporting.NETCore;
using Payroll.Service;
using static HRM.Report.PayrollDataSet.dsBonusDataSet; using static HRM.Report.PayrollDataSet.dsBonusDataSet;
using static HRM.Report.PayrollDataSet.PayrollDataSet; using static HRM.Report.PayrollDataSet.PayrollDataSet;
using static NPOI.POIFS.Crypt.Dsig.SignatureInfo; using static NPOI.POIFS.Crypt.Dsig.SignatureInfo;
@ -340,8 +339,7 @@ namespace HRM.Report
DateTime? bonusIntime = DateTime.MinValue; DateTime? bonusIntime = DateTime.MinValue;
DateTime? bonusOuttime = DateTime.MinValue; DateTime? bonusOuttime = DateTime.MinValue;
List<ProdBonusAttn> prodAttn = new ProdBonusAttnService().GetBySetupID(designId); List<ProdBonusAttn> prodAttn = new ProdBonusAttnService().GetBySetupID(designId);
if (prodAttn.Count <= 0) if (prodAttn.Count <= 0) return null;
throw new Exception("No data found");
string empIds = string.Empty; string empIds = string.Empty;
empIds = prodAttn.Select(x => x.EmployeeID).Distinct().Aggregate(new StringBuilder(), (sb, empid) => sb.Append(empid + ","), sb => sb.ToString().Trim(',')); empIds = prodAttn.Select(x => x.EmployeeID).Distinct().Aggregate(new StringBuilder(), (sb, empid) => sb.Append(empid + ","), sb => sb.ToString().Trim(','));
@ -349,7 +347,6 @@ namespace HRM.Report
List<DailyAttnProcess> oDailyAttnProsess = new DailyAttnProcessService().Get(empIds, design.FromDate.Date, design.ToDate.Date); List<DailyAttnProcess> oDailyAttnProsess = new DailyAttnProcessService().Get(empIds, design.FromDate.Date, design.ToDate.Date);
//List<DailyAttnProcess> oDailyAttnProsess = DailyAttnProcess.Get(empIds,GlobalFunctions.FirstDateOfMonth(design.SalaryMonth.AddMonths(-1)), GlobalFunctions.LastDateOfMonth(design.SalaryMonth)); //List<DailyAttnProcess> oDailyAttnProsess = DailyAttnProcess.Get(empIds,GlobalFunctions.FirstDateOfMonth(design.SalaryMonth.AddMonths(-1)), GlobalFunctions.LastDateOfMonth(design.SalaryMonth));
List<Employee> emps = new EmployeeService().GetByEmpIDs(empIds); List<Employee> emps = new EmployeeService().GetByEmpIDs(empIds);
DataTable dTblEmps = new EmployeeService().GetAllEmpBasicInfo(empIds).Tables[0];
List<Employee> attnEmp = new List<Employee>(); List<Employee> attnEmp = new List<Employee>();
PayrollDataSet.PayrollDataSet.dtProdAttendanceDataTable dTable = new PayrollDataSet.PayrollDataSet.dtProdAttendanceDataTable(); PayrollDataSet.PayrollDataSet.dtProdAttendanceDataTable dTable = new PayrollDataSet.PayrollDataSet.dtProdAttendanceDataTable();
foreach (ProdBonusAttn item in prodAttn) foreach (ProdBonusAttn item in prodAttn)
@ -369,8 +366,6 @@ namespace HRM.Report
List<ProdBonusAttn> tempAttn = prodAttn.Where(o => o.EmployeeID == item.ID).ToList();//.Sum(x => x.BonusHour); List<ProdBonusAttn> tempAttn = prodAttn.Where(o => o.EmployeeID == item.ID).ToList();//.Sum(x => x.BonusHour);
double hour = 0; double hour = 0;
DataRow drEmp = dTblEmps.AsEnumerable().FirstOrDefault(x => item.ID == x.Field<int>("EmployeeID"));
foreach (ProdBonusAttn tAtt in tempAttn) foreach (ProdBonusAttn tAtt in tempAttn)
{ {
@ -431,12 +426,6 @@ namespace HRM.Report
oDR["Date"] = dailyAtt.InTime.Value.Date.ToString("dd-MMM-yyyy"); oDR["Date"] = dailyAtt.InTime.Value.Date.ToString("dd-MMM-yyyy");
oDR["WorkingHour"] = hour.ToString("0.00"); oDR["WorkingHour"] = hour.ToString("0.00");
oDR["Designation"] = drEmp["Designation"].ToString();
oDR["Department"] = drEmp["Department"].ToString();
oDR["Floor"] = drEmp["Floor"].ToString();
oDR["Line"] = drEmp["Line"].ToString();
oDR["Section"] = drEmp["Section"].ToString();
dTable.Rows.Add(oDR); dTable.Rows.Add(oDR);
count++; count++;
} }

View File

@ -1,19 +1,17 @@
using HRM.BO; using System;
using HRM.DA;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using static HRM.Report.PayrollDataSet.PayrollDataSet; using System.Data;
using HRM.BO;
using HRM.DA;
namespace HRM.Report namespace HRM.Report
{ {
public class rptDigitalServiceBook public class rptDigitalServiceBook
{ {
public byte[] DigitalServiceBook(int empID, int payrollTypeID, DateTime fromDate, string sEmpIDs, int? authorizePersionID, string reportType) public byte[] DigitalServiceBook(int empID, int payrollTypeID, DateTime fromDate, string sEmpIDs, string reportType)
{ {
DataSet dSet = new DataSet(); DataSet dSet = new DataSet();
DataRow oDR = null; DataRow oDR = null;
@ -21,16 +19,6 @@ namespace HRM.Report
if (sEmpIDs != null) if (sEmpIDs != null)
empID = Convert.ToInt32(sEmpIDs); empID = Convert.ToInt32(sEmpIDs);
AuthorizedPerson authPerson = null;
if(authorizePersionID != null)
{
authPerson = new AuthorizedPersonService().Get((int)authorizePersionID);
}
//string TargetFolder = @"Documents\EMPPHOTO\";
//string currentDirectory = Directory.GetCurrentDirectory();
string TargetFolder = System.IO.Path.Combine(System.Environment.CurrentDirectory + @"\Documents\EMPPHOTO\");
#region Employee general info #region Employee general info
DataSet oEmp = new EmployeeService().GetEmpDigitalServiceBook(empID); DataSet oEmp = new EmployeeService().GetEmpDigitalServiceBook(empID);
@ -46,51 +34,25 @@ namespace HRM.Report
oDR["FATHERNAME"] = oDRow["FATHERNAME"]; oDR["FATHERNAME"] = oDRow["FATHERNAME"];
oDR["MOTHERNAME"] = oDRow["MOTHERNAME"]; oDR["MOTHERNAME"] = oDRow["MOTHERNAME"];
oDR["SPOUSENAME"] = oDRow["SPOUSENAME"]; oDR["SPOUSENAME"] = oDRow["SPOUSENAME"];
//oDR["JOININGDATE"] = Convert.ToDateTime(oDRow["JOININGDATE"]).ToString("dd/MM/yyyy"); oDR["JOININGDATE"] = Convert.ToDateTime(oDRow["JOININGDATE"]).ToString("dd/MM/yyyy");
DateTime jointDate = Convert.ToDateTime(oDRow["JOININGDATE"]);
oDR["JOININGDATE"] = string.Format("{0} {1} {2}", jointDate.Day, GlobalExtensions.BanglaMonth(jointDate), jointDate.Year);
oDR["DESIGNATION"] = oDRow["DESIGNATION"]; oDR["DESIGNATION"] = oDRow["DESIGNATION"];
//oDR["DESIGNATION"] = rptDigitalServiceBook.ConvertToBijoy(oDRow["DESIGNATION"].ToString()); //oDR["DESIGNATION"] = rptDigitalServiceBook.ConvertToBijoy(oDRow["DESIGNATION"].ToString());
oDR["PARMANENTADDRESS"] = oDRow["PARMANENTADDRESS"]; oDR["PARMANENTADDRESS"] = oDRow["PARMANENTADDRESS"];
oDR["PRESENTADDRESS"] = oDRow["PRESENTADDRESS"]; oDR["PRESENTADDRESS"] = oDRow["PRESENTADDRESS"];
oDR["BIRTHDATE"] = Convert.ToDateTime(oDRow["BIRTHDATE"]).ToString("dd/MM/yyyy");
//oDR["BIRTHDATE"] = Convert.ToDateTime(oDRow["BIRTHDATE"]).ToString("dd/MM/yyyy");
DateTime birthDate = Convert.ToDateTime(oDRow["BIRTHDATE"]);
oDR["BIRTHDATE"] = string.Format("{0} {1} {2}", birthDate.Day, GlobalExtensions.BanglaMonth(birthDate), birthDate.Year);
//if (oDRow["PHOTO"] is not DBNull) //if (oDRow["PHOTO"] is not DBNull)
// oDR["PHOTO"] = Convert.ToBase64String((byte[])oDRow["PHOTO"]); // oDR["PHOTO"] = Convert.ToBase64String((byte[])oDRow["PHOTO"]);
oDR["NIDNO"] = oDRow["NIDNO"]; oDR["NIDNO"] = oDRow["NIDNO"];
oDR["HEIGHT"] = oDRow["HEIGHT"]; oDR["HEIGHT"] = oDRow["HEIGHT"];
//oDR["BLOODGROUP"] = GlobalExtensions.BloodGroupToFriendlyName((EnumBloodGroup)Enum.Parse(typeof(EnumBloodGroup), oDR["BLOODGROUP"] = GlobalExtensions.BloodGroupToFriendlyName((EnumBloodGroup)Enum.Parse(typeof(EnumBloodGroup),
// Convert.ToInt32(oDRow["BLOODGROUP"]).ToString())); Convert.ToInt32(oDRow["BLOODGROUP"]).ToString()));
oDR["BLOODGROUP"] = GlobalFunctions.BloodGroupToBangla((EnumBloodGroup)Convert.ToInt32(oDRow["BLOODGROUP"]));
//oDR["BLOODGROUP"] = (EnumBloodGroup)Enum.Parse(typeof(EnumBloodGroup), Convert.ToInt32(oDRow["BLOODGROUP"]).ToString()); //oDR["BLOODGROUP"] = (EnumBloodGroup)Enum.Parse(typeof(EnumBloodGroup), Convert.ToInt32(oDRow["BLOODGROUP"]).ToString());
oDR["LMDESIGNATION"] = oDRow["LMDESIGNATION"]; oDR["LMDESIGNATION"] = oDRow["LMDESIGNATION"];
//oDR["LMDESIGNATION"] = rptDigitalServiceBook.ConvertToBijoy(oDRow["LMDESIGNATION"].ToString()); //oDR["LMDESIGNATION"] = rptDigitalServiceBook.ConvertToBijoy(oDRow["LMDESIGNATION"].ToString());
oDR["EDUCATIONLEVEL"] = oDRow["EDUCATIONLEVEL"]; oDR["EDUCATIONLEVEL"] = oDRow["EDUCATIONLEVEL"];
oDR["PARMANENTDISTRICT"] = oDRow["PARMANENTDISTRICT"];
oDR["PARMANENTTHANA"] = oDRow["PARMANENTTHANA"];
oDR["POSTOFFICEPA"] = oDRow["POSTOFFICEPA"];
oDR["DISTRICTPA"] = oDRow["DISTRICTPA"];
oDR["THANAPA"] = oDRow["THANAPA"];
oDR["VILLAGEPA"] = oDRow["VILLAGEPA"];
oDR["ROADNOPA"] = oDRow["ROADNOPA"];
oDR["WARDNOPA"] = oDRow["WARDNOPA"];
oDR["POSTOFFICETA"] = oDRow["POSTOFFICETA"];
oDR["DISTRICTTA"] = oDRow["DISTRICTTA"];
oDR["THANATA"] = oDRow["THANATA"];
oDR["VILLAGETA"] = oDRow["VILLAGETA"];
oDR["ROADNOTA"] = oDRow["ROADNOTA"];
oDR["WARDNOTA"] = oDRow["WARDNOTA"];
oDR["PHOTO"] = System.IO.Path.Combine(TargetFolder + string.Format("Image-{0}.jpg", oDRow["EMPLOYEENO"]));
oDR["SIGNATURE"] = System.IO.Path.Combine(TargetFolder + string.Format("Signature-{0}.jpg", oDRow["EMPLOYEENO"]));
if (authPerson != null)
oDR["AUTHSIGN"] = authPerson.Signature;
dTable.Rows.Add(oDR); dTable.Rows.Add(oDR);
//count++; //count++;
@ -133,9 +95,7 @@ namespace HRM.Report
foreach (DataRow oDRow in dtEmplifecycle.Rows) foreach (DataRow oDRow in dtEmplifecycle.Rows)
{ {
oDR = dTable.NewRow(); oDR = dTable.NewRow();
//oDR["EFFECTDATE"] = Convert.ToDateTime(oDRow["EFFECTDATE"]).ToString("dd/MM/yyyy"); oDR["EFFECTDATE"] = Convert.ToDateTime(oDRow["EFFECTDATE"]).ToString("dd/MM/yyyy");
DateTime efectDate = Convert.ToDateTime(oDRow["EFFECTDATE"]);
oDR["EFFECTDATE"] = string.Format("{0} {1} {2}", efectDate.Day, GlobalExtensions.BanglaMonth(efectDate), efectDate.Year);
//Designation Designation = new DesignationService().Get(Convert.ToInt32(oDRow["DESIGNATIONID"])); //Designation Designation = new DesignationService().Get(Convert.ToInt32(oDRow["DESIGNATIONID"]));
//oDR["DESIGNATION"] = Designation.NameInBangla; //oDR["DESIGNATION"] = Designation.NameInBangla;
Grade oGrade = new GradeService().Get(Convert.ToInt32(oDRow["GradeID"])); Grade oGrade = new GradeService().Get(Convert.ToInt32(oDRow["GradeID"]));
@ -164,14 +124,8 @@ namespace HRM.Report
foreach (DataRow oDRow in oLeaveEntry.Tables[0].Rows) foreach (DataRow oDRow in oLeaveEntry.Tables[0].Rows)
{ {
oDR = dTable.NewRow(); oDR = dTable.NewRow();
oDR["FROMDATE"] = Convert.ToDateTime(oDRow["APRFROMDATE"]).ToString("dd/MM/yyyy");
DateTime fromDateDr = Convert.ToDateTime(oDRow["APRFROMDATE"]); oDR["TODATE"] = Convert.ToDateTime(oDRow["APRTODATE"]).ToString("dd/MM/yyyy");
oDR["FROMDATE"] = string.Format("{0} {1} {2}", fromDateDr.Day, GlobalExtensions.BanglaMonth(fromDateDr), fromDateDr.Year);
DateTime toDateDr = Convert.ToDateTime(oDRow["APRTODATE"]);
oDR["TODATE"] = string.Format("{0} {1} {2}", toDateDr.Day, GlobalExtensions.BanglaMonth(toDateDr), toDateDr.Year);
//oDR["FROMDATE"] = Convert.ToDateTime(oDRow["APRFROMDATE"]).ToString("dd/MM/yyyy");
//oDR["TODATE"] = Convert.ToDateTime(oDRow["APRTODATE"]).ToString("dd/MM/yyyy");
oDR["TOTALDAYS"] = Convert.ToInt32(oDRow["APRTOTALDAYS"]).ToString(); oDR["TOTALDAYS"] = Convert.ToInt32(oDRow["APRTOTALDAYS"]).ToString();
dTable.Rows.Add(oDR); dTable.Rows.Add(oDR);
@ -192,9 +146,7 @@ namespace HRM.Report
foreach (DataRow oDRow in oComplain.Tables[0].Rows) foreach (DataRow oDRow in oComplain.Tables[0].Rows)
{ {
oDR = dTable.NewRow(); oDR = dTable.NewRow();
//oDR["EFFECTDATE"] = Convert.ToDateTime(oDRow["EFFECTDATE"]).ToString("dd/MM/yyyy"); oDR["EFFECTDATE"] = Convert.ToDateTime(oDRow["EFFECTDATE"]).ToString("dd/MM/yyyy");
DateTime efectDate = Convert.ToDateTime(oDRow["EFFECTDATE"]);
oDR["EFFECTDATE"] = string.Format("{0} {1} {2}", efectDate.Day, GlobalExtensions.BanglaMonth(efectDate), efectDate.Year);
//if (oDRow["DESCRIPTIONINBANGLA"] is DBNull) //if (oDRow["DESCRIPTIONINBANGLA"] is DBNull)
// oDR["DESCRIPTION"] = oDRow["DESCRIPTION"]; // oDR["DESCRIPTION"] = oDRow["DESCRIPTION"];
//else //else

View File

@ -1,24 +1,22 @@
using DocumentFormat.OpenXml.Office2010.Excel; using System;
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.Collections.Generic;
using System.Data; using System.Data;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
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.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;
namespace HRM.Report namespace HRM.Report
{ {
@ -3011,679 +3009,5 @@ namespace HRM.Report
#endregion #endregion
#endregion #endregion
#region Employee Detail Info
public byte[] ShowEmployeeDetailInfo(string sEmpID, string reportType, int payrollTypeID)
{
try
{
ReportProcessor reportProcessor = new ReportProcessor();
//string sEmpID = _selectedParameter.ReportItem.INSQL;
DataRow dr = null;
List<Employee> oEmps = new EmployeeService().GetByEmpIDs(sEmpID);
List<HREmployee> hrEmployees = new HREmployeeService().GetEmployeeByIds(sEmpID);
List<EducationLevel> educationLevels = new EducationLevelService().Get();
List<EmpAcademic> empAcademics = new HREmployeeService().GetAllEmpAcademics();
Employee oEmployee = null;
List<int> validIds = sEmpID.Split(',')
.Select(s => int.Parse(s))
.ToList();
DataSet oEmpDetails = new EmployeeService().GetEmpDetailsEcho(sEmpID);
List<DataRow> rowsToDelete = new List<DataRow>();
foreach (DataRow row in oEmpDetails.Tables[0].Rows)
{
int empId = Convert.ToInt32(row["employeeID"]);
if (!validIds.Contains(empId))
{
rowsToDelete.Add(row);
}
}
// Now remove them
foreach (DataRow row in rowsToDelete)
{
oEmpDetails.Tables[0].Rows.Remove(row);
}
// Optional: accept changes if you want to commit removal
oEmpDetails.AcceptChanges();
DataTable dtDFSL = new EmployeeService().GetDFSL();
HRM.Report.PayrollDataSet.PayrollDataSet.EmployeeDetailEchoDataTable dTEmpDetail = new HRM.Report.PayrollDataSet.PayrollDataSet.EmployeeDetailEchoDataTable();
//bool isDesigFromEmp = ConfigurationManager.GetBoolValue("designation", "desigfromdescriptiontext", EnumConfigurationType.Logic_Old);
bool isDesigFromEmp = false;
foreach (DataRow oDRow in oEmpDetails.Tables[0].Rows)
{
string[] sDes = GlobalExtensions.GetDFSL(dtDFSL, oDRow["DepartmentID"].ToString());
oEmployee = oEmps.Where(o => o.EmployeeNo.ToUpper().Trim() == oDRow["EMPLOYEENO"].ToString().ToUpper().Trim())
.SingleOrDefault();
dr = dTEmpDetail.NewRow();
dr["EmpNo"] = oDRow["EMPLOYEENO"];
dr["Name"] = oDRow["NAME"];
if (isDesigFromEmp && oEmployee != null)
dr["Designation"] = oEmployee.DescriptionText;
else
dr["Designation"] = oDRow["DegName"];
if (sDes.Length == 5)
{
dr["Department"] = sDes[1];
dr["Floor"] = sDes[2];
dr["Section"] = sDes[3];
dr["Line"] = sDes[4];
}
else if (sDes.Length == 4)
{
dr["Department"] = sDes[1];
dr["Floor"] = sDes[2];
dr["Section"] = sDes[3];
}
else if (sDes.Length == 3)
{
dr["Department"] = sDes[1];
dr["Floor"] = sDes[2];
}
else if (sDes.Length == 2)
{
dr["Department"] = sDes[1];
}
dr["Category"] = oDRow["Category"];
dr["Grade"] = oDRow["GDDes"];
dr["BasicSalary"] = oDRow["BASICSALARY"];
dr["DOB"] = oDRow["BIRTHDATE"];
if (Convert.ToInt32(oDRow["GENDER"]) == 0)
{
dr["Gender"] = "None";
}
else if (Convert.ToInt32(oDRow["GENDER"]) == 1)
{
dr["Gender"] = "Male";
}
else if (Convert.ToInt32(oDRow["GENDER"]) == 2)
{
dr["Gender"] = "Female";
}
else if (Convert.ToInt32(oDRow["GENDER"]) == 3)
{
dr["Gender"] = "Both";
}
dr["Religion"] = oDRow["RegName"];
dr["Bank"] = oDRow["Bank"];
dr["Branch"] = oDRow["Branch"];
dr["AccountNo"] = oDRow["ACCOUNTNO"];
dr["BankOPI"] = oDRow["OUTPayBank"];
dr["BranchOPI"] = oDRow["OUTPayBranch"];
dr["AccountNoOPI"] = oDRow["OutPayAccountNo"];
dr["TempPost"] = oDRow["PresentPO"];
dr["PerPost"] = oDRow["PermanentPO"];
dr["DOJ"] = oDRow["JOININGDATE"];
dr["ConfirmDate"] = oDRow["DATEOFCONFIRMATION"];
dr["TaxAmount"] = oDRow["TAXAMOUNT"];
dr["LocDes"] = oDRow["LocDes"];
dr["GrossSalary"] = oDRow["GrossSalary"];
dr["VendorCode"] = oDRow["VendorCode"];
dr["BanglaName"] = oDRow["BanglaName"];
dr["BanglaDesignation"] = oDRow["BanglaDesignation"];
dr["DEPARTMENTBANGLA"] = oDRow["DEPARTMENTBANGLA"];
dr["SectionBangla"] = oDRow["SectionBangla"];
if (Convert.ToInt32(oDRow["MARITALSTATUSID"]) == 0)
{
dr["MarStatus"] = "None";
}
else if (Convert.ToInt32(oDRow["MARITALSTATUSID"]) == 1)
{
dr["MarStatus"] = "Married";
}
else if (Convert.ToInt32(oDRow["MARITALSTATUSID"]) == 2)
{
dr["MarStatus"] = "UnMarried";
}
dr["MobileNo"] = oDRow["MOBILENO"];
dr["MailAdd"] = oDRow["EMAILADDRESS"];
dr["RFID"] = oDRow["CardNo"];
dr["Nationality"] = oDRow["Nationality"];
dr["FathersName"] = oDRow["FATHERNAME"];
dr["MothersName"] = oDRow["MOTHERNAME"];
dr["Spouse"] = oDRow["Spouse"];
dr["OFFICEMOBILE"] = oDRow["OFFICEMOBILE"].ToString();
dr["LANDPHONE"] = oDRow["LANDPHONE"].ToString();
string sEducationLevel = string.Empty;
HREmployee ohrEmp = hrEmployees.Find(delegate (HREmployee hEmp) { return hEmp.EmployeeNo == oEmployee.EmployeeNo; });
if (ohrEmp != null)
{
ohrEmp.Academics = empAcademics.FindAll(ea => ea.EmployeeID == ohrEmp.ID);//new HREmployeeService().GetAllEmpAcademics(ohrEmp.ID);
if(ohrEmp.Academics?.Count > 0)
{
foreach (EmpAcademic eAcademic in ohrEmp.Academics)
{
eAcademic.EducationLevel = educationLevels.Find(el => el.ID == (int)eAcademic.EducationLevelID);
if (sEducationLevel == "")
{
sEducationLevel = sEducationLevel + eAcademic.EducationLevel?.Description;
}
else if (sEducationLevel != "")
{
sEducationLevel = sEducationLevel + "," + eAcademic.EducationLevel?.Description;
}
}
}
}
dr["Qualification"] = sEducationLevel;
dr["VotterID"] = oDRow["NationalID"];
dr["TempVill"] = oDRow["TempVillage"];
dr["TempPS"] = oDRow["TempThana"];
dr["TempDist"] = oDRow["TempDist"];
dr["PerVill"] = oDRow["PerVillage"];
dr["PerPS"] = oDRow["PerThana"];
dr["PerDist"] = oDRow["PerDist"];
dr["BloodGroup"] = ((EnumBloodGroup)Convert.ToInt32(oDRow["BLOODGROUP"])).BloodGroupToFriendlyName();
dTEmpDetail.Rows.Add(dr);
}
DataSet dSet = new DataSet();
dTEmpDetail.TableName = "PayrollDataSet_EmployeeDetail";
dSet.Tables.Add(dTEmpDetail);
//bool isOPISeparateAcountApplicable = ConfigurationManager.GetBoolValue("opi", "opiexist", EnumConfigurationType.Logic_Old);
bool isOPISeparateAcountApplicable = true;
List<ReportParameter> reportParameters = null;
if (isOPISeparateAcountApplicable)
{
//form.CommonReportView(_selectedParameter.ReportItem, dSet, "HRM.Report.RDLC.EmployeeDetailWithOPI.rdlc", null);
//return reportProcessor.AttendanceReportsView(null, dSet, null, "HRM.Report.RDLC.EmployeeDetailWithOPI.rdlc", _reportParameters, true, payrollTypeID, reportType);
return reportProcessor.CommonReportView(null, "HRM.Report.RDLC.EmployeeDetailWithOPIEcho.rdlc", dSet, null, reportParameters, true, payrollTypeID, reportType);
}
else
{
//form.CommonReportView(_selectedParameter.ReportItem, dSet, "HRM.Report.RDLC.EmployeeDetail.rdlc", null);
//return reportProcessor.AttendanceReportsView(null, dSet, null, "HRM.Report.RDLC.EmployeeDetail.rdlc",, _reportParameters, true, payrollTypeID, reportType);
return reportProcessor.CommonReportView(null, "HRM.Report.RDLC.EmployeeDetailEcho.rdlc", dSet, null, reportParameters, true, payrollTypeID, reportType);
}
}
catch (Exception ex)
{
throw new Exception(ex.Message, ex);
}
}
#endregion
#region Leave Reports
public byte[] ShowEmployeeIndvLeaveBalance(string sEmpID, DateTime fromDate, DateTime toDate, int leaveType, int payrollTypeID, DateTime nextPayProcessDate, string reportType)
{
try
{
ReportProcessor form = new ReportProcessor();
DataRow oRow = null;
LeaveYear ly = new LeaveYear();
List<Leave> leaveTypes = new LeaveService().Get();
List<LeaveYear> _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<LeaveEntry> oLeaveEntrys = new List<LeaveEntry>();
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<Employee> oEmps = new List<Employee>();
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<EmpLeaveStatus> 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);
}
catch (Exception ex)
{
throw new Exception(ex.Message, ex);
}
}
public byte[] ShowMultipleEmployeeLeaveReport(string sEmpIDs, int lyyid, int payrollTypeID, DateTime nextPayProcessDate, string reportType)
{
try
{
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<ReportParameter> oParameters = new List<ReportParameter>();
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");
}
}
catch (Exception ex)
{
throw new Exception(ex.Message, ex);
}
}
public byte[] ShowLeaveReport(string sEmpIDs, int lyyid, int payrollTypeID, DateTime nextPayProcessDate, string reportType)
{
try
{
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<ReportParameter> oParameters = new List<ReportParameter>();
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");
}
}
catch (Exception ex)
{
throw new Exception(ex.Message, ex);
}
}
public byte[] ShowLeaveRegisterBanglaReport(string sEmpID, int authPersonID, int payrollTypeID, DateTime nextPayProcessDate, string reportType)
{
try
{
ReportProcessor fViewer = new ReportProcessor();
int CL, SL, ML, PL, EL, SPL, COM, LWOP, OpeningEL;
bool ELVisible, CLVisible, SLVisible, MLVisible, PLVisible, SPLVisible, COMVisible, LWOPVisible;
CLVisible = MLVisible = ELVisible = SLVisible = PLVisible = SPLVisible = COMVisible = LWOPVisible = false;
CL = SL = ML = PL = EL = SPL = COM = LWOP = OpeningEL = 0;
List<Leave> oLeaves = new LeaveService().Get();
Leave oLeave = null;
LeaveYear lyy = new LeaveYearService().GetCurrentYear(payrollTypeID);
//_rImageManager = new RemoteImageManager();
string signaturePath = string.Empty;
AuthorizedPerson oAuthPerson = null;
int employeeID = Convert.ToInt32(sEmpID);
Employee employee = new EmployeeService().Get(employeeID);
HREmployee oEmployee = new HREmployeeService().Get(employeeID);
if (authPersonID != null)
{
oAuthPerson = new AuthorizedPersonService().Get(authPersonID);
//signaturePath = _rImageManager.GetImage(oAuthPerson.GetImage(authPersonID), "AuthSign.jpg");
}
string TargetFolder = System.IO.Path.Combine(System.Environment.CurrentDirectory + @"\Documents\EMPPHOTO\");
DateTime operationDate = new GlobalFunctionService().GetOperationDate();
if (operationDate.Date > lyy.EndDate.Date)
{
operationDate = lyy.EndDate.Date;
}
List<EmpLeaveStatus> dcurrentStatus = new EmpLeaveStatusService().CurrentYearStatus(new List<Employee> { employee }, lyy, operationDate, EnumLeaveStatus.Approved, nextPayProcessDate);
List<LeaveEntry> TempLeaveEntry = new LeaveEntryService().Get(employee.ID, lyy.ID)
.Where(x => x.LeaveStatus == EnumLeaveStatus.Approved || x.LeaveStatus == EnumLeaveStatus.Availed)
.OrderBy(x => x.ApprovedFromDate)
.ToList();
List<LeaveEntry> leaveEntrys = oLeaves.Where(l => l.Code == "CL" || l.Code == "SL" || l.Code == "EL")
.Join(TempLeaveEntry,
l => l.ID,
le => le.LeaveID,
(l, le) => le)
.ToList();
DataTable dEmpLeaveApplication = new HRM.Report.PayrollDataSet.dsEmpLeaveLedger.LeaveRegisterBanglaDataTable();
if (dcurrentStatus.Count > 0)
{
for (int i = 0; i < dcurrentStatus.Count; i++)
{
oLeave = oLeaves.FirstOrDefault(x => x.ID == dcurrentStatus[i].LeaveId);
if (oLeave != null)
switch (oLeave.Code)
{
case "CL":
CL = (int)dcurrentStatus[i].OpeningBalance;
CLVisible = true;
break;
case "SL":
SL = (int)dcurrentStatus[i].OpeningBalance;
SLVisible = true;
break;
case "ML":
// ML = (int)dcurrentStatus[i].OpeningBalance;
//MLVisible = true;
break;
case "PL":
//PL = (int)dcurrentStatus[i].OpeningBalance;
//PLVisible = true;
break;
case "EL":
EL = (int)dcurrentStatus[i].OpeningBalance;
OpeningEL = (int)dcurrentStatus[i].OpeningBalance;
ELVisible = true;
break;
case "SPL":
//SPL = (int)dcurrentStatus[i].OpeningBalance;
//SPLVisible = true;
break;
case "COM":
//COM = (int)dcurrentStatus[i].OpeningBalance;
//COMVisible = true;
break;
case "LWOP":
//LWOP = (int)dcurrentStatus[i].OpeningBalance;
//LWOPVisible = true;
break;
default:
break;
}
}
DataSet ds = new DataSet();
DataRow dr = dEmpLeaveApplication.NewRow();
DataTable dtEmpBasicInfo = new EmployeeService().GetAllEmpBasicInfo(employee.ID.ToString())
.Tables[0]
.AsEnumerable()
.CopyToDataTable();
foreach (DataRow drBasic in dtEmpBasicInfo.Rows)
{
dr["EmpName"] = drBasic["BanglaName"];
dr["Designation"] = drBasic["BanglaDesignation"];
dr["CardNo"] = drBasic["EmployeeNo"];
//AccessCard acc = AccessCard.Get(drBasic["CardID"] is DBNull ? ID.FromInteger(0) : ID.FromInteger(Convert.ToInt32(drBasic["CardID"].ToString())));
//if (acc != null)
//{
// dr["CardNo"] = acc.CardNumber;
//}
dr["JoiningDate"] = Convert.ToDateTime(drBasic["JoiningDate"].ToString()).ToString("dd-MM-yyyy");
dr["Department"] = drBasic["DepartmentBangla"];
dr["Section"] = drBasic["SectionBangla"];
}
dr["OpeningEL"] = OpeningEL.ToString();
dr["RemainingEL"] = EL.ToString();
dr["RemainingCL"] = CL.ToString();
dr["RemainingSL"] = SL.ToString();
dr["RemainingML"] = ML.ToString();
dr["RemainingPL"] = PL.ToString();
dr["RemainingSPL"] = SPL.ToString();
dr["RemainingCOM"] = COM.ToString();
dr["RemainingLWOP"] = LWOP.ToString();
dr["EmployeeSignature"] = System.IO.Path.Combine(TargetFolder + string.Format("Signature-{0}.jpg", employee.EmployeeNo));
if (oAuthPerson != null)
dr["EmployerSignature"] = oAuthPerson.Signature;
dEmpLeaveApplication.Rows.Add(dr);
foreach (var entry in leaveEntrys)
{
oLeave = oLeaves.FirstOrDefault(x => x.ID == entry.LeaveID);
if (oLeave != null)
{
dr = dEmpLeaveApplication.NewRow();
string description = string.Format("{0} ‡_‡K {1}",
entry.ApprovedFromDate.ToString("dd-MM-yyyy"),
entry.ApprovedToDate.ToString("dd-MM-yyyy"));
switch (oLeave.Code)
{
case "CL":
dr["DesCL"] = description;
CL -= (int)entry.ApprovedTotalDays;
break;
case "SL":
dr["DesSL"] = description;
SL -= (int)entry.ApprovedTotalDays;
break;
case "ML":
dr["DesML"] = description;
ML -= (int)entry.ApprovedTotalDays;
break;
case "PL":
dr["DesPL"] = description;
PL -= (int)entry.ApprovedTotalDays;
break;
case "EL":
dr["DesEL"] = description;
EL -= (int)entry.ApprovedTotalDays;
break;
case "SPL":
dr["DesSPL"] = description;
SPL -= (int)entry.ApprovedTotalDays;
break;
case "COM":
dr["DesCOM"] = description;
COM -= (int)entry.ApprovedTotalDays;
break;
case "LWOP":
dr["DesLWOP"] = description;
LWOP -= (int)entry.ApprovedTotalDays;
break;
default:
break;
}
dr["LeaveGrantedDate"] = entry.ApprovedLeaveDate.ToString("dd-MM-yyyy");
dr["TotalGrantedDays"] = entry.ApprovedTotalDays.ToString("N0");
dr["RemainingEL"] = EL.ToString();
dr["RemainingCL"] = CL.ToString();
dr["RemainingSL"] = SL.ToString();
dr["RemainingML"] = ML.ToString();
dr["RemainingPL"] = PL.ToString();
dr["RemainingSPL"] = SPL.ToString();
dr["RemainingCOM"] = COM.ToString();
dr["RemainingLWOP"] = LWOP.ToString();
dr["EmployeeSignature"] = System.IO.Path.Combine(TargetFolder + string.Format("Signature-{0}.jpg", employee.EmployeeNo));
if (oAuthPerson != null)
dr["EmployerSignature"] = oAuthPerson.Signature;
dEmpLeaveApplication.Rows.Add(dr);
}
}
dEmpLeaveApplication.TableName = "dsEmpLeaveLedger_LeaveRegisterBangla";
ds.Tables.Add(dEmpLeaveApplication);
List<ReportParameter> oParameters = new List<ReportParameter>();
oParameters.Add(new ReportParameter("CompanyNameBangla", System.Configuration.ConfigurationManager.AppSettings["CompanyNameBangla"]));
oParameters.Add(new ReportParameter("CompanyAddressBangla", System.Configuration.ConfigurationManager.AppSettings["CAddress"]));
oParameters.Add(new ReportParameter("CLVisible", CLVisible.ToString()));
oParameters.Add(new ReportParameter("MLVisible", MLVisible.ToString()));
oParameters.Add(new ReportParameter("ELVisible", ELVisible.ToString()));
oParameters.Add(new ReportParameter("SLVisible", SLVisible.ToString()));
oParameters.Add(new ReportParameter("PLVisible", PLVisible.ToString()));
oParameters.Add(new ReportParameter("SPLVisible", SPLVisible.ToString()));
oParameters.Add(new ReportParameter("COMVisible", COMVisible.ToString()));
oParameters.Add(new ReportParameter("LWOPVisible", LWOPVisible.ToString()));
oParameters.Add(new ReportParameter("SignPath", signaturePath));
oParameters.Add(new ReportParameter("EmpSignature", string.Empty));//_rImageManager.GetImage(oEmployee.Signature)));
//ReportParameter rParam = new ReportParameter("LeaveYear", string.Format("{0} - {1}", lyy.StartDate.ToString("dd MMM yyyy"), lyy.EndDate.ToString("dd MMM yyyy")));
//oParameters.Add(rParam);
//fViewer.CommonReportView(null, ds, "Payroll.Report.RDLC.BanglaLeaveRegister.rdlc", oParameters);
string RDLC = "BanglaLeaveRegister.rdlc";
return fViewer.CommonReportViewForReports(null, ds, null, RDLC, oParameters, true, payrollTypeID, reportType);
}
else
{
throw new Exception("data not found");
}
}
catch (Exception ex)
{
throw new Exception(ex.Message, ex);
}
}
public byte[] ShowLeaveEncashmentReport(string sEmpIDs, DateTime fromMonth, int lyyid, int payrollTypeID, DateTime nextPayProcessDate, string reportType)
{
try
{
ReportProcessor form = new ReportProcessor();
LeaveYear oLeaveYear = new LeaveYearService().Get(lyyid);
string leaveYear = fromMonth.ToString("MMMM yyyy") + " - " + fromMonth.AddYears(1).ToString("MMMM yyyy");//cboLeaveYear.Text;
//DataTable dTEmpLeave = new HRM.Report.PayrollDataSet.dsEmpLeaveLedger.LeaveBalanceDataTable();
DataTable dt = new EmpLeaveStatusService().CurrentYearStatusForEncashment(sEmpIDs, oLeaveYear, EnumLeaveStatus.Approved, fromMonth);
DataSet dSet = new DataSet();
dt.TableName = "PayrollDataSet_dtEncashmentReportNew";
dSet.Tables.Add(dt); ;
List<ReportParameter> oParameters = new List<ReportParameter>();
ReportParameter rParam = new ReportParameter("LeaveYear", leaveYear);
oParameters.Add(rParam);
rParam = new ReportParameter("EncashMonth", fromMonth.ToString("MMMM yyyy"));
oParameters.Add(rParam);
string RDLC = "EncashmentReportEcho.rdlc";
return form.CommonReportViewForReports(null, dSet, null, RDLC, oParameters, true, payrollTypeID, reportType);
}
catch (Exception ex)
{
throw new Exception(ex.Message, ex);
}
}
#endregion
} }
} }

View File

@ -18,12 +18,10 @@ using Org.BouncyCastle.Ocsp;
using HRM.Service; using HRM.Service;
using HRM.BO.Configuration; using HRM.BO.Configuration;
using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration;
//using NPOI.SS.Formula.Functions; using NPOI.SS.Formula.Functions;
using System.Collections; using System.Collections;
using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Http;
//using NPOI.HPSF; using NPOI.HPSF;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
namespace HRM.Report namespace HRM.Report
{ {
@ -3571,7 +3569,7 @@ namespace HRM.Report
table.Add(TagOutputConstant.AllowTotal, TotalAllowance.ToString("#,###.00")); table.Add(TagOutputConstant.AllowTotal, TotalAllowance.ToString("#,###.00"));
table.Add(TagOutputConstant.TakaInWord, HRM.BO.GlobalFunctions.MillionToInWords((int)TotalAllowance)); table.Add(TagOutputConstant.TakaInWord, HRM.BO.GlobalFunctions.MillionToInWords((int)TotalAllowance));
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".docx"; sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".doc";
#endregion #endregion
@ -3591,7 +3589,7 @@ namespace HRM.Report
table = new EmployeeService().CollectDataForBanglaAppointmentHash(oHREmp, payrollType); table = new EmployeeService().CollectDataForBanglaAppointmentHash(oHREmp, payrollType);
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".docx"; sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".doc";
#endregion #endregion
@ -3610,7 +3608,7 @@ namespace HRM.Report
table = new EmployeeService().CollectDataForBanglaAppointmentHash(oHREmp, payrollType); table = new EmployeeService().CollectDataForBanglaAppointmentHash(oHREmp, payrollType);
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".docx"; sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".doc";
#endregion #endregion
@ -3621,11 +3619,11 @@ namespace HRM.Report
if (oCandidate.IsEmployee == false) if (oCandidate.IsEmployee == false)
{ {
table.Add(TagOutputConstant.CandidateName, oCV.Name); table.Add(TagOutputConstant.CandidateName, oCV.Name);
sFilePath = sFPath.TrimEnd('\\') + "\\" + oCV.TrackNo + "-" + sLetterName + ".docx"; sFilePath = sFPath.TrimEnd('\\') + "\\" + oCV.TrackNo + "-" + sLetterName + ".doc";
} }
else else
{ {
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".docx"; sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".doc";
} }
break; break;
@ -3635,49 +3633,26 @@ namespace HRM.Report
if (table != null) if (table != null)
{ {
#region OLD
//MSWord file = new MSWord();
//FileInfo ossInfo = null;
////file.OriginalFile = letterTemplte.FilePath.Trim();
//file.OriginalFile = System.IO.Path.Combine(System.Environment.CurrentDirectory + "\\Documents\\LetterTempFolder\\" + lFileName);
//ossInfo = new FileInfo(sFilePath);
//if (ossInfo.Exists)
//{
// ossInfo.Delete();
//}
//File.Copy(file.OriginalFile, sFilePath, true);
//file = new MSWord();
//file.OpenWordApplication();
////file.OriginalFile = letterTemplte.FilePath.Trim();
//file.OriginalFile = System.IO.Path.Combine(System.Environment.CurrentDirectory + "\\Documents\\LetterTempFolder\\" + lFileName);
//file.ReplaceWords(sFilePath, table);
//file.CloseWordApplication();
////pdfFilePath = System.IO.Path.ChangeExtension(sFilePath, ".pdf");
////ConvertDocToPdf(sFilePath, pdfFilePath);
//pdfFilePath = sFilePath;
#endregion
string templatePath = System.IO.Path.Combine(System.Environment.CurrentDirectory + "\\Documents\\LetterTempFolder\\" + lFileName);
// Copy template to output file
if (File.Exists(sFilePath))
File.Delete(sFilePath);
File.Copy(templatePath, sFilePath, true);
// Replace placeholders in Word document
//ReplaceWords(sFilePath, table);
MSWord file = new MSWord(); MSWord file = new MSWord();
FileInfo ossInfo = null;
//file.OriginalFile = letterTemplte.FilePath.Trim();
file.OriginalFile = System.IO.Path.Combine(System.Environment.CurrentDirectory + "\\Documents\\LetterTempFolder\\" + lFileName); file.OriginalFile = System.IO.Path.Combine(System.Environment.CurrentDirectory + "\\Documents\\LetterTempFolder\\" + lFileName);
//file.ReplaceWords(sFilePath, table);
file.ReplaceWordsDocx(sFilePath, table);
// pdfFilePath = Path.ChangeExtension(sFilePath, ".pdf"); // (if you later want PDF) ossInfo = new FileInfo(sFilePath);
if (ossInfo.Exists)
{
ossInfo.Delete();
}
File.Copy(file.OriginalFile, sFilePath, true);
file = new MSWord();
file.OpenWordApplication();
//file.OriginalFile = letterTemplte.FilePath.Trim();
file.OriginalFile = System.IO.Path.Combine(System.Environment.CurrentDirectory + "\\Documents\\LetterTempFolder\\" + lFileName);
file.ReplaceWords(sFilePath, table);
file.CloseWordApplication();
//pdfFilePath = System.IO.Path.ChangeExtension(sFilePath, ".pdf");
//ConvertDocToPdf(sFilePath, pdfFilePath);
pdfFilePath = sFilePath; pdfFilePath = sFilePath;
} }
@ -3713,61 +3688,5 @@ namespace HRM.Report
System.Runtime.InteropServices.Marshal.ReleaseComObject(wordApp); System.Runtime.InteropServices.Marshal.ReleaseComObject(wordApp);
} }
} }
//public void ReplaceWords(string filePath, Hashtable replacements)
//{
// using (WordprocessingDocument wordDoc = WordprocessingDocument.Open(filePath, true))
// {
// var body = wordDoc.MainDocumentPart.Document.Body;
// foreach (var text in body.Descendants<Text>())
// {
// foreach (DictionaryEntry entry in replacements)
// {
// string key = entry.Key.ToString();
// string value = entry.Value?.ToString() ?? string.Empty;
// if (text.Text.Contains(key))
// {
// text.Text = text.Text.Replace(key, value);
// }
// }
// }
// wordDoc.MainDocumentPart.Document.Save();
// }
//}
public void ReplaceWords(string filePath, Hashtable replacements)
{
if (!File.Exists(filePath))
throw new FileNotFoundException("Template file not found", filePath);
if (!Path.GetExtension(filePath).Equals(".docx", StringComparison.OrdinalIgnoreCase))
throw new InvalidOperationException("Only .docx files are supported. Please convert your template to .docx format.");
using (WordprocessingDocument wordDoc = WordprocessingDocument.Open(filePath, true))
{
var documentPart = wordDoc.MainDocumentPart;
string docText = null;
using (var sr = new StreamReader(documentPart.GetStream()))
{
docText = sr.ReadToEnd();
}
foreach (DictionaryEntry entry in replacements)
{
string key = entry.Key.ToString();
string value = entry.Value?.ToString() ?? string.Empty;
docText = docText.Replace(key, value);
}
using (var sw = new StreamWriter(documentPart.GetStream(FileMode.Create)))
{
sw.Write(docText);
}
}
}
} }
} }

View File

@ -56,7 +56,6 @@
<None Remove="RDLC\AttendanceBenefit.rdlc" /> <None Remove="RDLC\AttendanceBenefit.rdlc" />
<None Remove="RDLC\AttnMonthlyBenefit.rdlc" /> <None Remove="RDLC\AttnMonthlyBenefit.rdlc" />
<None Remove="RDLC\BadliBill.rdlc" /> <None Remove="RDLC\BadliBill.rdlc" />
<None Remove="RDLC\BanglaLeaveRegister.rdlc" />
<None Remove="RDLC\BanglaPayslip.rdlc" /> <None Remove="RDLC\BanglaPayslip.rdlc" />
<None Remove="RDLC\BanglaPSlip.rdlc" /> <None Remove="RDLC\BanglaPSlip.rdlc" />
<None Remove="RDLC\BanglaPSlipBonus.rdlc" /> <None Remove="RDLC\BanglaPSlipBonus.rdlc" />
@ -110,9 +109,7 @@
<None Remove="RDLC\EmployeeCV.rdlc" /> <None Remove="RDLC\EmployeeCV.rdlc" />
<None Remove="RDLC\EmployeeCVNew.rdlc" /> <None Remove="RDLC\EmployeeCVNew.rdlc" />
<None Remove="RDLC\EmployeeDetail.rdlc" /> <None Remove="RDLC\EmployeeDetail.rdlc" />
<None Remove="RDLC\EmployeeDetailEcho.rdlc" />
<None Remove="RDLC\EmployeeDetailWithOPI.rdlc" /> <None Remove="RDLC\EmployeeDetailWithOPI.rdlc" />
<None Remove="RDLC\EmployeeDetailWithOPIEcho.rdlc" />
<None Remove="RDLC\EmployeeInfo.rdlc" /> <None Remove="RDLC\EmployeeInfo.rdlc" />
<None Remove="RDLC\EmployeeInfoBasic.rdlc" /> <None Remove="RDLC\EmployeeInfoBasic.rdlc" />
<None Remove="RDLC\EmployeeInfoBasicForExcel.rdlc" /> <None Remove="RDLC\EmployeeInfoBasicForExcel.rdlc" />
@ -124,7 +121,6 @@
<None Remove="RDLC\EmpPostingDetails.rdlc" /> <None Remove="RDLC\EmpPostingDetails.rdlc" />
<None Remove="RDLC\EmpSalaryRevisionNew.rdlc" /> <None Remove="RDLC\EmpSalaryRevisionNew.rdlc" />
<None Remove="RDLC\EncashmentReport.rdlc" /> <None Remove="RDLC\EncashmentReport.rdlc" />
<None Remove="RDLC\EncashmentReportEcho.rdlc" />
<None Remove="RDLC\EncashPaySlip.rdlc" /> <None Remove="RDLC\EncashPaySlip.rdlc" />
<None Remove="RDLC\ExtendedSalarySheet.rdlc" /> <None Remove="RDLC\ExtendedSalarySheet.rdlc" />
<None Remove="RDLC\GrandFatherInfo.rdlc" /> <None Remove="RDLC\GrandFatherInfo.rdlc" />
@ -148,7 +144,6 @@
<None Remove="RDLC\LeaveApplication.rdlc" /> <None Remove="RDLC\LeaveApplication.rdlc" />
<None Remove="RDLC\LeaveCashAdvice.rdlc" /> <None Remove="RDLC\LeaveCashAdvice.rdlc" />
<None Remove="RDLC\LeaveLedger.rdlc" /> <None Remove="RDLC\LeaveLedger.rdlc" />
<None Remove="RDLC\LeaveLedgerEcho.rdlc" />
<None Remove="RDLC\LeaveLedgerForLateAttn.rdlc" /> <None Remove="RDLC\LeaveLedgerForLateAttn.rdlc" />
<None Remove="RDLC\LeaveLedgerNmgtDetails.rdlc" /> <None Remove="RDLC\LeaveLedgerNmgtDetails.rdlc" />
<None Remove="RDLC\LeaveLedgerNmgtLeaveType.rdlc" /> <None Remove="RDLC\LeaveLedgerNmgtLeaveType.rdlc" />
@ -160,7 +155,6 @@
<None Remove="RDLC\LeaveProcessData.rdlc" /> <None Remove="RDLC\LeaveProcessData.rdlc" />
<None Remove="RDLC\LeaveRegisterNew.rdlc" /> <None Remove="RDLC\LeaveRegisterNew.rdlc" />
<None Remove="RDLC\LeaveReport.rdlc" /> <None Remove="RDLC\LeaveReport.rdlc" />
<None Remove="RDLC\LeaveReportEcho.rdlc" />
<None Remove="RDLC\LoanApplication.rdlc" /> <None Remove="RDLC\LoanApplication.rdlc" />
<None Remove="RDLC\LoanIssue.rdlc" /> <None Remove="RDLC\LoanIssue.rdlc" />
<None Remove="RDLC\LoanIssue_prev.rdlc" /> <None Remove="RDLC\LoanIssue_prev.rdlc" />
@ -173,7 +167,6 @@
<None Remove="RDLC\MLSecondPayment.rdlc" /> <None Remove="RDLC\MLSecondPayment.rdlc" />
<None Remove="RDLC\MoneyReceipt.rdlc" /> <None Remove="RDLC\MoneyReceipt.rdlc" />
<None Remove="RDLC\MonthlyPFAmount.rdlc" /> <None Remove="RDLC\MonthlyPFAmount.rdlc" />
<None Remove="RDLC\MultipleEmpLeaveBalance.rdlc" />
<None Remove="RDLC\MultipleLeaveEmp.rdlc" /> <None Remove="RDLC\MultipleLeaveEmp.rdlc" />
<None Remove="RDLC\MultipleLeaveEmpSimple.rdlc" /> <None Remove="RDLC\MultipleLeaveEmpSimple.rdlc" />
<None Remove="RDLC\MultipleLeaveEmpSimpleNmgt.rdlc" /> <None Remove="RDLC\MultipleLeaveEmpSimpleNmgt.rdlc" />
@ -368,9 +361,6 @@
<EmbeddedResource Include="RDLC\AttendanceBenefit.rdlc" /> <EmbeddedResource Include="RDLC\AttendanceBenefit.rdlc" />
<EmbeddedResource Include="RDLC\AttnMonthlyBenefit.rdlc" /> <EmbeddedResource Include="RDLC\AttnMonthlyBenefit.rdlc" />
<EmbeddedResource Include="RDLC\BadliBill.rdlc" /> <EmbeddedResource Include="RDLC\BadliBill.rdlc" />
<EmbeddedResource Include="RDLC\BanglaLeaveRegister.rdlc">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</EmbeddedResource>
<EmbeddedResource Include="RDLC\BanglaPayslip.rdlc" /> <EmbeddedResource Include="RDLC\BanglaPayslip.rdlc" />
<EmbeddedResource Include="RDLC\BanglaPSlip.rdlc" /> <EmbeddedResource Include="RDLC\BanglaPSlip.rdlc" />
<EmbeddedResource Include="RDLC\BanglaPSlipBonus.rdlc" /> <EmbeddedResource Include="RDLC\BanglaPSlipBonus.rdlc" />
@ -383,25 +373,17 @@
<EmbeddedResource Include="RDLC\BankAdviceSGS.rdlc" /> <EmbeddedResource Include="RDLC\BankAdviceSGS.rdlc" />
<EmbeddedResource Include="RDLC\CardInfo.rdlc" /> <EmbeddedResource Include="RDLC\CardInfo.rdlc" />
<EmbeddedResource Include="RDLC\CCWiseBonusSummary.rdlc" /> <EmbeddedResource Include="RDLC\CCWiseBonusSummary.rdlc" />
<EmbeddedResource Include="RDLC\EmployeeDetailEcho.rdlc" />
<EmbeddedResource Include="RDLC\EmployeeDetailWithOPIEcho.rdlc" />
<EmbeddedResource Include="RDLC\EmployeeInfoBasicForExcel.rdlc" /> <EmbeddedResource Include="RDLC\EmployeeInfoBasicForExcel.rdlc" />
<EmbeddedResource Include="RDLC\EmployeeInfoBasic.rdlc" /> <EmbeddedResource Include="RDLC\EmployeeInfoBasic.rdlc" />
<EmbeddedResource Include="RDLC\EncashmentReportEcho.rdlc" />
<EmbeddedResource Include="RDLC\LeaveLedgerEcho.rdlc">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</EmbeddedResource>
<EmbeddedResource Include="RDLC\LeaveLedgerNmgtDetails.rdlc" /> <EmbeddedResource Include="RDLC\LeaveLedgerNmgtDetails.rdlc" />
<EmbeddedResource Include="RDLC\LeaveLedgerNmgtLeaveType.rdlc"> <EmbeddedResource Include="RDLC\LeaveLedgerNmgtLeaveType.rdlc">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="RDLC\LeaveLedgerNmgtMultiple.rdlc" /> <EmbeddedResource Include="RDLC\LeaveLedgerNmgtMultiple.rdlc" />
<EmbeddedResource Include="RDLC\LeaveReportEcho.rdlc" />
<EmbeddedResource Include="RDLC\MaternityLeaveAfter.rdlc" /> <EmbeddedResource Include="RDLC\MaternityLeaveAfter.rdlc" />
<EmbeddedResource Include="RDLC\MonthlyPFAmount.rdlc"> <EmbeddedResource Include="RDLC\MonthlyPFAmount.rdlc">
<CopyToOutputDirectory>Always</CopyToOutputDirectory> <CopyToOutputDirectory>Always</CopyToOutputDirectory>
</EmbeddedResource> </EmbeddedResource>
<EmbeddedResource Include="RDLC\MultipleEmpLeaveBalance.rdlc" />
<EmbeddedResource Include="RDLC\MultipleLeaveEmp.rdlc" /> <EmbeddedResource Include="RDLC\MultipleLeaveEmp.rdlc" />
<EmbeddedResource Include="RDLC\NewCCWiseSalarySheet.rdlc" /> <EmbeddedResource Include="RDLC\NewCCWiseSalarySheet.rdlc" />
<EmbeddedResource Include="RDLC\PFExceptionNew.rdlc" /> <EmbeddedResource Include="RDLC\PFExceptionNew.rdlc" />
@ -601,9 +583,7 @@
<EmbeddedResource Include="RDLC\rptNewlyIssuedLoan.rdlc" /> <EmbeddedResource Include="RDLC\rptNewlyIssuedLoan.rdlc" />
<EmbeddedResource Include="RDLC\rptObjectivePercentage.rdlc" /> <EmbeddedResource Include="RDLC\rptObjectivePercentage.rdlc" />
<EmbeddedResource Include="RDLC\rptPayslipForFestiveBonusMgt.rdlc" /> <EmbeddedResource Include="RDLC\rptPayslipForFestiveBonusMgt.rdlc" />
<EmbeddedResource Include="RDLC\rptProdBonusAttendance.rdlc"> <EmbeddedResource Include="RDLC\rptProdBonusAttendance.rdlc" />
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</EmbeddedResource>
<EmbeddedResource Include="RDLC\rptProdBonusDetail.rdlc" /> <EmbeddedResource Include="RDLC\rptProdBonusDetail.rdlc" />
<EmbeddedResource Include="RDLC\rptRecievedData.rdlc" /> <EmbeddedResource Include="RDLC\rptRecievedData.rdlc" />
<EmbeddedResource Include="RDLC\rptRoleAudit.rdlc" /> <EmbeddedResource Include="RDLC\rptRoleAudit.rdlc" />
@ -636,7 +616,6 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="DocumentFormat.OpenXml" Version="3.3.0" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" /> <PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="ReportViewerCore.NETCore" Version="15.1.18" /> <PackageReference Include="ReportViewerCore.NETCore" Version="15.1.18" />
</ItemGroup> </ItemGroup>

View File

@ -49,8 +49,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [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 DigitalServiceBookDataSet(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : protected DigitalServiceBookDataSet(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context, false) { base(info, context, false) {
if ((this.IsBinarySerialized(info, context) == true)) { if ((this.IsBinarySerialized(info, context) == true)) {
@ -455,33 +453,9 @@ namespace HRM.Report.PayrollDataSet {
private global::System.Data.DataColumn columnEDUCATIONLEVEL; private global::System.Data.DataColumn columnEDUCATIONLEVEL;
private global::System.Data.DataColumn columnPOSTOFFICEPA; private global::System.Data.DataColumn columnPARMANENTDISTRICT;
private global::System.Data.DataColumn columnDISTRICTPA; private global::System.Data.DataColumn columnPARMANENTTHANA;
private global::System.Data.DataColumn columnTHANAPA;
private global::System.Data.DataColumn columnVILLAGEPA;
private global::System.Data.DataColumn columnROADNOPA;
private global::System.Data.DataColumn columnWARDNOPA;
private global::System.Data.DataColumn columnPOSTOFFICETA;
private global::System.Data.DataColumn columnDISTRICTTA;
private global::System.Data.DataColumn columnTHANATA;
private global::System.Data.DataColumn columnVILLAGETA;
private global::System.Data.DataColumn columnROADNOTA;
private global::System.Data.DataColumn columnWARDNOTA;
private global::System.Data.DataColumn columnSIGNATURE;
private global::System.Data.DataColumn columnAUTHSIGN;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
@ -511,8 +485,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [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 EMPDigitalServiceBookDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : protected EMPDigitalServiceBookDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context) { base(info, context) {
this.InitVars(); this.InitVars();
@ -656,113 +628,17 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn POSTOFFICEPAColumn { public global::System.Data.DataColumn PARMANENTDISTRICTColumn {
get { get {
return this.columnPOSTOFFICEPA; return this.columnPARMANENTDISTRICT;
} }
} }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn DISTRICTPAColumn { public global::System.Data.DataColumn PARMANENTTHANAColumn {
get { get {
return this.columnDISTRICTPA; return this.columnPARMANENTTHANA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn THANAPAColumn {
get {
return this.columnTHANAPA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn VILLAGEPAColumn {
get {
return this.columnVILLAGEPA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn ROADNOPAColumn {
get {
return this.columnROADNOPA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn WARDNOPAColumn {
get {
return this.columnWARDNOPA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn POSTOFFICETAColumn {
get {
return this.columnPOSTOFFICETA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn DISTRICTTAColumn {
get {
return this.columnDISTRICTTA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn THANATAColumn {
get {
return this.columnTHANATA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn VILLAGETAColumn {
get {
return this.columnVILLAGETA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn ROADNOTAColumn {
get {
return this.columnROADNOTA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn WARDNOTAColumn {
get {
return this.columnWARDNOTA;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn SIGNATUREColumn {
get {
return this.columnSIGNATURE;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn AUTHSIGNColumn {
get {
return this.columnAUTHSIGN;
} }
} }
@ -821,20 +697,8 @@ namespace HRM.Report.PayrollDataSet {
string BLOODGROUP, string BLOODGROUP,
string LMDESIGNATION, string LMDESIGNATION,
string EDUCATIONLEVEL, string EDUCATIONLEVEL,
string POSTOFFICEPA, string PARMANENTDISTRICT,
string DISTRICTPA, string PARMANENTTHANA) {
string THANAPA,
string VILLAGEPA,
string ROADNOPA,
string WARDNOPA,
string POSTOFFICETA,
string DISTRICTTA,
string THANATA,
string VILLAGETA,
string ROADNOTA,
string WARDNOTA,
string SIGNATURE,
string AUTHSIGN) {
EMPDigitalServiceBookRow rowEMPDigitalServiceBookRow = ((EMPDigitalServiceBookRow)(this.NewRow())); EMPDigitalServiceBookRow rowEMPDigitalServiceBookRow = ((EMPDigitalServiceBookRow)(this.NewRow()));
object[] columnValuesArray = new object[] { object[] columnValuesArray = new object[] {
EMPLOYEEID, EMPLOYEEID,
@ -854,20 +718,8 @@ namespace HRM.Report.PayrollDataSet {
BLOODGROUP, BLOODGROUP,
LMDESIGNATION, LMDESIGNATION,
EDUCATIONLEVEL, EDUCATIONLEVEL,
POSTOFFICEPA, PARMANENTDISTRICT,
DISTRICTPA, PARMANENTTHANA};
THANAPA,
VILLAGEPA,
ROADNOPA,
WARDNOPA,
POSTOFFICETA,
DISTRICTTA,
THANATA,
VILLAGETA,
ROADNOTA,
WARDNOTA,
SIGNATURE,
AUTHSIGN};
rowEMPDigitalServiceBookRow.ItemArray = columnValuesArray; rowEMPDigitalServiceBookRow.ItemArray = columnValuesArray;
this.Rows.Add(rowEMPDigitalServiceBookRow); this.Rows.Add(rowEMPDigitalServiceBookRow);
return rowEMPDigitalServiceBookRow; return rowEMPDigitalServiceBookRow;
@ -907,20 +759,8 @@ namespace HRM.Report.PayrollDataSet {
this.columnBLOODGROUP = base.Columns["BLOODGROUP"]; this.columnBLOODGROUP = base.Columns["BLOODGROUP"];
this.columnLMDESIGNATION = base.Columns["LMDESIGNATION"]; this.columnLMDESIGNATION = base.Columns["LMDESIGNATION"];
this.columnEDUCATIONLEVEL = base.Columns["EDUCATIONLEVEL"]; this.columnEDUCATIONLEVEL = base.Columns["EDUCATIONLEVEL"];
this.columnPOSTOFFICEPA = base.Columns["POSTOFFICEPA"]; this.columnPARMANENTDISTRICT = base.Columns["PARMANENTDISTRICT"];
this.columnDISTRICTPA = base.Columns["DISTRICTPA"]; this.columnPARMANENTTHANA = base.Columns["PARMANENTTHANA"];
this.columnTHANAPA = base.Columns["THANAPA"];
this.columnVILLAGEPA = base.Columns["VILLAGEPA"];
this.columnROADNOPA = base.Columns["ROADNOPA"];
this.columnWARDNOPA = base.Columns["WARDNOPA"];
this.columnPOSTOFFICETA = base.Columns["POSTOFFICETA"];
this.columnDISTRICTTA = base.Columns["DISTRICTTA"];
this.columnTHANATA = base.Columns["THANATA"];
this.columnVILLAGETA = base.Columns["VILLAGETA"];
this.columnROADNOTA = base.Columns["ROADNOTA"];
this.columnWARDNOTA = base.Columns["WARDNOTA"];
this.columnSIGNATURE = base.Columns["SIGNATURE"];
this.columnAUTHSIGN = base.Columns["AUTHSIGN"];
} }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
@ -960,34 +800,10 @@ namespace HRM.Report.PayrollDataSet {
base.Columns.Add(this.columnLMDESIGNATION); base.Columns.Add(this.columnLMDESIGNATION);
this.columnEDUCATIONLEVEL = new global::System.Data.DataColumn("EDUCATIONLEVEL", typeof(string), null, global::System.Data.MappingType.Element); this.columnEDUCATIONLEVEL = new global::System.Data.DataColumn("EDUCATIONLEVEL", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnEDUCATIONLEVEL); base.Columns.Add(this.columnEDUCATIONLEVEL);
this.columnPOSTOFFICEPA = new global::System.Data.DataColumn("POSTOFFICEPA", typeof(string), null, global::System.Data.MappingType.Element); this.columnPARMANENTDISTRICT = new global::System.Data.DataColumn("PARMANENTDISTRICT", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnPOSTOFFICEPA); base.Columns.Add(this.columnPARMANENTDISTRICT);
this.columnDISTRICTPA = new global::System.Data.DataColumn("DISTRICTPA", typeof(string), null, global::System.Data.MappingType.Element); this.columnPARMANENTTHANA = new global::System.Data.DataColumn("PARMANENTTHANA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnDISTRICTPA); base.Columns.Add(this.columnPARMANENTTHANA);
this.columnTHANAPA = new global::System.Data.DataColumn("THANAPA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnTHANAPA);
this.columnVILLAGEPA = new global::System.Data.DataColumn("VILLAGEPA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnVILLAGEPA);
this.columnROADNOPA = new global::System.Data.DataColumn("ROADNOPA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnROADNOPA);
this.columnWARDNOPA = new global::System.Data.DataColumn("WARDNOPA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnWARDNOPA);
this.columnPOSTOFFICETA = new global::System.Data.DataColumn("POSTOFFICETA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnPOSTOFFICETA);
this.columnDISTRICTTA = new global::System.Data.DataColumn("DISTRICTTA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnDISTRICTTA);
this.columnTHANATA = new global::System.Data.DataColumn("THANATA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnTHANATA);
this.columnVILLAGETA = new global::System.Data.DataColumn("VILLAGETA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnVILLAGETA);
this.columnROADNOTA = new global::System.Data.DataColumn("ROADNOTA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnROADNOTA);
this.columnWARDNOTA = new global::System.Data.DataColumn("WARDNOTA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnWARDNOTA);
this.columnSIGNATURE = new global::System.Data.DataColumn("SIGNATURE", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnSIGNATURE);
this.columnAUTHSIGN = new global::System.Data.DataColumn("AUTHSIGN", typeof(byte[]), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnAUTHSIGN);
} }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
@ -1153,8 +969,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [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 SystemInformationDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : protected SystemInformationDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context) { base(info, context) {
this.InitVars(); this.InitVars();
@ -1418,8 +1232,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [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 LeaveEntryDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : protected LeaveEntryDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context) { base(info, context) {
this.InitVars(); this.InitVars();
@ -1701,8 +1513,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [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 EMPLifecycleDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : protected EMPLifecycleDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context) { base(info, context) {
this.InitVars(); this.InitVars();
@ -2012,8 +1822,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [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 ComplainDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) : protected ComplainDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context) { base(info, context) {
this.InitVars(); this.InitVars();
@ -2527,225 +2335,35 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string POSTOFFICEPA { public string PARMANENTDISTRICT {
get { get {
try { try {
return ((string)(this[this.tableEMPDigitalServiceBook.POSTOFFICEPAColumn])); return ((string)(this[this.tableEMPDigitalServiceBook.PARMANENTDISTRICTColumn]));
} }
catch (global::System.InvalidCastException e) { catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'POSTOFFICEPA\' in table \'EMPDigitalServiceBook\' is DBNull.", e); throw new global::System.Data.StrongTypingException("The value for column \'PARMANENTDISTRICT\' in table \'EMPDigitalServiceBook\' is DBNu" +
"ll.", e);
} }
} }
set { set {
this[this.tableEMPDigitalServiceBook.POSTOFFICEPAColumn] = value; this[this.tableEMPDigitalServiceBook.PARMANENTDISTRICTColumn] = value;
} }
} }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string DISTRICTPA { public string PARMANENTTHANA {
get { get {
try { try {
return ((string)(this[this.tableEMPDigitalServiceBook.DISTRICTPAColumn])); return ((string)(this[this.tableEMPDigitalServiceBook.PARMANENTTHANAColumn]));
} }
catch (global::System.InvalidCastException e) { catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'DISTRICTPA\' in table \'EMPDigitalServiceBook\' is DBNull.", e); throw new global::System.Data.StrongTypingException("The value for column \'PARMANENTTHANA\' in table \'EMPDigitalServiceBook\' is DBNull." +
"", e);
} }
} }
set { set {
this[this.tableEMPDigitalServiceBook.DISTRICTPAColumn] = value; this[this.tableEMPDigitalServiceBook.PARMANENTTHANAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string THANAPA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.THANAPAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'THANAPA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.THANAPAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string VILLAGEPA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.VILLAGEPAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'VILLAGEPA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.VILLAGEPAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string ROADNOPA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.ROADNOPAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'ROADNOPA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.ROADNOPAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string WARDNOPA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.WARDNOPAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'WARDNOPA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.WARDNOPAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string POSTOFFICETA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.POSTOFFICETAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'POSTOFFICETA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.POSTOFFICETAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string DISTRICTTA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.DISTRICTTAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'DISTRICTTA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.DISTRICTTAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string THANATA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.THANATAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'THANATA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.THANATAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string VILLAGETA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.VILLAGETAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'VILLAGETA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.VILLAGETAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string ROADNOTA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.ROADNOTAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'ROADNOTA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.ROADNOTAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string WARDNOTA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.WARDNOTAColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'WARDNOTA\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.WARDNOTAColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string SIGNATURE {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.SIGNATUREColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'SIGNATURE\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.SIGNATUREColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string AUTHSIGN {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.AUTHSIGNColumn]));
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("The value for column \'AUTHSIGN\' in table \'EMPDigitalServiceBook\' is DBNull.", e);
}
}
set {
this[this.tableEMPDigitalServiceBook.AUTHSIGNColumn] = value;
} }
} }
@ -2955,170 +2573,26 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsPOSTOFFICEPANull() { public bool IsPARMANENTDISTRICTNull() {
return this.IsNull(this.tableEMPDigitalServiceBook.POSTOFFICEPAColumn); return this.IsNull(this.tableEMPDigitalServiceBook.PARMANENTDISTRICTColumn);
} }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetPOSTOFFICEPANull() { public void SetPARMANENTDISTRICTNull() {
this[this.tableEMPDigitalServiceBook.POSTOFFICEPAColumn] = global::System.Convert.DBNull; this[this.tableEMPDigitalServiceBook.PARMANENTDISTRICTColumn] = global::System.Convert.DBNull;
} }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsDISTRICTPANull() { public bool IsPARMANENTTHANANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.DISTRICTPAColumn); return this.IsNull(this.tableEMPDigitalServiceBook.PARMANENTTHANAColumn);
} }
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetDISTRICTPANull() { public void SetPARMANENTTHANANull() {
this[this.tableEMPDigitalServiceBook.DISTRICTPAColumn] = global::System.Convert.DBNull; this[this.tableEMPDigitalServiceBook.PARMANENTTHANAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsTHANAPANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.THANAPAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetTHANAPANull() {
this[this.tableEMPDigitalServiceBook.THANAPAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsVILLAGEPANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.VILLAGEPAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetVILLAGEPANull() {
this[this.tableEMPDigitalServiceBook.VILLAGEPAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsROADNOPANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.ROADNOPAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetROADNOPANull() {
this[this.tableEMPDigitalServiceBook.ROADNOPAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsWARDNOPANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.WARDNOPAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetWARDNOPANull() {
this[this.tableEMPDigitalServiceBook.WARDNOPAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsPOSTOFFICETANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.POSTOFFICETAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetPOSTOFFICETANull() {
this[this.tableEMPDigitalServiceBook.POSTOFFICETAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsDISTRICTTANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.DISTRICTTAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetDISTRICTTANull() {
this[this.tableEMPDigitalServiceBook.DISTRICTTAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsTHANATANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.THANATAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetTHANATANull() {
this[this.tableEMPDigitalServiceBook.THANATAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsVILLAGETANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.VILLAGETAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetVILLAGETANull() {
this[this.tableEMPDigitalServiceBook.VILLAGETAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsROADNOTANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.ROADNOTAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetROADNOTANull() {
this[this.tableEMPDigitalServiceBook.ROADNOTAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsWARDNOTANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.WARDNOTAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetWARDNOTANull() {
this[this.tableEMPDigitalServiceBook.WARDNOTAColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsSIGNATURENull() {
return this.IsNull(this.tableEMPDigitalServiceBook.SIGNATUREColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetSIGNATURENull() {
this[this.tableEMPDigitalServiceBook.SIGNATUREColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsAUTHSIGNNull() {
return this.IsNull(this.tableEMPDigitalServiceBook.AUTHSIGNColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetAUTHSIGNNull() {
this[this.tableEMPDigitalServiceBook.AUTHSIGNColumn] = global::System.Convert.DBNull;
} }
} }

View File

@ -12,77 +12,65 @@
<xs:element name="DigitalServiceBookDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:Generator_UserDSName="DigitalServiceBookDataSet" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="DigitalServiceBookDataSet"> <xs:element name="DigitalServiceBookDataSet" msdata:IsDataSet="true" msdata:UseCurrentLocale="true" msprop:Generator_UserDSName="DigitalServiceBookDataSet" msprop:EnableTableAdapterManager="true" msprop:Generator_DataSetName="DigitalServiceBookDataSet">
<xs:complexType> <xs:complexType>
<xs:choice minOccurs="0" maxOccurs="unbounded"> <xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="EMPDigitalServiceBook" msprop:Generator_RowEvHandlerName="EMPDigitalServiceBookRowChangeEventHandler" msprop:Generator_RowDeletedName="EMPDigitalServiceBookRowDeleted" msprop:Generator_RowDeletingName="EMPDigitalServiceBookRowDeleting" msprop:Generator_RowEvArgName="EMPDigitalServiceBookRowChangeEvent" msprop:Generator_TablePropName="EMPDigitalServiceBook" msprop:Generator_RowChangedName="EMPDigitalServiceBookRowChanged" msprop:Generator_UserTableName="EMPDigitalServiceBook" msprop:Generator_RowChangingName="EMPDigitalServiceBookRowChanging" msprop:Generator_RowClassName="EMPDigitalServiceBookRow" msprop:Generator_TableClassName="EMPDigitalServiceBookDataTable" msprop:Generator_TableVarName="tableEMPDigitalServiceBook"> <xs:element name="EMPDigitalServiceBook" msprop:Generator_RowClassName="EMPDigitalServiceBookRow" msprop:Generator_RowEvHandlerName="EMPDigitalServiceBookRowChangeEventHandler" msprop:Generator_RowDeletedName="EMPDigitalServiceBookRowDeleted" msprop:Generator_RowDeletingName="EMPDigitalServiceBookRowDeleting" msprop:Generator_RowEvArgName="EMPDigitalServiceBookRowChangeEvent" msprop:Generator_TablePropName="EMPDigitalServiceBook" msprop:Generator_RowChangedName="EMPDigitalServiceBookRowChanged" msprop:Generator_UserTableName="EMPDigitalServiceBook" msprop:Generator_RowChangingName="EMPDigitalServiceBookRowChanging" msprop:Generator_TableClassName="EMPDigitalServiceBookDataTable" msprop:Generator_TableVarName="tableEMPDigitalServiceBook">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="EMPLOYEEID" msprop:Generator_ColumnPropNameInTable="EMPLOYEEIDColumn" msprop:Generator_ColumnPropNameInRow="EMPLOYEEID" msprop:Generator_UserColumnName="EMPLOYEEID" msprop:Generator_ColumnVarNameInTable="columnEMPLOYEEID" type="xs:string" minOccurs="0" /> <xs:element name="EMPLOYEEID" msprop:Generator_UserColumnName="EMPLOYEEID" msprop:Generator_ColumnPropNameInTable="EMPLOYEEIDColumn" msprop:Generator_ColumnPropNameInRow="EMPLOYEEID" msprop:Generator_ColumnVarNameInTable="columnEMPLOYEEID" type="xs:string" minOccurs="0" />
<xs:element name="EMPLOYEENO" msprop:Generator_ColumnPropNameInTable="EMPLOYEENOColumn" msprop:Generator_ColumnPropNameInRow="EMPLOYEENO" msprop:Generator_UserColumnName="EMPLOYEENO" msprop:Generator_ColumnVarNameInTable="columnEMPLOYEENO" type="xs:string" minOccurs="0" /> <xs:element name="EMPLOYEENO" msprop:Generator_UserColumnName="EMPLOYEENO" msprop:Generator_ColumnPropNameInTable="EMPLOYEENOColumn" msprop:Generator_ColumnPropNameInRow="EMPLOYEENO" msprop:Generator_ColumnVarNameInTable="columnEMPLOYEENO" type="xs:string" minOccurs="0" />
<xs:element name="NAME" msprop:Generator_ColumnPropNameInTable="NAMEColumn" msprop:Generator_ColumnPropNameInRow="NAME" msprop:Generator_UserColumnName="NAME" msprop:Generator_ColumnVarNameInTable="columnNAME" type="xs:string" minOccurs="0" /> <xs:element name="NAME" msprop:Generator_UserColumnName="NAME" msprop:Generator_ColumnPropNameInTable="NAMEColumn" msprop:Generator_ColumnPropNameInRow="NAME" msprop:Generator_ColumnVarNameInTable="columnNAME" type="xs:string" minOccurs="0" />
<xs:element name="FATHERNAME" msprop:Generator_ColumnPropNameInTable="FATHERNAMEColumn" msprop:Generator_ColumnPropNameInRow="FATHERNAME" msprop:Generator_UserColumnName="FATHERNAME" msprop:Generator_ColumnVarNameInTable="columnFATHERNAME" type="xs:string" minOccurs="0" /> <xs:element name="FATHERNAME" msprop:Generator_UserColumnName="FATHERNAME" msprop:Generator_ColumnPropNameInTable="FATHERNAMEColumn" msprop:Generator_ColumnPropNameInRow="FATHERNAME" msprop:Generator_ColumnVarNameInTable="columnFATHERNAME" type="xs:string" minOccurs="0" />
<xs:element name="MOTHERNAME" msprop:Generator_ColumnPropNameInTable="MOTHERNAMEColumn" msprop:Generator_ColumnPropNameInRow="MOTHERNAME" msprop:Generator_UserColumnName="MOTHERNAME" msprop:Generator_ColumnVarNameInTable="columnMOTHERNAME" type="xs:string" minOccurs="0" /> <xs:element name="MOTHERNAME" msprop:Generator_UserColumnName="MOTHERNAME" msprop:Generator_ColumnPropNameInTable="MOTHERNAMEColumn" msprop:Generator_ColumnPropNameInRow="MOTHERNAME" msprop:Generator_ColumnVarNameInTable="columnMOTHERNAME" type="xs:string" minOccurs="0" />
<xs:element name="SPOUSENAME" msprop:Generator_ColumnPropNameInTable="SPOUSENAMEColumn" msprop:Generator_ColumnPropNameInRow="SPOUSENAME" msprop:Generator_UserColumnName="SPOUSENAME" msprop:Generator_ColumnVarNameInTable="columnSPOUSENAME" type="xs:string" minOccurs="0" /> <xs:element name="SPOUSENAME" msprop:Generator_UserColumnName="SPOUSENAME" msprop:Generator_ColumnPropNameInTable="SPOUSENAMEColumn" msprop:Generator_ColumnPropNameInRow="SPOUSENAME" msprop:Generator_ColumnVarNameInTable="columnSPOUSENAME" type="xs:string" minOccurs="0" />
<xs:element name="JOININGDATE" msprop:Generator_ColumnPropNameInTable="JOININGDATEColumn" msprop:Generator_ColumnPropNameInRow="JOININGDATE" msprop:Generator_UserColumnName="JOININGDATE" msprop:Generator_ColumnVarNameInTable="columnJOININGDATE" type="xs:string" minOccurs="0" /> <xs:element name="JOININGDATE" msprop:Generator_UserColumnName="JOININGDATE" msprop:Generator_ColumnPropNameInTable="JOININGDATEColumn" msprop:Generator_ColumnPropNameInRow="JOININGDATE" msprop:Generator_ColumnVarNameInTable="columnJOININGDATE" type="xs:string" minOccurs="0" />
<xs:element name="DESIGNATION" msprop:Generator_ColumnPropNameInTable="DESIGNATIONColumn" msprop:Generator_ColumnPropNameInRow="DESIGNATION" msprop:Generator_UserColumnName="DESIGNATION" msprop:Generator_ColumnVarNameInTable="columnDESIGNATION" type="xs:string" minOccurs="0" /> <xs:element name="DESIGNATION" msprop:Generator_UserColumnName="DESIGNATION" msprop:Generator_ColumnPropNameInTable="DESIGNATIONColumn" msprop:Generator_ColumnPropNameInRow="DESIGNATION" msprop:Generator_ColumnVarNameInTable="columnDESIGNATION" type="xs:string" minOccurs="0" />
<xs:element name="PARMANENTADDRESS" msprop:Generator_ColumnPropNameInTable="PARMANENTADDRESSColumn" msprop:Generator_ColumnPropNameInRow="PARMANENTADDRESS" msprop:Generator_UserColumnName="PARMANENTADDRESS" msprop:Generator_ColumnVarNameInTable="columnPARMANENTADDRESS" type="xs:string" minOccurs="0" /> <xs:element name="PARMANENTADDRESS" msprop:Generator_UserColumnName="PARMANENTADDRESS" msprop:Generator_ColumnPropNameInTable="PARMANENTADDRESSColumn" msprop:Generator_ColumnPropNameInRow="PARMANENTADDRESS" msprop:Generator_ColumnVarNameInTable="columnPARMANENTADDRESS" type="xs:string" minOccurs="0" />
<xs:element name="PRESENTADDRESS" msprop:Generator_ColumnPropNameInTable="PRESENTADDRESSColumn" msprop:Generator_ColumnPropNameInRow="PRESENTADDRESS" msprop:Generator_UserColumnName="PRESENTADDRESS" msprop:Generator_ColumnVarNameInTable="columnPRESENTADDRESS" type="xs:string" minOccurs="0" /> <xs:element name="PRESENTADDRESS" msprop:Generator_UserColumnName="PRESENTADDRESS" msprop:Generator_ColumnPropNameInTable="PRESENTADDRESSColumn" msprop:Generator_ColumnPropNameInRow="PRESENTADDRESS" msprop:Generator_ColumnVarNameInTable="columnPRESENTADDRESS" type="xs:string" minOccurs="0" />
<xs:element name="BIRTHDATE" msprop:Generator_ColumnPropNameInTable="BIRTHDATEColumn" msprop:Generator_ColumnPropNameInRow="BIRTHDATE" msprop:Generator_UserColumnName="BIRTHDATE" msprop:Generator_ColumnVarNameInTable="columnBIRTHDATE" type="xs:string" minOccurs="0" /> <xs:element name="BIRTHDATE" msprop:Generator_UserColumnName="BIRTHDATE" msprop:Generator_ColumnPropNameInTable="BIRTHDATEColumn" msprop:Generator_ColumnPropNameInRow="BIRTHDATE" msprop:Generator_ColumnVarNameInTable="columnBIRTHDATE" type="xs:string" minOccurs="0" />
<xs:element name="PHOTO" msprop:Generator_ColumnPropNameInTable="PHOTOColumn" msprop:Generator_ColumnPropNameInRow="PHOTO" msprop:Generator_UserColumnName="PHOTO" msprop:Generator_ColumnVarNameInTable="columnPHOTO" type="xs:string" minOccurs="0" /> <xs:element name="PHOTO" msprop:Generator_UserColumnName="PHOTO" msprop:Generator_ColumnPropNameInTable="PHOTOColumn" msprop:Generator_ColumnPropNameInRow="PHOTO" msprop:Generator_ColumnVarNameInTable="columnPHOTO" type="xs:string" minOccurs="0" />
<xs:element name="NIDNO" msprop:Generator_ColumnPropNameInTable="NIDNOColumn" msprop:Generator_ColumnPropNameInRow="NIDNO" msprop:Generator_UserColumnName="NIDNO" msprop:Generator_ColumnVarNameInTable="columnNIDNO" type="xs:string" minOccurs="0" /> <xs:element name="NIDNO" msprop:Generator_UserColumnName="NIDNO" msprop:Generator_ColumnPropNameInTable="NIDNOColumn" msprop:Generator_ColumnPropNameInRow="NIDNO" msprop:Generator_ColumnVarNameInTable="columnNIDNO" type="xs:string" minOccurs="0" />
<xs:element name="HEIGHT" msprop:Generator_ColumnPropNameInTable="HEIGHTColumn" msprop:Generator_ColumnPropNameInRow="HEIGHT" msprop:Generator_UserColumnName="HEIGHT" msprop:Generator_ColumnVarNameInTable="columnHEIGHT" type="xs:string" minOccurs="0" /> <xs:element name="HEIGHT" msprop:Generator_UserColumnName="HEIGHT" msprop:Generator_ColumnPropNameInTable="HEIGHTColumn" msprop:Generator_ColumnPropNameInRow="HEIGHT" msprop:Generator_ColumnVarNameInTable="columnHEIGHT" type="xs:string" minOccurs="0" />
<xs:element name="BLOODGROUP" msprop:Generator_ColumnPropNameInTable="BLOODGROUPColumn" msprop:Generator_ColumnPropNameInRow="BLOODGROUP" msprop:Generator_UserColumnName="BLOODGROUP" msprop:Generator_ColumnVarNameInTable="columnBLOODGROUP" type="xs:string" minOccurs="0" /> <xs:element name="BLOODGROUP" msprop:Generator_UserColumnName="BLOODGROUP" msprop:Generator_ColumnPropNameInTable="BLOODGROUPColumn" msprop:Generator_ColumnPropNameInRow="BLOODGROUP" msprop:Generator_ColumnVarNameInTable="columnBLOODGROUP" type="xs:string" minOccurs="0" />
<xs:element name="LMDESIGNATION" msprop:Generator_ColumnPropNameInTable="LMDESIGNATIONColumn" msprop:Generator_ColumnPropNameInRow="LMDESIGNATION" msprop:Generator_UserColumnName="LMDESIGNATION" msprop:Generator_ColumnVarNameInTable="columnLMDESIGNATION" type="xs:string" minOccurs="0" /> <xs:element name="LMDESIGNATION" msprop:Generator_UserColumnName="LMDESIGNATION" msprop:Generator_ColumnPropNameInTable="LMDESIGNATIONColumn" msprop:Generator_ColumnPropNameInRow="LMDESIGNATION" msprop:Generator_ColumnVarNameInTable="columnLMDESIGNATION" type="xs:string" minOccurs="0" />
<xs:element name="EDUCATIONLEVEL" msprop:Generator_ColumnPropNameInTable="EDUCATIONLEVELColumn" msprop:Generator_ColumnPropNameInRow="EDUCATIONLEVEL" msprop:Generator_UserColumnName="EDUCATIONLEVEL" msprop:Generator_ColumnVarNameInTable="columnEDUCATIONLEVEL" type="xs:string" minOccurs="0" /> <xs:element name="EDUCATIONLEVEL" msprop:Generator_UserColumnName="EDUCATIONLEVEL" msprop:Generator_ColumnPropNameInTable="EDUCATIONLEVELColumn" msprop:Generator_ColumnPropNameInRow="EDUCATIONLEVEL" msprop:Generator_ColumnVarNameInTable="columnEDUCATIONLEVEL" type="xs:string" minOccurs="0" />
<xs:element name="POSTOFFICEPA" msprop:Generator_ColumnPropNameInTable="POSTOFFICEPAColumn" msprop:Generator_ColumnPropNameInRow="POSTOFFICEPA" msprop:Generator_UserColumnName="POSTOFFICEPA" msprop:Generator_ColumnVarNameInTable="columnPOSTOFFICEPA" type="xs:string" minOccurs="0" /> <xs:element name="PARMANENTDISTRICT" msprop:Generator_UserColumnName="PARMANENTDISTRICT" msprop:Generator_ColumnPropNameInTable="PARMANENTDISTRICTColumn" msprop:Generator_ColumnPropNameInRow="PARMANENTDISTRICT" msprop:Generator_ColumnVarNameInTable="columnPARMANENTDISTRICT" type="xs:string" minOccurs="0" />
<xs:element name="DISTRICTPA" msprop:Generator_ColumnPropNameInTable="DISTRICTPAColumn" msprop:Generator_ColumnPropNameInRow="DISTRICTPA" msprop:Generator_UserColumnName="DISTRICTPA" msprop:Generator_ColumnVarNameInTable="columnDISTRICTPA" type="xs:string" minOccurs="0" /> <xs:element name="PARMANENTTHANA" msprop:Generator_UserColumnName="PARMANENTTHANA" msprop:Generator_ColumnPropNameInTable="PARMANENTTHANAColumn" msprop:Generator_ColumnPropNameInRow="PARMANENTTHANA" msprop:Generator_ColumnVarNameInTable="columnPARMANENTTHANA" type="xs:string" minOccurs="0" />
<xs:element name="THANAPA" msprop:Generator_ColumnPropNameInRow="THANAPA" msprop:Generator_ColumnPropNameInTable="THANAPAColumn" msprop:Generator_ColumnVarNameInTable="columnTHANAPA" msprop:Generator_UserColumnName="THANAPA" type="xs:string" minOccurs="0" />
<xs:element name="VILLAGEPA" msprop:Generator_ColumnPropNameInRow="VILLAGEPA" msprop:Generator_ColumnPropNameInTable="VILLAGEPAColumn" msprop:Generator_ColumnVarNameInTable="columnVILLAGEPA" msprop:Generator_UserColumnName="VILLAGEPA" type="xs:string" minOccurs="0" />
<xs:element name="ROADNOPA" msprop:Generator_ColumnPropNameInRow="ROADNOPA" msprop:Generator_ColumnPropNameInTable="ROADNOPAColumn" msprop:Generator_ColumnVarNameInTable="columnROADNOPA" msprop:Generator_UserColumnName="ROADNOPA" type="xs:string" minOccurs="0" />
<xs:element name="WARDNOPA" msprop:Generator_ColumnPropNameInRow="WARDNOPA" msprop:Generator_ColumnPropNameInTable="WARDNOPAColumn" msprop:Generator_ColumnVarNameInTable="columnWARDNOPA" msprop:Generator_UserColumnName="WARDNOPA" type="xs:string" minOccurs="0" />
<xs:element name="POSTOFFICETA" msprop:Generator_ColumnPropNameInRow="POSTOFFICETA" msprop:Generator_ColumnPropNameInTable="POSTOFFICETAColumn" msprop:Generator_ColumnVarNameInTable="columnPOSTOFFICETA" msprop:Generator_UserColumnName="POSTOFFICETA" type="xs:string" minOccurs="0" />
<xs:element name="DISTRICTTA" msprop:Generator_ColumnPropNameInRow="DISTRICTTA" msprop:Generator_ColumnPropNameInTable="DISTRICTTAColumn" msprop:Generator_ColumnVarNameInTable="columnDISTRICTTA" msprop:Generator_UserColumnName="DISTRICTTA" type="xs:string" minOccurs="0" />
<xs:element name="THANATA" msprop:Generator_ColumnPropNameInRow="THANATA" msprop:Generator_ColumnPropNameInTable="THANATAColumn" msprop:Generator_ColumnVarNameInTable="columnTHANATA" msprop:Generator_UserColumnName="THANATA" type="xs:string" minOccurs="0" />
<xs:element name="VILLAGETA" msprop:Generator_ColumnPropNameInRow="VILLAGETA" msprop:Generator_ColumnPropNameInTable="VILLAGETAColumn" msprop:Generator_ColumnVarNameInTable="columnVILLAGETA" msprop:Generator_UserColumnName="VILLAGETA" type="xs:string" minOccurs="0" />
<xs:element name="ROADNOTA" msprop:Generator_ColumnPropNameInRow="ROADNOTA" msprop:Generator_ColumnPropNameInTable="ROADNOTAColumn" msprop:Generator_ColumnVarNameInTable="columnROADNOTA" msprop:Generator_UserColumnName="ROADNOTA" type="xs:string" minOccurs="0" />
<xs:element name="WARDNOTA" msprop:Generator_ColumnPropNameInRow="WARDNOTA" msprop:Generator_ColumnPropNameInTable="WARDNOTAColumn" msprop:Generator_ColumnVarNameInTable="columnWARDNOTA" msprop:Generator_UserColumnName="WARDNOTA" type="xs:string" minOccurs="0" />
<xs:element name="SIGNATURE" msprop:Generator_ColumnPropNameInRow="SIGNATURE" msprop:Generator_ColumnPropNameInTable="SIGNATUREColumn" msprop:Generator_ColumnVarNameInTable="columnSIGNATURE" msprop:Generator_UserColumnName="SIGNATURE" type="xs:string" minOccurs="0" />
<xs:element name="AUTHSIGN" msprop:Generator_ColumnPropNameInRow="AUTHSIGN" msprop:Generator_ColumnPropNameInTable="AUTHSIGNColumn" msprop:Generator_ColumnVarNameInTable="columnAUTHSIGN" msprop:Generator_UserColumnName="AUTHSIGN" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="SystemInformation" msprop:Generator_RowEvHandlerName="SystemInformationRowChangeEventHandler" msprop:Generator_RowDeletedName="SystemInformationRowDeleted" msprop:Generator_RowDeletingName="SystemInformationRowDeleting" msprop:Generator_RowEvArgName="SystemInformationRowChangeEvent" msprop:Generator_TablePropName="SystemInformation" msprop:Generator_RowChangedName="SystemInformationRowChanged" msprop:Generator_UserTableName="SystemInformation" msprop:Generator_RowChangingName="SystemInformationRowChanging" msprop:Generator_RowClassName="SystemInformationRow" msprop:Generator_TableClassName="SystemInformationDataTable" msprop:Generator_TableVarName="tableSystemInformation"> <xs:element name="SystemInformation" msprop:Generator_RowClassName="SystemInformationRow" msprop:Generator_RowEvHandlerName="SystemInformationRowChangeEventHandler" msprop:Generator_RowDeletedName="SystemInformationRowDeleted" msprop:Generator_RowDeletingName="SystemInformationRowDeleting" msprop:Generator_RowEvArgName="SystemInformationRowChangeEvent" msprop:Generator_TablePropName="SystemInformation" msprop:Generator_RowChangedName="SystemInformationRowChanged" msprop:Generator_UserTableName="SystemInformation" msprop:Generator_RowChangingName="SystemInformationRowChanging" msprop:Generator_TableClassName="SystemInformationDataTable" msprop:Generator_TableVarName="tableSystemInformation">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="NAME" msprop:Generator_ColumnPropNameInTable="NAMEColumn" msprop:Generator_ColumnPropNameInRow="NAME" msprop:Generator_UserColumnName="NAME" msprop:Generator_ColumnVarNameInTable="columnNAME" type="xs:string" minOccurs="0" /> <xs:element name="NAME" msprop:Generator_UserColumnName="NAME" msprop:Generator_ColumnPropNameInTable="NAMEColumn" msprop:Generator_ColumnPropNameInRow="NAME" msprop:Generator_ColumnVarNameInTable="columnNAME" type="xs:string" minOccurs="0" />
<xs:element name="CORPORATEADDRESS" msprop:Generator_ColumnPropNameInTable="CORPORATEADDRESSColumn" msprop:Generator_ColumnPropNameInRow="CORPORATEADDRESS" msprop:Generator_UserColumnName="CORPORATEADDRESS" msprop:Generator_ColumnVarNameInTable="columnCORPORATEADDRESS" type="xs:string" minOccurs="0" /> <xs:element name="CORPORATEADDRESS" msprop:Generator_UserColumnName="CORPORATEADDRESS" msprop:Generator_ColumnPropNameInTable="CORPORATEADDRESSColumn" msprop:Generator_ColumnPropNameInRow="CORPORATEADDRESS" msprop:Generator_ColumnVarNameInTable="columnCORPORATEADDRESS" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="LeaveEntry" msprop:Generator_RowEvHandlerName="LeaveEntryRowChangeEventHandler" msprop:Generator_RowDeletedName="LeaveEntryRowDeleted" msprop:Generator_RowDeletingName="LeaveEntryRowDeleting" msprop:Generator_RowEvArgName="LeaveEntryRowChangeEvent" msprop:Generator_TablePropName="LeaveEntry" msprop:Generator_RowChangedName="LeaveEntryRowChanged" msprop:Generator_UserTableName="LeaveEntry" msprop:Generator_RowChangingName="LeaveEntryRowChanging" msprop:Generator_RowClassName="LeaveEntryRow" msprop:Generator_TableClassName="LeaveEntryDataTable" msprop:Generator_TableVarName="tableLeaveEntry"> <xs:element name="LeaveEntry" msprop:Generator_RowClassName="LeaveEntryRow" msprop:Generator_RowEvHandlerName="LeaveEntryRowChangeEventHandler" msprop:Generator_RowDeletedName="LeaveEntryRowDeleted" msprop:Generator_RowDeletingName="LeaveEntryRowDeleting" msprop:Generator_RowEvArgName="LeaveEntryRowChangeEvent" msprop:Generator_TablePropName="LeaveEntry" msprop:Generator_RowChangedName="LeaveEntryRowChanged" msprop:Generator_UserTableName="LeaveEntry" msprop:Generator_RowChangingName="LeaveEntryRowChanging" msprop:Generator_TableClassName="LeaveEntryDataTable" msprop:Generator_TableVarName="tableLeaveEntry">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="FROMDATE" msprop:Generator_ColumnPropNameInTable="FROMDATEColumn" msprop:Generator_ColumnPropNameInRow="FROMDATE" msprop:Generator_UserColumnName="FROMDATE" msprop:Generator_ColumnVarNameInTable="columnFROMDATE" type="xs:string" minOccurs="0" /> <xs:element name="FROMDATE" msprop:Generator_UserColumnName="FROMDATE" msprop:Generator_ColumnPropNameInTable="FROMDATEColumn" msprop:Generator_ColumnPropNameInRow="FROMDATE" msprop:Generator_ColumnVarNameInTable="columnFROMDATE" type="xs:string" minOccurs="0" />
<xs:element name="TODATE" msprop:Generator_ColumnPropNameInTable="TODATEColumn" msprop:Generator_ColumnPropNameInRow="TODATE" msprop:Generator_UserColumnName="TODATE" msprop:Generator_ColumnVarNameInTable="columnTODATE" type="xs:string" minOccurs="0" /> <xs:element name="TODATE" msprop:Generator_UserColumnName="TODATE" msprop:Generator_ColumnPropNameInTable="TODATEColumn" msprop:Generator_ColumnPropNameInRow="TODATE" msprop:Generator_ColumnVarNameInTable="columnTODATE" type="xs:string" minOccurs="0" />
<xs:element name="TOTALDAYS" msprop:Generator_ColumnPropNameInTable="TOTALDAYSColumn" msprop:Generator_ColumnPropNameInRow="TOTALDAYS" msprop:Generator_UserColumnName="TOTALDAYS" msprop:Generator_ColumnVarNameInTable="columnTOTALDAYS" type="xs:string" minOccurs="0" /> <xs:element name="TOTALDAYS" msprop:Generator_UserColumnName="TOTALDAYS" msprop:Generator_ColumnPropNameInTable="TOTALDAYSColumn" msprop:Generator_ColumnPropNameInRow="TOTALDAYS" msprop:Generator_ColumnVarNameInTable="columnTOTALDAYS" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="EMPLifecycle" msprop:Generator_RowEvHandlerName="EMPLifecycleRowChangeEventHandler" msprop:Generator_RowDeletedName="EMPLifecycleRowDeleted" msprop:Generator_RowDeletingName="EMPLifecycleRowDeleting" msprop:Generator_RowEvArgName="EMPLifecycleRowChangeEvent" msprop:Generator_TablePropName="EMPLifecycle" msprop:Generator_RowChangedName="EMPLifecycleRowChanged" msprop:Generator_UserTableName="EMPLifecycle" msprop:Generator_RowChangingName="EMPLifecycleRowChanging" msprop:Generator_RowClassName="EMPLifecycleRow" msprop:Generator_TableClassName="EMPLifecycleDataTable" msprop:Generator_TableVarName="tableEMPLifecycle"> <xs:element name="EMPLifecycle" msprop:Generator_RowClassName="EMPLifecycleRow" msprop:Generator_RowEvHandlerName="EMPLifecycleRowChangeEventHandler" msprop:Generator_RowDeletedName="EMPLifecycleRowDeleted" msprop:Generator_RowDeletingName="EMPLifecycleRowDeleting" msprop:Generator_RowEvArgName="EMPLifecycleRowChangeEvent" msprop:Generator_TablePropName="EMPLifecycle" msprop:Generator_RowChangedName="EMPLifecycleRowChanged" msprop:Generator_UserTableName="EMPLifecycle" msprop:Generator_RowChangingName="EMPLifecycleRowChanging" msprop:Generator_TableClassName="EMPLifecycleDataTable" msprop:Generator_TableVarName="tableEMPLifecycle">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="EFFECTDATE" msprop:Generator_ColumnPropNameInTable="EFFECTDATEColumn" msprop:Generator_ColumnPropNameInRow="EFFECTDATE" msprop:Generator_UserColumnName="EFFECTDATE" msprop:Generator_ColumnVarNameInTable="columnEFFECTDATE" type="xs:string" minOccurs="0" /> <xs:element name="EFFECTDATE" msprop:Generator_UserColumnName="EFFECTDATE" msprop:Generator_ColumnPropNameInTable="EFFECTDATEColumn" msprop:Generator_ColumnPropNameInRow="EFFECTDATE" msprop:Generator_ColumnVarNameInTable="columnEFFECTDATE" type="xs:string" minOccurs="0" />
<xs:element name="DESIGNATION" msprop:Generator_ColumnPropNameInTable="DESIGNATIONColumn" msprop:Generator_ColumnPropNameInRow="DESIGNATION" msprop:Generator_UserColumnName="DESIGNATION" msprop:Generator_ColumnVarNameInTable="columnDESIGNATION" type="xs:string" minOccurs="0" /> <xs:element name="DESIGNATION" msprop:Generator_UserColumnName="DESIGNATION" msprop:Generator_ColumnPropNameInTable="DESIGNATIONColumn" msprop:Generator_ColumnPropNameInRow="DESIGNATION" msprop:Generator_ColumnVarNameInTable="columnDESIGNATION" type="xs:string" minOccurs="0" />
<xs:element name="BASICSALARY" msprop:Generator_ColumnPropNameInTable="BASICSALARYColumn" msprop:Generator_ColumnPropNameInRow="BASICSALARY" msprop:Generator_UserColumnName="BASICSALARY" msprop:Generator_ColumnVarNameInTable="columnBASICSALARY" type="xs:string" minOccurs="0" /> <xs:element name="BASICSALARY" msprop:Generator_UserColumnName="BASICSALARY" msprop:Generator_ColumnPropNameInTable="BASICSALARYColumn" msprop:Generator_ColumnPropNameInRow="BASICSALARY" msprop:Generator_ColumnVarNameInTable="columnBASICSALARY" type="xs:string" minOccurs="0" />
<xs:element name="HOUSERENT" msprop:Generator_UserColumnName="HOUSERENT" msprop:Generator_ColumnPropNameInTable="HOUSERENTColumn" msprop:Generator_ColumnPropNameInRow="HOUSERENT" msprop:Generator_ColumnVarNameInTable="columnHOUSERENT" type="xs:string" minOccurs="0" /> <xs:element name="HOUSERENT" msprop:Generator_ColumnPropNameInRow="HOUSERENT" msprop:Generator_ColumnPropNameInTable="HOUSERENTColumn" msprop:Generator_ColumnVarNameInTable="columnHOUSERENT" msprop:Generator_UserColumnName="HOUSERENT" type="xs:string" minOccurs="0" />
<xs:element name="MEDICAL" msprop:Generator_UserColumnName="MEDICAL" msprop:Generator_ColumnPropNameInTable="MEDICALColumn" msprop:Generator_ColumnPropNameInRow="MEDICAL" msprop:Generator_ColumnVarNameInTable="columnMEDICAL" type="xs:string" minOccurs="0" /> <xs:element name="MEDICAL" msprop:Generator_ColumnPropNameInRow="MEDICAL" msprop:Generator_ColumnPropNameInTable="MEDICALColumn" msprop:Generator_ColumnVarNameInTable="columnMEDICAL" msprop:Generator_UserColumnName="MEDICAL" type="xs:string" minOccurs="0" />
<xs:element name="BONUS" msprop:Generator_UserColumnName="BONUS" msprop:Generator_ColumnPropNameInTable="BONUSColumn" msprop:Generator_ColumnPropNameInRow="BONUS" msprop:Generator_ColumnVarNameInTable="columnBONUS" type="xs:string" minOccurs="0" /> <xs:element name="BONUS" msprop:Generator_ColumnPropNameInRow="BONUS" msprop:Generator_ColumnPropNameInTable="BONUSColumn" msprop:Generator_ColumnVarNameInTable="columnBONUS" msprop:Generator_UserColumnName="BONUS" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="Complain" msprop:Generator_RowEvHandlerName="ComplainRowChangeEventHandler" msprop:Generator_RowDeletedName="ComplainRowDeleted" msprop:Generator_RowDeletingName="ComplainRowDeleting" msprop:Generator_RowEvArgName="ComplainRowChangeEvent" msprop:Generator_TablePropName="Complain" msprop:Generator_RowChangedName="ComplainRowChanged" msprop:Generator_UserTableName="Complain" msprop:Generator_RowChangingName="ComplainRowChanging" msprop:Generator_RowClassName="ComplainRow" msprop:Generator_TableClassName="ComplainDataTable" msprop:Generator_TableVarName="tableComplain"> <xs:element name="Complain" msprop:Generator_RowClassName="ComplainRow" msprop:Generator_RowEvHandlerName="ComplainRowChangeEventHandler" msprop:Generator_RowDeletedName="ComplainRowDeleted" msprop:Generator_RowDeletingName="ComplainRowDeleting" msprop:Generator_RowEvArgName="ComplainRowChangeEvent" msprop:Generator_TablePropName="Complain" msprop:Generator_RowChangedName="ComplainRowChanged" msprop:Generator_UserTableName="Complain" msprop:Generator_RowChangingName="ComplainRowChanging" msprop:Generator_TableClassName="ComplainDataTable" msprop:Generator_TableVarName="tableComplain">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="EFFECTDATE" msprop:Generator_ColumnPropNameInTable="EFFECTDATEColumn" msprop:Generator_ColumnPropNameInRow="EFFECTDATE" msprop:Generator_UserColumnName="EFFECTDATE" msprop:Generator_ColumnVarNameInTable="columnEFFECTDATE" type="xs:string" minOccurs="0" /> <xs:element name="EFFECTDATE" msprop:Generator_UserColumnName="EFFECTDATE" msprop:Generator_ColumnPropNameInTable="EFFECTDATEColumn" msprop:Generator_ColumnPropNameInRow="EFFECTDATE" msprop:Generator_ColumnVarNameInTable="columnEFFECTDATE" type="xs:string" minOccurs="0" />
<xs:element name="DESCRIPTION" msprop:Generator_ColumnPropNameInTable="DESCRIPTIONColumn" msprop:Generator_ColumnPropNameInRow="DESCRIPTION" msprop:Generator_UserColumnName="DESCRIPTION" msprop:Generator_ColumnVarNameInTable="columnDESCRIPTION" type="xs:string" minOccurs="0" /> <xs:element name="DESCRIPTION" msprop:Generator_UserColumnName="DESCRIPTION" msprop:Generator_ColumnPropNameInTable="DESCRIPTIONColumn" msprop:Generator_ColumnPropNameInRow="DESCRIPTION" msprop:Generator_ColumnVarNameInTable="columnDESCRIPTION" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>

View File

@ -4,7 +4,7 @@
Changes to this file may cause incorrect behavior and will be lost if Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated. the code is regenerated.
</autogenerated>--> </autogenerated>-->
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="0" ViewPortY="43" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout"> <DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="0" ViewPortY="0" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes> <Shapes>
<Shape ID="DesignTable:EMPDigitalServiceBook" ZOrder="5" X="19" Y="101" Height="391" Width="202" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="387" /> <Shape ID="DesignTable:EMPDigitalServiceBook" ZOrder="5" X="19" Y="101" Height="391" Width="202" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="387" />
<Shape ID="DesignTable:SystemInformation" ZOrder="4" X="235" Y="104" Height="67" Width="177" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="63" /> <Shape ID="DesignTable:SystemInformation" ZOrder="4" X="235" Y="104" Height="67" Width="177" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="63" />

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -574,7 +574,7 @@
<xs:element name="EmoNo" msprop:Generator_ColumnPropNameInTable="EmoNoColumn" msprop:Generator_ColumnPropNameInRow="EmoNo" msprop:Generator_UserColumnName="EmoNo" msprop:Generator_ColumnVarNameInTable="columnEmoNo" type="xs:string" minOccurs="0" /> <xs:element name="EmoNo" msprop:Generator_ColumnPropNameInTable="EmoNoColumn" msprop:Generator_ColumnPropNameInRow="EmoNo" msprop:Generator_UserColumnName="EmoNo" msprop:Generator_ColumnVarNameInTable="columnEmoNo" type="xs:string" minOccurs="0" />
<xs:element name="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" /> <xs:element name="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" />
<xs:element name="OTDescription" msprop:Generator_ColumnPropNameInTable="OTDescriptionColumn" msprop:Generator_ColumnPropNameInRow="OTDescription" msprop:Generator_UserColumnName="OTDescription" msprop:Generator_ColumnVarNameInTable="columnOTDescription" type="xs:string" minOccurs="0" /> <xs:element name="OTDescription" msprop:Generator_ColumnPropNameInTable="OTDescriptionColumn" msprop:Generator_ColumnPropNameInRow="OTDescription" msprop:Generator_UserColumnName="OTDescription" msprop:Generator_ColumnVarNameInTable="columnOTDescription" type="xs:string" minOccurs="0" />
<xs:element name="OTRate" msprop:Generator_ColumnPropNameInTable="OTRateColumn" msprop:Generator_ColumnPropNameInRow="OTRate" msprop:Generator_UserColumnName="OTRate" msprop:Generator_ColumnVarNameInTable="columnOTRate" type="xs:double" minOccurs="0" /> <xs:element name="OTRate" msprop:Generator_ColumnPropNameInTable="OTRateColumn" msprop:Generator_ColumnPropNameInRow="OTRate" msprop:Generator_UserColumnName="OTRate" msprop:Generator_ColumnVarNameInTable="columnOTRate" type="xs:string" minOccurs="0" />
<xs:element name="OTAmount" msprop:Generator_ColumnPropNameInTable="OTAmountColumn" msprop:Generator_ColumnPropNameInRow="OTAmount" msprop:Generator_UserColumnName="OTAmount" msprop:Generator_ColumnVarNameInTable="columnOTAmount" type="xs:double" minOccurs="0" /> <xs:element name="OTAmount" msprop:Generator_ColumnPropNameInTable="OTAmountColumn" msprop:Generator_ColumnPropNameInRow="OTAmount" msprop:Generator_UserColumnName="OTAmount" msprop:Generator_ColumnVarNameInTable="columnOTAmount" type="xs:double" minOccurs="0" />
<xs:element name="OTMonth" msprop:Generator_ColumnPropNameInTable="OTMonthColumn" msprop:Generator_ColumnPropNameInRow="OTMonth" msprop:Generator_UserColumnName="OTMonth" msprop:Generator_ColumnVarNameInTable="columnOTMonth" type="xs:dateTime" minOccurs="0" /> <xs:element name="OTMonth" msprop:Generator_ColumnPropNameInTable="OTMonthColumn" msprop:Generator_ColumnPropNameInRow="OTMonth" msprop:Generator_UserColumnName="OTMonth" msprop:Generator_ColumnVarNameInTable="columnOTMonth" type="xs:dateTime" minOccurs="0" />
<xs:element name="SLNo" msprop:Generator_ColumnPropNameInTable="SLNoColumn" msprop:Generator_ColumnPropNameInRow="SLNo" msprop:Generator_UserColumnName="SLNo" msprop:Generator_ColumnVarNameInTable="columnSLNo" type="xs:string" minOccurs="0" /> <xs:element name="SLNo" msprop:Generator_ColumnPropNameInTable="SLNoColumn" msprop:Generator_ColumnPropNameInRow="SLNo" msprop:Generator_UserColumnName="SLNo" msprop:Generator_ColumnVarNameInTable="columnSLNo" type="xs:string" minOccurs="0" />
@ -3247,11 +3247,6 @@
<xs:element name="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" /> <xs:element name="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" />
<xs:element name="Date" msprop:Generator_ColumnPropNameInTable="DateColumn" msprop:Generator_ColumnPropNameInRow="Date" msprop:Generator_UserColumnName="Date" msprop:Generator_ColumnVarNameInTable="columnDate" type="xs:string" minOccurs="0" /> <xs:element name="Date" msprop:Generator_ColumnPropNameInTable="DateColumn" msprop:Generator_ColumnPropNameInRow="Date" msprop:Generator_UserColumnName="Date" msprop:Generator_ColumnVarNameInTable="columnDate" type="xs:string" minOccurs="0" />
<xs:element name="WorkingHour" msprop:Generator_ColumnPropNameInTable="WorkingHourColumn" msprop:Generator_ColumnPropNameInRow="WorkingHour" msprop:Generator_UserColumnName="WorkingHour" msprop:Generator_ColumnVarNameInTable="columnWorkingHour" type="xs:string" minOccurs="0" /> <xs:element name="WorkingHour" msprop:Generator_ColumnPropNameInTable="WorkingHourColumn" msprop:Generator_ColumnPropNameInRow="WorkingHour" msprop:Generator_UserColumnName="WorkingHour" msprop:Generator_ColumnVarNameInTable="columnWorkingHour" type="xs:string" minOccurs="0" />
<xs:element name="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" />
<xs:element name="Department" msprop:Generator_UserColumnName="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_ColumnVarNameInTable="columnDepartment" type="xs:string" minOccurs="0" />
<xs:element name="Floor" msprop:Generator_UserColumnName="Floor" msprop:Generator_ColumnPropNameInTable="FloorColumn" msprop:Generator_ColumnPropNameInRow="Floor" msprop:Generator_ColumnVarNameInTable="columnFloor" type="xs:string" minOccurs="0" />
<xs:element name="Line" msprop:Generator_UserColumnName="Line" msprop:Generator_ColumnPropNameInTable="LineColumn" msprop:Generator_ColumnPropNameInRow="Line" msprop:Generator_ColumnVarNameInTable="columnLine" type="xs:string" minOccurs="0" />
<xs:element name="Section" msprop:Generator_UserColumnName="Section" msprop:Generator_ColumnPropNameInTable="SectionColumn" msprop:Generator_ColumnPropNameInRow="Section" msprop:Generator_ColumnVarNameInTable="columnSection" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
@ -3313,123 +3308,25 @@
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="DeletedLifeCycle" msprop:Generator_RowEvHandlerName="DeletedLifeCycleRowChangeEventHandler" msprop:Generator_RowDeletedName="DeletedLifeCycleRowDeleted" msprop:Generator_RowDeletingName="DeletedLifeCycleRowDeleting" msprop:Generator_RowEvArgName="DeletedLifeCycleRowChangeEvent" msprop:Generator_TablePropName="DeletedLifeCycle" msprop:Generator_RowChangedName="DeletedLifeCycleRowChanged" msprop:Generator_UserTableName="DeletedLifeCycle" msprop:Generator_RowChangingName="DeletedLifeCycleRowChanging" msprop:Generator_RowClassName="DeletedLifeCycleRow" msprop:Generator_TableClassName="DeletedLifeCycleDataTable" msprop:Generator_TableVarName="tableDeletedLifeCycle"> <xs:element name="DeletedLifeCycle" msprop:Generator_RowClassName="DeletedLifeCycleRow" msprop:Generator_RowEvHandlerName="DeletedLifeCycleRowChangeEventHandler" msprop:Generator_RowDeletedName="DeletedLifeCycleRowDeleted" msprop:Generator_RowDeletingName="DeletedLifeCycleRowDeleting" msprop:Generator_RowEvArgName="DeletedLifeCycleRowChangeEvent" msprop:Generator_TablePropName="DeletedLifeCycle" msprop:Generator_RowChangedName="DeletedLifeCycleRowChanged" msprop:Generator_UserTableName="DeletedLifeCycle" msprop:Generator_RowChangingName="DeletedLifeCycleRowChanging" msprop:Generator_TableClassName="DeletedLifeCycleDataTable" msprop:Generator_TableVarName="tableDeletedLifeCycle">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="EffectDate" msprop:Generator_ColumnPropNameInTable="EffectDateColumn" msprop:Generator_ColumnPropNameInRow="EffectDate" msprop:Generator_UserColumnName="EffectDate" msprop:Generator_ColumnVarNameInTable="columnEffectDate" type="xs:string" minOccurs="0" /> <xs:element name="EffectDate" msprop:Generator_UserColumnName="EffectDate" msprop:Generator_ColumnPropNameInTable="EffectDateColumn" msprop:Generator_ColumnPropNameInRow="EffectDate" msprop:Generator_ColumnVarNameInTable="columnEffectDate" type="xs:string" minOccurs="0" />
<xs:element name="GrossSalary" msprop:Generator_ColumnPropNameInTable="GrossSalaryColumn" msprop:Generator_ColumnPropNameInRow="GrossSalary" msprop:Generator_UserColumnName="GrossSalary" msprop:Generator_ColumnVarNameInTable="columnGrossSalary" type="xs:string" minOccurs="0" /> <xs:element name="GrossSalary" msprop:Generator_UserColumnName="GrossSalary" msprop:Generator_ColumnPropNameInTable="GrossSalaryColumn" msprop:Generator_ColumnPropNameInRow="GrossSalary" msprop:Generator_ColumnVarNameInTable="columnGrossSalary" type="xs:string" minOccurs="0" />
<xs:element name="BasicSalary" msprop:Generator_ColumnPropNameInTable="BasicSalaryColumn" msprop:Generator_ColumnPropNameInRow="BasicSalary" msprop:Generator_UserColumnName="BasicSalary" msprop:Generator_ColumnVarNameInTable="columnBasicSalary" type="xs:string" minOccurs="0" /> <xs:element name="BasicSalary" msprop:Generator_UserColumnName="BasicSalary" msprop:Generator_ColumnPropNameInTable="BasicSalaryColumn" msprop:Generator_ColumnPropNameInRow="BasicSalary" msprop:Generator_ColumnVarNameInTable="columnBasicSalary" type="xs:string" minOccurs="0" />
<xs:element name="Grade" msprop:Generator_ColumnPropNameInTable="GradeColumn" msprop:Generator_ColumnPropNameInRow="Grade" msprop:Generator_UserColumnName="Grade" msprop:Generator_ColumnVarNameInTable="columnGrade" type="xs:string" minOccurs="0" /> <xs:element name="Grade" msprop:Generator_UserColumnName="Grade" msprop:Generator_ColumnPropNameInTable="GradeColumn" msprop:Generator_ColumnPropNameInRow="Grade" msprop:Generator_ColumnVarNameInTable="columnGrade" type="xs:string" minOccurs="0" />
<xs:element name="Company" msprop:Generator_ColumnPropNameInTable="CompanyColumn" msprop:Generator_ColumnPropNameInRow="Company" msprop:Generator_UserColumnName="Company" msprop:Generator_ColumnVarNameInTable="columnCompany" type="xs:string" minOccurs="0" /> <xs:element name="Company" msprop:Generator_UserColumnName="Company" msprop:Generator_ColumnPropNameInTable="CompanyColumn" msprop:Generator_ColumnPropNameInRow="Company" msprop:Generator_ColumnVarNameInTable="columnCompany" type="xs:string" minOccurs="0" />
<xs:element name="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" /> <xs:element name="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" />
<xs:element name="Location" msprop:Generator_ColumnPropNameInTable="LocationColumn" msprop:Generator_ColumnPropNameInRow="Location" msprop:Generator_UserColumnName="Location" msprop:Generator_ColumnVarNameInTable="columnLocation" type="xs:string" minOccurs="0" /> <xs:element name="Location" msprop:Generator_UserColumnName="Location" msprop:Generator_ColumnPropNameInTable="LocationColumn" msprop:Generator_ColumnPropNameInRow="Location" msprop:Generator_ColumnVarNameInTable="columnLocation" type="xs:string" minOccurs="0" />
<xs:element name="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_UserColumnName="Department" msprop:Generator_ColumnVarNameInTable="columnDepartment" type="xs:string" minOccurs="0" /> <xs:element name="Department" msprop:Generator_UserColumnName="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_ColumnVarNameInTable="columnDepartment" type="xs:string" minOccurs="0" />
<xs:element name="Confirmed" msprop:Generator_ColumnPropNameInTable="ConfirmedColumn" msprop:Generator_ColumnPropNameInRow="Confirmed" msprop:Generator_UserColumnName="Confirmed" msprop:Generator_ColumnVarNameInTable="columnConfirmed" type="xs:string" minOccurs="0" /> <xs:element name="Confirmed" msprop:Generator_UserColumnName="Confirmed" msprop:Generator_ColumnPropNameInTable="ConfirmedColumn" msprop:Generator_ColumnPropNameInRow="Confirmed" msprop:Generator_ColumnVarNameInTable="columnConfirmed" type="xs:string" minOccurs="0" />
<xs:element name="EmployeeNo" msprop:Generator_ColumnPropNameInTable="EmployeeNoColumn" msprop:Generator_ColumnPropNameInRow="EmployeeNo" msprop:Generator_UserColumnName="EmployeeNo" msprop:Generator_ColumnVarNameInTable="columnEmployeeNo" type="xs:string" minOccurs="0" /> <xs:element name="EmployeeNo" msprop:Generator_UserColumnName="EmployeeNo" msprop:Generator_ColumnPropNameInTable="EmployeeNoColumn" msprop:Generator_ColumnPropNameInRow="EmployeeNo" msprop:Generator_ColumnVarNameInTable="columnEmployeeNo" type="xs:string" minOccurs="0" />
<xs:element name="EmployeeName" msprop:Generator_ColumnPropNameInTable="EmployeeNameColumn" msprop:Generator_ColumnPropNameInRow="EmployeeName" msprop:Generator_UserColumnName="EmployeeName" msprop:Generator_ColumnVarNameInTable="columnEmployeeName" type="xs:string" minOccurs="0" /> <xs:element name="EmployeeName" msprop:Generator_UserColumnName="EmployeeName" msprop:Generator_ColumnPropNameInTable="EmployeeNameColumn" msprop:Generator_ColumnPropNameInRow="EmployeeName" msprop:Generator_ColumnVarNameInTable="columnEmployeeName" type="xs:string" minOccurs="0" />
<xs:element name="Status" msprop:Generator_ColumnPropNameInTable="StatusColumn" msprop:Generator_ColumnPropNameInRow="Status" msprop:Generator_UserColumnName="Status" msprop:Generator_ColumnVarNameInTable="columnStatus" type="xs:string" minOccurs="0" /> <xs:element name="Status" msprop:Generator_UserColumnName="Status" msprop:Generator_ColumnPropNameInTable="StatusColumn" msprop:Generator_ColumnPropNameInRow="Status" msprop:Generator_ColumnVarNameInTable="columnStatus" type="xs:string" minOccurs="0" />
<xs:element name="Remarks" msprop:Generator_ColumnPropNameInTable="RemarksColumn" msprop:Generator_ColumnPropNameInRow="Remarks" msprop:Generator_UserColumnName="Remarks" msprop:Generator_ColumnVarNameInTable="columnRemarks" type="xs:string" minOccurs="0" /> <xs:element name="Remarks" msprop:Generator_UserColumnName="Remarks" msprop:Generator_ColumnPropNameInTable="RemarksColumn" msprop:Generator_ColumnPropNameInRow="Remarks" msprop:Generator_ColumnVarNameInTable="columnRemarks" type="xs:string" minOccurs="0" />
<xs:element name="Description" msprop:Generator_ColumnPropNameInTable="DescriptionColumn" msprop:Generator_ColumnPropNameInRow="Description" msprop:Generator_UserColumnName="Description" msprop:Generator_ColumnVarNameInTable="columnDescription" type="xs:string" minOccurs="0" /> <xs:element name="Description" msprop:Generator_UserColumnName="Description" msprop:Generator_ColumnPropNameInTable="DescriptionColumn" msprop:Generator_ColumnPropNameInRow="Description" msprop:Generator_ColumnVarNameInTable="columnDescription" type="xs:string" minOccurs="0" />
<xs:element name="SalaryMonth" msprop:Generator_ColumnPropNameInTable="SalaryMonthColumn" msprop:Generator_ColumnPropNameInRow="SalaryMonth" msprop:Generator_UserColumnName="SalaryMonth" msprop:Generator_ColumnVarNameInTable="columnSalaryMonth" type="xs:string" minOccurs="0" /> <xs:element name="SalaryMonth" msprop:Generator_UserColumnName="SalaryMonth" msprop:Generator_ColumnPropNameInTable="SalaryMonthColumn" msprop:Generator_ColumnPropNameInRow="SalaryMonth" msprop:Generator_ColumnVarNameInTable="columnSalaryMonth" type="xs:string" minOccurs="0" />
<xs:element name="GradeSalaryAssesment" msprop:Generator_ColumnPropNameInTable="GradeSalaryAssesmentColumn" msprop:Generator_ColumnPropNameInRow="GradeSalaryAssesment" msprop:Generator_UserColumnName="GradeSalaryAssesment" msprop:Generator_ColumnVarNameInTable="columnGradeSalaryAssesment" type="xs:string" minOccurs="0" /> <xs:element name="GradeSalaryAssesment" msprop:Generator_UserColumnName="GradeSalaryAssesment" msprop:Generator_ColumnPropNameInTable="GradeSalaryAssesmentColumn" msprop:Generator_ColumnPropNameInRow="GradeSalaryAssesment" msprop:Generator_ColumnVarNameInTable="columnGradeSalaryAssesment" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="EmployeeDetailEcho" msprop:Generator_RowEvHandlerName="EmployeeDetailEchoRowChangeEventHandler" msprop:Generator_RowDeletedName="EmployeeDetailEchoRowDeleted" msprop:Generator_RowDeletingName="EmployeeDetailEchoRowDeleting" msprop:Generator_RowEvArgName="EmployeeDetailEchoRowChangeEvent" msprop:Generator_TablePropName="EmployeeDetailEcho" msprop:Generator_RowChangedName="EmployeeDetailEchoRowChanged" msprop:Generator_UserTableName="EmployeeDetailEcho" msprop:Generator_RowChangingName="EmployeeDetailEchoRowChanging" msprop:Generator_RowClassName="EmployeeDetailEchoRow" msprop:Generator_TableClassName="EmployeeDetailEchoDataTable" msprop:Generator_TableVarName="tableEmployeeDetailEcho">
<xs:complexType>
<xs:sequence>
<xs:element name="EmpNo" msprop:Generator_ColumnPropNameInTable="EmpNoColumn" msprop:Generator_ColumnPropNameInRow="EmpNo" msprop:Generator_UserColumnName="EmpNo" msprop:Generator_ColumnVarNameInTable="columnEmpNo" type="xs:string" minOccurs="0" />
<xs:element name="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" />
<xs:element name="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" />
<xs:element name="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_UserColumnName="Department" msprop:Generator_ColumnVarNameInTable="columnDepartment" type="xs:string" minOccurs="0" />
<xs:element name="Grade" msprop:Generator_ColumnPropNameInTable="GradeColumn" msprop:Generator_ColumnPropNameInRow="Grade" msprop:Generator_UserColumnName="Grade" msprop:Generator_ColumnVarNameInTable="columnGrade" type="xs:string" minOccurs="0" />
<xs:element name="BasicSalary" msprop:Generator_ColumnPropNameInTable="BasicSalaryColumn" msprop:Generator_ColumnPropNameInRow="BasicSalary" msprop:Generator_UserColumnName="BasicSalary" msprop:Generator_ColumnVarNameInTable="columnBasicSalary" type="xs:double" minOccurs="0" />
<xs:element name="DOB" msprop:Generator_ColumnPropNameInTable="DOBColumn" msprop:Generator_ColumnPropNameInRow="DOB" msprop:Generator_UserColumnName="DOB" msprop:Generator_ColumnVarNameInTable="columnDOB" type="xs:dateTime" minOccurs="0" />
<xs:element name="Gender" msprop:Generator_ColumnPropNameInTable="GenderColumn" msprop:Generator_ColumnPropNameInRow="Gender" msprop:Generator_UserColumnName="Gender" msprop:Generator_ColumnVarNameInTable="columnGender" type="xs:string" minOccurs="0" />
<xs:element name="Religion" msprop:Generator_ColumnPropNameInTable="ReligionColumn" msprop:Generator_ColumnPropNameInRow="Religion" msprop:Generator_UserColumnName="Religion" msprop:Generator_ColumnVarNameInTable="columnReligion" type="xs:string" minOccurs="0" />
<xs:element name="Bank" msprop:Generator_ColumnPropNameInTable="BankColumn" msprop:Generator_ColumnPropNameInRow="Bank" msprop:Generator_UserColumnName="Bank" msprop:Generator_ColumnVarNameInTable="columnBank" type="xs:string" minOccurs="0" />
<xs:element name="Branch" msprop:Generator_ColumnPropNameInTable="BranchColumn" msprop:Generator_ColumnPropNameInRow="Branch" msprop:Generator_UserColumnName="Branch" msprop:Generator_ColumnVarNameInTable="columnBranch" type="xs:string" minOccurs="0" />
<xs:element name="AccountNo" msprop:Generator_ColumnPropNameInTable="AccountNoColumn" msprop:Generator_ColumnPropNameInRow="AccountNo" msprop:Generator_UserColumnName="AccountNo" msprop:Generator_ColumnVarNameInTable="columnAccountNo" type="xs:string" minOccurs="0" />
<xs:element name="DOJ" msprop:Generator_ColumnPropNameInTable="DOJColumn" msprop:Generator_ColumnPropNameInRow="DOJ" msprop:Generator_UserColumnName="DOJ" msprop:Generator_ColumnVarNameInTable="columnDOJ" type="xs:dateTime" minOccurs="0" />
<xs:element name="ConfirmDate" msprop:Generator_ColumnPropNameInTable="ConfirmDateColumn" msprop:Generator_ColumnPropNameInRow="ConfirmDate" msprop:Generator_UserColumnName="ConfirmDate" msprop:Generator_ColumnVarNameInTable="columnConfirmDate" type="xs:dateTime" minOccurs="0" />
<xs:element name="TaxAmount" msprop:Generator_ColumnPropNameInTable="TaxAmountColumn" msprop:Generator_ColumnPropNameInRow="TaxAmount" msprop:Generator_UserColumnName="TaxAmount" msprop:Generator_ColumnVarNameInTable="columnTaxAmount" type="xs:string" minOccurs="0" />
<xs:element name="MarStatus" msprop:Generator_ColumnPropNameInTable="MarStatusColumn" msprop:Generator_ColumnPropNameInRow="MarStatus" msprop:Generator_UserColumnName="MarStatus" msprop:Generator_ColumnVarNameInTable="columnMarStatus" type="xs:string" minOccurs="0" />
<xs:element name="MobileNo" msprop:Generator_ColumnPropNameInTable="MobileNoColumn" msprop:Generator_ColumnPropNameInRow="MobileNo" msprop:Generator_UserColumnName="MobileNo" msprop:Generator_ColumnVarNameInTable="columnMobileNo" type="xs:string" minOccurs="0" />
<xs:element name="MailAdd" msprop:Generator_ColumnPropNameInTable="MailAddColumn" msprop:Generator_ColumnPropNameInRow="MailAdd" msprop:Generator_UserColumnName="MailAdd" msprop:Generator_ColumnVarNameInTable="columnMailAdd" type="xs:string" minOccurs="0" />
<xs:element name="LocDes" msprop:Generator_ColumnPropNameInTable="LocDesColumn" msprop:Generator_ColumnPropNameInRow="LocDes" msprop:Generator_UserColumnName="LocDes" msprop:Generator_ColumnVarNameInTable="columnLocDes" type="xs:string" minOccurs="0" />
<xs:element name="GrossSalary" msprop:Generator_ColumnPropNameInTable="GrossSalaryColumn" msprop:Generator_ColumnPropNameInRow="GrossSalary" msprop:Generator_UserColumnName="GrossSalary" msprop:Generator_ColumnVarNameInTable="columnGrossSalary" type="xs:double" minOccurs="0" />
<xs:element name="VendorCode" msprop:Generator_ColumnPropNameInTable="VendorCodeColumn" msprop:Generator_ColumnPropNameInRow="VendorCode" msprop:Generator_UserColumnName="VendorCode" msprop:Generator_ColumnVarNameInTable="columnVendorCode" type="xs:string" minOccurs="0" />
<xs:element name="BankOPI" msprop:Generator_ColumnPropNameInTable="BankOPIColumn" msprop:Generator_ColumnPropNameInRow="BankOPI" msprop:Generator_UserColumnName="BankOPI" msprop:Generator_ColumnVarNameInTable="columnBankOPI" type="xs:string" minOccurs="0" />
<xs:element name="BranchOPI" msprop:Generator_ColumnPropNameInTable="BranchOPIColumn" msprop:Generator_ColumnPropNameInRow="BranchOPI" msprop:Generator_UserColumnName="BranchOPI" msprop:Generator_ColumnVarNameInTable="columnBranchOPI" type="xs:string" minOccurs="0" />
<xs:element name="AccountNoOPI" msprop:Generator_ColumnPropNameInTable="AccountNoOPIColumn" msprop:Generator_ColumnPropNameInRow="AccountNoOPI" msprop:Generator_UserColumnName="AccountNoOPI" msprop:Generator_ColumnVarNameInTable="columnAccountNoOPI" type="xs:string" minOccurs="0" />
<xs:element name="Floor" msprop:Generator_ColumnPropNameInTable="FloorColumn" msprop:Generator_ColumnPropNameInRow="Floor" msprop:Generator_UserColumnName="Floor" msprop:Generator_ColumnVarNameInTable="columnFloor" type="xs:string" minOccurs="0" />
<xs:element name="Section" msprop:Generator_ColumnPropNameInTable="SectionColumn" msprop:Generator_ColumnPropNameInRow="Section" msprop:Generator_UserColumnName="Section" msprop:Generator_ColumnVarNameInTable="columnSection" type="xs:string" minOccurs="0" />
<xs:element name="Line" msprop:Generator_ColumnPropNameInTable="LineColumn" msprop:Generator_ColumnPropNameInRow="Line" msprop:Generator_UserColumnName="Line" msprop:Generator_ColumnVarNameInTable="columnLine" type="xs:string" minOccurs="0" />
<xs:element name="RFID" msprop:Generator_ColumnPropNameInTable="RFIDColumn" msprop:Generator_ColumnPropNameInRow="RFID" msprop:Generator_UserColumnName="RFID" msprop:Generator_ColumnVarNameInTable="columnRFID" type="xs:string" minOccurs="0" />
<xs:element name="BloodGroup" msprop:Generator_ColumnPropNameInTable="BloodGroupColumn" msprop:Generator_ColumnPropNameInRow="BloodGroup" msprop:Generator_UserColumnName="BloodGroup" msprop:Generator_ColumnVarNameInTable="columnBloodGroup" type="xs:string" minOccurs="0" />
<xs:element name="Qualification" msprop:Generator_ColumnPropNameInTable="QualificationColumn" msprop:Generator_ColumnPropNameInRow="Qualification" msprop:Generator_UserColumnName="Qualification" msprop:Generator_ColumnVarNameInTable="columnQualification" type="xs:string" minOccurs="0" />
<xs:element name="VotterID" msprop:Generator_ColumnPropNameInTable="VotterIDColumn" msprop:Generator_ColumnPropNameInRow="VotterID" msprop:Generator_UserColumnName="VotterID" msprop:Generator_ColumnVarNameInTable="columnVotterID" type="xs:string" minOccurs="0" />
<xs:element name="Nationality" msprop:Generator_ColumnPropNameInTable="NationalityColumn" msprop:Generator_ColumnPropNameInRow="Nationality" msprop:Generator_UserColumnName="Nationality" msprop:Generator_ColumnVarNameInTable="columnNationality" type="xs:string" minOccurs="0" />
<xs:element name="FathersName" msprop:Generator_ColumnPropNameInTable="FathersNameColumn" msprop:Generator_ColumnPropNameInRow="FathersName" msprop:Generator_UserColumnName="FathersName" msprop:Generator_ColumnVarNameInTable="columnFathersName" type="xs:string" minOccurs="0" />
<xs:element name="MothersName" msprop:Generator_ColumnPropNameInTable="MothersNameColumn" msprop:Generator_ColumnPropNameInRow="MothersName" msprop:Generator_UserColumnName="MothersName" msprop:Generator_ColumnVarNameInTable="columnMothersName" type="xs:string" minOccurs="0" />
<xs:element name="Spouse" msprop:Generator_ColumnPropNameInTable="SpouseColumn" msprop:Generator_ColumnPropNameInRow="Spouse" msprop:Generator_UserColumnName="Spouse" msprop:Generator_ColumnVarNameInTable="columnSpouse" type="xs:string" minOccurs="0" />
<xs:element name="TempVill" msprop:Generator_ColumnPropNameInTable="TempVillColumn" msprop:Generator_ColumnPropNameInRow="TempVill" msprop:Generator_UserColumnName="TempVill" msprop:Generator_ColumnVarNameInTable="columnTempVill" type="xs:string" minOccurs="0" />
<xs:element name="TempPost" msprop:Generator_ColumnPropNameInTable="TempPostColumn" msprop:Generator_ColumnPropNameInRow="TempPost" msprop:Generator_UserColumnName="TempPost" msprop:Generator_ColumnVarNameInTable="columnTempPost" type="xs:string" minOccurs="0" />
<xs:element name="TempPS" msprop:Generator_ColumnPropNameInTable="TempPSColumn" msprop:Generator_ColumnPropNameInRow="TempPS" msprop:Generator_UserColumnName="TempPS" msprop:Generator_ColumnVarNameInTable="columnTempPS" type="xs:string" minOccurs="0" />
<xs:element name="TempDist" msprop:Generator_ColumnPropNameInTable="TempDistColumn" msprop:Generator_ColumnPropNameInRow="TempDist" msprop:Generator_UserColumnName="TempDist" msprop:Generator_ColumnVarNameInTable="columnTempDist" type="xs:string" minOccurs="0" />
<xs:element name="PerVill" msprop:Generator_ColumnPropNameInTable="PerVillColumn" msprop:Generator_ColumnPropNameInRow="PerVill" msprop:Generator_UserColumnName="PerVill" msprop:Generator_ColumnVarNameInTable="columnPerVill" type="xs:string" minOccurs="0" />
<xs:element name="PerPost" msprop:Generator_ColumnPropNameInTable="PerPostColumn" msprop:Generator_ColumnPropNameInRow="PerPost" msprop:Generator_UserColumnName="PerPost" msprop:Generator_ColumnVarNameInTable="columnPerPost" type="xs:string" minOccurs="0" />
<xs:element name="PerPS" msprop:Generator_ColumnPropNameInTable="PerPSColumn" msprop:Generator_ColumnPropNameInRow="PerPS" msprop:Generator_UserColumnName="PerPS" msprop:Generator_ColumnVarNameInTable="columnPerPS" type="xs:string" minOccurs="0" />
<xs:element name="PerDist" msprop:Generator_ColumnPropNameInTable="PerDistColumn" msprop:Generator_ColumnPropNameInRow="PerDist" msprop:Generator_UserColumnName="PerDist" msprop:Generator_ColumnVarNameInTable="columnPerDist" type="xs:string" minOccurs="0" />
<xs:element name="Category" msprop:Generator_ColumnPropNameInTable="CategoryColumn" msprop:Generator_ColumnPropNameInRow="Category" msprop:Generator_UserColumnName="Category" msprop:Generator_ColumnVarNameInTable="columnCategory" type="xs:string" minOccurs="0" />
<xs:element name="BanglaName" msprop:Generator_ColumnPropNameInTable="BanglaNameColumn" msprop:Generator_ColumnPropNameInRow="BanglaName" msprop:Generator_UserColumnName="BanglaName" msprop:Generator_ColumnVarNameInTable="columnBanglaName" type="xs:string" minOccurs="0" />
<xs:element name="BanglaDesignation" msprop:Generator_ColumnPropNameInTable="BanglaDesignationColumn" msprop:Generator_ColumnPropNameInRow="BanglaDesignation" msprop:Generator_UserColumnName="BanglaDesignation" msprop:Generator_ColumnVarNameInTable="columnBanglaDesignation" type="xs:string" minOccurs="0" />
<xs:element name="DepartmentBangla" msprop:Generator_ColumnPropNameInTable="DepartmentBanglaColumn" msprop:Generator_ColumnPropNameInRow="DepartmentBangla" msprop:Generator_UserColumnName="DepartmentBangla" msprop:Generator_ColumnVarNameInTable="columnDepartmentBangla" type="xs:string" minOccurs="0" />
<xs:element name="SectionBangla" msprop:Generator_ColumnPropNameInTable="SectionBanglaColumn" msprop:Generator_ColumnPropNameInRow="SectionBangla" msprop:Generator_UserColumnName="SectionBangla" msprop:Generator_ColumnVarNameInTable="columnSectionBangla" type="xs:string" minOccurs="0" />
<xs:element name="LANDPHONE" msprop:Generator_ColumnPropNameInTable="LANDPHONEColumn" msprop:Generator_ColumnPropNameInRow="LANDPHONE" msprop:Generator_UserColumnName="LANDPHONE" msprop:Generator_ColumnVarNameInTable="columnLANDPHONE" type="xs:string" minOccurs="0" />
<xs:element name="OFFICEMOBILE" msprop:Generator_ColumnPropNameInTable="OFFICEMOBILEColumn" msprop:Generator_ColumnPropNameInRow="OFFICEMOBILE" msprop:Generator_UserColumnName="OFFICEMOBILE" msprop:Generator_ColumnVarNameInTable="columnOFFICEMOBILE" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="dtEncashmentReportNew" msprop:Generator_RowEvHandlerName="dtEncashmentReportNewRowChangeEventHandler" msprop:Generator_RowDeletedName="dtEncashmentReportNewRowDeleted" msprop:Generator_RowDeletingName="dtEncashmentReportNewRowDeleting" msprop:Generator_RowEvArgName="dtEncashmentReportNewRowChangeEvent" msprop:Generator_TablePropName="dtEncashmentReportNew" msprop:Generator_RowChangedName="dtEncashmentReportNewRowChanged" msprop:Generator_RowChangingName="dtEncashmentReportNewRowChanging" msprop:Generator_TableClassName="dtEncashmentReportNewDataTable" msprop:Generator_RowClassName="dtEncashmentReportNewRow" msprop:Generator_TableVarName="tabledtEncashmentReportNew" msprop:Generator_UserTableName="dtEncashmentReportNew">
<xs:complexType>
<xs:sequence>
<xs:element name="EmpName" msdata:Caption="EmpID" msprop:Generator_ColumnPropNameInRow="EmpName" msprop:Generator_ColumnPropNameInTable="EmpNameColumn" msprop:Generator_ColumnVarNameInTable="columnEmpName" msprop:Generator_UserColumnName="EmpName" type="xs:string" minOccurs="0" />
<xs:element name="JoiningDate" msprop:Generator_ColumnPropNameInRow="JoiningDate" msprop:Generator_ColumnPropNameInTable="JoiningDateColumn" msprop:Generator_ColumnVarNameInTable="columnJoiningDate" msprop:Generator_UserColumnName="JoiningDate" type="xs:string" minOccurs="0" />
<xs:element name="EmpNo" msprop:Generator_ColumnPropNameInRow="EmpNo" msprop:Generator_ColumnPropNameInTable="EmpNoColumn" msprop:Generator_ColumnVarNameInTable="columnEmpNo" msprop:Generator_UserColumnName="EmpNo" type="xs:string" minOccurs="0" />
<xs:element name="Designation" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnVarNameInTable="columnDesignation" msprop:Generator_UserColumnName="Designation" type="xs:string" minOccurs="0" />
<xs:element name="AccountNo" msprop:Generator_ColumnPropNameInRow="AccountNo" msprop:Generator_ColumnPropNameInTable="AccountNoColumn" msprop:Generator_ColumnVarNameInTable="columnAccountNo" msprop:Generator_UserColumnName="AccountNo" type="xs:string" minOccurs="0" />
<xs:element name="TINNo" msprop:Generator_ColumnPropNameInRow="TINNo" msprop:Generator_ColumnPropNameInTable="TINNoColumn" msprop:Generator_ColumnVarNameInTable="columnTINNo" msprop:Generator_UserColumnName="TINNo" type="xs:string" minOccurs="0" />
<xs:element name="Department" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnVarNameInTable="columnDepartment" msprop:Generator_UserColumnName="Department" type="xs:string" minOccurs="0" />
<xs:element name="Floor" msprop:Generator_ColumnPropNameInRow="Floor" msprop:Generator_ColumnPropNameInTable="FloorColumn" msprop:Generator_ColumnVarNameInTable="columnFloor" msprop:Generator_UserColumnName="Floor" type="xs:string" minOccurs="0" />
<xs:element name="Section" msprop:Generator_ColumnPropNameInRow="Section" msprop:Generator_ColumnPropNameInTable="SectionColumn" msprop:Generator_ColumnVarNameInTable="columnSection" msprop:Generator_UserColumnName="Section" type="xs:string" minOccurs="0" />
<xs:element name="Line" msprop:Generator_ColumnPropNameInRow="Line" msprop:Generator_ColumnPropNameInTable="LineColumn" msprop:Generator_ColumnVarNameInTable="columnLine" msprop:Generator_UserColumnName="Line" type="xs:string" minOccurs="0" />
<xs:element name="CC" msprop:Generator_ColumnPropNameInRow="CC" msprop:Generator_ColumnPropNameInTable="CCColumn" msprop:Generator_ColumnVarNameInTable="columnCC" msprop:Generator_UserColumnName="CC" type="xs:string" minOccurs="0" />
<xs:element name="CCCode" msprop:Generator_ColumnPropNameInRow="CCCode" msprop:Generator_ColumnPropNameInTable="CCCodeColumn" msprop:Generator_ColumnVarNameInTable="columnCCCode" msprop:Generator_UserColumnName="CCCode" type="xs:string" minOccurs="0" />
<xs:element name="Grade" msprop:Generator_ColumnPropNameInRow="Grade" msprop:Generator_ColumnPropNameInTable="GradeColumn" msprop:Generator_ColumnVarNameInTable="columnGrade" msprop:Generator_UserColumnName="Grade" type="xs:string" minOccurs="0" />
<xs:element name="Gross" msprop:Generator_ColumnPropNameInRow="Gross" msprop:Generator_ColumnPropNameInTable="GrossColumn" msprop:Generator_ColumnVarNameInTable="columnGross" msprop:Generator_UserColumnName="Gross" type="xs:string" minOccurs="0" />
<xs:element name="Present" msprop:Generator_ColumnPropNameInRow="Present" msprop:Generator_ColumnPropNameInTable="PresentColumn" msprop:Generator_ColumnVarNameInTable="columnPresent" msprop:Generator_UserColumnName="Present" type="xs:string" minOccurs="0" />
<xs:element name="Holiday" msprop:Generator_ColumnPropNameInRow="Holiday" msprop:Generator_ColumnPropNameInTable="HolidayColumn" msprop:Generator_ColumnVarNameInTable="columnHoliday" msprop:Generator_UserColumnName="Holiday" type="xs:string" minOccurs="0" />
<xs:element name="Abcent" msprop:Generator_ColumnPropNameInRow="Abcent" msprop:Generator_ColumnPropNameInTable="AbcentColumn" msprop:Generator_ColumnVarNameInTable="columnAbcent" msprop:Generator_UserColumnName="Abcent" type="xs:string" minOccurs="0" />
<xs:element name="CL" msprop:Generator_ColumnPropNameInRow="CL" msprop:Generator_ColumnPropNameInTable="CLColumn" msprop:Generator_ColumnVarNameInTable="columnCL" msprop:Generator_UserColumnName="CL" type="xs:string" minOccurs="0" />
<xs:element name="SL" msprop:Generator_ColumnPropNameInRow="SL" msprop:Generator_ColumnPropNameInTable="SLColumn" msprop:Generator_ColumnVarNameInTable="columnSL" msprop:Generator_UserColumnName="SL" type="xs:string" minOccurs="0" />
<xs:element name="SPL" msprop:Generator_ColumnPropNameInRow="SPL" msprop:Generator_ColumnPropNameInTable="SPLColumn" msprop:Generator_ColumnVarNameInTable="columnSPL" msprop:Generator_UserColumnName="SPL" type="xs:string" minOccurs="0" />
<xs:element name="COM" msprop:Generator_ColumnPropNameInRow="COM" msprop:Generator_ColumnPropNameInTable="COMColumn" msprop:Generator_ColumnVarNameInTable="columnCOM" msprop:Generator_UserColumnName="COM" type="xs:string" minOccurs="0" />
<xs:element name="PL" msprop:Generator_ColumnPropNameInRow="PL" msprop:Generator_ColumnPropNameInTable="PLColumn" msprop:Generator_ColumnVarNameInTable="columnPL" msprop:Generator_UserColumnName="PL" type="xs:string" minOccurs="0" />
<xs:element name="ML" msprop:Generator_ColumnPropNameInRow="ML" msprop:Generator_ColumnPropNameInTable="MLColumn" msprop:Generator_ColumnVarNameInTable="columnML" msprop:Generator_UserColumnName="ML" type="xs:string" minOccurs="0" />
<xs:element name="LWOP" msprop:Generator_ColumnPropNameInRow="LWOP" msprop:Generator_ColumnPropNameInTable="LWOPColumn" msprop:Generator_ColumnVarNameInTable="columnLWOP" msprop:Generator_UserColumnName="LWOP" type="xs:string" minOccurs="0" />
<xs:element name="EL" msprop:Generator_ColumnPropNameInRow="EL" msprop:Generator_ColumnPropNameInTable="ELColumn" msprop:Generator_ColumnVarNameInTable="columnEL" msprop:Generator_UserColumnName="EL" type="xs:string" minOccurs="0" />
<xs:element name="ELDays" msprop:Generator_ColumnPropNameInRow="ELDays" msprop:Generator_ColumnPropNameInTable="ELDaysColumn" msprop:Generator_ColumnVarNameInTable="columnELDays" msprop:Generator_UserColumnName="ELDays" type="xs:double" minOccurs="0" />
<xs:element name="ELPayment" msprop:Generator_ColumnPropNameInRow="ELPayment" msprop:Generator_ColumnPropNameInTable="ELPaymentColumn" msprop:Generator_ColumnVarNameInTable="columnELPayment" msprop:Generator_UserColumnName="ELPayment" type="xs:string" minOccurs="0" />
<xs:element name="TDSAIT" msprop:Generator_ColumnPropNameInRow="TDSAIT" msprop:Generator_ColumnPropNameInTable="TDSAITColumn" msprop:Generator_ColumnVarNameInTable="columnTDSAIT" msprop:Generator_UserColumnName="TDSAIT" type="xs:string" minOccurs="0" />
<xs:element name="Net" msprop:Generator_ColumnPropNameInRow="Net" msprop:Generator_ColumnPropNameInTable="NetColumn" msprop:Generator_ColumnVarNameInTable="columnNet" msprop:Generator_UserColumnName="Net" type="xs:double" minOccurs="0" />
<xs:element name="Remarks" msprop:Generator_ColumnPropNameInRow="Remarks" msprop:Generator_ColumnPropNameInTable="RemarksColumn" msprop:Generator_ColumnVarNameInTable="columnRemarks" msprop:Generator_UserColumnName="Remarks" type="xs:string" minOccurs="0" />
<xs:element name="Signature" msprop:Generator_ColumnPropNameInRow="Signature" msprop:Generator_ColumnPropNameInTable="SignatureColumn" msprop:Generator_ColumnVarNameInTable="columnSignature" msprop:Generator_UserColumnName="Signature" type="xs:string" minOccurs="0" />
<xs:element name="NetSum" msprop:Generator_ColumnPropNameInRow="NetSum" msprop:Generator_ColumnPropNameInTable="NetSumColumn" msprop:Generator_ColumnVarNameInTable="columnNetSum" msprop:Generator_UserColumnName="NetSum" type="xs:string" minOccurs="0" />
<xs:element name="EnjoyedLeave" msprop:Generator_ColumnPropNameInRow="EnjoyedLeave" msprop:Generator_ColumnPropNameInTable="EnjoyedLeaveColumn" msprop:Generator_ColumnVarNameInTable="columnEnjoyedLeave" msprop:Generator_UserColumnName="EnjoyedLeave" type="xs:double" minOccurs="0" />
<xs:element name="EncashmentFromDate" msprop:Generator_ColumnPropNameInRow="EncashmentFromDate" msprop:Generator_ColumnPropNameInTable="EncashmentFromDateColumn" msprop:Generator_ColumnVarNameInTable="columnEncashmentFromDate" msprop:Generator_UserColumnName="EncashmentFromDate" type="xs:dateTime" minOccurs="0" />
<xs:element name="EncashmentToDate" msprop:Generator_ColumnPropNameInRow="EncashmentToDate" msprop:Generator_ColumnPropNameInTable="EncashmentToDateColumn" msprop:Generator_ColumnVarNameInTable="columnEncashmentToDate" msprop:Generator_UserColumnName="EncashmentToDate" type="xs:dateTime" minOccurs="0" />
<xs:element name="LeaveBalance" msprop:Generator_ColumnPropNameInRow="LeaveBalance" msprop:Generator_ColumnPropNameInTable="LeaveBalanceColumn" msprop:Generator_ColumnVarNameInTable="columnLeaveBalance" msprop:Generator_UserColumnName="LeaveBalance" type="xs:double" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>

View File

@ -4,192 +4,190 @@
Changes to this file may cause incorrect behavior and will be lost if Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated. the code is regenerated.
</autogenerated>--> </autogenerated>-->
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="-76" ViewPortY="987" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout"> <DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="-76" ViewPortY="-38" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes> <Shapes>
<Shape ID="DesignTable:Payslip" ZOrder="87" X="917" Y="260" Height="257" Width="157" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:Payslip" ZOrder="85" X="917" Y="260" Height="257" Width="157" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:EmployeeInfo" ZOrder="6" X="-66" Y="301" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:EmployeeInfo" ZOrder="3" X="-66" Y="301" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:EmployeePersonalInfo" ZOrder="35" X="0" Y="72" Height="239" Width="196" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" /> <Shape ID="DesignTable:EmployeePersonalInfo" ZOrder="33" X="0" Y="72" Height="239" Width="196" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
<Shape ID="DesignTable:EmployeeEducation" ZOrder="34" X="0" Y="72" Height="125" Width="180" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" /> <Shape ID="DesignTable:EmployeeEducation" ZOrder="32" X="0" Y="72" Height="125" Width="180" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" />
<Shape ID="DesignTable:EmployeeChildren" ZOrder="33" X="0" Y="72" Height="201" Width="171" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" /> <Shape ID="DesignTable:EmployeeChildren" ZOrder="31" X="0" Y="72" Height="201" Width="171" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="197" />
<Shape ID="DesignTable:EmployeeHobby" ZOrder="32" X="0" Y="72" Height="68" Width="161" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="64" /> <Shape ID="DesignTable:EmployeeHobby" ZOrder="30" X="0" Y="72" Height="68" Width="161" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="64" />
<Shape ID="DesignTable:EmployeeExperience" ZOrder="31" X="0" Y="72" Height="163" Width="185" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" /> <Shape ID="DesignTable:EmployeeExperience" ZOrder="29" X="0" Y="72" Height="163" Width="185" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:EmployeeTraining" ZOrder="30" X="0" Y="72" Height="144" Width="171" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" /> <Shape ID="DesignTable:EmployeeTraining" ZOrder="28" X="0" Y="72" Height="144" Width="171" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<Shape ID="DesignTable:EmployeeReferenceInside" ZOrder="29" X="0" Y="72" Height="163" Width="215" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" /> <Shape ID="DesignTable:EmployeeReferenceInside" ZOrder="27" X="0" Y="72" Height="163" Width="215" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="159" />
<Shape ID="DesignTable:EmployeeNominee" ZOrder="19" X="-1" Y="72" Height="28" Width="175" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="159" SplitterPosition="24" /> <Shape ID="DesignTable:EmployeeNominee" ZOrder="17" X="-1" Y="72" Height="28" Width="175" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="159" SplitterPosition="24" />
<Shape ID="DesignTable:EmployeeReferenceOutside" ZOrder="26" X="43" Y="181" Height="144" Width="225" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" /> <Shape ID="DesignTable:EmployeeReferenceOutside" ZOrder="24" X="43" Y="181" Height="144" Width="225" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<Shape ID="DesignTable:IncomeTax" ZOrder="171" X="616" Y="409" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:IncomeTax" ZOrder="169" X="616" Y="409" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:IncomeTaxSlab" ZOrder="184" X="612" Y="318" Height="143" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="160" SplitterPosition="139" /> <Shape ID="DesignTable:IncomeTaxSlab" ZOrder="182" X="612" Y="318" Height="143" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="160" SplitterPosition="139" />
<Shape ID="DesignTable:IncomeTaxOther" ZOrder="177" X="615" Y="380" Height="124" Width="162" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="120" /> <Shape ID="DesignTable:IncomeTaxOther" ZOrder="175" X="615" Y="380" Height="124" Width="162" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="120" />
<Shape ID="DesignTable:BankAdvice" ZOrder="151" X="1214" Y="421" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" /> <Shape ID="DesignTable:BankAdvice" ZOrder="149" X="1214" Y="421" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" />
<Shape ID="DesignTable:SalarySheet" ZOrder="92" X="1740" Y="101" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="313" SplitterPosition="253" /> <Shape ID="DesignTable:SalarySheet" ZOrder="90" X="1740" Y="101" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="313" SplitterPosition="253" />
<Shape ID="DesignTable:SettlementAdvice" ZOrder="27" X="47" Y="115" Height="257" Width="168" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" /> <Shape ID="DesignTable:SettlementAdvice" ZOrder="25" X="47" Y="115" Height="257" Width="168" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
<Shape ID="DesignTable:SalaryReconsilation" ZOrder="93" X="1744" Y="199" Height="257" Width="179" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:SalaryReconsilation" ZOrder="91" X="1744" Y="199" Height="257" Width="179" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:CCWSalaryDetail" ZOrder="90" X="285" Y="303" Height="162" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="158" /> <Shape ID="DesignTable:CCWSalaryDetail" ZOrder="88" X="285" Y="303" Height="162" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="158" />
<Shape ID="DesignTable:CCWSaSummary" ZOrder="48" X="286" Y="242" Height="124" Width="162" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="120" /> <Shape ID="DesignTable:CCWSaSummary" ZOrder="46" X="286" Y="242" Height="124" Width="162" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="120" />
<Shape ID="DesignTable:CashDisbursement" ZOrder="49" X="286" Y="213" Height="124" Width="173" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" /> <Shape ID="DesignTable:CashDisbursement" ZOrder="47" X="286" Y="213" Height="124" Width="173" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" />
<Shape ID="DesignTable:PostingDetails" ZOrder="176" X="911" Y="107" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:PostingDetails" ZOrder="174" X="911" Y="107" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:EmployeeDetail" ZOrder="28" X="594" Y="62" Height="239" Width="156" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="235" /> <Shape ID="DesignTable:EmployeeDetail" ZOrder="26" X="594" Y="62" Height="239" Width="156" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="235" />
<Shape ID="DesignTable:EmployeeHistory" ZOrder="85" X="-66" Y="402" Height="257" Width="165" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:EmployeeHistory" ZOrder="83" X="-66" Y="402" Height="257" Width="165" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:EmpCostAllocation" ZOrder="65" X="-67" Y="534" Height="105" Width="176" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" /> <Shape ID="DesignTable:EmpCostAllocation" ZOrder="63" X="-67" Y="534" Height="105" Width="176" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<Shape ID="DesignTable:UpcomEmployee" ZOrder="39" X="312" Y="965" Height="105" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" /> <Shape ID="DesignTable:UpcomEmployee" ZOrder="37" X="312" Y="965" Height="105" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<Shape ID="DesignTable:OTMonthlySheet" ZOrder="7" X="361" Y="66" Height="200" Width="164" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="196" /> <Shape ID="DesignTable:OTMonthlySheet" ZOrder="4" X="361" Y="66" Height="200" Width="164" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="196" />
<Shape ID="DesignTable:BonusBankAdvice" ZOrder="175" X="1212" Y="333" Height="162" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" /> <Shape ID="DesignTable:BonusBankAdvice" ZOrder="173" X="1212" Y="333" Height="162" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" />
<Shape ID="DesignTable:BonusRegister" ZOrder="111" X="1212" Y="361" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="272" SplitterPosition="253" /> <Shape ID="DesignTable:BonusRegister" ZOrder="109" X="1212" Y="361" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="272" SplitterPosition="253" />
<Shape ID="DesignTable:AnnualIncomeTax" ZOrder="174" X="624" Y="607" Height="143" Width="170" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" /> <Shape ID="DesignTable:AnnualIncomeTax" ZOrder="172" X="624" Y="607" Height="143" Width="170" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" />
<Shape ID="DesignTable:LaonPaymentDue" ZOrder="41" X="308" Y="803" Height="257" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:LaonPaymentDue" ZOrder="39" X="308" Y="803" Height="257" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:LoanIssue" ZOrder="42" X="308" Y="771" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="227" SplitterPosition="253" /> <Shape ID="DesignTable:LoanIssue" ZOrder="40" X="308" Y="771" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="227" SplitterPosition="253" />
<Shape ID="DesignTable:OTHourlySheet" ZOrder="54" X="361" Y="-28" Height="143" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" /> <Shape ID="DesignTable:OTHourlySheet" ZOrder="52" X="361" Y="-28" Height="143" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" />
<Shape ID="DesignTable:BasicReport" ZOrder="37" X="1205" Y="322" Height="106" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="63" SplitterPosition="102" /> <Shape ID="DesignTable:BasicReport" ZOrder="35" X="1205" Y="322" Height="106" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="63" SplitterPosition="102" />
<Shape ID="DesignTable:ExtendedSalarySheet" ZOrder="71" X="-65" Y="236" Height="257" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:ExtendedSalarySheet" ZOrder="69" X="-65" Y="236" Height="257" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:OTMonthRange" ZOrder="51" X="361" Y="127" Height="143" Width="158" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" /> <Shape ID="DesignTable:OTMonthRange" ZOrder="49" X="361" Y="127" Height="143" Width="158" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" />
<Shape ID="DesignTable:BranchWiseOT" ZOrder="115" X="1217" Y="541" Height="105" Width="151" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" /> <Shape ID="DesignTable:BranchWiseOT" ZOrder="113" X="1217" Y="541" Height="105" Width="151" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<Shape ID="DesignTable:DivisionWiseOT" ZOrder="181" X="1471" Y="161" Height="124" Width="157" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" /> <Shape ID="DesignTable:DivisionWiseOT" ZOrder="179" X="1471" Y="161" Height="124" Width="157" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" />
<Shape ID="DesignTable:OverAllSummary" ZOrder="52" X="360" Y="34" Height="257" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:OverAllSummary" ZOrder="50" X="360" Y="34" Height="257" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:EmpGradeBasic" ZOrder="78" X="-67" Y="72" Height="257" Width="155" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:EmpGradeBasic" ZOrder="76" X="-67" Y="72" Height="257" Width="155" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:EmpAllowDeduct" ZOrder="79" X="-68" Y="39" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:EmpAllowDeduct" ZOrder="77" X="-68" Y="39" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:EmpBankHistory" ZOrder="69" X="-66" Y="333" Height="257" Width="162" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:EmpBankHistory" ZOrder="67" X="-66" Y="333" Height="257" Width="162" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:EmpConfirmHis" ZOrder="72" X="-66" Y="202" Height="257" Width="157" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:EmpConfirmHis" ZOrder="70" X="-66" Y="202" Height="257" Width="157" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:EmpPFHis" ZOrder="170" X="-68" Y="1192" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" /> <Shape ID="DesignTable:EmpPFHis" ZOrder="168" X="-68" Y="1192" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" />
<Shape ID="DesignTable:JVReport" ZOrder="129" X="294" Y="536" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:JVReport" ZOrder="127" X="294" Y="536" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:UpCommingEmp" ZOrder="38" X="313" Y="997" Height="181" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" /> <Shape ID="DesignTable:UpCommingEmp" ZOrder="36" X="313" Y="997" Height="181" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" />
<Shape ID="DesignTable:PRBProcessDetail" ZOrder="169" X="914" Y="199" Height="238" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="194" SplitterPosition="234" /> <Shape ID="DesignTable:PRBProcessDetail" ZOrder="167" X="914" Y="199" Height="238" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="194" SplitterPosition="234" />
<Shape ID="DesignTable:Report108" ZOrder="91" X="949" Y="711" Height="257" Width="256" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="687" SplitterPosition="253" /> <Shape ID="DesignTable:Report108" ZOrder="89" X="949" Y="711" Height="257" Width="256" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="687" SplitterPosition="253" />
<Shape ID="DesignTable:CCWReport" ZOrder="46" X="286" Y="335" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" /> <Shape ID="DesignTable:CCWReport" ZOrder="44" X="286" Y="335" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" />
<Shape ID="DesignTable:CCDetailReport" ZOrder="47" X="286" Y="271" Height="257" Width="155" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:CCDetailReport" ZOrder="45" X="286" Y="271" Height="257" Width="155" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:JVSalaryDetail" ZOrder="43" X="295" Y="567" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" /> <Shape ID="DesignTable:JVSalaryDetail" ZOrder="41" X="295" Y="567" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" />
<Shape ID="DesignTable:JVLoactionWReport" ZOrder="168" X="296" Y="598" Height="162" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" /> <Shape ID="DesignTable:JVLoactionWReport" ZOrder="166" X="296" Y="598" Height="162" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" />
<Shape ID="DesignTable:JVSummaryReport" ZOrder="180" X="297" Y="629" Height="124" Width="174" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" /> <Shape ID="DesignTable:JVSummaryReport" ZOrder="178" X="297" Y="629" Height="124" Width="174" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" />
<Shape ID="DesignTable:OPIRegister" ZOrder="82" X="361" Y="96" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:OPIRegister" ZOrder="80" X="361" Y="96" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:AccountReportForSAP" ZOrder="127" X="622" Y="577" Height="162" Width="195" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" /> <Shape ID="DesignTable:AccountReportForSAP" ZOrder="125" X="622" Y="577" Height="162" Width="195" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" />
<Shape ID="DesignTable:LoanReportForSAP" ZOrder="40" X="311" Y="867" Height="257" Width="175" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:LoanReportForSAP" ZOrder="38" X="311" Y="867" Height="257" Width="175" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:ReportForSAP" ZOrder="128" X="948" Y="680" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:ReportForSAP" ZOrder="126" X="948" Y="680" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:BankAdviceOfPRB" ZOrder="114" X="1215" Y="482" Height="162" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" /> <Shape ID="DesignTable:BankAdviceOfPRB" ZOrder="112" X="1215" Y="482" Height="162" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" />
<Shape ID="DesignTable:OPITotalValueRegister" ZOrder="53" X="360" Y="3" Height="143" Width="196" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" /> <Shape ID="DesignTable:OPITotalValueRegister" ZOrder="51" X="360" Y="3" Height="143" Width="196" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" />
<Shape ID="DesignTable:WartsilaSalarySheetSummary" ZOrder="173" X="649" Y="769" Height="257" Width="237" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:WartsilaSalarySheetSummary" ZOrder="171" X="649" Y="769" Height="257" Width="237" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:WartsilaSalarySheet" ZOrder="130" X="650" Y="830" Height="257" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:WartsilaSalarySheet" ZOrder="128" X="650" Y="830" Height="257" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:EmployeeJoining" ZOrder="76" X="-67" Y="139" Height="238" Width="165" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="234" /> <Shape ID="DesignTable:EmployeeJoining" ZOrder="74" X="-67" Y="139" Height="238" Width="165" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="234" />
<Shape ID="DesignTable:WartsilaPaySlip" ZOrder="117" X="645" Y="935" Height="257" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:WartsilaPaySlip" ZOrder="115" X="645" Y="935" Height="257" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:WartsilaReconciliation" ZOrder="132" X="649" Y="799" Height="257" Width="196" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:WartsilaReconciliation" ZOrder="130" X="649" Y="799" Height="257" Width="196" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:EmpJoining4Novartis" ZOrder="77" X="-67" Y="105" Height="257" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:EmpJoining4Novartis" ZOrder="75" X="-67" Y="105" Height="257" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:WartSilaRSummary" ZOrder="172" X="648" Y="738" Height="257" Width="178" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:WartSilaRSummary" ZOrder="170" X="648" Y="738" Height="257" Width="178" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:EmpLifeCycle" ZOrder="64" X="-65" Y="596" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:EmpLifeCycle" ZOrder="62" X="-65" Y="596" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:IndividualLoanReport" ZOrder="9" X="613" Y="350" Height="257" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:IndividualLoanReport" ZOrder="6" X="613" Y="350" Height="257" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:BankAdviceLetter" ZOrder="112" X="1217" Y="513" Height="181" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" /> <Shape ID="DesignTable:BankAdviceLetter" ZOrder="110" X="1217" Y="513" Height="181" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" />
<Shape ID="DesignTable:EmployeeMonthlyExpense" ZOrder="61" X="-68" Y="753" Height="105" Width="219" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" /> <Shape ID="DesignTable:EmployeeMonthlyExpense" ZOrder="59" X="-68" Y="753" Height="105" Width="219" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<Shape ID="DesignTable:EmployeeRetirement" ZOrder="60" X="-67" Y="976" Height="181" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" /> <Shape ID="DesignTable:EmployeeRetirement" ZOrder="58" X="-67" Y="976" Height="181" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" />
<Shape ID="DesignTable:EmpPersonalInformation" ZOrder="59" X="-67" Y="1006" Height="257" Width="211" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" /> <Shape ID="DesignTable:EmpPersonalInformation" ZOrder="57" X="-67" Y="1006" Height="257" Width="211" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<Shape ID="DesignTable:EmpAcademicBackground" ZOrder="167" X="-69" Y="881" Height="124" Width="218" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" /> <Shape ID="DesignTable:EmpAcademicBackground" ZOrder="165" X="-69" Y="881" Height="124" Width="218" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" />
<Shape ID="DesignTable:EmpLanguageKnown" ZOrder="162" X="-67" Y="785" Height="86" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="58" SplitterPosition="82" /> <Shape ID="DesignTable:EmpLanguageKnown" ZOrder="160" X="-67" Y="785" Height="86" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="58" SplitterPosition="82" />
<Shape ID="DesignTable:EmpMembershipInSocietiesClubsAssociations" ZOrder="179" X="-69" Y="914" Height="86" Width="300" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="58" SplitterPosition="82" /> <Shape ID="DesignTable:EmpMembershipInSocietiesClubsAssociations" ZOrder="177" X="-69" Y="914" Height="86" Width="300" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="58" SplitterPosition="82" />
<Shape ID="DesignTable:EmpCloseRelations" ZOrder="56" X="-68" Y="1101" Height="86" Width="180" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="58" SplitterPosition="82" /> <Shape ID="DesignTable:EmpCloseRelations" ZOrder="54" X="-68" Y="1101" Height="86" Width="180" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="58" SplitterPosition="82" />
<Shape ID="DesignTable:EmpEmploymentHistory" ZOrder="57" X="-67" Y="1069" Height="105" Width="207" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" /> <Shape ID="DesignTable:EmpEmploymentHistory" ZOrder="55" X="-67" Y="1069" Height="105" Width="207" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<Shape ID="DesignTable:EmpOtherProfessionalQualifications" ZOrder="63" X="-68" Y="659" Height="48" Width="276" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" /> <Shape ID="DesignTable:EmpOtherProfessionalQualifications" ZOrder="61" X="-68" Y="659" Height="48" Width="276" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<Shape ID="DesignTable:EmpReferences" ZOrder="58" X="-67" Y="1037" Height="105" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" /> <Shape ID="DesignTable:EmpReferences" ZOrder="56" X="-67" Y="1037" Height="105" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<Shape ID="DesignTable:EmpDescribeInDetailsPresentJobResponsibilities" ZOrder="62" X="-69" Y="722" Height="48" Width="300" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" /> <Shape ID="DesignTable:EmpDescribeInDetailsPresentJobResponsibilities" ZOrder="60" X="-69" Y="722" Height="48" Width="300" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<Shape ID="DesignTable:EmpReasonForLeavingCurrentJob" ZOrder="164" X="-68" Y="690" Height="48" Width="262" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" /> <Shape ID="DesignTable:EmpReasonForLeavingCurrentJob" ZOrder="162" X="-68" Y="690" Height="48" Width="262" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<Shape ID="DesignTable:EmpExtraCaricularActivities" ZOrder="165" X="-68" Y="816" Height="48" Width="226" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" /> <Shape ID="DesignTable:EmpExtraCaricularActivities" ZOrder="163" X="-68" Y="816" Height="48" Width="226" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<Shape ID="DesignTable:EmpListOfRelativeWorkingInNovatis" ZOrder="163" X="-67" Y="626" Height="105" Width="278" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" /> <Shape ID="DesignTable:EmpListOfRelativeWorkingInNovatis" ZOrder="161" X="-67" Y="626" Height="105" Width="278" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<Shape ID="DesignTable:EmpAdditionalInformation" ZOrder="150" X="-66" Y="564" Height="48" Width="222" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" /> <Shape ID="DesignTable:EmpAdditionalInformation" ZOrder="148" X="-66" Y="564" Height="48" Width="222" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<Shape ID="DesignTable:EmpAns" ZOrder="55" X="-67" Y="1130" Height="67" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="63" /> <Shape ID="DesignTable:EmpAns" ZOrder="53" X="-67" Y="1130" Height="67" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="63" />
<Shape ID="DesignTable:EmpWorkingRelativesAns" ZOrder="73" X="-66" Y="172" Height="48" Width="215" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" /> <Shape ID="DesignTable:EmpWorkingRelativesAns" ZOrder="71" X="-66" Y="172" Height="48" Width="215" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<Shape ID="DesignTable:EmpPermanentAndMailingAddress" ZOrder="166" X="-69" Y="848" Height="143" Width="269" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" /> <Shape ID="DesignTable:EmpPermanentAndMailingAddress" ZOrder="164" X="-69" Y="848" Height="143" Width="269" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" />
<Shape ID="DesignTable:EmployeePhotoPath" ZOrder="182" X="-68" Y="944" Height="48" Width="184" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" /> <Shape ID="DesignTable:EmployeePhotoPath" ZOrder="180" X="-68" Y="944" Height="48" Width="184" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<Shape ID="DesignTable:EmpListOfRelativeWorkingInCompany" ZOrder="80" X="-69" Y="-25" Height="105" Width="289" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" /> <Shape ID="DesignTable:EmpListOfRelativeWorkingInCompany" ZOrder="78" X="-69" Y="-25" Height="105" Width="289" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<Shape ID="DesignTable:ITPfAndOtherDetails" ZOrder="183" X="619" Y="470" Height="124" Width="186" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" /> <Shape ID="DesignTable:ITPfAndOtherDetails" ZOrder="181" X="619" Y="470" Height="124" Width="186" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" />
<Shape ID="DesignTable:MultipleEmpIT" ZOrder="121" X="1201" Y="866" Height="257" Width="155" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="364" SplitterPosition="253" /> <Shape ID="DesignTable:MultipleEmpIT" ZOrder="119" X="1201" Y="866" Height="257" Width="155" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="364" SplitterPosition="253" />
<Shape ID="DesignTable:ITHeader" ZOrder="178" X="617" Y="439" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="120" /> <Shape ID="DesignTable:ITHeader" ZOrder="176" X="617" Y="439" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="120" />
<Shape ID="DesignTable:EmployeeLFAData" ZOrder="70" X="-65" Y="269" Height="143" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="139" /> <Shape ID="DesignTable:EmployeeLFAData" ZOrder="68" X="-65" Y="269" Height="143" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="139" />
<Shape ID="DesignTable:TaxRebeatInvestment" ZOrder="155" X="907" Y="511" Height="105" Width="192" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="101" /> <Shape ID="DesignTable:TaxRebeatInvestment" ZOrder="153" X="907" Y="511" Height="105" Width="192" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="101" />
<Shape ID="DesignTable:TaxChallan" ZOrder="159" X="908" Y="542" Height="67" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="63" /> <Shape ID="DesignTable:TaxChallan" ZOrder="157" X="908" Y="542" Height="67" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="63" />
<Shape ID="DesignTable:Pmpbasic" ZOrder="161" X="906" Y="-14" Height="219" Width="183" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="176" SplitterPosition="215" /> <Shape ID="DesignTable:Pmpbasic" ZOrder="159" X="906" Y="-14" Height="219" Width="183" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="176" SplitterPosition="215" />
<Shape ID="DesignTable:Pmpobjectives" ZOrder="160" X="912" Y="169" Height="181" Width="151" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="159" SplitterPosition="177" /> <Shape ID="DesignTable:Pmpobjectives" ZOrder="158" X="912" Y="169" Height="181" Width="151" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="159" SplitterPosition="177" />
<Shape ID="DesignTable:PmpEmpValueBehaviorRatings" ZOrder="15" X="910" Y="79" Height="124" Width="245" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="120" /> <Shape ID="DesignTable:PmpEmpValueBehaviorRatings" ZOrder="12" X="910" Y="79" Height="124" Width="245" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="120" />
<Shape ID="DesignTable:FSSJVReport" ZOrder="158" X="646" Y="672" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="262" SplitterPosition="196" /> <Shape ID="DesignTable:FSSJVReport" ZOrder="156" X="646" Y="672" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="262" SplitterPosition="196" />
<Shape ID="DesignTable:dtTransferTPToPR" ZOrder="157" X="1472" Y="73" Height="143" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="139" /> <Shape ID="DesignTable:dtTransferTPToPR" ZOrder="155" X="1472" Y="73" Height="143" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="139" />
<Shape ID="DesignTable:EmpContinueFromDiscontinue" ZOrder="68" X="-66" Y="367" Height="181" Width="243" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" /> <Shape ID="DesignTable:EmpContinueFromDiscontinue" ZOrder="66" X="-66" Y="367" Height="181" Width="243" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" />
<Shape ID="DesignTable:EmpITInfoAndBasicInfo" ZOrder="67" X="-67" Y="438" Height="162" Width="203" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="142" SplitterPosition="158" /> <Shape ID="DesignTable:EmpITInfoAndBasicInfo" ZOrder="65" X="-67" Y="438" Height="162" Width="203" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="142" SplitterPosition="158" />
<Shape ID="DesignTable:SalaryStracture" ZOrder="156" X="1737" Y="40" Height="257" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="585" SplitterPosition="253" /> <Shape ID="DesignTable:SalaryStracture" ZOrder="154" X="1737" Y="40" Height="257" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="585" SplitterPosition="253" />
<Shape ID="DesignTable:DedtaxByMonth" ZOrder="154" X="1472" Y="132" Height="143" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="139" /> <Shape ID="DesignTable:DedtaxByMonth" ZOrder="152" X="1472" Y="132" Height="143" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="139" />
<Shape ID="DesignTable:SalarySheetByMonth" ZOrder="133" X="1735" Y="10" Height="257" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="330" SplitterPosition="253" /> <Shape ID="DesignTable:SalarySheetByMonth" ZOrder="131" X="1735" Y="10" Height="257" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="330" SplitterPosition="253" />
<Shape ID="DesignTable:EmployeeServiceLength" ZOrder="66" X="-67" Y="470" Height="143" Width="204" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="139" /> <Shape ID="DesignTable:EmployeeServiceLength" ZOrder="64" X="-67" Y="470" Height="143" Width="204" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="139" />
<Shape ID="DesignTable:PayRollRegisterForAll" ZOrder="152" X="909" Y="48" Height="124" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="120" /> <Shape ID="DesignTable:PayRollRegisterForAll" ZOrder="150" X="909" Y="48" Height="124" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="120" />
<Shape ID="DesignTable:ReckittTaxCard" ZOrder="153" X="950" Y="743" Height="105" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="101" /> <Shape ID="DesignTable:ReckittTaxCard" ZOrder="151" X="950" Y="743" Height="105" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="101" />
<Shape ID="DesignTable:DedtaxByMonthRange" ZOrder="142" X="1471" Y="42" Height="162" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="142" SplitterPosition="158" /> <Shape ID="DesignTable:DedtaxByMonthRange" ZOrder="140" X="1471" Y="42" Height="162" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="142" SplitterPosition="158" />
<Shape ID="DesignTable:dtRolePermission" ZOrder="147" X="1467" Y="-22" Height="105" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" /> <Shape ID="DesignTable:dtRolePermission" ZOrder="145" X="1467" Y="-22" Height="105" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" />
<Shape ID="DesignTable:dtRoleInfo" ZOrder="140" X="1469" Y="12" Height="105" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" /> <Shape ID="DesignTable:dtRoleInfo" ZOrder="138" X="1469" Y="12" Height="105" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" />
<Shape ID="DesignTable:dtUserRole" ZOrder="139" X="1471" Y="103" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" /> <Shape ID="DesignTable:dtUserRole" ZOrder="137" X="1471" Y="103" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
<Shape ID="DesignTable:EERSData" ZOrder="138" X="-68" Y="1161" Height="257" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="227" SplitterPosition="253" /> <Shape ID="DesignTable:EERSData" ZOrder="136" X="-68" Y="1161" Height="257" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="227" SplitterPosition="253" />
<Shape ID="DesignTable:SalaryReconDeduction" ZOrder="149" X="1740" Y="133" Height="124" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" /> <Shape ID="DesignTable:SalaryReconDeduction" ZOrder="147" X="1740" Y="133" Height="124" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" />
<Shape ID="DesignTable:SalaryReconciliationSummary" ZOrder="148" X="1739" Y="71" Height="86" Width="238" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" /> <Shape ID="DesignTable:SalaryReconciliationSummary" ZOrder="146" X="1739" Y="71" Height="86" Width="238" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
<Shape ID="DesignTable:MemoDebit" ZOrder="120" X="1198" Y="803" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="83" SplitterPosition="120" /> <Shape ID="DesignTable:MemoDebit" ZOrder="118" X="1198" Y="803" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="83" SplitterPosition="120" />
<Shape ID="DesignTable:MemoCredit" ZOrder="119" X="1203" Y="898" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" /> <Shape ID="DesignTable:MemoCredit" ZOrder="117" X="1203" Y="898" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
<Shape ID="DesignTable:SharedLoanIssue" ZOrder="146" X="1735" Y="-23" Height="257" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:SharedLoanIssue" ZOrder="144" X="1735" Y="-23" Height="257" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:GratuityProvision" ZOrder="145" X="1205" Y="8" Height="238" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="210" SplitterPosition="234" /> <Shape ID="DesignTable:GratuityProvision" ZOrder="143" X="1205" Y="8" Height="238" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="210" SplitterPosition="234" />
<Shape ID="DesignTable:GratuityRegister" ZOrder="144" X="1204" Y="-20" Height="143" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="139" /> <Shape ID="DesignTable:GratuityRegister" ZOrder="142" X="1204" Y="-20" Height="143" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="139" />
<Shape ID="DesignTable:GratuityLedger" ZOrder="143" X="1206" Y="38" Height="86" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="74" SplitterPosition="82" /> <Shape ID="DesignTable:GratuityLedger" ZOrder="141" X="1206" Y="38" Height="86" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="74" SplitterPosition="82" />
<Shape ID="DesignTable:LoanData" ZOrder="141" X="317" Y="834" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="120" /> <Shape ID="DesignTable:LoanData" ZOrder="139" X="317" Y="834" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="120" />
<Shape ID="DesignTable:dtUsers" ZOrder="103" X="1474" Y="258" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="216" SplitterPosition="177" /> <Shape ID="DesignTable:dtUsers" ZOrder="101" X="1474" Y="258" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="216" SplitterPosition="177" />
<Shape ID="DesignTable:dtUserLogin" ZOrder="104" X="1472" Y="227" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="158" /> <Shape ID="DesignTable:dtUserLogin" ZOrder="102" X="1472" Y="227" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="158" />
<Shape ID="DesignTable:dtBadUser" ZOrder="131" X="1470" Y="194" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" /> <Shape ID="DesignTable:dtBadUser" ZOrder="129" X="1470" Y="194" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" />
<Shape ID="DesignTable:EmpItemWiseSalary" ZOrder="137" X="-67" Y="500" Height="105" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" /> <Shape ID="DesignTable:EmpItemWiseSalary" ZOrder="135" X="-67" Y="500" Height="105" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" />
<Shape ID="DesignTable:PFLedger" ZOrder="136" X="912" Y="137" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" /> <Shape ID="DesignTable:PFLedger" ZOrder="134" X="912" Y="137" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" />
<Shape ID="DesignTable:Challan" ZOrder="45" X="287" Y="365" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" /> <Shape ID="DesignTable:Challan" ZOrder="43" X="287" Y="365" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
<Shape ID="DesignTable:UpcomingTraining" ZOrder="135" X="312" Y="1027" Height="181" Width="174" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" /> <Shape ID="DesignTable:UpcomingTraining" ZOrder="133" X="312" Y="1027" Height="181" Width="174" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" />
<Shape ID="DesignTable:SalaryCertificate" ZOrder="134" X="1742" Y="167" Height="257" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:SalaryCertificate" ZOrder="132" X="1742" Y="167" Height="257" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:ChallanNoWithMonth" ZOrder="44" X="286" Y="398" Height="86" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" /> <Shape ID="DesignTable:ChallanNoWithMonth" ZOrder="42" X="286" Y="398" Height="86" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
<Shape ID="DesignTable:MarketSurveyCom" ZOrder="118" X="1199" Y="834" Height="124" Width="173" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" /> <Shape ID="DesignTable:MarketSurveyCom" ZOrder="116" X="1199" Y="834" Height="124" Width="173" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" />
<Shape ID="DesignTable:activeInactiveUserList" ZOrder="99" X="918" Y="878" Height="105" Width="192" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" /> <Shape ID="DesignTable:activeInactiveUserList" ZOrder="97" X="918" Y="878" Height="105" Width="192" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" />
<Shape ID="DesignTable:dtCashAdvice" ZOrder="126" X="1474" Y="291" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="158" /> <Shape ID="DesignTable:dtCashAdvice" ZOrder="124" X="1474" Y="291" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="158" />
<Shape ID="DesignTable:BanglaPaySlip" ZOrder="116" X="1219" Y="604" Height="257" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:BanglaPaySlip" ZOrder="114" X="1219" Y="604" Height="257" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:dtProdBonusDetail" ZOrder="125" X="1475" Y="419" Height="200" Width="176" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" /> <Shape ID="DesignTable:dtProdBonusDetail" ZOrder="123" X="1475" Y="419" Height="200" Width="176" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
<Shape ID="DesignTable:dtEmpDesWiseProdBonus" ZOrder="14" X="1476" Y="451" Height="257" Width="216" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:dtEmpDesWiseProdBonus" ZOrder="11" X="1476" Y="451" Height="257" Width="216" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:dtMonthlyProdBonus" ZOrder="124" X="1477" Y="484" Height="143" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" /> <Shape ID="DesignTable:dtMonthlyProdBonus" ZOrder="122" X="1477" Y="484" Height="143" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" />
<Shape ID="DesignTable:SalarySheetStatic" ZOrder="123" X="1747" Y="264" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="748" SplitterPosition="253" /> <Shape ID="DesignTable:SalarySheetStatic" ZOrder="121" X="1747" Y="264" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="748" SplitterPosition="253" />
<Shape ID="DesignTable:dtRoleAudit" ZOrder="84" X="1474" Y="322" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" /> <Shape ID="DesignTable:dtRoleAudit" ZOrder="82" X="1474" Y="322" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" />
<Shape ID="DesignTable:dtRolePermission2" ZOrder="122" X="1474" Y="355" Height="143" Width="174" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" /> <Shape ID="DesignTable:dtRolePermission2" ZOrder="120" X="1474" Y="355" Height="143" Width="174" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" />
<Shape ID="DesignTable:CasualSalarySheet" ZOrder="50" X="289" Y="179" Height="257" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:CasualSalarySheet" ZOrder="48" X="289" Y="179" Height="257" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:BankAdviceHNM" ZOrder="113" X="1214" Y="451" Height="181" Width="165" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" /> <Shape ID="DesignTable:BankAdviceHNM" ZOrder="111" X="1214" Y="451" Height="181" Width="165" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" />
<Shape ID="DesignTable:EmpDesCatChange" ZOrder="75" X="127" Y="31" Height="257" Width="175" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:EmpDesCatChange" ZOrder="73" X="127" Y="31" Height="257" Width="175" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:EmployeeConfirmation" ZOrder="110" X="282" Y="436" Height="143" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" /> <Shape ID="DesignTable:EmployeeConfirmation" ZOrder="108" X="282" Y="436" Height="143" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" />
<Shape ID="DesignTable:MonthlySchedule" ZOrder="109" X="681" Y="1101" Height="257" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:MonthlySchedule" ZOrder="107" X="681" Y="1101" Height="257" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:AllMedicalClaim" ZOrder="106" X="927" Y="908" Height="143" Width="160" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" /> <Shape ID="DesignTable:AllMedicalClaim" ZOrder="104" X="927" Y="908" Height="143" Width="160" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" />
<Shape ID="DesignTable:AllEmpTaxInfo" ZOrder="108" X="864" Y="1031" Height="181" Width="151" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" /> <Shape ID="DesignTable:AllEmpTaxInfo" ZOrder="106" X="864" Y="1031" Height="181" Width="151" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" />
<Shape ID="DesignTable:dtAllActiveLaons" ZOrder="107" X="1475" Y="388" Height="257" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:dtAllActiveLaons" ZOrder="105" X="1475" Y="388" Height="257" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:ArrSheet" ZOrder="105" X="889" Y="597" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:ArrSheet" ZOrder="103" X="889" Y="597" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:EmpGroupInsurance" ZOrder="102" X="571" Y="297" Height="200" Width="183" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="196" /> <Shape ID="DesignTable:EmpGroupInsurance" ZOrder="100" X="571" Y="297" Height="200" Width="183" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="196" />
<Shape ID="DesignTable:EmpGroupInsuranceDiscon" ZOrder="74" X="114" Y="139" Height="200" Width="222" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="196" /> <Shape ID="DesignTable:EmpGroupInsuranceDiscon" ZOrder="72" X="114" Y="139" Height="200" Width="222" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="196" />
<Shape ID="DesignTable:SKFExpencesPaySlip" ZOrder="101" X="1747" Y="296" Height="257" Width="183" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:SKFExpencesPaySlip" ZOrder="99" X="1747" Y="296" Height="257" Width="183" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:RemainingLoanforPayslip" ZOrder="100" X="948" Y="769" Height="105" Width="214" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" /> <Shape ID="DesignTable:RemainingLoanforPayslip" ZOrder="98" X="948" Y="769" Height="105" Width="214" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" />
<Shape ID="DesignTable:PayslipBasicInfo" ZOrder="83" X="915" Y="302" Height="239" Width="160" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="235" /> <Shape ID="DesignTable:PayslipBasicInfo" ZOrder="81" X="915" Y="302" Height="239" Width="160" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="235" />
<Shape ID="DesignTable:EmpPromotion" ZOrder="81" X="118" Y="275" Height="200" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" /> <Shape ID="DesignTable:EmpPromotion" ZOrder="79" X="118" Y="275" Height="200" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
<Shape ID="DesignTable:NewlyIssuedLoan" ZOrder="98" X="650" Y="521" Height="238" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="234" /> <Shape ID="DesignTable:NewlyIssuedLoan" ZOrder="96" X="650" Y="521" Height="238" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="234" />
<Shape ID="DesignTable:CurrentMonthDueLoan" ZOrder="97" X="1093" Y="929" Height="257" Width="200" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="253" /> <Shape ID="DesignTable:CurrentMonthDueLoan" ZOrder="95" X="1093" Y="929" Height="257" Width="200" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="253" />
<Shape ID="DesignTable:CashRefund" ZOrder="96" X="875" Y="1079" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" /> <Shape ID="DesignTable:CashRefund" ZOrder="94" X="875" Y="1079" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" />
<Shape ID="DesignTable:PFRegister" ZOrder="95" X="907" Y="16" Height="257" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="252" SplitterPosition="253" /> <Shape ID="DesignTable:PFRegister" ZOrder="93" X="907" Y="16" Height="257" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="252" SplitterPosition="253" />
<Shape ID="DesignTable:BonusRegisterBAT" ZOrder="94" X="1217" Y="571" Height="238" Width="173" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="234" /> <Shape ID="DesignTable:BonusRegisterBAT" ZOrder="92" X="1217" Y="571" Height="238" Width="173" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="234" />
<Shape ID="DesignTable:NmgtSpringFestivalBonusRegister" ZOrder="89" X="1093" Y="962" Height="257" Width="265" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="292" SplitterPosition="253" /> <Shape ID="DesignTable:NmgtSpringFestivalBonusRegister" ZOrder="87" X="1093" Y="962" Height="257" Width="265" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="292" SplitterPosition="253" />
<Shape ID="DesignTable:NmgtBonusPaySlip" ZOrder="88" X="1104" Y="997" Height="257" Width="177" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:NmgtBonusPaySlip" ZOrder="86" X="1104" Y="997" Height="257" Width="177" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:SalaryRegister" ZOrder="86" X="1746" Y="305" Height="239" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="235" /> <Shape ID="DesignTable:SalaryRegister" ZOrder="84" X="1746" Y="305" Height="239" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="235" />
<Shape ID="DesignTable:CrewDeployment" ZOrder="36" X="471" Y="78" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:CrewDeployment" ZOrder="34" X="471" Y="78" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:ActiveEmployee" ZOrder="10" X="756" Y="101" Height="28" Width="158" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" /> <Shape ID="DesignTable:ActiveEmployee" ZOrder="7" X="756" Y="101" Height="28" Width="158" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
<Shape ID="DesignTable:BonusPaySlip" ZOrder="13" X="1214" Y="390" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" /> <Shape ID="DesignTable:BonusPaySlip" ZOrder="10" X="1214" Y="390" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:LoanDueWithCC" ZOrder="24" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" /> <Shape ID="DesignTable:LoanDueWithCC" ZOrder="22" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:dtBankAdvice" ZOrder="23" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" /> <Shape ID="DesignTable:dtBankAdvice" ZOrder="21" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:dtEncashmentReport" ZOrder="22" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" /> <Shape ID="DesignTable:dtEncashmentReport" ZOrder="20" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:SalaryReconNew" ZOrder="21" X="0" Y="0" Height="28" Width="158" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" /> <Shape ID="DesignTable:SalaryReconNew" ZOrder="19" X="0" Y="0" Height="28" Width="158" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
<Shape ID="DesignTable:AnnualIncomeCertificate" ZOrder="25" X="155" Y="190" Height="257" Width="247" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" /> <Shape ID="DesignTable:AnnualIncomeCertificate" ZOrder="23" X="155" Y="190" Height="257" Width="247" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" />
<Shape ID="DesignTable:AssetAcknowledgement" ZOrder="11" X="819" Y="0" Height="28" Width="205" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:AssetAcknowledgement" ZOrder="8" X="819" Y="0" Height="28" Width="205" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:AssetSerialInformation" ZOrder="20" X="580" Y="14" Height="162" Width="199" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="158" /> <Shape ID="DesignTable:AssetSerialInformation" ZOrder="18" X="580" Y="14" Height="162" Width="199" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="158" />
<Shape ID="DesignTable:BanglaPaySlipNew" ZOrder="18" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" /> <Shape ID="DesignTable:BanglaPaySlipNew" ZOrder="16" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:BanglaPaySlipNewProdBonus" ZOrder="17" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" /> <Shape ID="DesignTable:BanglaPaySlipNewProdBonus" ZOrder="15" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:Employee" ZOrder="16" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" /> <Shape ID="DesignTable:Employee" ZOrder="14" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:dtProdAttendance" ZOrder="2" X="513" Y="1359" Height="200" Width="173" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="196" /> <Shape ID="DesignTable:dtProdAttendance" ZOrder="13" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<Shape ID="DesignTable:CCWiseSalarySheetNew" ZOrder="12" X="533" Y="586" Height="28" Width="203" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:CCWiseSalarySheetNew" ZOrder="9" X="533" Y="586" Height="28" Width="203" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:CandidateInformation" ZOrder="8" X="767" Y="198" Height="28" Width="194" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="24" /> <Shape ID="DesignTable:CandidateInformation" ZOrder="5" X="767" Y="198" Height="28" Width="194" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="24" />
<Shape ID="DesignTable:EmployeeInfoBasic" ZOrder="5" X="0" Y="0" Height="256" Width="175" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" /> <Shape ID="DesignTable:EmployeeInfoBasic" ZOrder="2" X="0" Y="0" Height="256" Width="175" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
<Shape ID="DesignTable:DeletedLifeCycle" ZOrder="4" X="0" Y="0" Height="257" Width="164" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" /> <Shape ID="DesignTable:DeletedLifeCycle" ZOrder="1" X="0" Y="0" Height="257" Width="164" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
<Shape ID="DesignTable:EmployeeDetailEcho" ZOrder="3" X="309" Y="1348" Height="257" Width="164" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
<Shape ID="DesignTable:dtEncashmentReportNew" ZOrder="1" X="785" Y="1382" Height="257" Width="214" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
</Shapes> </Shapes>
<Connectors /> <Connectors />
</DiagramLayout> </DiagramLayout>

File diff suppressed because it is too large Load Diff

View File

@ -31,9 +31,6 @@
<xs:element name="WorkDayType" msprop:Generator_ColumnPropNameInTable="WorkDayTypeColumn" msprop:Generator_ColumnPropNameInRow="WorkDayType" msprop:Generator_UserColumnName="WorkDayType" msprop:Generator_ColumnVarNameInTable="columnWorkDayType" type="xs:string" minOccurs="0" /> <xs:element name="WorkDayType" msprop:Generator_ColumnPropNameInTable="WorkDayTypeColumn" msprop:Generator_ColumnPropNameInRow="WorkDayType" msprop:Generator_UserColumnName="WorkDayType" msprop:Generator_ColumnVarNameInTable="columnWorkDayType" type="xs:string" minOccurs="0" />
<xs:element name="AttnDate2" msprop:Generator_ColumnPropNameInTable="AttnDate2Column" msprop:Generator_ColumnPropNameInRow="AttnDate2" msprop:Generator_UserColumnName="AttnDate2" msprop:Generator_ColumnVarNameInTable="columnAttnDate2" type="xs:dateTime" minOccurs="0" /> <xs:element name="AttnDate2" msprop:Generator_ColumnPropNameInTable="AttnDate2Column" msprop:Generator_ColumnPropNameInRow="AttnDate2" msprop:Generator_UserColumnName="AttnDate2" msprop:Generator_ColumnVarNameInTable="columnAttnDate2" type="xs:dateTime" minOccurs="0" />
<xs:element name="Remarks" msprop:Generator_ColumnPropNameInTable="RemarksColumn" msprop:Generator_ColumnPropNameInRow="Remarks" msprop:Generator_UserColumnName="Remarks" msprop:Generator_ColumnVarNameInTable="columnRemarks" type="xs:string" minOccurs="0" /> <xs:element name="Remarks" msprop:Generator_ColumnPropNameInTable="RemarksColumn" msprop:Generator_ColumnPropNameInRow="Remarks" msprop:Generator_UserColumnName="Remarks" msprop:Generator_ColumnVarNameInTable="columnRemarks" type="xs:string" minOccurs="0" />
<xs:element name="ApplyDate" msprop:Generator_UserColumnName="ApplyDate" msprop:Generator_ColumnPropNameInTable="ApplyDateColumn" msprop:Generator_ColumnPropNameInRow="ApplyDate" msprop:Generator_ColumnVarNameInTable="columnApplyDate" type="xs:string" minOccurs="0" />
<xs:element name="ApproveDate" msprop:Generator_UserColumnName="ApproveDate" msprop:Generator_ColumnPropNameInTable="ApproveDateColumn" msprop:Generator_ColumnPropNameInRow="ApproveDate" msprop:Generator_ColumnVarNameInTable="columnApproveDate" type="xs:string" minOccurs="0" />
<xs:element name="LeaveStatus" msprop:Generator_UserColumnName="LeaveStatus" msprop:Generator_ColumnPropNameInTable="LeaveStatusColumn" msprop:Generator_ColumnPropNameInRow="LeaveStatus" msprop:Generator_ColumnVarNameInTable="columnLeaveStatus" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
@ -61,13 +58,7 @@
<xs:element name="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_UserColumnName="Department" msprop:Generator_ColumnVarNameInTable="columnDepartment" type="xs:string" minOccurs="0" /> <xs:element name="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_UserColumnName="Department" msprop:Generator_ColumnVarNameInTable="columnDepartment" type="xs:string" minOccurs="0" />
<xs:element name="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" /> <xs:element name="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" />
<xs:element name="JoiningDate" msprop:Generator_ColumnPropNameInTable="JoiningDateColumn" msprop:Generator_ColumnPropNameInRow="JoiningDate" msprop:Generator_UserColumnName="JoiningDate" msprop:Generator_ColumnVarNameInTable="columnJoiningDate" type="xs:string" minOccurs="0" /> <xs:element name="JoiningDate" msprop:Generator_ColumnPropNameInTable="JoiningDateColumn" msprop:Generator_ColumnPropNameInRow="JoiningDate" msprop:Generator_UserColumnName="JoiningDate" msprop:Generator_ColumnVarNameInTable="columnJoiningDate" type="xs:string" minOccurs="0" />
<xs:element name="Shift" msprop:Generator_UserColumnName="Shift" msprop:Generator_ColumnPropNameInTable="ShiftColumn" msprop:Generator_ColumnPropNameInRow="Shift" msprop:Generator_ColumnVarNameInTable="columnShift" type="xs:string" minOccurs="0" /> <xs:element name="Shift" msprop:Generator_ColumnPropNameInTable="ShiftColumn" msprop:Generator_ColumnPropNameInRow="Shift" msprop:Generator_UserColumnName="Shift" msprop:Generator_ColumnVarNameInTable="columnShift" type="xs:string" minOccurs="0" />
<xs:element name="LeavePeriod" msprop:Generator_UserColumnName="LeavePeriod" msprop:Generator_ColumnPropNameInTable="LeavePeriodColumn" msprop:Generator_ColumnPropNameInRow="LeavePeriod" msprop:Generator_ColumnVarNameInTable="columnLeavePeriod" type="xs:string" minOccurs="0" />
<xs:element name="LeaveApprover" msprop:Generator_UserColumnName="LeaveApprover" msprop:Generator_ColumnPropNameInTable="LeaveApproverColumn" msprop:Generator_ColumnPropNameInRow="LeaveApprover" msprop:Generator_ColumnVarNameInTable="columnLeaveApprover" type="xs:string" minOccurs="0" />
<xs:element name="LeaveNotifier" msprop:Generator_UserColumnName="LeaveNotifier" msprop:Generator_ColumnPropNameInTable="LeaveNotifierColumn" msprop:Generator_ColumnPropNameInRow="LeaveNotifier" msprop:Generator_ColumnVarNameInTable="columnLeaveNotifier" type="xs:string" minOccurs="0" />
<xs:element name="Floor" msprop:Generator_UserColumnName="Floor" msprop:Generator_ColumnPropNameInTable="FloorColumn" msprop:Generator_ColumnPropNameInRow="Floor" msprop:Generator_ColumnVarNameInTable="columnFloor" type="xs:string" minOccurs="0" />
<xs:element name="Section" msprop:Generator_UserColumnName="Section" msprop:Generator_ColumnPropNameInTable="SectionColumn" msprop:Generator_ColumnPropNameInRow="Section" msprop:Generator_ColumnVarNameInTable="columnSection" type="xs:string" minOccurs="0" />
<xs:element name="Line" msprop:Generator_UserColumnName="Line" msprop:Generator_ColumnPropNameInTable="LineColumn" msprop:Generator_ColumnPropNameInRow="Line" msprop:Generator_ColumnVarNameInTable="columnLine" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
@ -372,7 +363,6 @@
<xs:element name="Opening" msprop:Generator_ColumnPropNameInTable="OpeningColumn" msprop:Generator_ColumnPropNameInRow="Opening" msprop:Generator_UserColumnName="Opening" msprop:Generator_ColumnVarNameInTable="columnOpening" type="xs:string" minOccurs="0" /> <xs:element name="Opening" msprop:Generator_ColumnPropNameInTable="OpeningColumn" msprop:Generator_ColumnPropNameInRow="Opening" msprop:Generator_UserColumnName="Opening" msprop:Generator_ColumnVarNameInTable="columnOpening" type="xs:string" minOccurs="0" />
<xs:element name="Availed" msprop:Generator_ColumnPropNameInTable="AvailedColumn" msprop:Generator_ColumnPropNameInRow="Availed" msprop:Generator_UserColumnName="Availed" msprop:Generator_ColumnVarNameInTable="columnAvailed" type="xs:string" minOccurs="0" /> <xs:element name="Availed" msprop:Generator_ColumnPropNameInTable="AvailedColumn" msprop:Generator_ColumnPropNameInRow="Availed" msprop:Generator_UserColumnName="Availed" msprop:Generator_ColumnVarNameInTable="columnAvailed" type="xs:string" minOccurs="0" />
<xs:element name="Balance" msprop:Generator_ColumnPropNameInTable="BalanceColumn" msprop:Generator_ColumnPropNameInRow="Balance" msprop:Generator_UserColumnName="Balance" msprop:Generator_ColumnVarNameInTable="columnBalance" type="xs:string" minOccurs="0" /> <xs:element name="Balance" msprop:Generator_ColumnPropNameInTable="BalanceColumn" msprop:Generator_ColumnPropNameInRow="Balance" msprop:Generator_UserColumnName="Balance" msprop:Generator_ColumnVarNameInTable="columnBalance" type="xs:string" minOccurs="0" />
<xs:element name="CFDays" msprop:Generator_UserColumnName="CFDays" msprop:Generator_ColumnPropNameInTable="CFDaysColumn" msprop:Generator_ColumnPropNameInRow="CFDays" msprop:Generator_ColumnVarNameInTable="columnCFDays" type="xs:string" minOccurs="0" />
<xs:element name="EmpNo" msprop:Generator_ColumnPropNameInTable="EmpNoColumn" msprop:Generator_ColumnPropNameInRow="EmpNo" msprop:Generator_UserColumnName="EmpNo" msprop:Generator_ColumnVarNameInTable="columnEmpNo" type="xs:string" minOccurs="0" /> <xs:element name="EmpNo" msprop:Generator_ColumnPropNameInTable="EmpNoColumn" msprop:Generator_ColumnPropNameInRow="EmpNo" msprop:Generator_UserColumnName="EmpNo" msprop:Generator_ColumnVarNameInTable="columnEmpNo" type="xs:string" minOccurs="0" />
<xs:element name="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" /> <xs:element name="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" />
<xs:element name="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" /> <xs:element name="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" />
@ -385,9 +375,6 @@
<xs:element name="MaxAccumulatedDays" msprop:Generator_ColumnPropNameInTable="MaxAccumulatedDaysColumn" msprop:Generator_ColumnPropNameInRow="MaxAccumulatedDays" msprop:Generator_UserColumnName="MaxAccumulatedDays" msprop:Generator_ColumnVarNameInTable="columnMaxAccumulatedDays" type="xs:string" minOccurs="0" /> <xs:element name="MaxAccumulatedDays" msprop:Generator_ColumnPropNameInTable="MaxAccumulatedDaysColumn" msprop:Generator_ColumnPropNameInRow="MaxAccumulatedDays" msprop:Generator_UserColumnName="MaxAccumulatedDays" msprop:Generator_ColumnVarNameInTable="columnMaxAccumulatedDays" type="xs:string" minOccurs="0" />
<xs:element name="MaxAccumulatedDaysHr" msprop:Generator_ColumnPropNameInTable="MaxAccumulatedDaysHrColumn" msprop:Generator_ColumnPropNameInRow="MaxAccumulatedDaysHr" msprop:Generator_UserColumnName="MaxAccumulatedDaysHr" msprop:Generator_ColumnVarNameInTable="columnMaxAccumulatedDaysHr" type="xs:string" minOccurs="0" /> <xs:element name="MaxAccumulatedDaysHr" msprop:Generator_ColumnPropNameInTable="MaxAccumulatedDaysHrColumn" msprop:Generator_ColumnPropNameInRow="MaxAccumulatedDaysHr" msprop:Generator_UserColumnName="MaxAccumulatedDaysHr" msprop:Generator_ColumnVarNameInTable="columnMaxAccumulatedDaysHr" type="xs:string" minOccurs="0" />
<xs:element name="LateAttnAdjust" msprop:Generator_ColumnPropNameInTable="LateAttnAdjustColumn" msprop:Generator_ColumnPropNameInRow="LateAttnAdjust" msprop:Generator_UserColumnName="LateAttnAdjust" msprop:Generator_ColumnVarNameInTable="columnLateAttnAdjust" type="xs:string" minOccurs="0" /> <xs:element name="LateAttnAdjust" msprop:Generator_ColumnPropNameInTable="LateAttnAdjustColumn" msprop:Generator_ColumnPropNameInRow="LateAttnAdjust" msprop:Generator_UserColumnName="LateAttnAdjust" msprop:Generator_ColumnVarNameInTable="columnLateAttnAdjust" type="xs:string" minOccurs="0" />
<xs:element name="Floor" msprop:Generator_UserColumnName="Floor" msprop:Generator_ColumnPropNameInTable="FloorColumn" msprop:Generator_ColumnPropNameInRow="Floor" msprop:Generator_ColumnVarNameInTable="columnFloor" type="xs:string" minOccurs="0" />
<xs:element name="Section" msprop:Generator_UserColumnName="Section" msprop:Generator_ColumnPropNameInTable="SectionColumn" msprop:Generator_ColumnPropNameInRow="Section" msprop:Generator_ColumnVarNameInTable="columnSection" type="xs:string" minOccurs="0" />
<xs:element name="Line" msprop:Generator_UserColumnName="Line" msprop:Generator_ColumnPropNameInTable="LineColumn" msprop:Generator_ColumnPropNameInRow="Line" msprop:Generator_ColumnVarNameInTable="columnLine" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
@ -775,60 +762,25 @@
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>
<xs:element name="CCWiseSalarySummary" msprop:Generator_RowEvHandlerName="CCWiseSalarySummaryRowChangeEventHandler" msprop:Generator_RowDeletedName="CCWiseSalarySummaryRowDeleted" msprop:Generator_RowDeletingName="CCWiseSalarySummaryRowDeleting" msprop:Generator_RowEvArgName="CCWiseSalarySummaryRowChangeEvent" msprop:Generator_TablePropName="CCWiseSalarySummary" msprop:Generator_RowChangedName="CCWiseSalarySummaryRowChanged" msprop:Generator_UserTableName="CCWiseSalarySummary" msprop:Generator_RowChangingName="CCWiseSalarySummaryRowChanging" msprop:Generator_RowClassName="CCWiseSalarySummaryRow" msprop:Generator_TableClassName="CCWiseSalarySummaryDataTable" msprop:Generator_TableVarName="tableCCWiseSalarySummary"> <xs:element name="CCWiseSalarySummary" msprop:Generator_RowEvHandlerName="CCWiseSalarySummaryRowChangeEventHandler" msprop:Generator_RowDeletedName="CCWiseSalarySummaryRowDeleted" msprop:Generator_RowDeletingName="CCWiseSalarySummaryRowDeleting" msprop:Generator_RowEvArgName="CCWiseSalarySummaryRowChangeEvent" msprop:Generator_TablePropName="CCWiseSalarySummary" msprop:Generator_RowChangedName="CCWiseSalarySummaryRowChanged" msprop:Generator_RowChangingName="CCWiseSalarySummaryRowChanging" msprop:Generator_TableClassName="CCWiseSalarySummaryDataTable" msprop:Generator_RowClassName="CCWiseSalarySummaryRow" msprop:Generator_TableVarName="tableCCWiseSalarySummary" msprop:Generator_UserTableName="CCWiseSalarySummary">
<xs:complexType> <xs:complexType>
<xs:sequence> <xs:sequence>
<xs:element name="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" /> <xs:element name="Name" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnVarNameInTable="columnName" msprop:Generator_UserColumnName="Name" type="xs:string" minOccurs="0" />
<xs:element name="Gross" msprop:Generator_ColumnPropNameInTable="GrossColumn" msprop:Generator_ColumnPropNameInRow="Gross" msprop:Generator_UserColumnName="Gross" msprop:Generator_ColumnVarNameInTable="columnGross" type="xs:double" minOccurs="0" /> <xs:element name="Gross" msprop:Generator_ColumnPropNameInRow="Gross" msprop:Generator_ColumnPropNameInTable="GrossColumn" msprop:Generator_ColumnVarNameInTable="columnGross" msprop:Generator_UserColumnName="Gross" type="xs:double" minOccurs="0" />
<xs:element name="PF" msprop:Generator_ColumnPropNameInTable="PFColumn" msprop:Generator_ColumnPropNameInRow="PF" msprop:Generator_UserColumnName="PF" msprop:Generator_ColumnVarNameInTable="columnPF" type="xs:double" minOccurs="0" /> <xs:element name="PF" msprop:Generator_ColumnPropNameInRow="PF" msprop:Generator_ColumnPropNameInTable="PFColumn" msprop:Generator_ColumnVarNameInTable="columnPF" msprop:Generator_UserColumnName="PF" type="xs:double" minOccurs="0" />
<xs:element name="PFLoan" msprop:Generator_ColumnPropNameInTable="PFLoanColumn" msprop:Generator_ColumnPropNameInRow="PFLoan" msprop:Generator_UserColumnName="PFLoan" msprop:Generator_ColumnVarNameInTable="columnPFLoan" type="xs:double" minOccurs="0" /> <xs:element name="PFLoan" msprop:Generator_ColumnPropNameInRow="PFLoan" msprop:Generator_ColumnPropNameInTable="PFLoanColumn" msprop:Generator_ColumnVarNameInTable="columnPFLoan" msprop:Generator_UserColumnName="PFLoan" type="xs:double" minOccurs="0" />
<xs:element name="Deduction" msprop:Generator_ColumnPropNameInTable="DeductionColumn" msprop:Generator_ColumnPropNameInRow="Deduction" msprop:Generator_UserColumnName="Deduction" msprop:Generator_ColumnVarNameInTable="columnDeduction" type="xs:double" minOccurs="0" /> <xs:element name="Deduction" msprop:Generator_ColumnPropNameInRow="Deduction" msprop:Generator_ColumnPropNameInTable="DeductionColumn" msprop:Generator_ColumnVarNameInTable="columnDeduction" msprop:Generator_UserColumnName="Deduction" type="xs:double" minOccurs="0" />
<xs:element name="NetPay" msprop:Generator_ColumnPropNameInTable="NetPayColumn" msprop:Generator_ColumnPropNameInRow="NetPay" msprop:Generator_UserColumnName="NetPay" msprop:Generator_ColumnVarNameInTable="columnNetPay" type="xs:double" minOccurs="0" /> <xs:element name="NetPay" msprop:Generator_ColumnPropNameInRow="NetPay" msprop:Generator_ColumnPropNameInTable="NetPayColumn" msprop:Generator_ColumnVarNameInTable="columnNetPay" msprop:Generator_UserColumnName="NetPay" type="xs:double" minOccurs="0" />
<xs:element name="Basic" msprop:Generator_ColumnPropNameInTable="BasicColumn" msprop:Generator_ColumnPropNameInRow="Basic" msprop:Generator_UserColumnName="Basic" msprop:Generator_ColumnVarNameInTable="columnBasic" type="xs:double" minOccurs="0" /> <xs:element name="Basic" msprop:Generator_ColumnPropNameInRow="Basic" msprop:Generator_ColumnPropNameInTable="BasicColumn" msprop:Generator_ColumnVarNameInTable="columnBasic" msprop:Generator_UserColumnName="Basic" type="xs:double" minOccurs="0" />
<xs:element name="HR" msprop:Generator_ColumnPropNameInTable="HRColumn" msprop:Generator_ColumnPropNameInRow="HR" msprop:Generator_UserColumnName="HR" msprop:Generator_ColumnVarNameInTable="columnHR" type="xs:double" minOccurs="0" /> <xs:element name="HR" msprop:Generator_ColumnPropNameInRow="HR" msprop:Generator_ColumnPropNameInTable="HRColumn" msprop:Generator_ColumnVarNameInTable="columnHR" msprop:Generator_UserColumnName="HR" type="xs:double" minOccurs="0" />
<xs:element name="Medical" msprop:Generator_ColumnPropNameInTable="MedicalColumn" msprop:Generator_ColumnPropNameInRow="Medical" msprop:Generator_UserColumnName="Medical" msprop:Generator_ColumnVarNameInTable="columnMedical" type="xs:double" minOccurs="0" /> <xs:element name="Medical" msprop:Generator_ColumnPropNameInRow="Medical" msprop:Generator_ColumnPropNameInTable="MedicalColumn" msprop:Generator_ColumnVarNameInTable="columnMedical" msprop:Generator_UserColumnName="Medical" type="xs:double" minOccurs="0" />
<xs:element name="Convence" msprop:Generator_ColumnPropNameInTable="ConvenceColumn" msprop:Generator_ColumnPropNameInRow="Convence" msprop:Generator_UserColumnName="Convence" msprop:Generator_ColumnVarNameInTable="columnConvence" type="xs:double" minOccurs="0" /> <xs:element name="Convence" msprop:Generator_ColumnPropNameInRow="Convence" msprop:Generator_ColumnPropNameInTable="ConvenceColumn" msprop:Generator_ColumnVarNameInTable="columnConvence" msprop:Generator_UserColumnName="Convence" type="xs:double" minOccurs="0" />
<xs:element name="MonthlyLocationAllowanceEURO" msprop:Generator_ColumnPropNameInTable="MonthlyLocationAllowanceEUROColumn" msprop:Generator_ColumnPropNameInRow="MonthlyLocationAllowanceEURO" msprop:Generator_UserColumnName="MonthlyLocationAllowanceEURO" msprop:Generator_ColumnVarNameInTable="columnMonthlyLocationAllowanceEURO" type="xs:double" minOccurs="0" /> <xs:element name="MonthlyLocationAllowanceEURO" msprop:Generator_ColumnPropNameInRow="MonthlyLocationAllowanceEURO" msprop:Generator_ColumnPropNameInTable="MonthlyLocationAllowanceEUROColumn" msprop:Generator_ColumnVarNameInTable="columnMonthlyLocationAllowanceEURO" msprop:Generator_UserColumnName="MonthlyLocationAllowanceEURO" type="xs:double" minOccurs="0" />
<xs:element name="ActualGross" msprop:Generator_ColumnPropNameInTable="ActualGrossColumn" msprop:Generator_ColumnPropNameInRow="ActualGross" msprop:Generator_UserColumnName="ActualGross" msprop:Generator_ColumnVarNameInTable="columnActualGross" type="xs:double" minOccurs="0" /> <xs:element name="ActualGross" msprop:Generator_ColumnPropNameInRow="ActualGross" msprop:Generator_ColumnPropNameInTable="ActualGrossColumn" msprop:Generator_ColumnVarNameInTable="columnActualGross" msprop:Generator_UserColumnName="ActualGross" type="xs:double" minOccurs="0" />
<xs:element name="ChildDeductionEURO" msprop:Generator_ColumnPropNameInTable="ChildDeductionEUROColumn" msprop:Generator_ColumnPropNameInRow="ChildDeductionEURO" msprop:Generator_UserColumnName="ChildDeductionEURO" msprop:Generator_ColumnVarNameInTable="columnChildDeductionEURO" type="xs:double" minOccurs="0" /> <xs:element name="ChildDeductionEURO" msprop:Generator_ColumnPropNameInRow="ChildDeductionEURO" msprop:Generator_ColumnPropNameInTable="ChildDeductionEUROColumn" msprop:Generator_ColumnVarNameInTable="columnChildDeductionEURO" msprop:Generator_UserColumnName="ChildDeductionEURO" type="xs:double" minOccurs="0" />
<xs:element name="TotalDeduction" msprop:Generator_ColumnPropNameInTable="TotalDeductionColumn" msprop:Generator_ColumnPropNameInRow="TotalDeduction" msprop:Generator_UserColumnName="TotalDeduction" msprop:Generator_ColumnVarNameInTable="columnTotalDeduction" type="xs:double" minOccurs="0" /> <xs:element name="TotalDeduction" msprop:Generator_ColumnPropNameInRow="TotalDeduction" msprop:Generator_ColumnPropNameInTable="TotalDeductionColumn" msprop:Generator_ColumnVarNameInTable="columnTotalDeduction" msprop:Generator_UserColumnName="TotalDeduction" type="xs:double" minOccurs="0" />
<xs:element name="HousingDeductionEURO" msprop:Generator_ColumnPropNameInTable="HousingDeductionEUROColumn" msprop:Generator_ColumnPropNameInRow="HousingDeductionEURO" msprop:Generator_UserColumnName="HousingDeductionEURO" msprop:Generator_ColumnVarNameInTable="columnHousingDeductionEURO" type="xs:double" minOccurs="0" /> <xs:element name="HousingDeductionEURO" msprop:Generator_ColumnPropNameInRow="HousingDeductionEURO" msprop:Generator_ColumnPropNameInTable="HousingDeductionEUROColumn" msprop:Generator_ColumnVarNameInTable="columnHousingDeductionEURO" msprop:Generator_UserColumnName="HousingDeductionEURO" type="xs:double" minOccurs="0" />
<xs:element name="PFLoaninterest" msprop:Generator_ColumnPropNameInTable="PFLoaninterestColumn" msprop:Generator_ColumnPropNameInRow="PFLoaninterest" msprop:Generator_UserColumnName="PFLoaninterest" msprop:Generator_ColumnVarNameInTable="columnPFLoaninterest" type="xs:double" minOccurs="0" /> <xs:element name="PFLoaninterest" msprop:Generator_ColumnPropNameInRow="PFLoaninterest" msprop:Generator_ColumnPropNameInTable="PFLoaninterestColumn" msprop:Generator_ColumnVarNameInTable="columnPFLoaninterest" msprop:Generator_UserColumnName="PFLoaninterest" type="xs:double" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="LeaveRegisterBangla" msprop:Generator_RowEvHandlerName="LeaveRegisterBanglaRowChangeEventHandler" msprop:Generator_RowDeletedName="LeaveRegisterBanglaRowDeleted" msprop:Generator_RowDeletingName="LeaveRegisterBanglaRowDeleting" msprop:Generator_RowEvArgName="LeaveRegisterBanglaRowChangeEvent" msprop:Generator_TablePropName="LeaveRegisterBangla" msprop:Generator_RowChangedName="LeaveRegisterBanglaRowChanged" msprop:Generator_RowChangingName="LeaveRegisterBanglaRowChanging" msprop:Generator_TableClassName="LeaveRegisterBanglaDataTable" msprop:Generator_RowClassName="LeaveRegisterBanglaRow" msprop:Generator_TableVarName="tableLeaveRegisterBangla" msprop:Generator_UserTableName="LeaveRegisterBangla">
<xs:complexType>
<xs:sequence>
<xs:element name="CardNo" msprop:Generator_ColumnPropNameInRow="CardNo" msprop:Generator_ColumnPropNameInTable="CardNoColumn" msprop:Generator_ColumnVarNameInTable="columnCardNo" msprop:Generator_UserColumnName="CardNo" type="xs:string" minOccurs="0" />
<xs:element name="EmpName" msprop:Generator_ColumnPropNameInRow="EmpName" msprop:Generator_ColumnPropNameInTable="EmpNameColumn" msprop:Generator_ColumnVarNameInTable="columnEmpName" msprop:Generator_UserColumnName="EmpName" type="xs:string" minOccurs="0" />
<xs:element name="Designation" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnVarNameInTable="columnDesignation" msprop:Generator_UserColumnName="Designation" type="xs:string" minOccurs="0" />
<xs:element name="Department" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnVarNameInTable="columnDepartment" msprop:Generator_UserColumnName="Department" type="xs:string" minOccurs="0" />
<xs:element name="JoiningDate" msprop:Generator_ColumnPropNameInRow="JoiningDate" msprop:Generator_ColumnPropNameInTable="JoiningDateColumn" msprop:Generator_ColumnVarNameInTable="columnJoiningDate" msprop:Generator_UserColumnName="JoiningDate" type="xs:string" minOccurs="0" />
<xs:element name="OpeningEL" msprop:Generator_ColumnPropNameInRow="OpeningEL" msprop:Generator_ColumnPropNameInTable="OpeningELColumn" msprop:Generator_ColumnVarNameInTable="columnOpeningEL" msprop:Generator_UserColumnName="OpeningEL" type="xs:string" minOccurs="0" />
<xs:element name="DesEL" msprop:Generator_ColumnPropNameInRow="DesEL" msprop:Generator_ColumnPropNameInTable="DesELColumn" msprop:Generator_ColumnVarNameInTable="columnDesEL" msprop:Generator_UserColumnName="DesEL" type="xs:string" minOccurs="0" />
<xs:element name="DesCL" msprop:Generator_ColumnPropNameInRow="DesCL" msprop:Generator_ColumnPropNameInTable="DesCLColumn" msprop:Generator_ColumnVarNameInTable="columnDesCL" msprop:Generator_UserColumnName="DesCL" type="xs:string" minOccurs="0" />
<xs:element name="DesML" msprop:Generator_ColumnPropNameInRow="DesML" msprop:Generator_ColumnPropNameInTable="DesMLColumn" msprop:Generator_ColumnVarNameInTable="columnDesML" msprop:Generator_UserColumnName="DesML" type="xs:string" minOccurs="0" />
<xs:element name="DesPL" msprop:Generator_ColumnPropNameInRow="DesPL" msprop:Generator_ColumnPropNameInTable="DesPLColumn" msprop:Generator_ColumnVarNameInTable="columnDesPL" msprop:Generator_UserColumnName="DesPL" type="xs:string" minOccurs="0" />
<xs:element name="DesSPL" msprop:Generator_ColumnPropNameInRow="DesSPL" msprop:Generator_ColumnPropNameInTable="DesSPLColumn" msprop:Generator_ColumnVarNameInTable="columnDesSPL" msprop:Generator_UserColumnName="DesSPL" type="xs:string" minOccurs="0" />
<xs:element name="DesCOM" msprop:Generator_ColumnPropNameInRow="DesCOM" msprop:Generator_ColumnPropNameInTable="DesCOMColumn" msprop:Generator_ColumnVarNameInTable="columnDesCOM" msprop:Generator_UserColumnName="DesCOM" type="xs:string" minOccurs="0" />
<xs:element name="DesLWOP" msprop:Generator_ColumnPropNameInRow="DesLWOP" msprop:Generator_ColumnPropNameInTable="DesLWOPColumn" msprop:Generator_ColumnVarNameInTable="columnDesLWOP" msprop:Generator_UserColumnName="DesLWOP" type="xs:string" minOccurs="0" />
<xs:element name="ReasonOfRejection" msprop:Generator_ColumnPropNameInRow="ReasonOfRejection" msprop:Generator_ColumnPropNameInTable="ReasonOfRejectionColumn" msprop:Generator_ColumnVarNameInTable="columnReasonOfRejection" msprop:Generator_UserColumnName="ReasonOfRejection" type="xs:string" minOccurs="0" />
<xs:element name="LeaveGrantedDate" msprop:Generator_ColumnPropNameInRow="LeaveGrantedDate" msprop:Generator_ColumnPropNameInTable="LeaveGrantedDateColumn" msprop:Generator_ColumnVarNameInTable="columnLeaveGrantedDate" msprop:Generator_UserColumnName="LeaveGrantedDate" type="xs:string" minOccurs="0" />
<xs:element name="TotalGrantedDays" msprop:Generator_ColumnPropNameInRow="TotalGrantedDays" msprop:Generator_ColumnPropNameInTable="TotalGrantedDaysColumn" msprop:Generator_ColumnVarNameInTable="columnTotalGrantedDays" msprop:Generator_UserColumnName="TotalGrantedDays" type="xs:string" minOccurs="0" />
<xs:element name="RemainingEL" msprop:Generator_ColumnPropNameInRow="RemainingEL" msprop:Generator_ColumnPropNameInTable="RemainingELColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingEL" msprop:Generator_UserColumnName="RemainingEL" type="xs:string" minOccurs="0" />
<xs:element name="RemainingCL" msprop:Generator_ColumnPropNameInRow="RemainingCL" msprop:Generator_ColumnPropNameInTable="RemainingCLColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingCL" msprop:Generator_UserColumnName="RemainingCL" type="xs:string" minOccurs="0" />
<xs:element name="RemainingML" msprop:Generator_ColumnPropNameInRow="RemainingML" msprop:Generator_ColumnPropNameInTable="RemainingMLColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingML" msprop:Generator_UserColumnName="RemainingML" type="xs:string" minOccurs="0" />
<xs:element name="RemainingPL" msprop:Generator_ColumnPropNameInRow="RemainingPL" msprop:Generator_ColumnPropNameInTable="RemainingPLColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingPL" msprop:Generator_UserColumnName="RemainingPL" type="xs:string" minOccurs="0" />
<xs:element name="RemainingSPL" msprop:Generator_ColumnPropNameInRow="RemainingSPL" msprop:Generator_ColumnPropNameInTable="RemainingSPLColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingSPL" msprop:Generator_UserColumnName="RemainingSPL" type="xs:string" minOccurs="0" />
<xs:element name="RemainingCOM" msprop:Generator_ColumnPropNameInRow="RemainingCOM" msprop:Generator_ColumnPropNameInTable="RemainingCOMColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingCOM" msprop:Generator_UserColumnName="RemainingCOM" type="xs:string" minOccurs="0" />
<xs:element name="RemainingLWOP" msprop:Generator_ColumnPropNameInRow="RemainingLWOP" msprop:Generator_ColumnPropNameInTable="RemainingLWOPColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingLWOP" msprop:Generator_UserColumnName="RemainingLWOP" type="xs:string" minOccurs="0" />
<xs:element name="EmployeeSignature" msprop:Generator_ColumnPropNameInRow="EmployeeSignature" msprop:Generator_ColumnPropNameInTable="EmployeeSignatureColumn" msprop:Generator_ColumnVarNameInTable="columnEmployeeSignature" msprop:Generator_UserColumnName="EmployeeSignature" type="xs:string" minOccurs="0" />
<xs:element name="EmployerSignature" msprop:Generator_ColumnPropNameInRow="EmployerSignature" msprop:Generator_ColumnPropNameInTable="EmployerSignatureColumn" msprop:Generator_ColumnVarNameInTable="columnEmployerSignature" msprop:Generator_UserColumnName="EmployerSignature" type="xs:string" minOccurs="0" />
<xs:element name="DesSL" msprop:Generator_ColumnPropNameInRow="DesSL" msprop:Generator_ColumnPropNameInTable="DesSLColumn" msprop:Generator_ColumnVarNameInTable="columnDesSL" msprop:Generator_UserColumnName="DesSL" type="xs:string" minOccurs="0" />
<xs:element name="RemainingSL" msprop:Generator_ColumnPropNameInRow="RemainingSL" msprop:Generator_ColumnPropNameInTable="RemainingSLColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingSL" msprop:Generator_UserColumnName="RemainingSL" type="xs:string" minOccurs="0" />
<xs:element name="ELEncashmentDetail" msprop:Generator_ColumnPropNameInRow="ELEncashmentDetail" msprop:Generator_ColumnPropNameInTable="ELEncashmentDetailColumn" msprop:Generator_ColumnVarNameInTable="columnELEncashmentDetail" msprop:Generator_UserColumnName="ELEncashmentDetail" type="xs:string" minOccurs="0" />
<xs:element name="Section" msprop:Generator_ColumnPropNameInRow="Section" msprop:Generator_ColumnPropNameInTable="SectionColumn" msprop:Generator_ColumnVarNameInTable="columnSection" msprop:Generator_UserColumnName="Section" type="xs:string" minOccurs="0" />
</xs:sequence> </xs:sequence>
</xs:complexType> </xs:complexType>
</xs:element> </xs:element>

View File

@ -4,57 +4,56 @@
Changes to this file may cause incorrect behavior and will be lost if Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated. the code is regenerated.
</autogenerated>--> </autogenerated>-->
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="-15" ViewPortY="-13" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout"> <DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="94" ViewPortY="-2" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
<Shapes> <Shapes>
<Shape ID="DesignTable:EmpLeaveLedger" ZOrder="34" X="443" Y="-3" Height="28" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:EmpLeaveLedger" ZOrder="25" X="443" Y="-3" Height="257" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:CCWiseLeaveEncash" ZOrder="42" X="183" Y="456" Height="28" Width="182" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="45" SplitterPosition="24" /> <Shape ID="DesignTable:CCWiseLeaveEncash" ZOrder="9" X="0" Y="18" Height="49" Width="182" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
<Shape ID="DesignTable:LeaveYear" ZOrder="12" X="664" Y="33" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="57" SplitterPosition="24" /> <Shape ID="DesignTable:LeaveYear" ZOrder="15" X="664" Y="33" Height="67" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="57" SplitterPosition="24" />
<Shape ID="DesignTable:EmpInformation" ZOrder="33" X="448" Y="29" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:EmpInformation" ZOrder="24" X="446" Y="29" Height="143" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
<Shape ID="DesignTable:OPIRegister" ZOrder="44" X="870" Y="102" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="24" /> <Shape ID="DesignTable:OPIRegister" ZOrder="21" X="870" Y="102" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="24" />
<Shape ID="DesignTable:MaternityLeave" ZOrder="30" X="218" Y="32" Height="28" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="329" SplitterPosition="24" /> <Shape ID="DesignTable:MaternityLeave" ZOrder="30" X="218" Y="32" Height="257" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="329" SplitterPosition="24" />
<Shape ID="DesignTable:MaternityStatusDetail" ZOrder="32" X="217" Y="-2" Height="28" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="91" SplitterPosition="24" /> <Shape ID="DesignTable:MaternityStatusDetail" ZOrder="29" X="217" Y="-2" Height="105" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="91" SplitterPosition="24" />
<Shape ID="DesignTable:FSSDeduct" ZOrder="21" X="8" Y="196" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="228" SplitterPosition="24" /> <Shape ID="DesignTable:FSSDeduct" ZOrder="36" X="8" Y="196" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="228" SplitterPosition="24" />
<Shape ID="DesignTable:FSSAdd" ZOrder="25" X="7" Y="3" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="228" SplitterPosition="24" /> <Shape ID="DesignTable:FSSAdd" ZOrder="37" X="7" Y="3" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="228" SplitterPosition="24" />
<Shape ID="DesignTable:GratuityLedger" ZOrder="4" X="1053" Y="0" Height="28" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="24" /> <Shape ID="DesignTable:GratuityLedger" ZOrder="20" X="1053" Y="0" Height="143" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="24" />
<Shape ID="DesignTable:GratuityRegister" ZOrder="5" X="1055" Y="34" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="108" SplitterPosition="24" /> <Shape ID="DesignTable:GratuityRegister" ZOrder="19" X="1055" Y="34" Height="124" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="108" SplitterPosition="24" />
<Shape ID="DesignTable:FSSEmpInformation" ZOrder="27" X="6" Y="101" Height="28" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:FSSEmpInformation" ZOrder="43" X="6" Y="101" Height="257" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:Budget" ZOrder="6" X="869" Y="66" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" /> <Shape ID="DesignTable:Budget" ZOrder="18" X="869" Y="66" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
<Shape ID="DesignTable:BudgetCC" ZOrder="8" X="866" Y="-2" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="142" SplitterPosition="24" /> <Shape ID="DesignTable:BudgetCC" ZOrder="17" X="866" Y="-2" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="142" SplitterPosition="24" />
<Shape ID="DesignTable:BudgetComparison" ZOrder="7" X="868" Y="31" Height="28" Width="178" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="245" SplitterPosition="24" /> <Shape ID="DesignTable:BudgetComparison" ZOrder="3" X="868" Y="31" Height="238" Width="178" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="245" SplitterPosition="234" />
<Shape ID="DesignTable:FSSAddItem" ZOrder="23" X="7" Y="133" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="63" SplitterPosition="24" /> <Shape ID="DesignTable:FSSAddItem" ZOrder="47" X="7" Y="133" Height="67" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="63" SplitterPosition="24" />
<Shape ID="DesignTable:FSSDeductItem" ZOrder="22" X="8" Y="165" Height="28" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="63" SplitterPosition="24" /> <Shape ID="DesignTable:FSSDeductItem" ZOrder="48" X="8" Y="165" Height="67" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="63" SplitterPosition="24" />
<Shape ID="DesignTable:FSSAddOtherItem" ZOrder="16" X="3" Y="361" Height="28" Width="170" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="63" SplitterPosition="24" /> <Shape ID="DesignTable:FSSAddOtherItem" ZOrder="46" X="3" Y="361" Height="67" Width="170" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="63" SplitterPosition="24" />
<Shape ID="DesignTable:FStkinwords" ZOrder="49" X="5" Y="328" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="44" SplitterPosition="24" /> <Shape ID="DesignTable:FStkinwords" ZOrder="45" X="5" Y="328" Height="48" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="44" SplitterPosition="24" />
<Shape ID="DesignTable:FSSsalaryComponent" ZOrder="26" X="7" Y="69" Height="28" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" /> <Shape ID="DesignTable:FSSsalaryComponent" ZOrder="44" X="7" Y="69" Height="238" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
<Shape ID="DesignTable:FSEmp" ZOrder="20" X="7" Y="230" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:FSEmp" ZOrder="38" X="7" Y="230" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:FSSFracsalary" ZOrder="18" X="6" Y="296" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" /> <Shape ID="DesignTable:FSSFracsalary" ZOrder="42" X="6" Y="296" Height="219" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
<Shape ID="DesignTable:FSPreLeave" ZOrder="19" X="6" Y="263" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" /> <Shape ID="DesignTable:FSPreLeave" ZOrder="41" X="6" Y="263" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
<Shape ID="DesignTable:fsdec" ZOrder="24" X="197" Y="231" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" /> <Shape ID="DesignTable:fsdec" ZOrder="39" X="7" Y="38" Height="67" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
<Shape ID="DesignTable:fstotal" ZOrder="17" X="5" Y="393" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" /> <Shape ID="DesignTable:fstotal" ZOrder="40" X="5" Y="393" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" />
<Shape ID="DesignTable:LeaveBalance" ZOrder="2" X="662" Y="-1" Height="28" Width="177" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="140" SplitterPosition="24" /> <Shape ID="DesignTable:LeaveBalance" ZOrder="14" X="662" Y="-1" Height="257" Width="160" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:EmployeesTaxDeduction" ZOrder="14" X="442" Y="62" Height="28" Width="209" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" /> <Shape ID="DesignTable:EmployeesTaxDeduction" ZOrder="23" X="442" Y="62" Height="162" Width="209" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
<Shape ID="DesignTable:TaxInvestment" ZOrder="29" X="219" Y="99" Height="28" Width="152" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" /> <Shape ID="DesignTable:TaxInvestment" ZOrder="28" X="219" Y="99" Height="143" Width="152" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
<Shape ID="DesignTable:TaxChallan" ZOrder="28" X="218" Y="132" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" /> <Shape ID="DesignTable:TaxChallan" ZOrder="27" X="218" Y="132" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
<Shape ID="DesignTable:LeaveApplication" ZOrder="36" X="663" Y="68" Height="28" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:LeaveApplication" ZOrder="2" X="663" Y="68" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<Shape ID="DesignTable:ShortLeave" ZOrder="43" X="1055" Y="68" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="24" /> <Shape ID="DesignTable:ShortLeave" ZOrder="16" X="1055" Y="68" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="24" />
<Shape ID="DesignTable:MultipleEmployeeLeave" ZOrder="31" X="217" Y="64" Height="28" Width="204" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:MultipleEmployeeLeave" ZOrder="26" X="217" Y="64" Height="257" Width="204" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:LeaveInformation" ZOrder="11" X="662" Y="97" Height="28" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:LeaveInformation" ZOrder="13" X="662" Y="97" Height="257" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:LeaveLedger" ZOrder="10" X="663" Y="129" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="310" SplitterPosition="24" /> <Shape ID="DesignTable:LeaveLedger" ZOrder="12" X="663" Y="129" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="310" SplitterPosition="24" />
<Shape ID="DesignTable:LFAReport" ZOrder="9" X="662" Y="162" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" /> <Shape ID="DesignTable:LFAReport" ZOrder="11" X="662" Y="162" Height="238" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
<Shape ID="DesignTable:FSTerminalBenefit" ZOrder="15" X="3" Y="427" Height="28" Width="172" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:FSTerminalBenefit" ZOrder="35" X="3" Y="427" Height="257" Width="172" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:FSLess" ZOrder="48" X="2" Y="458" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" /> <Shape ID="DesignTable:FSLess" ZOrder="34" X="2" Y="458" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
<Shape ID="DesignTable:EmpDepartmentalLeave" ZOrder="13" X="439" Y="96" Height="28" Width="204" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:EmpDepartmentalLeave" ZOrder="22" X="439" Y="96" Height="257" Width="204" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:TeamLeaveEmpInfo" ZOrder="45" X="192" Y="491" Height="28" Width="180" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" /> <Shape ID="DesignTable:TeamLeaveEmpInfo" ZOrder="31" X="0" Y="0" Height="162" Width="180" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
<Shape ID="DesignTable:TeamLeaveType" ZOrder="46" X="195" Y="524" Height="28" Width="159" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" /> <Shape ID="DesignTable:TeamLeaveType" ZOrder="32" X="0" Y="0" Height="162" Width="159" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
<Shape ID="DesignTable:TeamLeaveDetails" ZOrder="47" X="188" Y="311" Height="28" Width="170" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" /> <Shape ID="DesignTable:TeamLeaveDetails" ZOrder="33" X="0" Y="0" Height="200" Width="170" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
<Shape ID="DesignTable:BonusPaySlip" ZOrder="41" X="184" Y="423" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="197" SplitterPosition="24" /> <Shape ID="DesignTable:BonusPaySlip" ZOrder="8" X="0" Y="18" Height="201" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
<Shape ID="DesignTable:LeaveCashAdvice" ZOrder="40" X="183" Y="385" Height="28" Width="165" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="83" SplitterPosition="24" /> <Shape ID="DesignTable:LeaveCashAdvice" ZOrder="7" X="0" Y="18" Height="87" Width="165" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
<Shape ID="DesignTable:LeaveEntrysForSchedular" ZOrder="3" X="660" Y="195" Height="28" Width="210" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:LeaveEntrysForSchedular" ZOrder="10" X="660" Y="195" Height="257" Width="210" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:LeaveEncash" ZOrder="39" X="199" Y="347" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="178" SplitterPosition="24" /> <Shape ID="DesignTable:LeaveEncash" ZOrder="6" X="0" Y="18" Height="182" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
<Shape ID="DesignTable:MLPayment" ZOrder="38" X="399" Y="182" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" /> <Shape ID="DesignTable:MLPayment" ZOrder="5" X="399" Y="182" Height="239" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
<Shape ID="DesignTable:MLBenefit" ZOrder="37" X="240" Y="185" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:MLBenefit" ZOrder="4" X="240" Y="185" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
<Shape ID="DesignTable:CCWiseSalarySummary" ZOrder="35" X="378" Y="313" Height="28" Width="221" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" /> <Shape ID="DesignTable:CCWiseSalarySummary" ZOrder="1" X="943" Y="316" Height="257" Width="221" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
<Shape ID="DesignTable:LeaveRegisterBangla" ZOrder="1" X="633" Y="315" Height="28" Width="186" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
</Shapes> </Shapes>
<Connectors /> <Connectors />
</DiagramLayout> </DiagramLayout>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -34,36 +34,16 @@
</Field> </Field>
<Field Name="Date"> <Field Name="Date">
<DataField>Date</DataField> <DataField>Date</DataField>
<rd:TypeName>System.String</rd:TypeName> <rd:TypeName>System.DateTime</rd:TypeName>
</Field> </Field>
<Field Name="WorkingHour"> <Field Name="WorkingHour">
<DataField>WorkingHour</DataField> <DataField>WorkingHour</DataField>
<rd:TypeName>System.String</rd:TypeName> <rd:TypeName>System.Double</rd:TypeName>
</Field>
<Field Name="Designation">
<DataField>Designation</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Department">
<DataField>Department</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Floor">
<DataField>Floor</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Line">
<DataField>Line</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="Section">
<DataField>Section</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field> </Field>
</Fields> </Fields>
<rd:DataSetInfo> <rd:DataSetInfo>
<rd:DataSetName>PayrollDataSet</rd:DataSetName> <rd:DataSetName>PayrollDataSet</rd:DataSetName>
<rd:SchemaPath>D:\Git\EchoTex_Payroll\HRM.Report\PayrollDataSet\PayrollDataSet.xsd</rd:SchemaPath> <rd:SchemaPath>D:\Local\Echo TextNew\Echo v2.0\Echo_Desktop\Payroll.Report\PayrollDataSet\PayrollDataSet.xsd</rd:SchemaPath>
<rd:TableName>dtProdAttendance</rd:TableName> <rd:TableName>dtProdAttendance</rd:TableName>
<rd:TableAdapterFillMethod /> <rd:TableAdapterFillMethod />
<rd:TableAdapterGetDataMethod /> <rd:TableAdapterGetDataMethod />
@ -170,134 +150,6 @@
</Textbox> </Textbox>
</CellContents> </CellContents>
</TablixCornerCell> </TablixCornerCell>
<TablixCornerCell>
<CellContents>
<Textbox Name="Textbox9">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Designation</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox9</rd:DefaultName>
<Style>
<Border>
<Style>Solid</Style>
</Border>
<BackgroundColor>LightGrey</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCornerCell>
<TablixCornerCell>
<CellContents>
<Textbox Name="Textbox11">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Department</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox11</rd:DefaultName>
<Style>
<Border>
<Style>Solid</Style>
</Border>
<BackgroundColor>LightGrey</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCornerCell>
<TablixCornerCell>
<CellContents>
<Textbox Name="Textbox13">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Section</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox13</rd:DefaultName>
<Style>
<Border>
<Style>Solid</Style>
</Border>
<BackgroundColor>LightGrey</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCornerCell>
<TablixCornerCell>
<CellContents>
<Textbox Name="Textbox15">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>Floor</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Textbox15</rd:DefaultName>
<Style>
<Border>
<Style>Solid</Style>
</Border>
<BackgroundColor>LightGrey</BackgroundColor>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixCornerCell>
</TablixCornerRow> </TablixCornerRow>
</TablixCornerRows> </TablixCornerRows>
</TablixCorner> </TablixCorner>
@ -570,190 +422,6 @@
</Textbox> </Textbox>
</CellContents> </CellContents>
</TablixHeader> </TablixHeader>
<TablixMembers>
<TablixMember>
<Group Name="Designation">
<GroupExpressions>
<GroupExpression>=Fields!Designation.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!Designation.Value</Value>
</SortExpression>
</SortExpressions>
<TablixHeader>
<Size>1in</Size>
<CellContents>
<Textbox Name="Designation">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!Designation.Value</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Designation</rd:DefaultName>
<Style>
<Border>
<Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<TablixMembers>
<TablixMember>
<Group Name="Department">
<GroupExpressions>
<GroupExpression>=Fields!Department.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!Department.Value</Value>
</SortExpression>
</SortExpressions>
<TablixHeader>
<Size>1in</Size>
<CellContents>
<Textbox Name="Department">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!Department.Value</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Department</rd:DefaultName>
<Style>
<Border>
<Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<TablixMembers>
<TablixMember>
<Group Name="Section">
<GroupExpressions>
<GroupExpression>=Fields!Section.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!Section.Value</Value>
</SortExpression>
</SortExpressions>
<TablixHeader>
<Size>0.80208in</Size>
<CellContents>
<Textbox Name="Section">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!Section.Value</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Section</rd:DefaultName>
<Style>
<Border>
<Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
<TablixMembers>
<TablixMember>
<Group Name="Floor">
<GroupExpressions>
<GroupExpression>=Fields!Floor.Value</GroupExpression>
</GroupExpressions>
</Group>
<SortExpressions>
<SortExpression>
<Value>=Fields!Floor.Value</Value>
</SortExpression>
</SortExpressions>
<TablixHeader>
<Size>0.53125in</Size>
<CellContents>
<Textbox Name="Floor">
<CanGrow>true</CanGrow>
<KeepTogether>true</KeepTogether>
<Paragraphs>
<Paragraph>
<TextRuns>
<TextRun>
<Value>=Fields!Floor.Value</Value>
<Style>
<FontSize>8pt</FontSize>
</Style>
</TextRun>
</TextRuns>
<Style />
</Paragraph>
</Paragraphs>
<rd:DefaultName>Floor</rd:DefaultName>
<Style>
<Border>
<Style>Solid</Style>
</Border>
<PaddingLeft>2pt</PaddingLeft>
<PaddingRight>2pt</PaddingRight>
<PaddingTop>2pt</PaddingTop>
<PaddingBottom>2pt</PaddingBottom>
</Style>
</Textbox>
</CellContents>
</TablixHeader>
</TablixMember>
</TablixMembers>
</TablixMember>
</TablixMembers>
</TablixMember>
</TablixMembers>
</TablixMember>
</TablixMembers>
</TablixMember> </TablixMember>
</TablixMembers> </TablixMembers>
</TablixMember> </TablixMember>
@ -763,7 +431,7 @@
<Top>0.53417in</Top> <Top>0.53417in</Top>
<Left>0.025in</Left> <Left>0.025in</Left>
<Height>0.5in</Height> <Height>0.5in</Height>
<Width>5.99791in</Width> <Width>2.66458in</Width>
<ZIndex>1</ZIndex> <ZIndex>1</ZIndex>
<Style> <Style>
<Border> <Border>

View File

@ -3963,8 +3963,8 @@ namespace HRM.Report
GetParameters(payrollTypeId); GetParameters(payrollTypeId);
////GetImageFromEmpFileUpload(empId); ////GetImageFromEmpFileUpload(empId);
//rParam = new ReportParameter("Photo", _PATH); rParam = new ReportParameter("Photo", _PATH);
//reportParameters.Add(rParam); reportParameters.Add(rParam);
if (reportParameters != null) if (reportParameters != null)
localReport.SetParameters(reportParameters); localReport.SetParameters(reportParameters);
Warning[] warnings; Warning[] warnings;

View File

@ -40,7 +40,6 @@ export class EmpLifeCycle extends BaseObject {
punishmentID: number; punishmentID: number;
isPayrollTypeChanged: boolean; isPayrollTypeChanged: boolean;
isTransferReceived: boolean; isTransferReceived: boolean;
createdByUser: string;
constructor() { constructor() {
super(); super();

View File

@ -102,32 +102,14 @@ export enum EnumWFCvSortStatus {
} }
export enum EnumLeaveCalculationType { export enum EnumLeaveCalculationType {
// Yearly = 1, Yearly = 1,
// Monthly_Earn = 2, Monthly_Earn = 2,
// Hourly_365Day = 3, Hourly_365Day = 3,
// Hourly_Monthly = 4, Hourly_Monthly = 4,
// OneDay_On_18Day_Present = 5, OneDay_On_18Day_Present = 5,
// Hourly_Prorated = 6, Hourly_Prorated = 6,
// Days_365 = 7, Days_365 = 7,
// Yearly_Without_Prorated = 8, 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
} }
export enum EnumLeaveparamOn { export enum EnumLeaveparamOn {

View File

@ -9,15 +9,6 @@ export class GlobalfunctionExtension {
lastDate.setMonth(lastDate.getMonth() + 1, 0); lastDate.setMonth(lastDate.getMonth() + 1, 0);
return lastDate; return lastDate;
} }
public static getFirstDateofYear(inputDate: Date): Date {
inputDate = new Date(inputDate);
return new Date(inputDate.getFullYear(), 0, 1);
}
public static getLastDateOfYear(inputDate: Date): Date {
inputDate = new Date(inputDate);
return new Date(inputDate.getFullYear(), 11, 31);
}
public static capitalizeFirstLetter(inputString: string): string { public static capitalizeFirstLetter(inputString: string): string {
debugger; debugger;
if (inputString.length === 0) { if (inputString.length === 0) {

View File

@ -266,7 +266,4 @@ export class AuthService {
GetOperationDate() { GetOperationDate() {
return this.apiService.httpGet<Date>('/Authentication/getOperationDate'); return this.apiService.httpGet<Date>('/Authentication/getOperationDate');
} }
addPermissions(data: DataPermission[]) {
return this.apiService.httpPost<any>('/Authentication/addPermissions', data);
}
} }

View File

@ -504,7 +504,7 @@ export class EmployeeServices {
return this.apiService.httpPost('/Employee/updateBanglaInformation', params); return this.apiService.httpPost('/Employee/updateBanglaInformation', params);
} }
updateBanglaContactInformation(params : any) { updateBanglaContactInformation(params : any) {
return this.apiService.httpPost<number>('/Employee/updateBanglaContactInformation', params); return this.apiService.httpPost('/Employee/updateBanglaContactInformation', params);
} }
getPFExceptionData() { getPFExceptionData() {
return this.apiService.httpGet<any[]>('/Employee/getPFExceptionData'); return this.apiService.httpGet<any[]>('/Employee/getPFExceptionData');

View File

@ -136,7 +136,4 @@ export class ReportServices {
getGeneratedProfileReportData(param: any) { getGeneratedProfileReportData(param: any) {
return this.apiService.httpDownloadFile('/Report/getGeneratedProfileReport/', param); return this.apiService.httpDownloadFile('/Report/getGeneratedProfileReport/', param);
} }
getEmpDetailInfoReport(param: any): Observable<HttpEvent<any>> {
return this.apiService.httpPost<any>('/Report/getEmpDetailInfoReport/', param);
}
} }

View File

@ -14,7 +14,7 @@ export class ApiService {
public isSSO = false; public isSSO = false;
public versionDeployement = false; public versionDeployement = false;
// public versionNumber = `V-${GlobalfunctionExtension.generateVersionNumber(new Date(2025, 1, 25))}-`+"01"; // public versionNumber = `V-${GlobalfunctionExtension.generateVersionNumber(new Date(2025, 1, 25))}-`+"01";
public versionNumber = `V-20251008-`+"01"; public versionNumber = `V-20250427-`+"01";
public static BASE_URL = ''; public static BASE_URL = '';
public base_url = ''; public base_url = '';
// public currentLink = ''; // public currentLink = '';

View File

@ -2,7 +2,7 @@
<form> <form>
<div class="card card-w-title"> <div class="card card-w-title">
<div class="p-grid form-group"> <div class="p-grid form-group">
<div class="p-col-12 p-md-6 p-lg-4"> <div class="p-col-12 p-md-4">
<div class="p-col-12"> <div class="p-col-12">
<label for="processFromDate">Process From</label> <label for="processFromDate">Process From</label>
</div> </div>
@ -17,7 +17,7 @@
</div> </div>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-4"> <div class="p-col-12 p-md-4">
<div class="p-col-12"> <div class="p-col-12">
<label for="processToDate">Process To</label> <label for="processToDate">Process To</label>
</div> </div>
@ -32,17 +32,17 @@
</div> </div>
</div> </div>
<div class="p-col-12 p-md-4 p-lg-1"> <div class="p-col-12 p-md-2">
<div class="p-col-12"> <div class="p-col-12">
<label for="chkIWithEmployee">Employee Wise</label> <label for="chkIWithEmployee">Employee Wise</label>
</div> </div>
<div class="p-col-12"> <div class="p-col-12">
<input type="checkbox" (change)="checkBoxChange()" [checked]="withEmployee" <input type="checkbox" (change)="checkBoxChange()" [checked]="withEmployee"
id="chkIWithEmployee" kendoCheckBox/> id="withEmployee" kendoCheckBox/>
</div> </div>
</div> </div>
<div class="p-col-12 p-md-4 p-lg-2" *ngIf="withEmployee"> <div class="p-col-12 p-md-2" *ngIf="withEmployee">
<div class="p-col-12"> <div class="p-col-12">
<label for="employeePicker">Select Employee</label> <label for="employeePicker">Select Employee</label>
</div> </div>
@ -54,16 +54,6 @@
></app-employee-picker> ></app-employee-picker>
</div> </div>
</div> </div>
<div class="p-col-12 p-md-4 p-lg-1" *ngIf="enableManualEntry">
<div class="p-col-12">
<label for="chkOverrideManualEntry">Override Manual Entry</label>
</div>
<div class="p-col-12">
<input type="checkbox" [checked]="overrideManualEntry" (change)="checkBoxChangeOverrideManualEntry()"
id="manualEntry" kendoCheckBox/>
</div>
</div>
</div> </div>
<div class="p-grid form-group"> <div class="p-grid form-group">
<div class="p-col-12 p-md-5"> <div class="p-col-12 p-md-5">

View File

@ -27,8 +27,6 @@ export class AttendanceProcessComponent {
processStatus: string = ""; processStatus: string = "";
withEmployee: boolean = false; withEmployee: boolean = false;
showModal: boolean = false; showModal: boolean = false;
enableManualEntry: boolean = false;
overrideManualEntry: boolean = false;
constructor(public attnService: AttendanceServices, public datatransferservice: DataTransferService, constructor(public attnService: AttendanceServices, public datatransferservice: DataTransferService,
public loadingPanel: loadingPanelService, public loadingPanel: loadingPanelService,
public notificationService: HRMNotificationService, public notificationService: HRMNotificationService,
@ -67,13 +65,6 @@ export class AttendanceProcessComponent {
} }
public GetSelectedEmployee(childData) { public GetSelectedEmployee(childData) {
this.selectedEmployees = childData; this.selectedEmployees = childData;
if (this.selectedEmployees != undefined && this.selectedEmployees.length == 1) {
this.enableManualEntry = true;
}
else {
this.enableManualEntry = false;
}
this.overrideManualEntry = false;
} }
public onSave(e): void { public onSave(e): void {
@ -100,16 +91,16 @@ export class AttendanceProcessComponent {
// } // }
//} //}
var attnRequest: { fromDate: Date, toDate: Date, isWithEmployee: boolean, employeeID: number, overrideManualEntry: boolean }[]; var attnRequest: { fromDate: Date, toDate: Date, isWithEmployee: boolean, employeeID: number }[];
attnRequest = []; attnRequest = [];
debugger
attnRequest.push({ "fromDate": this.fromDate, "toDate": this.toDate, "isWithEmployee": true, "employeeID": 0, "overrideManualEntry": this.overrideManualEntry }); attnRequest.push({ "fromDate": this.fromDate, "toDate": this.toDate, "isWithEmployee": true, "employeeID": 0 });
if (this.withEmployee) { if (this.withEmployee) {
if (this.selectedEmployees != undefined && this.selectedEmployees.length > 0) { if (this.selectedEmployees != undefined && this.selectedEmployees.length > 0) {
attnRequest = []; attnRequest = [];
this.selectedEmployees.forEach(x => { this.selectedEmployees.forEach(x => {
attnRequest.push({ "fromDate": this.fromDate, "toDate": this.toDate, "isWithEmployee": false, "employeeID": x.employeeID, "overrideManualEntry": this.overrideManualEntry }); attnRequest.push({ "fromDate": this.fromDate, "toDate": this.toDate, "isWithEmployee": false, "employeeID": x.employeeID });
}); });
} }
@ -147,18 +138,8 @@ export class AttendanceProcessComponent {
else else
this.withEmployee = true; this.withEmployee = true;
this.enableManualEntry = false;
this.overrideManualEntry = false;
} }
public onClickNotInWorkPlanEmployee() { public onClickNotInWorkPlanEmployee() {
this.showModal = true; this.showModal = true;
} }
public checkBoxChangeOverrideManualEntry() {
if (this.overrideManualEntry) {
this.overrideManualEntry = false;
}
else
this.overrideManualEntry = true;
}
} }

View File

@ -72,7 +72,7 @@
<ng-container *ngIf="this.isCategory == true"> <ng-container *ngIf="this.isCategory == true">
<div class="p-col-12 p-lg-2"> <div class="p-col-12 p-lg-2">
<label for="txtCategory">Category</label> <label for="txtDepartment">Category</label>
</div> </div>
<div class="p-col-12 p-lg-4"> <div class="p-col-12 p-lg-4">
<app-dynamic-picker [dynamicPickerView]="_categoryPicker" <app-dynamic-picker [dynamicPickerView]="_categoryPicker"

View File

@ -79,18 +79,14 @@ export class DataPermssionComponent implements OnInit {
this.isGrade = false; this.isGrade = false;
this.isLocation = false; this.isLocation = false;
this._permissionType = selectedPermissionType; this._permissionType = selectedPermissionType;
if (this._permissionType.value == 3) { if (this._permissionType.value == 3) { this.isDepartment = true; }
this.isDepartment = true;
/*this._departmentPicker.multiSelect = true;*/
this._departmentPicker.checkChildren = false;
}
else if (this._permissionType.value == 1) { this.isCategory = true; } else if (this._permissionType.value == 1) { this.isCategory = true; }
else if (this._permissionType.value == 4) { this.isLocation = true; } else if (this._permissionType.value == 4) { this.isLocation = true; }
else if (this._permissionType.value == 2) { this.isGrade = true; } else if (this._permissionType.value == 2) { this.isGrade = true; }
} }
onUserChange(selectedUserID: any): void { onUserChange(selectedUserID: any): void {
if (selectedUserID.id != null) { if(selectedUserID.id != null){
this._selectedUser = selectedUserID; this._selectedUser = selectedUserID;
this._userID = this._selectedUser.id; this._userID = this._selectedUser.id;
@ -120,7 +116,7 @@ export class DataPermssionComponent implements OnInit {
this.apiservice.selectedMenuName = 'User Data Permission'; this.apiservice.selectedMenuName = 'User Data Permission';
this._categoryPicker = new DynamicPicker(EnumDynamicpickerType.Category, false); this._categoryPicker = new DynamicPicker(EnumDynamicpickerType.Category, false);
this._departmentPicker = new DynamicPicker(EnumDynamicpickerType.Department, true); this._departmentPicker = new DynamicPicker(EnumDynamicpickerType.Department, false);
this._gradePicker = new DynamicPicker(EnumDynamicpickerType.Grade, false); this._gradePicker = new DynamicPicker(EnumDynamicpickerType.Grade, false);
this._locationPicker = new DynamicPicker(EnumDynamicpickerType.Location, false); this._locationPicker = new DynamicPicker(EnumDynamicpickerType.Location, false);
this.GetPayroll(); this.GetPayroll();
@ -167,83 +163,39 @@ export class DataPermssionComponent implements OnInit {
return; return;
} }
var referenceid: number = 0;
if (this._permissionType.value == 3) { if (this._permissionType.value == 3) { referenceid = this._departmentPicker.selectedID; }
// referenceid = this._departmentPicker.selectedID; else if (this._permissionType.value == 1) { referenceid = this._categoryPicker.selectedID; }
if (this._departmentPicker != undefined) { else if (this._permissionType.value == 4) { referenceid = this._locationPicker.selectedID; }
else if (this._permissionType.value == 2) { referenceid = this._gradePicker.selectedID; }
if (this._departmentPicker.selectedIDs.length <= 0) { if (referenceid == 0) {
this.notificationService.showWarning("Please select a Departemnt"); this.notificationService.showError("Please a Permission item");
return; return;
}
debugger;
// const data = [];
let datapermissions: DataPermission[] = [];
this._departmentPicker.selectedIDs.forEach(selectedID => {
// let item = {
// userID: this._selectedUser.id,
// payrollTypeID: this._selectedPayroll,
// permissionTypeID: this._permissionType.value,
// refitemid: selectedID,
// permissionStatus: 2
// };
// data.push(item);
let datapermission: DataPermission = new DataPermission();
datapermission.userID = this._selectedUser.id;
datapermission.payrollTypeID = this._selectedPayroll;
datapermission.permissionType = this._permissionType.value;
datapermission.referenceID = selectedID;
datapermission.permissionStatus = EnumMenuPermissionStatus.Added;
datapermissions.push(datapermission);
});
this.loadingPanel.ShowLoadingPanel = true;
this.userService.addPermissions(datapermissions).subscribe(
(resp) => {
this.notificationService.showSuccess("Added permission successfully.");
this.loadGridView();
this.loadingPanel.ShowLoadingPanel = false;
},
(x) => {
this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showError(x.error);
}
);
}
} }
else { const data = {
var referenceid: number = 0; userID: this._selectedUser.id,
if (this._permissionType.value == 1) { referenceid = this._categoryPicker.selectedID; } payrollTypeID: this._selectedPayroll,
else if (this._permissionType.value == 4) { referenceid = this._locationPicker.selectedID; } permissionTypeID: this._permissionType.value,
else if (this._permissionType.value == 2) { referenceid = this._gradePicker.selectedID; } refitemid: referenceid,
permissionStatus: 2
};
this.loadingPanel.ShowLoadingPanel = true;
this.userService.addPermission(data).subscribe(
(resp) => {
this.notificationService.showSuccess("Added permission successfully.");
this.loadGridView();
},
(x) => {
this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showSuccess(x.error);
},
() => {
this.loadingPanel.ShowLoadingPanel = false;
if (referenceid == 0) { },
this.notificationService.showWarning("Please select a Permission item"); );
return;
}
const data = {
userID: this._selectedUser.id,
payrollTypeID: this._selectedPayroll,
permissionTypeID: this._permissionType.value,
refitemid: referenceid,
permissionStatus: 2
};
this.loadingPanel.ShowLoadingPanel = true;
this.userService.addPermission(data).subscribe(
(resp) => {
this.notificationService.showSuccess("Added permission successfully.");
this.loadGridView();
},
(x) => {
this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showError(x.error);
},
() => {
this.loadingPanel.ShowLoadingPanel = false;
},
);
}
} }
@ -259,7 +211,7 @@ export class DataPermssionComponent implements OnInit {
}, },
() => { () => {
this.notificationService.showSuccess("Data deleted successfully."); this.notificationService.showSuccess("data deleted successfully.");
this.loadGridView(); this.loadGridView();
}); });
} }

View File

@ -35,8 +35,6 @@ import { TextBoxModule } from "@progress/kendo-angular-inputs";
import { LabelModule } from "@progress/kendo-angular-label"; import { LabelModule } from "@progress/kendo-angular-label";
import { FloatingLabelModule } from "@progress/kendo-angular-label"; import { FloatingLabelModule } from "@progress/kendo-angular-label";
import { IconsModule } from "@progress/kendo-angular-icons"; import { IconsModule } from "@progress/kendo-angular-icons";
import { UploadModule } from '@progress/kendo-angular-upload';
import { ButtonsModule } from '@progress/kendo-angular-buttons';
import { ReactiveFormsModule, FormsModule } from '@angular/forms'; import { ReactiveFormsModule, FormsModule } from '@angular/forms';
import { TabViewModule } from 'primeng/tabview'; import { TabViewModule } from 'primeng/tabview';
@ -131,9 +129,7 @@ import { HallOfFameUploaderComponent } from './hall-of-fame-uploader/hall-of-fam
IconsModule, IconsModule,
LabelModule, LabelModule,
PanelModule, PanelModule,
CardManagemnetModule, CardManagemnetModule
UploadModule,
ButtonsModule
], ],
declarations: [ declarations: [
NationalityComponent, NationalityComponent,

View File

@ -38,9 +38,9 @@
<kendo-dropdownlist [(ngModel)]="selectedInstitutionID" [data]="institutions" <kendo-dropdownlist [(ngModel)]="selectedInstitutionID" [data]="institutions"
[defaultItem]="{ name: 'Select institution/Board', id: null }" [textField]="'name'" [defaultItem]="{ name: 'Select institution/Board', id: null }" [textField]="'name'"
[valueField]="'id'" [valuePrimitive]="true" class="form-control form-control-sm input-sm" [valueField]="'id'" [valuePrimitive]="true" class="form-control form-control-sm input-sm"
[filterable]="true" (filterChange)="handleFilterInstitution($event)"
(valueChange)="selectInstitutionEvent($event)" formControlName="institutionPicker" (valueChange)="selectInstitutionEvent($event)" formControlName="institutionPicker"
style="width:100%;"> style="width:100%;">
<!-- [filterable]="true" (filterChange)="handleFilterInstitution($event)" -->
<!-- [disabled]="(selectedEducationTypeID == undefined ||selectedEducationTypeID == null) || (selectedEducationLevelID == undefined || selectedEducationLevelID == null)" --> <!-- [disabled]="(selectedEducationTypeID == undefined ||selectedEducationTypeID == null) || (selectedEducationLevelID == undefined || selectedEducationLevelID == null)" -->
</kendo-dropdownlist> </kendo-dropdownlist>
</div> </div>
@ -52,8 +52,8 @@
<kendo-dropdownlist class="form-control form-control-sm" id="subject" [data]="educationDiscipline" <kendo-dropdownlist class="form-control form-control-sm" id="subject" [data]="educationDiscipline"
[defaultItem]="{ description: 'Select a discipline', id: null }" [textField]="'description'" [defaultItem]="{ description: 'Select a discipline', id: null }" [textField]="'description'"
[valueField]="'id'" [valuePrimitive]="true" [(ngModel)]="selectedDisciplineID" [valueField]="'id'" [valuePrimitive]="true" [(ngModel)]="selectedDisciplineID"
formControlName="disciplinePicker" style="width:100%"> [filterable]="true" (filterChange)="handleFilter($event)" formControlName="disciplinePicker"
<!-- [filterable]="true" (filterChange)="handleFilter($event)" --> style="width:100%">
<!-- [disabled]="isEditActive" <!-- [disabled]="isEditActive"
[disabled]="selectedEducationLevelID == undefined || selectedEducationLevelID == null" --> [disabled]="selectedEducationLevelID == undefined || selectedEducationLevelID == null" -->
</kendo-dropdownlist> </kendo-dropdownlist>

View File

@ -230,8 +230,8 @@ export class AcademicEntryComponent implements OnInit {
}, },
() => { () => {
this.educationLevels = this.alleducationLevels; this.educationLevels = this.alleducationLevels;
this.educationDiscipline = this.alleducationDiscipline.sort((a, b) => a.description.localeCompare(b.description)); this.educationDiscipline = this.alleducationDiscipline;
this.institutions = this.allinstitutions.sort((a, b) => a.name.localeCompare(b.name)); this.institutions = this.allinstitutions;
this.resultTypes = this.allresultTypes; this.resultTypes = this.allresultTypes;
this.loadingPanelService.ShowLoadingPanel = false; this.loadingPanelService.ShowLoadingPanel = false;

View File

@ -45,9 +45,8 @@ export class ContactComponent implements OnInit {
this.basicService.getAllDistricts().subscribe((resp) => { this.basicService.getAllDistricts().subscribe((resp) => {
this.districts = resp; this.districts = resp;
}, },
(err: any) => { () => {
this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showError(err.error);
}, },
() => { () => {
@ -59,9 +58,8 @@ export class ContactComponent implements OnInit {
this.basicService.getAllThanas(value).subscribe((resp) => { this.basicService.getAllThanas(value).subscribe((resp) => {
this.permanentThanas = resp; this.permanentThanas = resp;
}, },
(err: any) => { () => {
this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showError(err.error);
}, },
() => { () => {
@ -73,9 +71,8 @@ export class ContactComponent implements OnInit {
this.basicService.getAllThanas(value).subscribe((resp) => { this.basicService.getAllThanas(value).subscribe((resp) => {
this.presentThanas = resp; this.presentThanas = resp;
}, },
(err: any) => { () => {
this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showError(err.error);
}, },
() => { () => {
@ -138,8 +135,7 @@ export class ContactComponent implements OnInit {
} }
}, },
(err: any) => { (err: any) => {
this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showError(err.error);
}, },
() => { () => {
if (this.employeeService.hrEmployee.id != undefined && this.employeeService.hrEmployee.id != 0) { if (this.employeeService.hrEmployee.id != undefined && this.employeeService.hrEmployee.id != 0) {
@ -151,9 +147,7 @@ export class ContactComponent implements OnInit {
this.basicService.getAllRelations().subscribe((resp) => { this.basicService.getAllRelations().subscribe((resp) => {
this.relations = resp; this.relations = resp;
}, },
(err) => { () => {
this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showError(err.error);
}, },
() => { () => {
@ -192,9 +186,8 @@ export class ContactComponent implements OnInit {
(resp) => { (resp) => {
this.contact.id = resp; this.contact.id = resp;
}, },
(err) => { () => {
this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showError(err.error);
}, },
() => { () => {
this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
@ -229,9 +222,8 @@ export class ContactComponent implements OnInit {
this.presentThanas = resp; this.presentThanas = resp;
this.contact.presentThanaID = this.contact.permanentThanaID; this.contact.presentThanaID = this.contact.permanentThanaID;
}, },
(err) => { () => {
this.loadingPanel.ShowLoadingPanel = false;
this.notificationService.showError(err.error);
}, },
() => { () => {

View File

@ -25,17 +25,14 @@
</div> </div>
</div> </div>
<p-tabView #tabView <p-tabView [scrollable]="true">
[(activeIndex)]="activeIndex"
(onChange)="onTabChange($event, tabView)"
[scrollable]="true">
<p-tabPanel header="General" leftIcon="pi pi-user"> <p-tabPanel header="General" leftIcon="pi pi-user">
<app-general #general [isActive]="!newEmployee" [employeeNo]="this.employeeService.hrEmployee.employeeNo" <app-general [isActive]="!newEmployee" [employeeNo]="this.employeeService.hrEmployee.employeeNo"
(defaultNationalityHandler)="defaultNationalityHandler($event)" (defaultNationalityHandler)="defaultNationalityHandler($event)"
(defaultEmployeeTypeHandler)="defaultEmployeeTypeHandler($event)"></app-general> (defaultEmployeeTypeHandler)="defaultEmployeeTypeHandler($event)"></app-general>
</p-tabPanel> </p-tabPanel>
<p-tabPanel header="Contacts" leftIcon="pi pi-phone"> <p-tabPanel header="Contacts" leftIcon="pi pi-phone">
<app-contact #contact (saveContact)="saveContact($event)"></app-contact> <app-contact (saveContact)="saveContact($event)"></app-contact>
</p-tabPanel> </p-tabPanel>
<!-- <p-tabPanel header="Bangla" leftIcon="pi pi-star"> <!-- <p-tabPanel header="Bangla" leftIcon="pi pi-star">
<app-bangla></app-bangla> <app-bangla></app-bangla>

View File

@ -1,4 +1,4 @@
import { Component, OnInit, ViewChild } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, Validators } from '@angular/forms'; import { FormBuilder, FormGroup, Validators } from '@angular/forms';
import { EmployeeServices } from '../../_services/employee/employee.service'; import { EmployeeServices } from '../../_services/employee/employee.service';
import { empFileuploads, HrEmployee } from '../../_models/HREmployee/hrEmployee'; import { empFileuploads, HrEmployee } from '../../_models/HREmployee/hrEmployee';
@ -13,8 +13,6 @@ import { HRMNotificationService } from '../../app.notification.service';
import { DomSanitizer } from '@angular/platform-browser'; import { DomSanitizer } from '@angular/platform-browser';
import { Nationality } from '../nationality/nationality'; import { Nationality } from '../nationality/nationality';
import { Category } from 'src/app/_models/Basic/category'; import { Category } from 'src/app/_models/Basic/category';
import { GeneralComponent } from './general/general.component';
import { ContactComponent } from './contact/contact.component';
@Component({ @Component({
selector: 'app-employee-profile', selector: 'app-employee-profile',
@ -36,15 +34,6 @@ export class EmployeeProfileComponent implements OnInit {
isDisplay = false; isDisplay = false;
defaultNationality: Nationality; defaultNationality: Nationality;
defaultEmployeeType: Category; defaultEmployeeType: Category;
activeIndex: number = 0;
previousIndex: number = 0; // 👈 track the previous tab index manually
@ViewChild('general') generalComponent!: GeneralComponent;
@ViewChild('contact') contactComponent!: ContactComponent;
newEmpSaved: boolean = false;
newEmpContactSaved: boolean = false;
constructor(private fb: FormBuilder, constructor(private fb: FormBuilder,
public employeeService: EmployeeServices, public employeeService: EmployeeServices,
public basicService: BasicService, public basicService: BasicService,
@ -200,10 +189,8 @@ export class EmployeeProfileComponent implements OnInit {
checkValue(value: any) { checkValue(value: any) {
debugger
if (value === true) { if (value === true) {
this.hrEmployeeProfile = new HrEmployee();
this.refreshEmployee(new HrEmployee()); this.refreshEmployee(new HrEmployee());
// this.loadingPanel.ShowLoadingPanel = true; // this.loadingPanel.ShowLoadingPanel = true;
@ -222,7 +209,6 @@ export class EmployeeProfileComponent implements OnInit {
} }
else { else {
this.employeeService.hrEmployee.employeeNo = undefined; this.employeeService.hrEmployee.employeeNo = undefined;
this.employeeService.Employee_Get_Completed.next(new HrEmployee());
} }
} }
@ -339,85 +325,5 @@ export class EmployeeProfileComponent implements OnInit {
defaultEmployeeTypeHandler(dataItem: Category) { defaultEmployeeTypeHandler(dataItem: Category) {
this.defaultEmployeeType = dataItem; this.defaultEmployeeType = dataItem;
} }
onTabChange(event: any, tabView: any) {
const nextIndex = event.index;
const currentIndex = this.previousIndex; // 👈 previous tab before switch
const currentTab = tabView.tabs[currentIndex];
const nextTab = tabView.tabs[nextIndex];
debugger
if (this.newEmployee) {
if (currentTab.header.toLowerCase() == 'general' && !this.newEmpSaved) {
setTimeout(() => {
if (this.generalComponent != undefined && this.generalComponent.personalInfo.valid === false && this.generalComponent.hrEmployee.employeeNo === '') {
this.notificationService.showError('Required Fields Can\'t Be Empty');
this.activeIndex = currentIndex;
this.previousIndex = currentIndex;
return;
}
this.generalComponent.SavePersonalInfo();
this.newEmpSaved = true;
return;
});
}
if (currentTab.header.toLowerCase() == 'contacts' && !this.newEmpContactSaved) {
setTimeout(() => {
if (!this.contactComponent.contactForm.valid) {
this.notificationService.showWarning('Must Entry field can\'t be Empty');
this.activeIndex = currentIndex;
this.previousIndex = currentIndex;
return;
}
this.contactComponent.SaveContact();
this.newEmpContactSaved = true;
return;
});
}
}
if (currentTab.header.toLowerCase() == 'general') {
if (this.generalComponent != undefined && this.contactComponent != undefined) {
if (this.generalComponent.contact.id == 0) {
this.contactComponent.contact.id = this.generalComponent.contact.id;
}
if (this.generalComponent.contact.presentPOInBangla != null && this.generalComponent.contact.presentPOInBangla != "") {
this.contactComponent.contact.presentPOInBangla = this.generalComponent.contact.presentPOInBangla;
}
if (this.generalComponent.contact.presentAddressInBangla != null && this.generalComponent.contact.presentAddressInBangla != "") {
this.contactComponent.contact.presentAddressInBangla = this.generalComponent.contact.presentAddressInBangla;
}
if (this.generalComponent.contact.parmanentPOInBangla != null && this.generalComponent.contact.parmanentPOInBangla != "") {
this.contactComponent.contact.parmanentPOInBangla = this.generalComponent.contact.parmanentPOInBangla;
}
if (this.generalComponent.contact.permanentAddressInBangla != null && this.generalComponent.contact.permanentAddressInBangla != "") {
this.contactComponent.contact.permanentAddressInBangla = this.generalComponent.contact.permanentAddressInBangla;
}
}
}
if (nextTab.header.toLowerCase() == 'attachments') {
debugger;
this.employeeService.getEmployeeAttachments(this.selectedEmployee != undefined ? this.selectedEmployee.employeeID : this.employeeService.hrEmployee.id)
.subscribe(
(resp) => {
this.attachments = resp;
},
(x) => {
console.log(x);
this.loadingPanel.ShowLoadingPanel = false;
},
() => {
this.loadingPanel.ShowLoadingPanel = false;
this.hrEmployeeProfile.attachments = this.attachments;
}
);
}
// ✅ Save current as previous after successful switch
this.previousIndex = nextIndex;
}
} }

View File

@ -12,13 +12,13 @@
required style="width:100%"> required style="width:100%">
</div> </div>
<!-- <div class="p-col-12 p-md-6 p-lg-2" > <div class="p-col-12 p-md-6 p-lg-2" >
<label for="txtSpouseNameInBangla">Name (Bn)</label> <label for="txtSpouseNameInBangla">Name (Bn)</label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-4" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-4" style="margin: auto;">
<input id="txtSpouseNameInBangla" formControlName="banglaname" class="bangla-font" <input id="txtSpouseNameInBangla" formControlName="banglaname" class="bangla-font"
[(ngModel)]="spouse.nameinbangla" type="text" pInputText style="width:100%"> [(ngModel)]="spouse.nameinbangla" type="text" pInputText style="width:100%">
</div> --> </div>
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
<label>Level of Education</label> <label>Level of Education</label>
@ -57,7 +57,6 @@
<kendo-datepicker [(ngModel)]="spouse.marriageDate" [format]="'dd-MMM-yyyy'" <kendo-datepicker [(ngModel)]="spouse.marriageDate" [format]="'dd-MMM-yyyy'"
formControlName="marriageDate" id="dtpMarriageDate" style="width:100%"></kendo-datepicker> formControlName="marriageDate" id="dtpMarriageDate" style="width:100%"></kendo-datepicker>
</div> </div>
<div class="p-lg-6"></div>
<!-- <div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;"> <!-- <div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
<label>Insurance Id</label> <label>Insurance Id</label>

View File

@ -10,35 +10,23 @@
<div class="p-col-12"> <div class="p-col-12">
<div style="position: relative; display: inline-block;"> <div style="position: relative; display: inline-block;">
<img id="imgProfilePicture" [src]="employeePhoto" <img id="imgProfilePicture" [src]="employeePhoto"
style="height: 180px; width: 180px; border-radius: 50%; border: 1px solid #52527A;" /> style="height: 180px; width: 180px; border-radius: 50%; border: 1px solid #52527A;" />
<!-- <button class="editImage" (click)="fileInput.click()" <button class="editImage" (click)="fileInput.click()"
style="position: absolute; bottom: 18px; right: 18px;"> style="position: absolute; bottom: 18px; right: 18px;">
<span class="editIcon">&#9998;</span> <span class="editIcon">&#9998;</span>
</button> -->
<button class="editImage" (click)="triggerUploadClick()"
style="position: absolute; bottom: 18px; right: 18px;">
<span class="editIcon">&#9998;</span>
</button> </button>
</div> </div>
<div style="position: relative; display: inline-block;"> <div style="position: relative; display: inline-block;">
<img id="imgEmpSigneture" [src]="empSigneture" <img id="imgEmpSigneture" [src]="empSigneture"
style="height: 60px; width: 180px; border-radius: 10px; border: 1px solid #52527A;" /> style="height: 60px; width: 180px; border-radius: 10px; border: 1px solid #52527A;" />
</div> </div>
</div> </div>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-12" align="center"> <div class="p-col-12 p-md-12 p-lg-12" align="center">
<!-- <input formControlName="empPhoto" id="fupEmpPhoto" #fileInput <input formControlName="empPhoto" id="fupEmpPhoto" #fileInput
(change)="selectProfilePhoto($event)" type="file" style="display: none;"> --> (change)="selectFile($event)" type="file" style="display: none;">
<!-- <kendo-upload #fileInput formControlName="empPhoto" id="fupEmpPhoto"
[autoUpload]="false" [multiple]="false" [saveUrl]="'noop'" [removeUrl]="'noop'"
(select)="selectProfilePhoto($event)" style="width: 100%;display: none;">
</kendo-upload> -->
<kendo-upload #uploadPhoto formControlName="empPhoto" id="fupEmpPhoto" [autoUpload]="false"
[multiple]="false" [saveUrl]="'noop'" [removeUrl]="'noop'"
(select)="selectProfilePhoto($event)" style="width: 100%; display: none;">
</kendo-upload>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-12" style="height: 76px;"> <div class="p-col-12 p-md-12 p-lg-12" style="height: 76px;">
@ -191,7 +179,8 @@
</div> </div>
<div class="p-col-12 p-lg-12" align="right" style="margin-top: 20px;"> <div class="p-col-12 p-lg-12" align="right" style="margin-top: 20px;">
<button class="k-button k-primary" kendoButton icon="save" (click)="SavePersonalInfo()"> <button class="k-button k-primary" kendoButton icon="save"
(click)="SavePersonalInfo()">
<!-- (click)="SavePersonalInfo()"> --> <!-- (click)="SavePersonalInfo()"> -->
Save Save
</button> </button>
@ -218,16 +207,11 @@
</div> </div>
<div class="p-col-12 p-md-12 p-lg-8"> <div class="p-col-12 p-md-12 p-lg-8">
<input [(ngModel)]="hrEmployee.drivingLicenceNo" formControlName="drivingLicenseNo" <input [(ngModel)]="hrEmployee.drivingLicenceNo" formControlName="drivingLicenseNo"
id="txtDrivingLicenseNo" pInputText style="width: 100%" type="text" id="txtDrivingLicenseNo" pInputText style="width: 84%" type="text"
[readonly]="!active"> [readonly]="!active">
<!-- style="width: 84%" --> <button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
<!-- <button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
style="width: 15.5%; vertical-align: bottom; padding: 16px;" [disabled]="!active" style="width: 15.5%; vertical-align: bottom; padding: 16px;" [disabled]="!active"
(click)="popUpAttachment('DLN')"></button> --> (click)="popUpAttachment('DLN')"></button>
<kendo-upload #uploadDL [autoUpload]="false" [multiple]="false" [saveUrl]="'noop'"
[removeUrl]="'noop'" (select)="selectFileDrivingLicense($event)"
style="width: 100%;">
</kendo-upload>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-4"> <div class="p-col-12 p-md-12 p-lg-4">
<label for="txtPassportNo">Height in centemeter</label> <label for="txtPassportNo">Height in centemeter</label>
@ -255,15 +239,10 @@
<label for="empSignaturePhotoId">Signature</label> <label for="empSignaturePhotoId">Signature</label>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-8"> <div class="p-col-12 p-md-12 p-lg-8">
<input id="empSignaturePhotoId" pInputText style="width:100%" type="text" <input id="empSignaturePhotoId" pInputText style="width:84%" type="text" [readonly]="true">
[readonly]="true"> <button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
<!-- style="width: 84%" -->
<!-- <button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
style="width: 15.5%; vertical-align: bottom; padding: 16px;" [disabled]="!active" style="width: 15.5%; vertical-align: bottom; padding: 16px;" [disabled]="!active"
(click)="popUpAttachment('Signature')"></button> --> (click)="popUpAttachment('Signature')"></button>
<kendo-upload #uploadSig [autoUpload]="false" [multiple]="false" [saveUrl]="'noop'"
[removeUrl]="'noop'" (select)="selectSignature($event)" style="width: 100%;">
</kendo-upload>
</div> </div>
</div> </div>
@ -277,44 +256,22 @@
</div> </div>
<div class="p-col-12 p-md-12 p-lg-8"> <div class="p-col-12 p-md-12 p-lg-8">
<input [(ngModel)]="hrEmployee.nationalID" formControlName="nationalId" <input [(ngModel)]="hrEmployee.nationalID" formControlName="nationalId"
id="txtNationalId" pInputText type="text" style="width:100%"> id="txtNationalId" pInputText style="width:84%" type="text">
<!-- style="width:84%" --> <!-- [readonly]="!active" -->
<button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
<!-- [readonly]="!active" -->
<!-- <button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
style="width: 15.5%; vertical-align: bottom; padding: 16px;" style="width: 15.5%; vertical-align: bottom; padding: 16px;"
(click)="popUpAttachment('NID')" [disabled]="!active"></button> --> (click)="popUpAttachment('NID')"></button>
<!-- [disabled]="!active" -->
<!-- <input [(ngModel)]="NIDFiles" (change)="selectFileNationalId($event)" type="file" pInputText
style="width: 100%;padding: 5px;margin:5px 0;"> -->
<!-- <kendo-upload [saveUrl]="uploadSaveUrl" [removeUrl]="uploadRemoveUrl">
</kendo-upload> -->
<!-- <kendo-upload
[autoUpload]="false"
[saveUrl]="'noop'"
[removeUrl]="'noop'"
(select)="onFileSelect($event)">
</kendo-upload> -->
<kendo-upload #uploadNID [autoUpload]="false" [multiple]="false" [saveUrl]="'noop'"
[removeUrl]="'noop'" (select)="selectFileNationalId($event)" style="width: 100%;">
</kendo-upload>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-4"> <div class="p-col-12 p-md-12 p-lg-4">
<label for="txtPassportNo">Passport No</label> <label for="txtPassportNo">Passport No</label>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-8"> <div class="p-col-12 p-md-12 p-lg-8">
<input [(ngModel)]="hrEmployee.passportNo" formControlName="passportNo" <input [(ngModel)]="hrEmployee.passportNo" formControlName="passportNo"
id="txtPassportNo" pInputText style="width:100%;" type="text" [readonly]="!active"> id="txtPassportNo" pInputText style="width:84%;" type="text" [readonly]="!active">
<!-- style="width:84%;" --> <button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
<!-- <button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
style="width: 15.5%; vertical-align: bottom; padding: 16px;" [disabled]="!active" style="width: 15.5%; vertical-align: bottom; padding: 16px;" [disabled]="!active"
(click)="popUpAttachment('PNo')"></button> --> (click)="popUpAttachment('PNo')"></button>
<kendo-upload #uploadPassPort [autoUpload]="false" [multiple]="false" [saveUrl]="'noop'"
[removeUrl]="'noop'" (select)="selectPassport($event)" style="width: 100%;">
</kendo-upload>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-4"> <div class="p-col-12 p-md-12 p-lg-4">
<label for="txtSpouseNameBangla">Spouse Name Bangla</label> <label for="txtSpouseNameBangla">Spouse Name Bangla</label>
@ -342,8 +299,7 @@
<label for="">Bangla Information</label> <label for="">Bangla Information</label>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-8"> <div class="p-col-12 p-md-12 p-lg-8">
<button class="k-button k-primary" style="width: 100%;" kendoButton icon="info" <button class="k-button k-primary" style="width: 100%;" kendoButton icon="info" (click)="DisplayBanglaInformation()">
(click)="DisplayBanglaInformation()">
View & Update View & Update
</button> </button>
</div> </div>
@ -360,15 +316,10 @@
</div> </div>
<div class="p-col-12 p-md-12 p-lg-8"> <div class="p-col-12 p-md-12 p-lg-8">
<input [(ngModel)]="hrEmployee.tinNo" formControlName="tin" id="txtTin" pInputText <input [(ngModel)]="hrEmployee.tinNo" formControlName="tin" id="txtTin" pInputText
type="text" [readonly]="!active" style="width:100%"> style="width:84%" type="text" [readonly]="!active">
<!-- style="width:84%" --> <button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
<!-- <button class="k-button k-primary" kendoButton icon="k-i-attachment-45 k-i-clip-45"
style="width: 15.5%; vertical-align: bottom; padding: 16px;" [disabled]="!active" style="width: 15.5%; vertical-align: bottom; padding: 16px;" [disabled]="!active"
(click)="popUpAttachment('TIN')"></button> --> (click)="popUpAttachment('TIN')"></button>
<kendo-upload #uploadTIN [autoUpload]="false" [multiple]="false" [saveUrl]="'noop'"
[removeUrl]="'noop'" (select)="selectFileTin($event)" style="width: 100%;">
</kendo-upload>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-4"> <div class="p-col-12 p-md-12 p-lg-4">
<label for="dtpPassportIssueDate">Passport Issue Date</label> <label for="dtpPassportIssueDate">Passport Issue Date</label>
@ -409,15 +360,16 @@
formControlName="motherOccupation" id="txtreligion"> formControlName="motherOccupation" id="txtreligion">
</kendo-dropdownlist> </kendo-dropdownlist>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-4"></div> <div class="p-col-12 p-md-12 p-lg-4" ></div>
<div class="p-col-12 p-md-12 p-lg-4" style="margin-top: 11px;"> <div class="p-col-12 p-md-12 p-lg-4" style="margin-top: 11px;" >
<button class="k-button k-primary" kendoButton icon="add" (click)="AddAccessCard()" <button class="k-button k-primary" kendoButton icon="add"
[disabled]="!active"> (click)="AddAccessCard()">
Add Access Card Add Access Card
</button> </button>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-4" style="margin-top: 11px;" align="right"> <div class="p-col-12 p-md-12 p-lg-4" style="margin-top: 11px;" align="right">
<button class="k-button k-primary" kendoButton icon="save" (click)="SavePersonalInfo()"> <button class="k-button k-primary" kendoButton icon="save"
(click)="SavePersonalInfo()">
<!-- (click)="SavePersonalInfo()"> --> <!-- (click)="SavePersonalInfo()"> -->
Save Save
</button> </button>
@ -511,8 +463,8 @@
</p-tabView> </p-tabView>
<kendo-dialog class="blur-background" *ngIf="nidPopUp||tinPopUp||dlnoPopUp||passnoPopUp||signaturePopUp" <kendo-dialog class="blur-background" *ngIf="nidPopUp||tinPopUp||dlnoPopUp||passnoPopUp||signaturePopUp" (close)="close()"
(close)="close()" [width]="450"> [width]="450">
<app-loading-panel></app-loading-panel> <app-loading-panel></app-loading-panel>
<kendo-dialog-titlebar> <kendo-dialog-titlebar>
<div style="font-size: 18px; line-height: 1.3em;"><span class=""></span>Attcahment</div> <div style="font-size: 18px; line-height: 1.3em;"><span class=""></span>Attcahment</div>
@ -555,7 +507,7 @@
<label for="txtLastName">Name</label> <label for="txtLastName">Name</label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;">
<input [(ngModel)]="hrEmployee.banglaName" id="txtBanglaName" class="bangla-font" <input [(ngModel)]="hrEmployee.banglaName" id="txtBanglaName" class="bangla-font"
formControlName="banglaName" pInputText style="width:100%" type="text"> formControlName="banglaName" pInputText style="width:100%" type="text">
</div> </div>
@ -563,23 +515,23 @@
<label for="txtSpouseNameBangla">Spouse Name</label> <label for="txtSpouseNameBangla">Spouse Name</label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;">
<input class="bangla-font" formControlName="spouseNameBangla" [(ngModel)]="hrEmployee.spouseNameBangla" <input class="bangla-font" formControlName="spouseNameBangla"
pInputText style="width:100%" type="text"> [(ngModel)]="hrEmployee.spouseNameBangla" pInputText style="width:100%" type="text">
</div> </div>
<div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;">
<label for="txtFatherNameBangla">Father's Name</label> <label for="txtFatherNameBangla">Father's Name</label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;">
<input class="bangla-font" formControlName="fatherNameBangla" [(ngModel)]="hrEmployee.fatherNameBangla" <input class="bangla-font" formControlName="fatherNameBangla"
pInputText style="width:100%" type="text"> [(ngModel)]="hrEmployee.fatherNameBangla" pInputText style="width:100%" type="text">
</div> </div>
<div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;">
<label for="txtMotherNameBangla">Mother's Name</label> <label for="txtMotherNameBangla">Mother's Name</label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-3" style="margin: auto;">
<input formControlName="motherNameBangla" [(ngModel)]="hrEmployee.motherNameBangla" class="bangla-font" <input formControlName="motherNameBangla" [(ngModel)]="hrEmployee.motherNameBangla"
pInputText style="width:100%" type="text"> class="bangla-font" pInputText style="width:100%" type="text">
</div> </div>
<!-- <div class="p-col-12 p-md-12 p-lg-12" style="margin: auto;" align="right"> <!-- <div class="p-col-12 p-md-12 p-lg-12" style="margin: auto;" align="right">
@ -603,7 +555,7 @@
<label for="txtPermanentAddress"> Permanent Address </label> <label for="txtPermanentAddress"> Permanent Address </label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-6" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-6" style="margin: auto;">
<input id="txtPermanentAddressBangla" formControlName="permanentAddressInBangla" <input id="txtPermanentAddressBangla" formControlName="permanentAddressInBangla"
class="bangla-font" [(ngModel)]="contact.permanentAddressInBangla" type="text" pInputText class="bangla-font" [(ngModel)]="contact.permanentAddressInBangla" type="text" pInputText
style="width:100%"> style="width:100%">
</div> </div>
@ -612,7 +564,7 @@
<label for="txtParmanentPOInBangla">Post Office Name </label> <label for="txtParmanentPOInBangla">Post Office Name </label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-6" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-6" style="margin: auto;">
<input class="bangla-font" id="txtParmanentPOInBangla" formControlName="parmanentPOInBangla" <input class="bangla-font" id="txtParmanentPOInBangla" formControlName="parmanentPOInBangla"
[(ngModel)]="contact.parmanentPOInBangla" type="text" pInputText style="width:100%"> [(ngModel)]="contact.parmanentPOInBangla" type="text" pInputText style="width:100%">
</div> </div>
</div> </div>
@ -628,7 +580,7 @@
<label for="txtPresentAddress"> Present Address</label> <label for="txtPresentAddress"> Present Address</label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-6" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-6" style="margin: auto;">
<input id="txtPresentAddressBangla" formControlName="presentAddressInBangla" class="bangla-font" <input id="txtPresentAddressBangla" formControlName="presentAddressInBangla" class="bangla-font"
[(ngModel)]="contact.presentAddressInBangla" type="text" pInputText style="width:100%"> [(ngModel)]="contact.presentAddressInBangla" type="text" pInputText style="width:100%">
</div> </div>
@ -636,7 +588,7 @@
<label for="txtPresentPOInBangla">Post Office Name</label> <label for="txtPresentPOInBangla">Post Office Name</label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-6" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-6" style="margin: auto;">
<input class="bangla-font" id="txtPresentPOInBangla" formControlName="presentPOInBangla" <input class="bangla-font" id="txtPresentPOInBangla" formControlName="presentPOInBangla"
[(ngModel)]="contact.presentPOInBangla" type="text" pInputText style="width:100%"> [(ngModel)]="contact.presentPOInBangla" type="text" pInputText style="width:100%">
</div> </div>
@ -644,9 +596,10 @@
</div> </div>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-12" style="margin: auto;" align="right"> <div class="p-col-12 p-md-12 p-lg-12" style="margin: auto;" align="right">
<button class="k-button k-primary" kendoButton icon="save" (click)="saveBanglaInfo()"> <button class="k-button k-primary" kendoButton icon="save"
Save (click)="SaveBanglaContactInformation()">
</button> Save
</button>
</div> </div>
</form> </form>
</kendo-dialog> </kendo-dialog>
@ -655,5 +608,5 @@
<kendo-dialog-titlebar> <kendo-dialog-titlebar>
Access Card Access Card
</kendo-dialog-titlebar> </kendo-dialog-titlebar>
<app-access-card-management [SetEmployee]="pickerEmployee"></app-access-card-management> <app-access-card-management [SetEmployee]="pickerEmployee" ></app-access-card-management>
</kendo-dialog> </kendo-dialog>

View File

@ -1,4 +1,4 @@
import { Component, ElementRef, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core'; import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
import { FormControl, FormGroup, Validators } from '@angular/forms'; import { FormControl, FormGroup, Validators } from '@angular/forms';
import { DataTransferService } from '../../../data.transfer.service'; import { DataTransferService } from '../../../data.transfer.service';
import { EmployeeServices } from '../../../_services/employee/employee.service'; import { EmployeeServices } from '../../../_services/employee/employee.service';
@ -33,9 +33,6 @@ import { Nationality } from '../../nationality/nationality';
import { EmpContact } from 'src/app/_models/HREmployee/empContact'; import { EmpContact } from 'src/app/_models/HREmployee/empContact';
import { Thana } from '../../thana/thana'; import { Thana } from '../../thana/thana';
import { CardManagemnetModule } from 'src/app/attendance/access-card-management/card-management.module'; import { CardManagemnetModule } from 'src/app/attendance/access-card-management/card-management.module';
import { Observable, EMPTY } from 'rxjs';
import { tap, finalize, catchError } from 'rxjs/operators';
import { FileInfo, UploadComponent } from '@progress/kendo-angular-upload';
@Component({ @Component({
selector: 'app-general', selector: 'app-general',
@ -56,13 +53,6 @@ import { FileInfo, UploadComponent } from '@progress/kendo-angular-upload';
border-radius: 5px; border-radius: 5px;
border: 1px solid #52527A; border: 1px solid #52527A;
} }
::ng-deep .k-upload .k-actions, .k-upload .k-action-buttons, .k-upload .k-columnmenu-actions {
display: none;
}
::ng-deep .k-upload .k-dropzone {
padding: 3px 3px;
}
`] `]
}) })
/* general component*/ /* general component*/
@ -71,21 +61,8 @@ export class GeneralComponent implements OnInit {
@Input() public set isActive(isActive: boolean) { @Input() public set isActive(isActive: boolean) {
this.active = isActive; this.active = isActive;
this.uploadDL.clearFiles();
this.uploadSig.clearFiles();
this.uploadNID.clearFiles();
this.uploadPassPort.clearFiles();
this.uploadTIN.clearFiles();
} }
@ViewChild('uploadDL') uploadDL: UploadComponent;
@ViewChild('uploadSig') uploadSig: UploadComponent;
@ViewChild('uploadNID') uploadNID: UploadComponent;
@ViewChild('uploadPassPort') uploadPassPort: UploadComponent;
@ViewChild('uploadTIN') uploadTIN: UploadComponent;
// @ViewChild('uploadPhoto') uploadPhoto: UploadComponent;
@ViewChild('uploadPhoto', { read: ElementRef }) uploadPhotoRef!: ElementRef;
active: boolean = false; active: boolean = false;
NIDFiles: any; NIDFiles: any;
@ -93,15 +70,9 @@ export class GeneralComponent implements OnInit {
DLfiles: any; DLfiles: any;
Passfiles: any; Passfiles: any;
Sigfiles: any; Sigfiles: any;
// selectedNidFiles: any; selectedNidFiles: any;
// selectedTinFiles?: FileList; selectedTinFiles?: FileList;
// selectedDlFiles: any; selectedDlFiles: any;
selectedNidFiles: File[] = [];
selectedTinFiles: File[] = [];
selectedDlFiles: File[] = [];
selectedPassportFiles: File[] = [];
selectedSignature: File[] = [];
selectedFiles: File[] = [];
departmentPicker: DynamicPicker; departmentPicker: DynamicPicker;
gradePicker: DynamicPicker; gradePicker: DynamicPicker;
religionPicker: DynamicPicker; religionPicker: DynamicPicker;
@ -130,7 +101,7 @@ export class GeneralComponent implements OnInit {
employeeTypes: Category[]; employeeTypes: Category[];
religions: Religion[]; religions: Religion[];
public userRoleselectableSettings: SelectableSettings; public userRoleselectableSettings: SelectableSettings;
// selectedFiles?: FileList; selectedFiles?: FileList;
currentFile?: File; currentFile?: File;
employeePhoto: any; employeePhoto: any;
empSigneture: any; empSigneture: any;
@ -145,7 +116,7 @@ export class GeneralComponent implements OnInit {
nationalities: Nationality[]; nationalities: Nationality[];
defaultNationality: Nationality; defaultNationality: Nationality;
defaultEmployeeType: Category; defaultEmployeeType: Category;
nameBangla: string = ''; nameBangla: string = 'asasas';
defaultPhoto = "assets/photos/profile-default.jpg"; defaultPhoto = "assets/photos/profile-default.jpg";
photoPath = "Documents/EMPPHOTO"; photoPath = "Documents/EMPPHOTO";
isDisplay: boolean = false; isDisplay: boolean = false;
@ -434,7 +405,7 @@ export class GeneralComponent implements OnInit {
this.empSigneture = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp}`); this.empSigneture = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp}`);
} else { } else {
// this.employeePhoto = this.defaultPhoto; this.employeePhoto = this.defaultPhoto;
} }
}, },
@ -479,7 +450,6 @@ export class GeneralComponent implements OnInit {
// } // }
// } // }
SavePersonalInfo() { SavePersonalInfo() {
debugger
// console.log(this.hrEmployee.banglaName); // console.log(this.hrEmployee.banglaName);
// return; // return;
if (this.personalInfo.valid === false && this.hrEmployee.employeeNo === '') { if (this.personalInfo.valid === false && this.hrEmployee.employeeNo === '') {
@ -503,8 +473,7 @@ export class GeneralComponent implements OnInit {
this.hrEmployee.id = resp.id; this.hrEmployee.id = resp.id;
if (this.active == false) { if (this.active == false) {
this.hrEmployee.employeeNo = resp.employeeNo; this.hrEmployee.employeeNo = resp.employeeNo;
// this.employeeService.hrEmployee.employeeNo = resp.employeeNo; this.employeeService.hrEmployee.employeeNo = resp.employeeNo;
this.employeeService.hrEmployee = resp;
} }
} }
}, },
@ -526,45 +495,6 @@ export class GeneralComponent implements OnInit {
if (this.selectedDlFiles !== null && this.selectedDlFiles !== undefined && this.selectedDlFiles.length > 0) { if (this.selectedDlFiles !== null && this.selectedDlFiles !== undefined && this.selectedDlFiles.length > 0) {
this.saveFile(this.hrEmployee.id, this.selectedDlFiles, enumEmpFileUploadType.DrivingLicense); this.saveFile(this.hrEmployee.id, this.selectedDlFiles, enumEmpFileUploadType.DrivingLicense);
} }
if (this.selectedPassportFiles !== null && this.selectedPassportFiles !== undefined && this.selectedPassportFiles.length > 0) {
this.saveFile(this.hrEmployee.id, this.selectedPassportFiles, enumEmpFileUploadType.passport);
}
if (this.selectedSignature !== null && this.selectedSignature !== undefined && this.selectedSignature.length > 0) {
const file: File | null = this.selectedSignature[0];
this.currentFile = file;
this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.signature).subscribe(
(resp: any) => {
this.empSigneture = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
// console.log(resp.body);
//this.Sigfiles = resp;// this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
},
(err: any) => {
this.notificationService.showError(err.error);
this.currentFile = undefined;
}, () => {
this.signaturePopUp = false;
this.notificationService.showSuccess("Signature Uploaded Successfully!")
});
}
if (this.selectedFiles !== null && this.selectedFiles !== undefined && this.selectedFiles.length > 0) {
const file: File | null = this.selectedFiles[0];
this.currentFile = file;
debugger;
this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.Profile_Picture).subscribe(
(resp: any) => {
console.log('image data');
// console.log(resp.body);
//this.employeePhoto = resp;
this.employeePhoto = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
},
(err: any) => {
this.notificationService.showError(err.error);
this.currentFile = undefined;
});
this.selectedFiles = undefined;
}
} }
); );
} }
@ -601,8 +531,7 @@ export class GeneralComponent implements OnInit {
saveFile(feferenceID: number, selectedFiles: any, type: enumEmpFileUploadType) { saveFile(feferenceID: number, selectedFiles: any, type: enumEmpFileUploadType) {
debugger; debugger;
if (selectedFiles != undefined && selectedFiles.length > 0) { if (selectedFiles != undefined && selectedFiles.length > 0) {
// const file: File | null = selectedFiles.item(0); const file: File | null = selectedFiles.item(0);
const file: File | null = selectedFiles[0];
this.currentFile = file; this.currentFile = file;
this.employeeService.uploadEmpFile(file, this.employeeService.hrEmployee.id, feferenceID, type).subscribe( this.employeeService.uploadEmpFile(file, this.employeeService.hrEmployee.id, feferenceID, type).subscribe(
(resp: any) => { (resp: any) => {
@ -625,79 +554,6 @@ export class GeneralComponent implements OnInit {
this.selectedNidFiles = undefined; this.selectedNidFiles = undefined;
this.NIDFiles = undefined; this.NIDFiles = undefined;
} }
if (type === enumEmpFileUploadType.passport) {
this.selectedPassportFiles = undefined;
this.Passfiles = undefined;
}
}
private getSavePersonalInfoObservable(): Observable<HrEmployee> | null {
debugger;
if (this.personalInfo.valid === false && this.hrEmployee.employeeNo === '') {
this.notificationService.showError('Required Fields Can\'t Be Empty');
return null;
}
this.loadingPanel.ShowLoadingPanel = true;
this.hrEmployee.name = this.hrEmployee.firstName;
if (this.hrEmployee.middleName !== null) {
this.hrEmployee.name += ' ' + this.hrEmployee.middleName;
}
if (this.hrEmployee.lastName !== null) {
this.hrEmployee.name += ' ' + this.hrEmployee.lastName;
}
return this.employeeService.saveHrPersonalInfo(this.hrEmployee).pipe(
tap((resp: HrEmployee) => {
debugger;
if (resp != undefined) {
this.hrEmployee.id = resp.id;
if (!this.active) {
this.hrEmployee.employeeNo = resp.employeeNo;
this.employeeService.hrEmployee = resp;
}
if (this.selectedTinFiles?.length > 0) {
this.saveFile(this.hrEmployee.id, this.selectedTinFiles, enumEmpFileUploadType.TIN);
}
if (this.selectedNidFiles?.length > 0) {
this.saveFile(this.hrEmployee.id, this.selectedNidFiles, enumEmpFileUploadType.nationalID);
}
if (this.selectedDlFiles?.length > 0) {
this.saveFile(this.hrEmployee.id, this.selectedDlFiles, enumEmpFileUploadType.DrivingLicense);
}
}
}),
finalize(() => {
this.loadingPanel.ShowLoadingPanel = false;
}),
catchError((err) => {
debugger;
console.error(err);
this.notificationService.showError(err.error);
return EMPTY; // No emission on error
})
);
}
saveBanglaInfo() {
if (!this.active) {
const personalInfo$ = this.getSavePersonalInfoObservable();
if (personalInfo$) {
personalInfo$.subscribe({
next: () => {
debugger;
this.isDisplay = false;
this.notificationService.showSuccess('Data saved successfully');
this.SaveBanglaContactInformation();
}
});
}
else {
this.isDisplay = false;
}
// If null, validation failed — nothing is executed
} else {
this.SaveBanglaContactInformation();
}
} }
saveBanglaPersonalInformation() { saveBanglaPersonalInformation() {
const data = { const data = {
@ -733,14 +589,6 @@ export class GeneralComponent implements OnInit {
this.loadingPanel.ShowLoadingPanel = true; this.loadingPanel.ShowLoadingPanel = true;
this.employeeService.updateBanglaContactInformation(data).subscribe( this.employeeService.updateBanglaContactInformation(data).subscribe(
(resp: any) => { (resp: any) => {
// debugger
// if(this.contact.id == 0)
// this.employeeService.hrEmployee.contacts[0].id = resp;
// this.employeeService.hrEmployee.contacts[0].presentPOInBangla = this.contact.presentPOInBangla;
// this.employeeService.hrEmployee.contacts[0].presentAddressInBangla = this.contact.presentAddressInBangla,
// this.employeeService.hrEmployee.contacts[0].parmanentPOInBangla = this.contact.parmanentPOInBangla;
// this.employeeService.hrEmployee.contacts[0].permanentAddressInBangla = this.contact.permanentAddressInBangla;
}, (err) => { }, (err) => {
this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
@ -772,53 +620,53 @@ export class GeneralComponent implements OnInit {
}); });
} }
// selectFile(event: any): void { selectFile(event: any): void {
// if (this.hrEmployee.id == 0) { if (this.hrEmployee.id == 0) {
// this.notificationService.showWarning('select an employee to change the profile picture'); this.notificationService.showWarning('select an employee to change the profile picture');
// return; return;
// } }
// if (confirm('Are you sure change the profile picture? selected picture will be store in database as well as will be used as profile picture.') == false) { if (confirm('Are you sure change the profile picture? selected picture will be store in database as well as will be used as profile picture.') == false) {
// return; return;
// } }
// debugger; debugger;
// this.selectedFiles = event.target.files; this.selectedFiles = event.target.files;
// if (this.selectedFiles.length > 0) { if (this.selectedFiles.length > 0) {
// const file: File | null = this.selectedFiles.item(0); const file: File | null = this.selectedFiles.item(0);
// this.currentFile = file; this.currentFile = file;
// debugger; debugger;
// this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.Profile_Picture).subscribe( this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.Profile_Picture).subscribe(
// (resp: any) => { (resp: any) => {
// console.log('image data'); console.log('image data');
// // console.log(resp.body); // console.log(resp.body);
// //this.employeePhoto = resp; //this.employeePhoto = resp;
// this.employeePhoto = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`); this.employeePhoto = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
// }, },
// (err: any) => { (err: any) => {
// this.notificationService.showError(err.error); this.notificationService.showError(err.error);
// this.currentFile = undefined; this.currentFile = undefined;
// }); });
// this.selectedFiles = undefined; this.selectedFiles = undefined;
// } }
// } }
// upload(): void { upload(): void {
// if (this.selectedFiles.length > 0) { if (this.selectedFiles.length > 0) {
// const file: File | null = this.selectedFiles.item(0); const file: File | null = this.selectedFiles.item(0);
// this.currentFile = file; this.currentFile = file;
// this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.Profile_Picture).subscribe( this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.Profile_Picture).subscribe(
// (event: any) => { (event: any) => {
// }, },
// (err: any) => { (err: any) => {
// this.notificationService.showError(err.error); this.notificationService.showError(err.error);
// this.currentFile = undefined; this.currentFile = undefined;
// }); });
// this.selectedFiles = undefined; this.selectedFiles = undefined;
// } }
// } }
RolePermission() { RolePermission() {
console.log('Role Permission'); console.log('Role Permission');
@ -974,120 +822,77 @@ export class GeneralComponent implements OnInit {
} }
// selectFileTin(event: any): void { selectFileTin(event: any): void {
// this.selectedTinFiles = event.target.files; this.selectedTinFiles = event.target.files;
// const file = this.selectedTinFiles.item(0); const file = this.selectedTinFiles.item(0);
// // if (file.size > 500000) { // if (file.size > 500000) {
// // this.notificationService.showError('File size can not be more than 500kb'); // this.notificationService.showError('File size can not be more than 500kb');
// // this.selectedTinFiles = undefined; // this.selectedTinFiles = undefined;
// // return; // return;
// // } // }
// }
// selectFileNationalId(event: any): void {
// this.selectedNidFiles = event.target.files;
// const file = this.selectedNidFiles.item(0);
// // if (file.size > 500000) {
// // this.notificationService.showError('File size can not be more than 500kb');
// // this.selectedNidFiles = undefined;
// // return;
// // }
// }
// selectFileDrivingLicense(event: any): void {
// this.selectedDlFiles = event.target.files;
// const file = this.selectedDlFiles.item(0);
// // if (file.size > 500000) {
// // this.notificationService.showError('File size can not be more than 500kb');
// // this.selectedDlFiles = undefined;
// // return;
// // }
// }
// selectPassport(event: any): void {
// this.selectedDlFiles = event.target.files;
// const file = this.selectedDlFiles.item(0);
// // if (file.size > 500000) {
// // this.notificationService.showError('File size can not be more than 500kb');
// // this.selectedDlFiles = undefined;
// // return;
// // }
// }
// selectSignature(event: any): void {
// if (this.hrEmployee.id == 0) {
// this.notificationService.showWarning('select an employee to change the profile picture');
// return;
// }
// if (confirm('Are you sure change the signature picture? selected picture will be store in database as well as will be used as signature picture.') == false) {
// return;
// }
// this.selectedFiles = event.target.files;
// if (this.selectedFiles.length > 0) {
// const file: File | null = this.selectedFiles.item(0);
// this.currentFile = file;
// this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.signature).subscribe(
// (resp: any) => {
// this.empSigneture = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
// // console.log(resp.body);
// //this.Sigfiles = resp;// this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
// },
// (err: any) => {
// this.notificationService.showError(err.error);
// this.currentFile = undefined;
// }, () => {
// this.signaturePopUp = false;
// this.notificationService.showSuccess("Signature Uploaded Successfully!")
// });
// this.selectedFiles = undefined;
// }
// }
selectFileTin(event: { files: FileInfo[] }): void {
this.selectedTinFiles = event.files
.map(f => f.rawFile)
.filter((f): f is File => f instanceof File);
const file = this.selectedTinFiles[0];
} }
selectFileNationalId(event: { files: FileInfo[] }): void {
debugger; selectFileNationalId(event: any): void {
// Extract File[] from FileInfo[] this.selectedNidFiles = event.target.files;
this.selectedNidFiles = event.files const file = this.selectedNidFiles.item(0);
.map(f => f.rawFile) // if (file.size > 500000) {
.filter((f): f is File => f instanceof File); // this.notificationService.showError('File size can not be more than 500kb');
const file = this.selectedNidFiles[0]; // this.selectedNidFiles = undefined;
// return;
// }
} }
selectFileDrivingLicense(event: { files: FileInfo[] }): void {
this.selectedDlFiles = event.files selectFileDrivingLicense(event: any): void {
.map(f => f.rawFile) this.selectedDlFiles = event.target.files;
.filter((f): f is File => f instanceof File); const file = this.selectedDlFiles.item(0);
// const file = this.selectedDlFiles[0]; // if (file.size > 500000) {
// this.notificationService.showError('File size can not be more than 500kb');
// this.selectedDlFiles = undefined;
// return;
// }
} }
selectPassport(event: { files: FileInfo[] }): void { selectPassport(event: any): void {
this.selectedPassportFiles = event.files this.selectedDlFiles = event.target.files;
.map(f => f.rawFile) const file = this.selectedDlFiles.item(0);
.filter((f): f is File => f instanceof File); // if (file.size > 500000) {
// const file = this.selectedPassportFiles[0]; // this.notificationService.showError('File size can not be more than 500kb');
// this.selectedDlFiles = undefined;
// return;
// }
} }
selectSignature(event: { files: FileInfo[] }): void {
this.selectedSignature = event.files selectSignature(event: any): void {
.map(f => f.rawFile) if (this.hrEmployee.id == 0) {
.filter((f): f is File => f instanceof File); this.notificationService.showWarning('select an employee to change the profile picture');
} return;
selectProfilePhoto(event: { files: FileInfo[] }): void { }
debugger
this.selectedFiles = event.files if (confirm('Are you sure change the signature picture? selected picture will be store in database as well as will be used as signature picture.') == false) {
.map(f => f.rawFile) return;
.filter((f): f is File => f instanceof File);; }
}
triggerUploadClick(): void { this.selectedFiles = event.target.files;
const input = this.uploadPhotoRef.nativeElement.querySelector('input[type="file"]');
if (input) { if (this.selectedFiles.length > 0) {
input.click(); const file: File | null = this.selectedFiles.item(0);
this.currentFile = file;
this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.signature).subscribe(
(resp: any) => {
this.empSigneture = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
// console.log(resp.body);
//this.Sigfiles = resp;// this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
},
(err: any) => {
this.notificationService.showError(err.error);
this.currentFile = undefined;
}, () => {
this.signaturePopUp = false;
this.notificationService.showSuccess("Signature Uploaded Successfully!")
});
this.selectedFiles = undefined;
} }
} }
changePassword() { changePassword() {
if (this.userPassword == '') { if (this.userPassword == '') {

View File

@ -79,12 +79,7 @@
<label for="txtGrade">Status</label> <label for="txtGrade">Status</label>
</div> </div>
<div class="p-col-12 p-lg-1" align="center">:</div> <div class="p-col-12 p-lg-1" align="center">:</div>
<div class="p-col-12 p-lg-4" <div class="p-col-12 p-lg-4">{{ _statusString }}</div>
[ngStyle]="{ color: _statusString === 'Discontinued' ? 'red' : (_statusString === 'Live' ? 'green' : 'black'),
fontWeight: 'bold'
}">
{{ _statusString }}
</div>
<div class="p-col-12 p-lg-1"> <div class="p-col-12 p-lg-1">
<label for="txtBasicSalary">Basic Salary</label> <label for="txtBasicSalary">Basic Salary</label>
@ -107,12 +102,6 @@
</div> </div>
<div class="p-col-12 p-lg-1" align="center">:</div> <div class="p-col-12 p-lg-1" align="center">:</div>
<div class="p-col-12 p-lg-4">{{ _employee.categoryName }}</div> <div class="p-col-12 p-lg-4">{{ _employee.categoryName }}</div>
<div class="p-col-12 p-lg-1">
<label for="txtCategory">Joining Date</label>
</div>
<div class="p-col-12 p-lg-1" align="center">:</div>
<div class="p-col-12 p-lg-4">{{ _employee.joiningDate | date: 'dd MMM yyyy'}}</div>
</div> </div>
</fieldset> </fieldset>
</div> </div>
@ -520,7 +509,7 @@
<kendo-grid-column <kendo-grid-column
field="effectDate" field="effectDate"
title="Effect Date" title="Effect Date"
width="13%" width="15%"
> >
<ng-template <ng-template
kendoGridCellTemplate kendoGridCellTemplate
@ -536,29 +525,12 @@
<kendo-grid-column <kendo-grid-column
field="description" field="description"
title="Description" title="Description"
width="70%" width="77%"
> >
</kendo-grid-column> </kendo-grid-column>
<kendo-grid-column
field=""
title="Created by"
width="10%"
>
<ng-template
kendoGridCellTemplate
let-dataItem
let-rowIndex="rowIndex"
>
{{ dataItem.createdByUser }}
<br>
<label style="font-size: 12px; color: darkgray;">On {{ dataItem.createdDate | date : "dd-MMM-yyyy" }}</label>
</ng-template>
</kendo-grid-column>
<kendo-grid-command-column <kendo-grid-command-column
title="Action" title="Action"
width="7%" width="8%"
> >
<ng-template <ng-template
kendoGridCellTemplate kendoGridCellTemplate

View File

@ -31,7 +31,6 @@ import { GrievanceManagementService } from '../../../_services/grievance-managem
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { WorkflowService } from '../../../_services/workflow/workflow.service'; import { WorkflowService } from '../../../_services/workflow/workflow.service';
import { AuthService } from '../../../_services/auth/auth.service'; import { AuthService } from '../../../_services/auth/auth.service';
import { SystemConfigurationService } from '../../../_services/common/systemconfiguration.service';
@Component({ @Component({
@ -100,10 +99,7 @@ export class LifeCycleEntryComponent implements OnInit {
public _selectedogranogram: OrganogramBasic; public _selectedogranogram: OrganogramBasic;
public _CurrentEmpgranogram: OrganogramBasic; public _CurrentEmpgranogram: OrganogramBasic;
public gradeSalaries: any; public gradeSalaries: any;
_MgtGradeCodes: string;
_MgtGradeCode: string[];
_nonmanagementbasicdivisor: number;
_nonmanagementexcludedamount: number;
constructor(public employeeService: EmployeeServices, constructor(public employeeService: EmployeeServices,
public apiservice: ApiService, public basicDataService: BasicService, public lifecycleService: EmpLifeCycleServices, public apiservice: ApiService, public basicDataService: BasicService, public lifecycleService: EmpLifeCycleServices,
public notificationService: HRMNotificationService, public notificationService: HRMNotificationService,
@ -112,7 +108,7 @@ export class LifeCycleEntryComponent implements OnInit {
public loadingPanelService: loadingPanelService, public loadingPanelService: loadingPanelService,
public router: Router, public workflowService: WorkflowService, public router: Router, public workflowService: WorkflowService,
public authservice: AuthService, public authservice: AuthService,
public acrouter: ActivatedRoute, public systemConfigService: SystemConfigurationService) { public acrouter: ActivatedRoute,) {
if (this.router.url === '/payroll/career-and-profile/life-cycle-entry') if (this.router.url === '/payroll/career-and-profile/life-cycle-entry')
this.apiservice.selectedMenuName = 'Employee Life Cycle'; this.apiservice.selectedMenuName = 'Employee Life Cycle';
@ -131,7 +127,6 @@ export class LifeCycleEntryComponent implements OnInit {
ngOnInit() { ngOnInit() {
this._employee = new Employee(); this._employee = new Employee();
this._employee.joiningDate = undefined;
this._empLifeCycle = new EmpLifeCycle(); this._empLifeCycle = new EmpLifeCycle();
this._CurrentEmpgranogram = new OrganogramBasic(); this._CurrentEmpgranogram = new OrganogramBasic();
this.lifecycleService.GetByUserID().subscribe( this.lifecycleService.GetByUserID().subscribe(
@ -154,55 +149,6 @@ export class LifeCycleEntryComponent implements OnInit {
this.salaryMonth = new Date(this.payrollType.nextPayProcessDate); this.salaryMonth = new Date(this.payrollType.nextPayProcessDate);
} }
); );
this.systemConfigService.GetLogicValue('grade', 'managementgradecodes').subscribe(
(resp) => {
debugger;
if (resp != null && resp != '')
this._MgtGradeCodes = resp.toLowerCase();
},
(err) => {
this.notificationService.showError(err.err);
this.loadingPanelService.ShowLoadingPanel = false;
},
() => {
this._MgtGradeCode = this._MgtGradeCodes.split(',');
this.loadingPanelService.ShowLoadingPanel = false;
}
);
this.systemConfigService.GetLogicValue('grade', 'nonmanagementbasicdivisor').subscribe(
(resp) => {
debugger;
if (resp != null && resp != '')
this._nonmanagementbasicdivisor = Number(resp);
},
(err) => {
this.notificationService.showError(err.err);
this.loadingPanelService.ShowLoadingPanel = false;
},
() => {
this.loadingPanelService.ShowLoadingPanel = false;
}
);
this.systemConfigService.GetLogicValue('grade', 'nonmanagementexcludedamount').subscribe(
(resp) => {
debugger;
if (resp != null && resp != '')
this._nonmanagementexcludedamount = Number(resp);
},
(err) => {
this.notificationService.showError(err.err);
this.loadingPanelService.ShowLoadingPanel = false;
},
() => {
this.loadingPanelService.ShowLoadingPanel = false;
}
);
} }
private refreshGradeSalaries() { private refreshGradeSalaries() {
@ -228,7 +174,6 @@ export class LifeCycleEntryComponent implements OnInit {
private CreateFormValidator(): void { private CreateFormValidator(): void {
this._employee = new Employee(); this._employee = new Employee();
this._employee.joiningDate = undefined;
this._fromValidator = new FormBuilder().group({ this._fromValidator = new FormBuilder().group({
loginId: ['', Validators.required], loginId: ['', Validators.required],
name: ['', Validators.required], name: ['', Validators.required],
@ -360,8 +305,8 @@ export class LifeCycleEntryComponent implements OnInit {
}); });
this._sDescription = item.description; this._sDescription = item.description;
if (this._employeeStatus != undefined && this._employeeStatus.length > 0) if(this._employeeStatus != undefined && this._employeeStatus.length > 0)
if (item == this._employeeStatus.find(x => x.description.toLowerCase() == 'joining')) { if(item == this._employeeStatus.find(x => x.description.toLowerCase() == 'joining') ){
this._effectDate = new Date(this._employee.joiningDate); this._effectDate = new Date(this._employee.joiningDate);
} }
else { else {
@ -408,8 +353,6 @@ export class LifeCycleEntryComponent implements OnInit {
this._empLifeCycle = new EmpLifeCycle(); this._empLifeCycle = new EmpLifeCycle();
this._lifecycleHistory = []; this._lifecycleHistory = [];
this._employee = new Employee(); this._employee = new Employee();
this._employee.joiningDate = undefined;
this._statusString = undefined;
return; return;
} }
this.loadingPanelService.ShowLoadingPanel = true; this.loadingPanelService.ShowLoadingPanel = true;
@ -674,23 +617,16 @@ export class LifeCycleEntryComponent implements OnInit {
if (entryType == "GrossSalary") { if (entryType == "GrossSalary") {
if (this._currentGrade != undefined && this.isGrade == false) { if (this._currentGrade != undefined && this.isGrade == false) {
if (this._MgtGradeCode.includes(this._currentGrade.code.toUpperCase())) { if (this._currentGrade.basicPercentOfGross > 0)
this._empLifeCycle.basicSalary = this._empLifeCycle.grossSalary * this._currentGrade.basicPercentOfGross / 100; this._empLifeCycle.basicSalary = this._empLifeCycle.grossSalary *
} this._currentGrade.basicPercentOfGross / 100;
else if (this._currentGrade.basicPercentOfGross > 0)
this._empLifeCycle.basicSalary = Math.ceil(((this._empLifeCycle.grossSalary - this._nonmanagementexcludedamount) / this._nonmanagementbasicdivisor) * 100) / 100;
} }
else if (this.isGrade == true && this._empLifeCycle.gradeID != undefined) { else if (this.isGrade == true && this._empLifeCycle.gradeID != undefined) {
if (this._empLifeCycle.gradeID != undefined) { if (this._empLifeCycle.gradeID != undefined) {
var og = this._gradeList.find(x => x.id == this._empLifeCycle.gradeID); var og = this._gradeList.find(x => x.id == this._empLifeCycle.gradeID);
if (this._MgtGradeCode.includes(og.code.toUpperCase())) { if (og.basicPercentOfGross > 0)
this._empLifeCycle.basicSalary = this._empLifeCycle.grossSalary * this._empLifeCycle.basicSalary = this._empLifeCycle.grossSalary *
og.basicPercentOfGross / 100; og.basicPercentOfGross / 100;
}
else if (og.basicPercentOfGross > 0)
this._empLifeCycle.basicSalary = Math.ceil(((this._empLifeCycle.grossSalary - this._nonmanagementexcludedamount) / this._nonmanagementbasicdivisor) * 100) / 100;
} }
} }
} }

View File

@ -405,7 +405,6 @@ export class DynamicPicker {
selectedIDs: number[]; selectedIDs: number[];
selectedObjects: Array<Object>; selectedObjects: Array<Object>;
multiSelect: boolean; multiSelect: boolean;
checkChildren: boolean;
selecteditemText: string = ''; selecteditemText: string = '';
pickerType: EnumDynamicpickerType; pickerType: EnumDynamicpickerType;
payrollTypeID?: number; payrollTypeID?: number;
@ -420,7 +419,6 @@ export class DynamicPicker {
this.selectedIDs = []; this.selectedIDs = [];
this.selecteditemText = ''; this.selecteditemText = '';
this.multiSelect = Multiselect; this.multiSelect = Multiselect;
this.checkChildren = this.multiSelect ? true : false;
this.pickerType = PickerType; this.pickerType = PickerType;
this.payrollTypeID = undefined; this.payrollTypeID = undefined;
new DynamicPickerTypeDefination(PickerType, this, Multiselect); new DynamicPickerTypeDefination(PickerType, this, Multiselect);

View File

@ -100,8 +100,7 @@ export class DynamicPickerComponent implements OnInit, OnChanges, AfterContentCh
this.checkMode = 'single'; this.checkMode = 'single';
} }
return { return {
// checkChildren: true, checkChildren: true,
checkChildren: this.dynamicPickerView.checkChildren,
checkParents: false, checkParents: false,
enabled: this.dynamicPickerView.multiSelect, enabled: this.dynamicPickerView.multiSelect,
mode: this.checkMode, mode: this.checkMode,

View File

@ -2,7 +2,7 @@
<div class="p-grid card"> <div class="p-grid card">
<div class="p-col-12 p-md-12" style="padding: 7px;"> <div class="p-col-12 p-md-12" style="padding: 7px;">
<div class="p-grid"> <div class="p-grid">
<div class="p-col-12 p-md-5"> <div class="p-col-5">
<app-employee-picker (ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker> <app-employee-picker (ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker>
</div> </div>
@ -14,18 +14,9 @@
style="width:100%"> style="width:100%">
</kendo-datepicker> </kendo-datepicker>
</div> --> </div> -->
<div class="p-col-12 p-md-1" style="margin: auto"></div> <div class="p-col-5">
<div class="p-col-6 p-md-2" style="margin: auto">
<label>Authorized Person</label>
</div> </div>
<div class="p-col-6 p-md-2"> <div class="p-col-2">
<kendo-dropdownlist [data]="authorizedPersonList"
[defaultItem]="{ name: 'Select..', id: null }" [textField]="'name'" [valueField]="'id'"
[valuePrimitive]="true" [(ngModel)]="selectedPersonID" id="signatory">
</kendo-dropdownlist>
</div>
<div class="p-col-12 p-md-2">
<button kendoButton style="width: 100%; margin-right: 5%" (click)="onPreview('PDF')" <button kendoButton style="width: 100%; margin-right: 5%" (click)="onPreview('PDF')"
class="k-primary">Preview</button> class="k-primary">Preview</button>
</div> </div>

View File

@ -11,7 +11,7 @@ import { AttendanceServices } from '../../_services/attendance/attendance.servic
import { LoanService } from 'src/app/_services/payroll/loan.service'; import { LoanService } from 'src/app/_services/payroll/loan.service';
import { SalaryService } from '../../_services/payroll/salary.service'; import { SalaryService } from '../../_services/payroll/salary.service';
import { LeaveService } from '../../_services/leave/leave.service'; import { LeaveService } from '../../_services/leave/leave.service';
import { PayrollType } from '../../_models/Authentication/payrollType'; import {PayrollType} from '../../_models/Authentication/payrollType';
import { SearchEmployee, SearchManager } from '../../_models/Employee/searchEmployee'; import { SearchEmployee, SearchManager } from '../../_models/Employee/searchEmployee';
import { import {
EnumBloodGroup, EnumBloodGroup,
@ -31,8 +31,6 @@ import { ApiService } from '../../app.api.service';
import { NgxExtendedPdfViewerService, PDFPrintRange } from 'ngx-extended-pdf-viewer'; import { NgxExtendedPdfViewerService, PDFPrintRange } from 'ngx-extended-pdf-viewer';
import { Employee } from '../../_models/Employee/employee'; import { Employee } from '../../_models/Employee/employee';
import { saveAs } from 'file-saver'; import { saveAs } from 'file-saver';
import { LetterRequestService } from 'src/app/_services/letter-request/letter-request.service';
import { AuthorizedPerson } from 'src/app/adhoc-feature/authorized-persons/authorizedPerson';
@Component({ @Component({
selector: 'app-digital-service-book', selector: 'app-digital-service-book',
@ -51,8 +49,6 @@ export class DigitalServiceBookComponent implements OnInit {
fromDate: Date = new Date(); fromDate: Date = new Date();
toDate: Date = new Date(); toDate: Date = new Date();
payrolltype: PayrollType; payrolltype: PayrollType;
authorizedPersonList: AuthorizedPerson[] = [];
selectedPersonID: number;
// user: User; // user: User;
constructor(public employeeService: EmployeeServices, constructor(public employeeService: EmployeeServices,
@ -68,7 +64,6 @@ export class DigitalServiceBookComponent implements OnInit {
public taxService: TaxService, public taxService: TaxService,
public salaryService: SalaryService, public salaryService: SalaryService,
public leaveYearService: LeaveService, public leaveYearService: LeaveService,
public letterRequestService: LetterRequestService,
public router: Router, public router: Router,
public authService: AuthService) { public authService: AuthService) {
this.apiService.selectedMenuName = 'Digital Service Book'; this.apiService.selectedMenuName = 'Digital Service Book';
@ -100,7 +95,7 @@ export class DigitalServiceBookComponent implements OnInit {
// this.setSelectableSettings(); // this.setSelectableSettings();
// this.loadBank(); // this.loadBank();
this.loadDataAuthorizedPersons();
this.loadLoggedInEmployee(); this.loadLoggedInEmployee();
} }
loadLoggedInEmployee() { loadLoggedInEmployee() {
@ -140,14 +135,13 @@ export class DigitalServiceBookComponent implements OnInit {
const data = { const data = {
reportid: 1000, reportid: 1000,
itemid: this.selectedPersonID != undefined ? this.selectedPersonID : null, itemid: 0,
// empIds: '', // empIds: '',
empIds: this.selectedEmp.employeeID, empIds: this.selectedEmp.employeeID,
reportType: type, reportType: type,
// fromDate: this.selectedMonth, // fromDate: this.selectedMonth,
fromDate: new Date().toDateString(), fromDate: new Date().toDateString(),
toDate: new Date().toDateString(), toDate: new Date().toDateString()
}; };
this.loadingPanel.ShowLoadingPanel = true; this.loadingPanel.ShowLoadingPanel = true;
console.log(data); console.log(data);
@ -217,20 +211,4 @@ export class DigitalServiceBookComponent implements OnInit {
this.printService.print(); this.printService.print();
} }
loadDataAuthorizedPersons() {
this.loadingPanel.ShowLoadingPanel = true;
this.letterRequestService.getAuthorisedPersons().subscribe(
(resp) => {
this.authorizedPersonList = resp;
},
(err) => {
this.notificationService.showError(err.error);
this.loadingPanel.ShowLoadingPanel = false;
},
() => {
this.loadingPanel.ShowLoadingPanel = false;
},
);
}
} }

View File

@ -1,126 +1,78 @@
<app-loading-panel> </app-loading-panel> <app-loading-panel> </app-loading-panel>
<div class="card card-w-card"> <div class="card card-w-card">
<div *ngIf="reportID == 724"> <div class="p-grid">
<div class="p-col-12 p-md-6 p-lg-2">
<div class="p-grid">
<!-- <div class="p-col-12 p-md-6 p-lg-2">
<label>Select Employee:</label> <label>Select Employee:</label>
</div> -->
<div class="p-col-12 p-md-6 p-lg-2">
<app-employee-picker (ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker>
</div>
<div class="p-col-12 p-md-6 p-lg-3">
<div class="p-grid">
<div class="p-col-4" style="margin: auto;">
<label>From Date </label>
</div>
<div class="p-col-8">
<kendo-datepicker format="dd MMM yyyy" [(ngModel)]="fromDate"
style="width:100%"></kendo-datepicker>
</div>
</div>
</div>
<div class="p-col-12 p-md-6 p-lg-3">
<div class="p-grid">
<div class="p-col-4" style="margin: auto;">
<label>To Date </label>
</div>
<div class="p-col-8">
<kendo-datepicker format="dd MMM yyyy" [(ngModel)]="toDate"
style="width:100%"></kendo-datepicker>
</div>
</div>
</div>
<div class="p-col-12 p-md-6 p-lg-3">
<div class="p-grid">
<div class="p-col-4" style="margin: auto;">
<label>Leave Type </label>
</div>
<div class="p-col-8">
<kendo-dropdownlist [data]="leaveList" [(ngModel)]="leaveId"
[defaultItem]="{ description: 'All', id: null }" [textField]="'description'"
[valueField]="'id'" [valuePrimitive]="true" style="width: 100%">
</kendo-dropdownlist>
</div>
</div>
</div>
<div class="p-col-12 p-md-6 p-lg-1" align="right">
<button type="button" kendoButton icon="file-pdf" [primary]="true" (click)="preview('PDF')" style="margin-right: 10px;">Preview</button>
<button type="button" kendoButton icon="file-excel" [primary]="true" (click)="preview('EXCEL')">Export</button>
</div>
<!-- <div class="p-col-12 p-md-6 p-lg-2">
<label>Leave Year:</label>
</div>
<div class="p-col-12 p-md-6 p-lg-2">
<kendo-dropdownlist [data]="leaveYearList"
[(ngModel)]="leaveYearId"
[defaultItem]="{ name: 'Select Leave Year...', id: null }"
[textField]="'name'"
[valueField]="'id'"
[valuePrimitive]="true"
style="width: 100%"
class="form-control form-control-sm input-sm"
>
</kendo-dropdownlist>
</div> -->
</div> </div>
</div> <div class="p-col-12 p-md-6 p-lg-2">
<app-employee-picker (ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker>
<div *ngIf="reportID == 727"> </div>
<div class="p-grid"> <div class="p-col-12 p-md-6 p-lg-2">
<div class="p-col-12 p-md-6 p-lg-4"> <label>Leave:</label>
<div class="p-grid"> </div>
<div class="p-col-4" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-2">
<label>Select Employee</label> <kendo-dropdownlist [data]="leaveList"
</div> [(ngModel)]="leaveId"
<div class="p-col-8"> [defaultItem]="{ description: 'Select Leave Year...', id: null }"
<app-employee-picker (ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker> [textField]="'description'"
</div> [valueField]="'id'"
</div> [valuePrimitive]="true"
</div> style="width: 100%"
<div class="p-col-12 p-md-6 p-lg-4"> class="form-control form-control-sm input-sm"
<div class="p-grid"> >
<div class="p-col-4" style="margin: auto;"> </kendo-dropdownlist>
<label>Authorized Person</label> </div>
</div> <div class="p-col-12 p-md-6 p-lg-2">
<div class="p-col-8"> <label>Leave Year:</label>
<kendo-dropdownlist [data]="authPersons" [(ngModel)]="personID" </div>
[textField]="'name'" [valueField]="'id'" <div class="p-col-12 p-md-6 p-lg-2">
[valuePrimitive]="true" style="width: 100%"> <kendo-dropdownlist [data]="leaveYearList"
</kendo-dropdownlist> [(ngModel)]="leaveYearId"
</div> [defaultItem]="{ name: 'Select Leave Year...', id: null }"
</div> [textField]="'name'"
</div> [valueField]="'id'"
[valuePrimitive]="true"
<div class="p-col-12 p-md-12 p-lg-4" align="right"> style="width: 100%"
<button type="button" kendoButton icon="file-pdf" [primary]="true" (click)="preview('PDF')" style="margin-right: 10px;">Preview</button> class="form-control form-control-sm input-sm"
<button type="button" kendoButton icon="file-excel" [primary]="true" (click)="preview('EXCEL')">Export</button> >
</div> </kendo-dropdownlist>
</div>
<div class="p-col-12 p-md-12 p-lg-2" align="right">
<button type="button" class="k-primary" (click)="preview()" icon="preview" kendoButton>Preview</button>
</div> </div>
</div> </div>
</div> </div>
<kendo-dialog *ngIf="showPopUp" (close)="closeForm()"
title="{{PDFTitle}}"
[height]="500" [width]="800">
<!-- <kendo-window *ngIf="showPopUp" (close)="closeForm()" title="{{PDFTitle}}" [height]="500" [width]="800">
<div class="p-grid"> <div class="p-grid">
<div class="p-col-12"> <div class="p-col-12">
<ngx-extended-pdf-viewer [src]="src" [showBookmarkButton]="false" [showOpenFileButton]="false" <!--<pdf-viewer [src]="src" style="width: 400px; height: 500px"
[showSidebarButton]="false" [textLayer]="false" [enableDragAndDrop]="false" [show-borders]="true"></pdf-viewer>-->
[showSecondaryToolbarButton]="false" [zoom]="'page-width'" [useBrowserLocale]="true" [height]="'70vh'" <!--<ngx-extended-pdf-viewer [src]="getSrcDocument()"
[handTool]="true"> backgroundColor="#ffffff"
[height]="'90vh'"
[useBrowserLocale]="true"
[showOpenFileButton]="false"
[showPresentationModeButton]="true"
[handTool]="false"
*ngIf="blocFilterOpened">
</ngx-extended-pdf-viewer>-->
<ngx-extended-pdf-viewer [src]="src"
[showBookmarkButton]="false"
[showOpenFileButton]="false"
[showSidebarButton]="false"
[textLayer]="false"
[enableDragAndDrop]="false"
[showSecondaryToolbarButton]="false"
[zoom]="'page-width'"
[useBrowserLocale]="true"
[height]="'70vh'"
[handTool]="true">
</ngx-extended-pdf-viewer> </ngx-extended-pdf-viewer>
</div> </div>
</div> </div>
</kendo-window> </kendo-dialog>
-->
<div class="card" *ngIf="showPopUp" class="blur-background">
<kendo-window [height]="600" class='window-viewer' title="{{PDFTitle}}" *ngIf="showPopUp" (close)="closeForm()">
<!-- [height]="600" [style]="{'min-width': '70%','max-width': '100%', 'max-height': '100%'}"> -->
<app-loading-panel> </app-loading-panel>
<div class='embed-responsive'>
<iframe class="pdf-viewer" id="pdf-viewer-report" type='application/pdf' [zoom]="zoomLevel"></iframe>
</div>
</kendo-window>
</div>

View File

@ -1,32 +0,0 @@
.embed-responsive {
position: relative;
display: block;
/* height: 0; */
padding: 0;
overflow: hidden;
/* padding-bottom:68%; */
background: white;
}
.pdf-viewer {
width: 100%;
/* min-height: 700px; */
height: 100%;
/* min-width: 275px; */
/* max-height: 100%;
background-color: white !important; */
}
.window-viewer {
/* position: relative;
top: 0;
left: 0;
transform: translate(5%, 5%); */
width: 70%;
/* height: 90%; */
/* min-width: 300px; */
/* max-width: 100%;
min-height: 80%; */
max-height: 100%;
}

View File

@ -1,67 +1,43 @@
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { SearchEmployee } from '../../_models/Employee/searchEmployee'; import {SearchEmployee} from '../../_models/Employee/searchEmployee';
import { LeaveYear } from '../../_models/Leave/leaveYear'; import {LeaveYear} from '../../_models/Leave/leaveYear';
import { Leave } from '../../_models/Leave/leave'; import {Leave} from '../../_models/Leave/leave';
import { LeaveService } from '../../_services/leave/leave.service'; import {LeaveService} from '../../_services/leave/leave.service';
import { HRMNotificationService } from '../../app.notification.service'; import {HRMNotificationService} from '../../app.notification.service';
import { loadingPanelService } from '../../hrm-loding panel/loding.panel.service'; import {loadingPanelService} from '../../hrm-loding panel/loding.panel.service';
import { ApiService } from '../../app.api.service'; import {ApiService} from '../../app.api.service';
import { EnumStatus } from '../../_models/enums'; import {EnumStatus} from '../../_models/enums';
import { saveAs } from 'file-saver'; import {saveAs} from 'file-saver';
import { ReportServices } from '../../_services/reports/report.service'; import {ReportServices} from '../../_services/reports/report.service';
import { GlobalfunctionExtension } from 'src/app/_models/globalFunctions';
import { Router } from '@angular/router';
import { EmployeeServices } from 'src/app/_services/employee/employee.service';
import { AuthorizedPerson } from 'src/app/adhoc-feature/authorized-persons/authorizedPerson';
@Component({ @Component({
selector: 'app-emp-leave-balance', selector: 'app-emp-leave-balance',
templateUrl: './emp-leave-balance.component.html', templateUrl: './emp-leave-balance.component.html',
styleUrls: ['./emp-leave-balance.component.scss'] styleUrls: ['./emp-leave-balance.component.scss']
}) })
export class EmpLeaveBalanceComponent implements OnInit { export class EmpLeaveBalanceComponent implements OnInit {
selectedEmployee: SearchEmployee; selectedEmployee: SearchEmployee;
leaveYearList: LeaveYear[] = []; leaveYearList: LeaveYear[] = [];
leaveList: Leave[] = []; leaveList: Leave[] = [];
leaveYearId: number; leaveYearId: number;
PDFTitle = null; PDFTitle = 'Employee Leave Balance';
showPopUp = false; showPopUp = false;
data: Array<Object>; data: Array<Object>;
src: any; src: any;
base64Data: any; base64Data: any;
leaveId: number; leaveId: number;
fromDate: Date = GlobalfunctionExtension.getFirstDateofYear(new Date());
toDate: Date = GlobalfunctionExtension.getLastDateOfYear(new Date());
authPersons: AuthorizedPerson[];
personID: number;
reportRoute: any;
reportID: number;
constructor(public leaveService: LeaveService, constructor(public leaveService: LeaveService,
public notificationService: HRMNotificationService, public notificationService: HRMNotificationService,
public reportService: ReportServices, public reportService: ReportServices,
public loadingPanel: loadingPanelService, public loadingPanel: loadingPanelService,
public apiService: ApiService, public apiService: ApiService) {
public router: Router, this.apiService.selectedMenuName = 'Employee Leave Balance';
public employeeService: EmployeeServices) {
this.reportRoute = this.router.url.split('/').pop();
debugger
if (this.reportRoute == 'emp-leave-balance') {
this.apiService.selectedMenuName = 'Employee Leave Balance';
this.PDFTitle = 'Employee Leave Balance';
this.reportID = 724;
}
else if (this.reportRoute == 'leave-register') {
this.apiService.selectedMenuName = 'Leave Register Report';
this.PDFTitle = 'Leave Register Bangla';
this.reportID = 727;
}
} }
ngOnInit(): void { ngOnInit(): void {
this.loadLeaveYear(); this.loadLeaveYear();
this.loadAuthPersons();
} }
public GetSelectedEmployee(childData) { public GetSelectedEmployee(childData) {
@ -74,11 +50,10 @@ export class EmpLeaveBalanceComponent implements OnInit {
this.leaveYearList = resp; this.leaveYearList = resp;
}, },
(err) => { (err) => {
this.notificationService.showError(err.error); console.log(err);
this.loadingPanel.ShowLoadingPanel = false;
}, },
() => { () => {
// console.log(this.leaveYearList); console.log(this.leaveYearList);
} }
); );
this.leaveService.getAllLeave(EnumStatus.Active, '', '').subscribe( this.leaveService.getAllLeave(EnumStatus.Active, '', '').subscribe(
@ -86,72 +61,40 @@ export class EmpLeaveBalanceComponent implements OnInit {
this.leaveList = resp; this.leaveList = resp;
}, },
(err) => { (err) => {
this.notificationService.showError(err.error); console.log(err);
this.loadingPanel.ShowLoadingPanel = false;
}, },
() => { () => {
// console.log(this.leaveList); console.log(this.leaveList);
/*this.leaveList.forEach(x => { /*this.leaveList.forEach(x => {
x.code = x.code.toLowerCase() + x.id; x.code = x.code.toLowerCase() + x.id;
});*/ });*/
}, },
); );
} }
loadAuthPersons() {
this.employeeService.getAuthorizedPerson().subscribe(
(resp) => {
this.authPersons = resp;
debugger;
},
(err) => {
this.notificationService.showError(err.error);
this.loadingPanel.ShowLoadingPanel = false;
}
);
}
preview(reportType: string) { preview() {
// const leave = this.leaveYearList.find(l => l.id === this.leaveYearId); const leave = this.leaveYearList.find(l => l.id === this.leaveYearId);
// if (leave === null) { if (leave === null) {
// this.notificationService.showError('Please select leave year!'); this.notificationService.showError('Please select leave year!');
// return; return;
// } }
let data; const data = {
if (this.reportID == 724) reportid: 97,
data = { itemid: this.leaveId,
reportid: this.reportID, bankId: null,
itemid: this.leaveId, empIds: this.selectedEmployee.employeeID.toString(),
bankId: null, reportType: 'PDF',
empIds: this.selectedEmployee.employeeID.toString(), fromDate: leave.startDate,
reportType: reportType, toDate: leave.endDate
fromDate: this.fromDate, };
toDate: this.toDate
};
else if (this.reportID == 727)
data = {
reportid: this.reportID,
itemid: this.personID,
empIds: this.selectedEmployee.employeeID.toString(),
reportType: reportType,
};
this.loadingPanel.ShowLoadingPanel = true; this.loadingPanel.ShowLoadingPanel = true;
if (reportType === 'PDF')
this.showPopUp = true;
this.reportService.getCommonReportData(data).subscribe( this.reportService.getCommonReportData(data).subscribe(
(resp: any) => { (resp: any) => {
// if (data.reportType === 'PDF') { if (data.reportType === 'PDF') {
// this.src = URL.createObjectURL(this.b64toBlob(resp, 'data:application/pdf;base64', 1024)); this.src = URL.createObjectURL(this.b64toBlob(resp, 'data:application/pdf;base64', 1024));
// this.showPopUp = true; this.showPopUp = true;
// } else if (data.reportType === 'EXCEL') { } else if (data.reportType === 'EXCEL') {
// this.downloadFile(resp);
// }
if (reportType === 'PDF') {
this.src = URL.createObjectURL(this.b64toBlob(resp, 'application/pdf', 1024));
var element = <HTMLIFrameElement>(document.getElementById("pdf-viewer-report"));
element.src = this.src;
} else if (reportType === 'EXCEL') {
this.downloadFile(resp); this.downloadFile(resp);
} }
}, },
@ -159,7 +102,6 @@ export class EmpLeaveBalanceComponent implements OnInit {
console.log(err); console.log(err);
this.notificationService.showError(err.error); this.notificationService.showError(err.error);
this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
this.showPopUp = false;
}, },
() => { () => {
@ -190,7 +132,7 @@ export class EmpLeaveBalanceComponent implements OnInit {
byteArrays.push(byteArray); byteArrays.push(byteArray);
} }
const blob = new Blob(byteArrays, { type: contentType }); const blob = new Blob(byteArrays, {type: contentType});
return blob; return blob;
} }

View File

@ -1,50 +0,0 @@
<app-loading-panel> </app-loading-panel>
<div class="card card-w-card">
<div class="p-grid" style="margin: auto;">
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
<label>Select Employee:</label>
</div>
<div class="p-col-12 p-md-6 p-lg-2">
<app-employee-picker [MultiSelect]="true"
(ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker>
</div>
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
<label>Leave Year:</label>
</div>
<div class="p-col-12 p-md-6 p-lg-2">
<kendo-dropdownlist [data]="leaveYearList" [(ngModel)]="leaveYearId"
[defaultItem]="{ name: 'Select a Leave Year', id: null }" [textField]="'name'" [valueField]="'id'"
[valuePrimitive]="true" style="width: 100%" class="form-control form-control-sm input-sm">
</kendo-dropdownlist>
</div>
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
<label>Encash From Month:</label>
</div>
<div class="p-col-12 p-md-6 p-lg-2">
<kendo-datepicker format="MMM yyyy" [(ngModel)]="fromDate" style="width:100%"></kendo-datepicker>
</div>
<div class="p-col-12 p-md-12 p-lg-12" align="right">
<button type="button" kendoButton icon="file-pdf" [primary]="true" (click)="preview('PDF')"
style="margin-right: 10px;">Preview</button>
<button type="button" kendoButton icon="file-excel" [primary]="true"
(click)="preview('EXCEL')">Export</button>
</div>
</div>
</div>
<div class="card" *ngIf="showPopUp" class="blur-background">
<kendo-window [height]="600" class='window-viewer' title="{{PDFTitle}}" *ngIf="showPopUp" (close)="closeForm()">
<!-- [height]="600" [style]="{'min-width': '70%','max-width': '100%', 'max-height': '100%'}"> -->
<app-loading-panel> </app-loading-panel>
<div class='embed-responsive'>
<iframe class="pdf-viewer" id="pdf-viewer-report" type='application/pdf' [zoom]="zoomLevel"></iframe>
</div>
</kendo-window>
</div>

View File

@ -1,173 +0,0 @@
import { Component, OnInit } from '@angular/core';
import { SearchEmployee } from 'src/app/_models/Employee/searchEmployee';
import { LeaveYear } from 'src/app/_models/Leave/leaveYear';
import { LeaveService } from 'src/app/_services/leave/leave.service';
import { ReportServices } from 'src/app/_services/reports/report.service';
import { ApiService } from 'src/app/app.api.service';
import { HRMNotificationService } from 'src/app/app.notification.service';
import { loadingPanelService } from 'src/app/hrm-loding panel/loding.panel.service';
import { saveAs } from 'file-saver';
import { Router } from '@angular/router';
@Component({
selector: 'app-leave-encashment-report',
templateUrl: './leave-encashment-report.component.html',
styles: [`
.embed-responsive {
position: relative;
display: block;
/* height: 0; */
padding: 0;
overflow: hidden;
/* padding-bottom:68%; */
background: white;
}
.pdf-viewer {
width: 100%;
/* min-height: 700px; */
height: 100%;
/* min-width: 275px; */
/* max-height: 100%;
background-color: white !important; */
}
.window-viewer {
/* position: relative;
top: 0;
left: 0;
transform: translate(5%, 5%); */
width: 70%;
/* height: 90%; */
/* min-width: 300px; */
/* max-width: 100%;
min-height: 80%; */
max-height: 100%;
}`
]
})
export class LeaveEncashmentReportComponent implements OnInit {
selectedEmployees: SearchEmployee[] = [];
leaveYearList: LeaveYear[] = [];
leaveYearId = undefined;
fromDate: Date = new Date();
empIds = '';
PDFTitle = 'Leave Encashment';
showPopUp = false;
src: any;
base64Data: any;
constructor(public leaveService: LeaveService, public notificationService: HRMNotificationService,
public loadingPanel: loadingPanelService, public apiService: ApiService,
public reportService: ReportServices,
public router: Router) {
this.apiService.selectedMenuName = 'Employee Encashment Report';
}
ngOnInit(): void {
this.loadLeaveYear();
}
loadLeaveYear() {
this.leaveService.getAllLeaveYear().subscribe(
(resp) => {
this.leaveYearList = resp;
},
(err) => {
console.log(err);
},
() => {
}
);
}
public GetSelectedEmployee(childData) {
this.selectedEmployees = childData;
}
preview(reportType: string) {
if (this.selectedEmployees == undefined || this.selectedEmployees.length == 0) {
this.notificationService.showWarning('Select employees for the report');
return;
}
if (this.leaveYearId == undefined || this.leaveYearId == null) {
this.notificationService.showWarning('Select Leave Year');
return;
}
debugger
this.selectedEmployees.forEach(x => {
if (this.empIds !== '') {
this.empIds += ',';
}
this.empIds += x.employeeID;
});
const data = {
reportid: 728,
itemid: this.leaveYearId,
empIds: this.empIds,
fromDate: this.fromDate,
reportType: reportType,
};
this.loadingPanel.ShowLoadingPanel = true;
if (reportType === 'PDF')
this.showPopUp = true;
this.reportService.getCommonReportData(data).subscribe(
(resp: any) => {
debugger;
if (reportType === 'PDF') {
this.src = URL.createObjectURL(this.b64toBlob(resp, 'application/pdf', 1024));
var element = <HTMLIFrameElement>(document.getElementById("pdf-viewer-report"));
element.src = this.src;
} else if (reportType === 'EXCEL') {
this.downloadFile(resp);
}
},
(err) => {
console.log(err);
this.notificationService.showError(err.error);
this.loadingPanel.ShowLoadingPanel = false;
this.showPopUp = false;
},
() => {
this.loadingPanel.ShowLoadingPanel = false;
// this.loadGrid();
}
);
}
downloadFile(blobContent) {
const blob = new Blob([this.b64toBlob(blobContent, 'application/data:application/vnd.ms-excel', 1024)], {});
saveAs(blob, this.PDFTitle + '.xls');
}
b64toBlob(b64Data, contentType, sliceSize) {
const byteCharacters = atob(b64Data);
const byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
const slice = byteCharacters.slice(offset, offset + sliceSize);
const byteNumbers = new Array(slice.length);
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
const blob = new Blob(byteArrays, { type: contentType });
return blob;
}
closeForm(): void {
this.showPopUp = false;
}
}

View File

@ -1,32 +0,0 @@
.embed-responsive {
position: relative;
display: block;
/* height: 0; */
padding: 0;
overflow: hidden;
/* padding-bottom:68%; */
background: white;
}
.pdf-viewer {
width: 100%;
/* min-height: 700px; */
height: 100%;
/* min-width: 275px; */
/* max-height: 100%;
background-color: white !important; */
}
.window-viewer {
/* position: relative;
top: 0;
left: 0;
transform: translate(5%, 5%); */
width: 70%;
/* height: 90%; */
/* min-width: 300px; */
/* max-width: 100%;
min-height: 80%; */
max-height: 100%;
}

View File

@ -4,14 +4,14 @@
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
<label>Select Employee:</label> <label>Select Employee:</label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-2"> <div class="p-col-12 p-md-6 p-lg-3">
<app-employee-picker [MultiSelect]="true" <app-employee-picker [MultiSelect]="true"
(ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker> (ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;"> <div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
<label>Leave Year:</label> <label>Leave Year:</label>
</div> </div>
<div class="p-col-12 p-md-6 p-lg-2"> <div class="p-col-12 p-md-6 p-lg-3">
<kendo-dropdownlist [data]="leaveYearList" <kendo-dropdownlist [data]="leaveYearList"
[(ngModel)]="leaveYearId" [(ngModel)]="leaveYearId"
[defaultItem]="{ name: 'Select a Leave Year', id: null }" [defaultItem]="{ name: 'Select a Leave Year', id: null }"
@ -22,14 +22,13 @@
class="form-control form-control-sm input-sm"> class="form-control form-control-sm input-sm">
</kendo-dropdownlist> </kendo-dropdownlist>
</div> </div>
<div class="p-col-12 p-md-12 p-lg-4" align="right"> <div class="p-col-12 p-md-12 p-lg-2" align="right">
<button type="button" kendoButton icon="file-pdf" [primary]="true" (click)="preview('PDF')" style="margin-right: 10px;">Preview</button> <button type="button" class="k-primary" (click)="preview()" icon="preview" kendoButton>Preview</button>
<button type="button" kendoButton icon="file-excel" [primary]="true" (click)="preview('EXCEL')">Export</button>
</div> </div>
</div> </div>
</div> </div>
<!-- <div class="card"> <div class="card">
<div class="p-grid"> <div class="p-grid">
<div class="p-col-12 p-md-12 p-lg-12"> <div class="p-col-12 p-md-12 p-lg-12">
<kendo-grid [data]="data" [resizable]="true" [height]="480"> <kendo-grid [data]="data" [resizable]="true" [height]="480">
@ -49,14 +48,4 @@
</kendo-grid> </kendo-grid>
</div> </div>
</div> </div>
</div> -->
<div class="card" *ngIf="showPopUp" class="blur-background">
<kendo-window [height]="600" class='window-viewer' title="{{PDFTitle}}" *ngIf="showPopUp" (close)="closeForm()">
<!-- [height]="600" [style]="{'min-width': '70%','max-width': '100%', 'max-height': '100%'}"> -->
<app-loading-panel> </app-loading-panel>
<div class='embed-responsive'>
<iframe class="pdf-viewer" id="pdf-viewer-report" type='application/pdf' [zoom]="zoomLevel"></iframe>
</div>
</kendo-window>
</div> </div>

View File

@ -1,16 +1,13 @@
import { Component, OnInit } from '@angular/core'; import {Component, OnInit} from '@angular/core';
import { SearchEmployee } from '../../_models/Employee/searchEmployee'; import {SearchEmployee} from '../../_models/Employee/searchEmployee';
import { LeaveYear } from '../../_models/Leave/leaveYear'; import {LeaveYear} from '../../_models/Leave/leaveYear';
import { LeaveService } from '../../_services/leave/leave.service'; import {LeaveService} from '../../_services/leave/leave.service';
import { MultipleEmployeeLeaveBalance } from '../../_models/report/multipleEmployeeLeaveBalance'; import {MultipleEmployeeLeaveBalance} from '../../_models/report/multipleEmployeeLeaveBalance';
import { Leave } from '../../_models/Leave/leave'; import {Leave} from '../../_models/Leave/leave';
import { EnumStatus } from '../../_models/enums'; import {EnumStatus} from '../../_models/enums';
import { HRMNotificationService } from '../../app.notification.service'; import {HRMNotificationService} from '../../app.notification.service';
import { loadingPanelService } from '../../hrm-loding panel/loding.panel.service'; import {loadingPanelService} from '../../hrm-loding panel/loding.panel.service';
import { ApiService } from '../../app.api.service'; import {ApiService} from '../../app.api.service';
import { ReportServices } from 'src/app/_services/reports/report.service';
import { saveAs } from 'file-saver';
import { Router } from '@angular/router';
@Component({ @Component({
selector: 'app-multiple-emp-leave-balance', selector: 'app-multiple-emp-leave-balance',
@ -28,22 +25,9 @@ export class MultipleEmpLeaveBalanceComponent implements OnInit {
temp = 'Header boss'; temp = 'Header boss';
cols: { colfiled: string, colName: string, width: string, color: string }[]; cols: { colfiled: string, colName: string, width: string, color: string }[];
reportType: any;
PDFTitle = 'Employee Leave Balance';
showPopUp = false;
src: any;
base64Data: any;
constructor(public leaveService: LeaveService, public notificationService: HRMNotificationService, constructor(public leaveService: LeaveService, public notificationService: HRMNotificationService,
public loadingPanel: loadingPanelService, public apiService: ApiService, public loadingPanel: loadingPanelService, public apiService: ApiService) {
public reportService: ReportServices, this.apiService.selectedMenuName = 'Employee Leave Balance';
public router: Router) {
this.reportType = this.router.url.split('/').pop();
debugger
if(this.reportType == 'multiple-emp-leave-balance')
this.apiService.selectedMenuName = 'Multiple Employee Leave Balance';
else if(this.reportType == 'multiple-emp-leave-report')
this.apiService.selectedMenuName = 'Employee Leave Report';
} }
ngOnInit() { ngOnInit() {
@ -81,62 +65,63 @@ export class MultipleEmpLeaveBalanceComponent implements OnInit {
this.selectedEmployees = childData; this.selectedEmployees = childData;
} }
// preview() { preview() {
// /*this.selectedEmployees.forEach(x => { /*this.selectedEmployees.forEach(x => {
// if (this.empIds.length !== 0) { if (this.empIds.length !== 0) {
// this.empIds += ','; this.empIds += ',';
// } }
// this.empIds += x.employeeID; this.empIds += x.employeeID;
// });*/ });*/
// this.loadingPanel.ShowLoadingPanel = true; this.loadingPanel.ShowLoadingPanel = true;
// if (this.selectedEmployees == undefined || this.selectedEmployees.length == 0) { if (this.selectedEmployees == undefined || this.selectedEmployees.length == 0) {
// this.notificationService.showError('Select employees for the report'); this.notificationService.showError('Select employees for the report');
// this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
// return; return;
// } }
// this.selectedEmployees[0].departmentID = this.leaveYearId; this.selectedEmployees[0].departmentID = this.leaveYearId;
// // this.leaveService.getMultipleEmployeeLeaveBalance(this.selectedEmployees, ).subscribe( // this.leaveService.getMultipleEmployeeLeaveBalance(this.selectedEmployees, ).subscribe(
// this.leaveService.getMultipleEmployeeLeaveBalance(this.leaveYearId, this.selectedEmployees).subscribe( this.leaveService.getMultipleEmployeeLeaveBalance(this.leaveYearId, this.selectedEmployees).subscribe(
// (resp) => { (resp) => {
// debugger; debugger;
// this.data = resp; this.data = resp;
// }, },
// (err) => { (err) => {
// this.notificationService.showError(err.error); this.notificationService.showError(err.error);
// this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
// }, },
// () => { () => {
// this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
// if (this.data.length > 0) { if (this.data.length > 0) {
// this.cols = []; this.cols = [];
// for (var i = 0; i < Object.keys(this.data[0]).length; i++) { for (var i = 0; i < Object.keys(this.data[0]).length; i++) {
// if (i == 0) { if (i == 0) {
// this.cols.push({ this.cols.push({
// 'colfiled': Object.keys(this.data[0])[i], 'colName': this.capitalizeFirstLetter(Object.keys(this.data[0])[i]) == 'EmpNo' ? 'Emp Id' :this.capitalizeFirstLetter(Object.keys(this.data[0])[i]) , 'colfiled': Object.keys(this.data[0])[i], 'colName': this.capitalizeFirstLetter(Object.keys(this.data[0])[i]) == 'EmpNo' ? 'Emp Id' :this.capitalizeFirstLetter(Object.keys(this.data[0])[i]) ,
// 'width': '80', 'color': 'transparent' 'width': '80', 'color': 'transparent'
// }); });
// } else if (i == 1) { } else if (i == 1) {
// this.cols.push({ this.cols.push({
// 'colfiled': Object.keys(this.data[0])[i], 'colName': this.capitalizeFirstLetter(Object.keys(this.data[0])[i]), 'colfiled': Object.keys(this.data[0])[i], 'colName': this.capitalizeFirstLetter(Object.keys(this.data[0])[i]),
// 'width': '100', 'color': 'transparent' 'width': '100', 'color': 'transparent'
// }); });
// } else { } else {
// this.cols.push({ this.cols.push({
// 'colfiled': Object.keys(this.data[0])[i], 'colName': this.replaceUnderscoresWithSpaces(Object.keys(this.data[0])[i].toUpperCase()), 'colfiled': Object.keys(this.data[0])[i], 'colName': this.replaceUnderscoresWithSpaces(Object.keys(this.data[0])[i].toUpperCase()),
// 'width': '65', 'color': 'transparent' 'width': '65', 'color': 'transparent'
// }); });
// } }
// } }
// } }
}
);
}
// }
// );
// }
public capitalizeFirstLetter(inputString: string): string { public capitalizeFirstLetter(inputString: string): string {
debugger; debugger;
if (inputString.length === 0) { if (inputString.length === 0) {
return inputString; // Return an empty string if input is empty return inputString; // Return an empty string if input is empty
} }
return inputString.charAt(0).toUpperCase() + inputString.slice(1); return inputString.charAt(0).toUpperCase() + inputString.slice(1);
} }
@ -144,92 +129,4 @@ export class MultipleEmpLeaveBalanceComponent implements OnInit {
if (!str) return str; if (!str) return str;
return str.replace(/_/g, ' '); return str.replace(/_/g, ' ');
} }
preview(reportType: string) {
if (this.selectedEmployees == undefined || this.selectedEmployees.length == 0) {
this.notificationService.showWarning('Select employees for the report');
return;
}
if (this.leaveYearId == undefined || this.leaveYearId == null) {
this.notificationService.showWarning('Select Leave Year');
return;
}
debugger
this.selectedEmployees.forEach(x => {
if (this.empIds !== '') {
this.empIds += ',';
}
this.empIds += x.employeeID;
});
let reportid
if(this.reportType == 'multiple-emp-leave-balance')
reportid = 725;
else if(this.reportType == 'multiple-emp-leave-report')
reportid = 726;
const data = {
reportid: reportid,
itemid: this.leaveYearId,
empIds: this.empIds,
reportType: reportType,
};
this.loadingPanel.ShowLoadingPanel = true;
if (reportType === 'PDF')
this.showPopUp = true;
this.reportService.getCommonReportData(data).subscribe(
(resp: any) => {
debugger;
if (reportType === 'PDF') {
this.src = URL.createObjectURL(this.b64toBlob(resp, 'application/pdf', 1024));
var element = <HTMLIFrameElement>(document.getElementById("pdf-viewer-report"));
element.src = this.src;
} else if (reportType === 'EXCEL') {
this.downloadFile(resp);
}
},
(err) => {
console.log(err);
this.notificationService.showError(err.error);
this.loadingPanel.ShowLoadingPanel = false;
this.showPopUp = false;
},
() => {
this.loadingPanel.ShowLoadingPanel = false;
// this.loadGrid();
}
);
}
downloadFile(blobContent) {
const blob = new Blob([this.b64toBlob(blobContent, 'application/data:application/vnd.ms-excel', 1024)], {});
saveAs(blob, this.PDFTitle + '.xls');
}
b64toBlob(b64Data, contentType, sliceSize) {
const byteCharacters = atob(b64Data);
const byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
const slice = byteCharacters.slice(offset, offset + sliceSize);
const byteNumbers = new Array(slice.length);
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
const blob = new Blob(byteArrays, { type: contentType });
return blob;
}
closeForm(): void {
this.showPopUp = false;
}
} }

View File

@ -119,9 +119,6 @@
<div class="p-col-12 p-md-6"> <div class="p-col-12 p-md-6">
<app-employee-picker (ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker> <app-employee-picker (ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker>
</div> </div>
<div *ngIf="hiddenMultiEmpNo && multiselect" class="p-col-12 p-md-6">
<input id="empNos" [(ngModel)]="multiEmpNo" style="width:100%" type="text" [placeholder]="'Input EmployeeIds'" pInputText>
</div>
</div> </div>
</div> </div>
</div> </div>

View File

@ -169,9 +169,6 @@ export class ReportViewerComponent implements OnInit {
public selectAllState: SelectAllCheckboxState = "unchecked"; public selectAllState: SelectAllCheckboxState = "unchecked";
multiselect = true; multiselect = true;
multiEmpNo: string = '';
hiddenMultiEmpNo = true;
emps: any[];
ngOnInit() { ngOnInit() {
//debugger //debugger
@ -198,20 +195,7 @@ export class ReportViewerComponent implements OnInit {
this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
}); });
} }
this.employeeService.getAllEmployeeNameAndNo().subscribe(
(x) => {
//console.log(x);
this.emps = x;
},
(x) => {
// console.log(x);
this.loadingPanel.ShowLoadingPanel = false;
},
() => {
this.setReportColumns(this.reportType);
this.loadingPanel.ShowLoadingPanel = false;
}
);
this.setSelectableSettings(); this.setSelectableSettings();
this.loadBank(); this.loadBank();
@ -277,13 +261,12 @@ export class ReportViewerComponent implements OnInit {
mode: 'multiple', // this.mode mode: 'multiple', // this.mode
}; };
} }
//#region setReportColumns
setReportColumns(reportType: any) { setReportColumns(reportType: any) {
debugger debugger
let reportName = ''; let reportName = '';
if (this.reportType === 'empDetailInfo') { if (this.reportType === 'empDetailInfo') {
this.apiService.selectedMenuName = 'Employee Detail Information'; this.apiService.selectedMenuName = 'Employee Detail Information';
this.hiddenExport = true;
const employeeBasicInfo = new EmployeeBasicInfo(); const employeeBasicInfo = new EmployeeBasicInfo();
this.dynamicColumnNames = [ this.dynamicColumnNames = [
{ sl: 1, columnName: 'employeeNo', columnHeader: 'Employee No', width: '80' }, { sl: 1, columnName: 'employeeNo', columnHeader: 'Employee No', width: '80' },
@ -1165,7 +1148,7 @@ export class ReportViewerComponent implements OnInit {
this.topview = "decade"; this.topview = "decade";
this.apiService.selectedMenuName = 'Employee Wise Card Information'; this.apiService.selectedMenuName = 'Employee Wise Card Information';
} }
else if (this.reportType === '721') { else if (this.reportType === '721' ) {
this.hiddenFromDate = false; this.hiddenFromDate = false;
this.hiddenToDate = false; this.hiddenToDate = false;
this.PDFTitle = 'Employee Basic Information'; this.PDFTitle = 'Employee Basic Information';
@ -1351,7 +1334,7 @@ export class ReportViewerComponent implements OnInit {
}; };
} }
} }
//#endregion
loadLeave() { loadLeave() {
let leave = []; let leave = [];
this.leaveYearService.getAllLeave(EnumStatus.Regardless).subscribe( this.leaveYearService.getAllLeave(EnumStatus.Regardless).subscribe(
@ -1524,18 +1507,7 @@ export class ReportViewerComponent implements OnInit {
if (this.selectedEmp !== undefined) { if (this.selectedEmp !== undefined) {
this.empIds = this.selectedEmp.employeeID.toString(); this.empIds = this.selectedEmp.employeeID.toString();
} }
if (this.multiEmpNo != null && this.multiEmpNo != '') { // debugger;
debugger;
const list = this.multiEmpNo.split(',');
this.empIds = '';
list.forEach(element => {
if (this.empIds !== '') {
this.empIds += ',';
}
let e = this.emps.find(e => e.employeeNo === element.trim());
this.empIds += e != undefined ? e.id : '';
});
}
// console.log(this.empIds); // console.log(this.empIds);
@ -1563,63 +1535,32 @@ export class ReportViewerComponent implements OnInit {
if (this.selectedEmp !== undefined) { if (this.selectedEmp !== undefined) {
selectedemps.push(this.selectedEmp); selectedemps.push(this.selectedEmp);
} }
// this.employeeService.getEmpDetailInfo(selectedemps).subscribe( this.employeeService.getEmpDetailInfo(selectedemps).subscribe(
// (resp) => { (resp) => {
// // this.employeeDetailInfos = resp; // this.employeeDetailInfos = resp;
// this.loadingPanel.ShowLoadingPanel = false;
// this.data = resp;
// //debugger;
// },
// (err) => {
// console.log(err);
// this.notificationService.showError(err.error);
// this.loadingPanel.ShowLoadingPanel = false;
// },
// () => {
// this.loadingPanel.ShowLoadingPanel = false;
// // console.log(this.data);
// for (let i = 0; i < this.data.length; i++) {
// this.data[i]['birthDate'] = this.data[i]['birthDate'] != null ?
// this.datePipe.transform(this.data[i]['birthDate'], 'dd MMM yyyy').toString() : "";
// this.data[i]['joiningDate'] = this.data[i]['joiningDate'] != null ?
// this.datePipe.transform(this.data[i]['joiningDate'], 'dd MMM yyyy').toString() : "";
// this.data[i]['dateOfConfirmation'] = this.data[i]['dateOfConfirmation'] != null ?
// this.datePipe.transform(this.data[i]['dateOfConfirmation'], 'dd MMM yyyy').toString() : "";
// }
// // debugger;
// this.showAny = true;
// this.loadGrid();
// }
// );
const data = {
reportid: this.reportType,
selectedReport: this.selectedReport,
empIds: this.empIds,
reportType: reportType
};
this.loadingPanel.ShowLoadingPanel = true;
if (reportType === 'PDF')
this.showPopUp = true;
this.reportService.getEmpDetailInfoReport(data).subscribe(
(resp: any) => {
if (reportType === 'PDF') {
// this.src = URL.createObjectURL(this.b64toBlob(resp, 'data:application/pdf;base64', 1024));
// this.showPopUp = true;
this.src = URL.createObjectURL(this.b64toBlob(resp, 'application/pdf', 1024));
var element = <HTMLIFrameElement>(document.getElementById("pdf-viewer-report"));
element.src = this.src;
} else if (reportType === 'EXCEL') {
this.downloadFile(resp);
}
this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
this.data = resp;
//debugger;
}, },
(err) => { (err) => {
this.closeForm();
console.log(err); console.log(err);
this.notificationService.showError(err.error); this.notificationService.showError(err.error);
this.loadingPanel.ShowLoadingPanel = false; this.loadingPanel.ShowLoadingPanel = false;
},
() => {
this.loadingPanel.ShowLoadingPanel = false;
// console.log(this.data);
for (let i = 0; i < this.data.length; i++) {
this.data[i]['birthDate'] = this.data[i]['birthDate'] != null ?
this.datePipe.transform(this.data[i]['birthDate'], 'dd MMM yyyy').toString() : "";
this.data[i]['joiningDate'] = this.data[i]['joiningDate'] != null ?
this.datePipe.transform(this.data[i]['joiningDate'], 'dd MMM yyyy').toString() : "";
this.data[i]['dateOfConfirmation'] = this.data[i]['dateOfConfirmation'] != null ?
this.datePipe.transform(this.data[i]['dateOfConfirmation'], 'dd MMM yyyy').toString() : "";
}
// debugger;
this.showAny = true;
this.loadGrid();
} }
); );
} }

View File

@ -31,7 +31,7 @@ import { CcWiseBonusSummaryComponent } from './cc-wise-bonus-summary/cc-wise-bon
import { CcwiseSalarySummaryComponent } from './ccwise-salary-summary/ccwise-salary-summary.component'; import { CcwiseSalarySummaryComponent } from './ccwise-salary-summary/ccwise-salary-summary.component';
import { CcwiseNewPfMemberWithAmountComponent } from './ccwise-new-pf-member-with-amount/ccwise-new-pf-member-with-amount.component'; import { CcwiseNewPfMemberWithAmountComponent } from './ccwise-new-pf-member-with-amount/ccwise-new-pf-member-with-amount.component';
import { EmployeeProfileReportsComponent } from './employee-profile-reports/employee-profile-reports.component'; import { EmployeeProfileReportsComponent } from './employee-profile-reports/employee-profile-reports.component';
import { LeaveEncashmentReportComponent } from './leave-encashment-report/leave-encashment-report.component';
const routes: Routes = [ const routes: Routes = [
{ path: 'report-viewer/36', component: ReportViewerComponent, canActivate: [AuthGuard] }, { path: 'report-viewer/36', component: ReportViewerComponent, canActivate: [AuthGuard] },
@ -73,9 +73,7 @@ const routes: Routes = [
{ path: 'report-viewer/dailyAbsentReport', component: ReportViewerComponent, canActivate: [AuthGuard] }, { path: 'report-viewer/dailyAbsentReport', component: ReportViewerComponent, canActivate: [AuthGuard] },
{ path: 'report-viewer/dailyAttnReport', component: ReportViewerComponent, canActivate: [AuthGuard] }, { path: 'report-viewer/dailyAttnReport', component: ReportViewerComponent, canActivate: [AuthGuard] },
{ path: 'multiple-emp-leave-balance', component: MultipleEmpLeaveBalanceComponent, canActivate: [AuthGuard] }, { path: 'multiple-emp-leave-balance', component: MultipleEmpLeaveBalanceComponent, canActivate: [AuthGuard] },
{ path: 'multiple-emp-leave-report', component: MultipleEmpLeaveBalanceComponent, canActivate: [AuthGuard] },
{ path: 'emp-leave-balance', component: EmpLeaveBalanceComponent, canActivate: [AuthGuard] }, { path: 'emp-leave-balance', component: EmpLeaveBalanceComponent, canActivate: [AuthGuard] },
{ path: 'leave-register', component: EmpLeaveBalanceComponent, canActivate: [AuthGuard] },
{ path: 'month-wise-leave-register', component: MonthWiseLeaveRegisterComponent, canActivate: [AuthGuard] }, { path: 'month-wise-leave-register', component: MonthWiseLeaveRegisterComponent, canActivate: [AuthGuard] },
{ path: 'leave-register', component: LeaveRegisterComponent, canActivate: [AuthGuard] }, { path: 'leave-register', component: LeaveRegisterComponent, canActivate: [AuthGuard] },
{ path: 'date-wise-job-card', component: DateWiseJobCardComponent, canActivate: [AuthGuard] }, { path: 'date-wise-job-card', component: DateWiseJobCardComponent, canActivate: [AuthGuard] },
@ -164,7 +162,6 @@ const routes: Routes = [
{ path: 'report-viewer/722', component: ReportViewerComponent, canActivate: [AuthGuard] }, { path: 'report-viewer/722', component: ReportViewerComponent, canActivate: [AuthGuard] },
{ path: 'report-viewer/723', component: ReportViewerComponent, canActivate: [AuthGuard] }, { path: 'report-viewer/723', component: ReportViewerComponent, canActivate: [AuthGuard] },
{ path: 'report-viewer/profile-reports', component: EmployeeProfileReportsComponent, canActivate: [AuthGuard] }, { path: 'report-viewer/profile-reports', component: EmployeeProfileReportsComponent, canActivate: [AuthGuard] },
{ path: 'report-viewer/leave-encashment-report', component: LeaveEncashmentReportComponent, canActivate: [AuthGuard] },
]; ];

View File

@ -49,7 +49,6 @@ import { CcWiseBonusSummaryComponent } from './cc-wise-bonus-summary/cc-wise-bon
import { CcwiseSalarySummaryComponent } from './ccwise-salary-summary/ccwise-salary-summary.component'; import { CcwiseSalarySummaryComponent } from './ccwise-salary-summary/ccwise-salary-summary.component';
import { CcwiseNewPfMemberWithAmountComponent } from './ccwise-new-pf-member-with-amount/ccwise-new-pf-member-with-amount.component'; import { CcwiseNewPfMemberWithAmountComponent } from './ccwise-new-pf-member-with-amount/ccwise-new-pf-member-with-amount.component';
import { EmployeeProfileReportsComponent } from './employee-profile-reports/employee-profile-reports.component'; import { EmployeeProfileReportsComponent } from './employee-profile-reports/employee-profile-reports.component';
import { LeaveEncashmentReportComponent } from './leave-encashment-report/leave-encashment-report.component';
@NgModule({ @NgModule({
declarations: [ declarations: [
@ -77,8 +76,7 @@ import { LeaveEncashmentReportComponent } from './leave-encashment-report/leave-
CcWiseBonusSummaryComponent, CcWiseBonusSummaryComponent,
CcwiseSalarySummaryComponent, CcwiseSalarySummaryComponent,
CcwiseNewPfMemberWithAmountComponent, CcwiseNewPfMemberWithAmountComponent,
EmployeeProfileReportsComponent, EmployeeProfileReportsComponent
LeaveEncashmentReportComponent
], ],
imports: [ imports: [
CommonModule, CommonModule,

File diff suppressed because one or more lines are too long

View File

@ -2697,7 +2697,6 @@ namespace HRM.UI.Controllers.Attendance
DateTime fromDate = DateTime.Today; DateTime fromDate = DateTime.Today;
DateTime toDate = DateTime.Today; DateTime toDate = DateTime.Today;
bool withoutEmployee = true; bool withoutEmployee = true;
bool overrideManualEntry = false;
List<SearchEmployee> emps = null; List<SearchEmployee> emps = null;
List<Employee> employees = null; List<Employee> employees = null;
int empid; int empid;
@ -2712,7 +2711,6 @@ namespace HRM.UI.Controllers.Attendance
fromDate = (DateTime)item["fromDate"].ToObject<DateTime>(); fromDate = (DateTime)item["fromDate"].ToObject<DateTime>();
toDate = (DateTime)item["toDate"].ToObject<DateTime>(); toDate = (DateTime)item["toDate"].ToObject<DateTime>();
withoutEmployee = (bool)item["isWithEmployee"].ToObject<bool>(); withoutEmployee = (bool)item["isWithEmployee"].ToObject<bool>();
overrideManualEntry = (bool)item["overrideManualEntry"].ToObject<bool>();
if (withoutEmployee == true) break; if (withoutEmployee == true) break;
if (withoutEmployee == false && emps == null) if (withoutEmployee == false && emps == null)
emps = new List<SearchEmployee>(); emps = new List<SearchEmployee>();
@ -2737,7 +2735,7 @@ namespace HRM.UI.Controllers.Attendance
for (DateTime attDate = fromDate; attDate <= toDate; attDate = attDate.AddDays(1)) for (DateTime attDate = fromDate; attDate <= toDate; attDate = attDate.AddDays(1))
{ {
new AttendanceProcess().Process(new DateTime(attDate.Year, attDate.Month, attDate.Day), new AttendanceProcess().Process(new DateTime(attDate.Year, attDate.Month, attDate.Day),
EnumProcessMode.Manual, (int)currentUser.PayrollTypeID, currentUser.UserID, employees, overrideManualEntry); EnumProcessMode.Manual, (int)currentUser.PayrollTypeID, currentUser.UserID, employees);
} }
} }
catch (Exception e) catch (Exception e)

View File

@ -1,33 +1,32 @@
using AutoMapper; using AutoMapper;
using HRM.BO;
using HRM.BO.Configuration;
using HRM.DA; using HRM.DA;
using HRM.DA;
using HRM.DA.Service;
using HRM.Service;
using HRM.UI.Api;
using HRM.UI.DTOs.Auth; using HRM.UI.DTOs.Auth;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Options;
using Microsoft.IdentityModel.Tokens; using Microsoft.IdentityModel.Tokens;
using Newtonsoft.Json;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Data;
using System.Data.Common;
using System.IdentityModel.Tokens.Jwt; using System.IdentityModel.Tokens.Jwt;
using System.IO;
using System.Linq; using System.Linq;
using System.Net;
using System.Net.Http;
using System.Reflection;
using System.Security.Claims; using System.Security.Claims;
using System.Security.Cryptography; using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using HRM.BO;
using System.Net.Http;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Authorization;
using Microsoft.Extensions.Options;
using HRM.UI.Api;
using System.Text;
using HRM.BO.Configuration;
using Newtonsoft.Json;
using System.Data;
using System.Net;
using System.Reflection;
using HRM.DA.Service;
using HRM.Service;
using HRM.DA;
using System.IO;
namespace HRM.UI.Controllers namespace HRM.UI.Controllers
{ {
@ -1275,27 +1274,6 @@ namespace HRM.UI.Controllers
} }
return Ok(dataPermission.ID); return Ok(dataPermission.ID);
} }
[HttpPost("addPermissions")]
public ActionResult addPermissions(List<DataPermission> dataPermissions)
{
CurrentUser currentUser = CurrentUser.GetCurrentUser(HttpContext.User);
try
{
foreach (var item in dataPermissions)
{
item.PermissionStatus = EnumMenuPermissionStatus.Approved;
item.CreatedBy = currentUser.UserID;
item.CreatedDate = DateTime.Now;
}
_dataPermissionService.Save(dataPermissions);
}
catch (Exception e)
{
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
}
return Ok();
}
[HttpGet("loadDataPermission/{userid}/{payrolltypeid}")] [HttpGet("loadDataPermission/{userid}/{payrolltypeid}")]
public ActionResult loadDataPermission(int userid, int payrolltypeid) public ActionResult loadDataPermission(int userid, int payrolltypeid)

View File

@ -1861,12 +1861,12 @@ namespace HRM.UI.Controllers
foreach (var row in ds.Tables[0].AsEnumerable()) foreach (var row in ds.Tables[0].AsEnumerable())
{ {
EmployeeDetailInfo temp = new EmployeeDetailInfo (); EmployeeDetailInfo temp = new EmployeeDetailInfo ();
//Employee emp = new EmployeeService().GetFromAll(row["EMPLOYEENO"].ToString(), (int)currentUser.PayrollTypeID); Employee emp = new EmployeeService().GetFromAll(row["EMPLOYEENO"].ToString(), (int)currentUser.PayrollTypeID);
//Department tempDepartment = null; Department tempDepartment = null;
//if (emp!= null) if (emp!= null)
//{ {
// tempDepartment = emp.DepartmentID != null ? oDepartment.Find(item => item.ID == emp.DepartmentID) : null; tempDepartment = emp.DepartmentID != null ? oDepartment.Find(item => item.ID == emp.DepartmentID) : null;
//} }
temp.EmployeeNo = row["EmployeeNo"] == null ? "" : row.Field<string>("EmployeeNo"); temp.EmployeeNo = row["EmployeeNo"] == null ? "" : row.Field<string>("EmployeeNo");
temp.Name = row["Name"] == null ? "" : row.Field<string>("Name"); temp.Name = row["Name"] == null ? "" : row.Field<string>("Name");
@ -1905,75 +1905,70 @@ namespace HRM.UI.Controllers
Department tire2 = null; Department tire2 = null;
Department tire1 = null; Department tire1 = null;
//if (tempDepartment != null) if (tempDepartment != null)
//{ {
// if (tempDepartment.ParentID != null) if (tempDepartment.ParentID != null)
// { {
// for (int i = (int)tempDepartment.Tier; i > 0; i--) for (int i = (int)tempDepartment.Tier; i > 0; i--)
// { {
// if (i == 5) if (i == 5)
// { {
// tire5 = oDepartment.Find(x => x.ID == tempDepartment.ID); tire5 = oDepartment.Find(x => x.ID == tempDepartment.ID);
// } }
// if (i == 4) if (i == 4)
// { {
// if (tire5 != null) if (tire5 != null)
// { {
// tire4 = oDepartment.Find(x => x.ID == tire5.ParentID); tire4 = oDepartment.Find(x => x.ID == tire5.ParentID);
// } }
// else else
// { {
// tire4 = oDepartment.Find(x => x.ID == tempDepartment.ID); tire4 = oDepartment.Find(x => x.ID == tempDepartment.ID);
// } }
// } }
// if (i == 3) if (i == 3)
// { {
// if (tire4 != null) if (tire4 != null)
// { {
// tire3 = oDepartment.Find(x => x.ID == tire4.ParentID); tire3 = oDepartment.Find(x => x.ID == tire4.ParentID);
// } }
// else else
// { {
// tire3 = oDepartment.Find(x => x.ID == tempDepartment.ID); tire3 = oDepartment.Find(x => x.ID == tempDepartment.ID);
// } }
// } }
// if (i == 2) if (i == 2)
// { {
// if (tire3 != null) if (tire3 != null)
// { {
// tire2 = oDepartment.Find(x => x.ID == tire3.ParentID); tire2 = oDepartment.Find(x => x.ID == tire3.ParentID);
// } }
// else else
// { {
// tire2 = oDepartment.Find(x => x.ID == tempDepartment.ID); tire2 = oDepartment.Find(x => x.ID == tempDepartment.ID);
// } }
// } }
// if (i == 1) if (i == 1)
// { {
// if (tire2 != null) if (tire2 != null)
// { {
// tire1 = oDepartment.Find(x => x.ID == tire2.ParentID); tire1 = oDepartment.Find(x => x.ID == tire2.ParentID);
// } }
// else else
// { {
// tire1 = oDepartment.Find(x => x.ID == tempDepartment.ID); tire1 = oDepartment.Find(x => x.ID == tempDepartment.ID);
// } }
// } }
// } }
// } }
// temp.deptireOne = (tire1 == null) ? "" : tire1.Name; temp.deptireOne = (tire1 == null) ? "" : tire1.Name;
// temp.deptireTwo = (tire2 == null) ? "" : tire2.Name; temp.deptireTwo = (tire2 == null) ? "" : tire2.Name;
// temp.deptireThree = (tire3 == null) ? "" : tire3.Name; temp.deptireThree = (tire3 == null) ? "" : tire3.Name;
// temp.deptireFour = (tire4 == null) ? "" : tire4.Name; temp.deptireFour = (tire4 == null) ? "" : tire4.Name;
// temp.deptireFive = (tire5 == null) ? "" : tire5.Name; temp.deptireFive = (tire5 == null) ? "" : tire5.Name;
//} }
temp.deptireOne = (tire1 == null) ? "" : tire1.Name;
temp.deptireTwo = (tire2 == null) ? "" : tire2.Name;
temp.deptireThree = (tire3 == null) ? "" : tire3.Name;
temp.deptireFour = (tire4 == null) ? "" : tire4.Name;
temp.deptireFive = (tire5 == null) ? "" : tire5.Name;
temp.Designation = row["DESIGNATION"] == null ? "" : row.Field<string>("DESIGNATION"); temp.Designation = row["DESIGNATION"] == null ? "" : row.Field<string>("DESIGNATION");
temp.Grade = row["GRADE"] == null ? "" : row.Field<string>("GRADE"); temp.Grade = row["GRADE"] == null ? "" : row.Field<string>("GRADE");
@ -2170,7 +2165,6 @@ namespace HRM.UI.Controllers
ec.PresentAddressInBangla = presentAddressInBangla; ec.PresentAddressInBangla = presentAddressInBangla;
ec.PermanentAddressInBangla = presentAddressInBangla; ec.PermanentAddressInBangla = presentAddressInBangla;
_hrEmployeeService.SaveContact(ec); _hrEmployeeService.SaveContact(ec);
return Ok(ec.ID);
} }
} }
catch (Exception ex) catch (Exception ex)

View File

@ -119,13 +119,7 @@ namespace HRM.UI.Controllers
{ {
try try
{ {
List<EmpLifeCycle> empLifeCycles = this._lifeCycleService.GetEmpID(EmpID); return Ok(this._lifeCycleService.GetEmpID(EmpID));
List<User> users = _userService.GetAll();
foreach (var empLifeCycle in empLifeCycles)
{
empLifeCycle.CreatedByUser = users.Find(u=> u.ID == empLifeCycle.CreatedBy)?.UserName;
}
return Ok(empLifeCycles);
} }
catch (Exception ex) catch (Exception ex)
{ {

View File

@ -816,7 +816,7 @@ namespace HRM.UI.Controllers
ltemplate.Type = EnumDocType.Desktop_Letter; ltemplate.Type = EnumDocType.Desktop_Letter;
ltemplate.TypeID = (int)EnumDocType.Desktop_Letter; ltemplate.TypeID = (int)EnumDocType.Desktop_Letter;
lFileName = "Staff.docx"; lFileName = "Staff.doc";
} }
else else
{ {
@ -828,7 +828,7 @@ namespace HRM.UI.Controllers
ltemplate.Type = EnumDocType.Desktop_Letter; ltemplate.Type = EnumDocType.Desktop_Letter;
ltemplate.TypeID = (int)EnumDocType.Desktop_Letter; ltemplate.TypeID = (int)EnumDocType.Desktop_Letter;
lFileName = "Worker.docx"; lFileName = "Worker.doc";
} }

View File

@ -633,7 +633,7 @@ namespace HRM.UI.Controllers.Report
bytes = rptLeave.ShowCCWiseLeaveEncashmentReturn(itemid, payrollTypeId, reportType); bytes = rptLeave.ShowCCWiseLeaveEncashmentReturn(itemid, payrollTypeId, reportType);
break; break;
case EnumReportType.DigitalServiceBook: case EnumReportType.DigitalServiceBook:
bytes = new rptDigitalServiceBook().DigitalServiceBook(currentUser.EmployeeID.HasValue ? currentUser.EmployeeID.Value : 0, (int)currentUser.PayrollTypeID, fromDate, sEmpIDs, itemid == 0 ? null : itemid, reportType); bytes = new rptDigitalServiceBook().DigitalServiceBook(currentUser.EmployeeID.HasValue ? currentUser.EmployeeID.Value : 0, (int)currentUser.PayrollTypeID, fromDate, sEmpIDs, reportType);
break; break;
case EnumReportType.SalaryAllocationReportEmployeeWise: case EnumReportType.SalaryAllocationReportEmployeeWise:
bytes = new rptJV().showJVSalaryDetailEmployeeWReport(1, GlobalFunctions.LastDateOfMonth(fromDate), null, payrollTypeId, reportType); bytes = new rptJV().showJVSalaryDetailEmployeeWReport(1, GlobalFunctions.LastDateOfMonth(fromDate), null, payrollTypeId, reportType);
@ -814,21 +814,6 @@ namespace HRM.UI.Controllers.Report
case EnumReportType.LifeCycleDeletedHistor: case EnumReportType.LifeCycleDeletedHistor:
bytes = new rptEmployee().GetEmpLFDeletedHistory(sEmpIDs, (int)currentUser.PayrollTypeID, reportType); bytes = new rptEmployee().GetEmpLFDeletedHistory(sEmpIDs, (int)currentUser.PayrollTypeID, reportType);
break; break;
case EnumReportType.SingleEmpLeaveBalance:
bytes = new rptEcho().ShowEmployeeIndvLeaveBalance(sEmpIDs, fromDate, toDate, itemid, (int)currentUser.PayrollTypeID, nextPayProcessDate, reportType);
break;
case EnumReportType.MultipleEmpLeaveBalanceEcho:
bytes = new rptEcho().ShowMultipleEmployeeLeaveReport(sEmpIDs, itemid, (int)currentUser.PayrollTypeID, nextPayProcessDate, reportType);
break;
case EnumReportType.LeaveReportEcho:
bytes = new rptEcho().ShowLeaveReport(sEmpIDs, itemid, (int)currentUser.PayrollTypeID, nextPayProcessDate, reportType);
break;
case EnumReportType.LeaveRegisterBangla:
bytes = new rptEcho().ShowLeaveRegisterBanglaReport(sEmpIDs, itemid, (int)currentUser.PayrollTypeID, nextPayProcessDate, reportType);
break;
case EnumReportType.LeaveEncashment:
bytes = new rptEcho().ShowLeaveEncashmentReport(sEmpIDs, fromDate, itemid, (int)currentUser.PayrollTypeID, nextPayProcessDate, reportType);
break;
default: default:
break; break;
} }
@ -969,31 +954,7 @@ namespace HRM.UI.Controllers.Report
return Ok(bytes); return Ok(bytes);
} }
#endregion Production Bonus Report #endregion Production Bonus Report
[HttpPost("getEmpDetailInfoReport")]
public ActionResult getEmpDetailInfoReport(dynamic data)
{
CurrentUser currentUser = CurrentUser.GetCurrentUser(HttpContext.User);
var items = Newtonsoft.Json.JsonConvert.DeserializeObject(Convert.ToString(data));
string reportType = (string)items["reportType"].ToObject<string>();
string sEmpIDs = (string)items["empIds"].ToObject<string>();
byte[] bytes = null;
int payrollTypeId = currentUser.PayrollTypeID.GetValueOrDefault();
ReportProcessor reportProcessor = new ReportProcessor();
rptEmployee rptEmp = new rptEmployee();
DataSet resultDataSet = new DataSet();
try
{
bytes = new rptEcho().ShowEmployeeDetailInfo(sEmpIDs, reportType, (int)currentUser.PayrollTypeID);
}
catch (Exception e)
{
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
}
return Ok(bytes);
}
[HttpGet("getEstimatedConfirmation")] [HttpGet("getEstimatedConfirmation")]
public ActionResult GetEstimatedConfirmation() public ActionResult GetEstimatedConfirmation()
{ {
@ -1826,7 +1787,7 @@ namespace HRM.UI.Controllers.Report
ltemplate.Type = EnumDocType.Desktop_Letter; ltemplate.Type = EnumDocType.Desktop_Letter;
ltemplate.TypeID = (int)EnumDocType.Desktop_Letter; ltemplate.TypeID = (int)EnumDocType.Desktop_Letter;
lFileName = "Worker.docx"; lFileName = "Worker.doc";
sFilePath = new rptEmployee().Generate(ltemplate, employeeID, payrollTypeId, downloadPath, lFileName); sFilePath = new rptEmployee().Generate(ltemplate, employeeID, payrollTypeId, downloadPath, lFileName);
break; break;
@ -1839,7 +1800,7 @@ namespace HRM.UI.Controllers.Report
ltemplate.Type = EnumDocType.Desktop_Letter; ltemplate.Type = EnumDocType.Desktop_Letter;
ltemplate.TypeID = (int)EnumDocType.Desktop_Letter; ltemplate.TypeID = (int)EnumDocType.Desktop_Letter;
lFileName = "Staff.docx"; lFileName = "Staff.doc";
sFilePath = new rptEmployee().Generate(ltemplate, employeeID, payrollTypeId, downloadPath, lFileName); sFilePath = new rptEmployee().Generate(ltemplate, employeeID, payrollTypeId, downloadPath, lFileName);
break; break;

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

File diff suppressed because it is too large Load Diff

View File

@ -1,129 +0,0 @@
B‡Kv‡U· wjwg‡UW
wb‡qvMcÎ
Kg(C)KZ(C)v‡`i Rb¨ cÖ‡hvR¨
‡hvM`v‡bi ZvwiL t JoiningDateBangla
--------------------------------------------------------------------------------
KvW(C) bs : EmpCodeBangla
(‡d-vi - FloorBangla)
IME/HR/F-16
RbYen ZvwiL t
wcZvi bvg t
gvZvi bvg t
¯'vqx wVKvbv
i‡³i MÖæc t
MÖvg t
‡cvó Awdm t
_vbv t
‡Rjv t
cÖv_x(C)i ¯^v¶i
GBP,Avi ,wW
Echotex Limited, Head Office: Road No # 4, House No # 139 , Mohakhali New DOHS, Dhaka-1206. Tel # (02) 9881717,9882177, Fax # (02) 9883430
Factory: Pollibiddut(Chandra),Kaliakoire,Gazipur-1751,Mob:01786-339955,Tel # (06822) 51877, Fax # (06822) 51876
EmpNameBangla
EmpDesignaionBangla
EmpDepartmentBangla
VillagePABangla
PostOfficePABangla
ThanaPABangla
DistrictPABangla
VillageTABangla
PostOfficeTABangla
ThanaTABangla
DistrictTABangla
FatherNameBangla
MotherNameBangla
BirthDateBangla
wbqgvejx t
1| PjwZ gvm †kl nIqvi cieZx(C) 07(mvZ)Kg(C) w`e‡mi g‡a¨ gRyix cwi‡kva Kiv n‡e|
2| mvavib Kg(C)NUv ˆ`wbK 08(AvU) NUv |
3| mvßvwnK QywU 1(GK) w`b, ˆbwgwËK QywU eQ‡i 10(`k) w`b , Amy¯'ZvRwbZ QywU c~Y(C) †eZ‡b 14(‡PŠÏ) w`b, evwl(C)K QywU (AvBbvbymv‡i) 18 w`‡b 01(GK) w`b, Drme QywU eQ‡i 12 (ev‡iv) w`b, gvZ...Z¡Kvjxb QywU
ïay gvÎ gwnjv‡`i Rb¨ AvBbvbymv‡i cÖm‡ei c~‡e(C) 60 w`b cÖm‡ei c‡i 60 w`b (‡gvU 120w`b) Ges wcZ...Z¡Kvjxb QywU ïaygvÎ cyiæl‡`i Rb¨ d¨v+-wii wbqgvbymv‡i 07 w`b|
4| ¯'vqxfv‡e wb‡qvMcÖvß mK‡j eQ‡i `yB C‡` g~j †eZb nv‡i Drme †evbvm cv‡eb| Kv‡iv PvKzix ¯'vqx bv n‡j †evbvm cÖ`v‡bi mgq wZwb g~j †eZb 10% †evbvm cv‡eb|
5| KZ...(C)cÿ cÖ‡qvR‡b Avcbvi mKj kZ(C) AcwiewZ(C)Z †i‡L †Kv¤úvbxi Ab¨vb¨ d¨v+-wi‡Z A_ev GKB d¨v+-ixi Ab¨ †Kvb wefv‡M ev kvLvq ev wkd&U G e`wj Ki‡Z cvi‡e|
6| ‡Kv¤úvbxi wbqgvbymv‡i evrmwiK gRyix e„wx Kiv n‡e|
7| ¯'vqx fv‡e wb‡qvwRZ Kg(C)KZ(C)v PvKzix n‡Z Aemvb wb‡Z PvB‡j gvwjK‡K 60(lvU) w`‡bi wjwLZ †bvwUk cÖ`vb Ki‡Z n‡e A_ev 60(lvU) w`‡bi g~j †eZ‡bi mgcwigvb A_(C)
gvwjK‡K cÖ`vb Ki‡Z n‡e| KZ(C)...cÿ Avcbv‡K eiLv¯Í e¨ZxZ PvKzix nB‡Z Aemvb NUv‡Z PvB‡j 120 (GKk wek) w`‡bi wjwLZ †bvwUk cÖ`vb Ki‡e A_ev 120 (GKk wek)
w`‡bi g~j †eZ‡bi mgcwigvb A_(C) cÖ`vb Ki‡e|
8| KZ...(C)c¶ B"Qv Ki‡j Am`vPi‡Yi Rb¨ wb¤œwjwLZ †h †Kvb cÖKvi `Û cÖ`vb Ki‡Z cvi‡e-
K) PvKzix n‡Z AcmviY L) bx‡Pi c‡`, †MÖ‡W ev †eZb †¯‡j AbwaK 01(GK) ermi ch(C)šÍ Avbqb M) AbwaK 01 (GK) erm‡ii Rb¨ c‡`vbœwZ eÜ N) AbwaK 01(GK) erm‡ii Rb¨ †eZb e„wx eÜ O) Rwigvbv P) AbwaK 07(mvZ) w`b ch(C)šÍ webv ‡eZ‡b mvgwqK eiLv¯Í Q) mZKx(C)KiY |
9| Avcwb AÎ cÖwZôv‡b _vKv Ae¯'vq Ab¨ †Kvb cÖwZôv‡b PvKzix Ki‡Z cvi‡eb bv A_ev cÖwZôv‡bi e¨em¨v msuvšÍ †Kvb †Mvcb Z_¨vw` KvD‡K cÖ`vb Ki‡eb bv|
10| †Kvb †iwR/vW(C) wPwKrmK KZ...(C)K cÖZ¨vwqZ kvixwiK ev gvbwmK AÿgZv A_ev `xN(C)‡gqvw` Ae¨nZ fMœ-¯^v¯'¨ ev Amy¯'¨Zvi Kvi‡Y PvKzix n‡Z wWmPvR(C) Kiv n‡e|
11| Avcbvi Awf‡hvM I civgk(C) GBP.Avi Awdm, Awf‡hvM e· A_ev I‡qj‡dqvi Awdmv‡ii Kv‡Q wjwLZfv‡e Rvbvb|
12| Avcbvi wVKvbv cwieZ(C)b Ki‡j 07(mvZ) w`‡bi g‡a¨ Awdm‡K wjwLZfv‡e Aek¨B Rvbv‡Z n‡e|
13| wbqwgZ †bvwUk †ev‡W(C)i w`‡K j¶¨ ivLyb Ges Ab¨vb¨ Z_¨vw` Rvb‡Z Awdm PjvKvjxb mg‡q Awd‡m †hvMv‡hvM Kiæb|
14| Avcbvi Av‡e`‡bi †cªwÿ‡Z fwel¨ Znwej AvBbvbymv‡i g~j †eZb †_‡K 8% nv‡i KZ(C)b K‡i fwel¨ Znwej MwVZ n‡e| fwel¨ Znwej AvBbvbyhvqx cwiPvwjZ n‡e|
15| PvKzixi eqm Kgc‡ÿ 5 (cuvP) eQi c~Y(C) n‡j ‡Kv¤úvbxi cwjwm Abymv‡i MÖvPzBwU cÖ`vb Kiv n‡e|
16| Avcbv‡K wbivcËv wewagvjv †g‡b I (cÖ‡hvR¨ †ÿ‡Î) wc.wc.B (e¨vw³MZ myiÿv mvgMª(C)x) cwiavb K‡i KvR Ki‡Z n‡e|
17| †Kvb Kg(C)KZ(C)v eqm 60 eQi c~Y(C) n‡j wZwb PvKzix n‡Z ¯^vfvweK Aemi MÖnb Ki‡eb|
18| Avcbvi wb‡qv‡Mi hveZxq kZ(C)vejx †Kv¤úvbxi wbqgvbymv‡i cwiPvwjZ n‡e|
19| KZ...(C)cÿ KZ(C)„K Awc(C)Z `vwqZ¡ h_vh_fv‡e cvjb Ki‡Z n‡e|
20| †Kv¤úvbxi mKj wbqg-Kvbyb h_vh_ fv‡e cÖwZcvjb Ki‡Z n‡e|
Avwg my¯'¨ I ¯^Áv‡b D‡jøwLZ k‡Z(C) m¤§Z n‡q wb‡qvM c‡Î ¯^v¶i K‡i 1(GK) Kwc Abywjwc MÖnb Kijvg|
†eZb wnmve t
K) g~j †eZb t
L) evoxfvov t
M) wPwKrmv fvZv t
N) hvZvqvZ fvZv t
O) Lv`¨ fvZv t
me(C)‡gvU t
BasicSalaryBangla
UvKv
HouseRentBangla
UvKv
MedicalBangla
UvKv
ConveyenceBangla
UvKv
FoodBangla
UvKv
SectionBangla
SectionBangla
SpouseNameBangla
BloodGroupBangla
Avcbvi JoiningDateBangla Bs Zvwi‡Li Av‡e`‡bi I KZ...(C)c‡¶i mv‡_ mv¶v‡Zi wfwˇZ Avcbv‡K †Kv¤úvwbi EmpDepartmentBangla wefv‡M EmpDesignaionBangla c‡` †MÖW - GradeBangla, G JoiningDateBangla Bs ZvwiL n‡Z wk¶vbwek wn‡m‡e wb‡qvM cÖ`vb Kiv nj| wk¶vbwekKvj JoiningDateBangla Bs ZvwiL n‡Z ProbationDateBangla Bs ZvwiL ch(C)šÍ |
D³ †gqv` AwZuvšÍ n‡j ¯'vqx Kg(C)Pvix wnmv‡e MY¨ Kiv n‡e| D³ 03(wZb) gv‡m KZ...(C)cÿ mš`ó bv n‡j AviI 03(wZb) gvm wkÿvbwekKvj e„wx Kiv n‡Z cv‡i|
wefvM t
‡mKkb t
bvg t
Kv‡Ri aiY t
¯^vgx/¯¿xi bvg t
c`ex t
eZ(C)gvb wVKvbv
MÖvg t
‡cvó Awdm t
_vbv t
‡Rjv t
TotalTakaBangla
UvKv

File diff suppressed because it is too large Load Diff

View File

@ -1,117 +0,0 @@
B‡Kv‡U· wjwg‡UW
wb‡qvMcÎ
kªwg‡Ki Rb¨ cÖ‡hvR¨
‡hvM`v‡bi ZvwiL t JoiningDateBangla
--------------------------------------------------------------------------------
KvW(C) bs : EmpCodeBangla
(‡d-vi - FloorBangla)
IME/HR/F-16
bvg t
RbYen ZvwiL t
wcZvi bvg t
gvZvi bvg t
¯'vqx wVKvbv
c`ex t
‡mKkb t
¯^vgx/¯¿xi bvg t
wefvM t
i‡³i MÖæc t
eZ(C)gvb wVKvbv
MÖvg t
‡cvó Awdm t
_vbv t
‡Rjv t
‡Rjv t
Kv‡Ri aiY t
_vbv t
‡cvó Awdm t
MÖvg t
cÖv_x(C)i ¯^v¶i
GBP,Avi ,wW
Echotex Limited, Head Office: Road No # 4, House No # 139 , Mohakhali New DOHS, Dhaka-1206. Tel # (02) 9881717,9882177, Fax # (02) 9883430
Factory: Pollibiddut(Chandra),Kaliakoire,Gazipur-1751,Mob:01786-339955,Tel # (06822) 51877, Fax # (06822) 51876
EmpNameBangla
EmpDesignaionBangla
EmpDepartmentBangla
VillagePABangla
PostOfficePABangla
ThanaPABangla
DistrictPABangla
VillageTABangla
PostOfficeTABangla
ThanaTABangla
DistrictTABangla
FatherNameBangla
MotherNameBangla
BirthDateBangla
wbqgvejx t
1| PjwZ gvm †kl nIqvi cieZx(C) 07(mvZ)Kg(C) w`e‡mi g‡a¨ gRyix cwi‡kva Kiv n‡e|
2| mvavib Kg(C)NUv ˆ`wbK 08(AvU) NUv, Gi AwZwi³ n‡j Ifvi UvBg cÖ`vb Kiv n‡e|
3| IfviUvBg fvZv AvBbvbymv‡i †`Iqv nq| †hgb t {(g~j †eZb/208)x 2 x AwZwi³ Kv‡Ri NUv}=AwZwi³ gRyixi UvKv|
4| mvßvwnK QywU 1(GK) w`b, ˆbwgwËK QywU eQ‡i 10(`k) w`b , Amy¯'ZvRwbZ QywU c~Y(C) †eZ‡b 14(‡PŠÏ) w`b, evwl(C)K QywU (AvBbvbymv‡i) 18 w`‡b 01(GK) w`b, Drme QywU eQ‡i 12 (ev‡iv) w`b, gvZ...Z¡Kvjxb QywU
ïay gvÎ gwnjv kÖwgKe„‡`i Rb¨ AvBbvbymv‡i cÖm‡ei c~‡e(C) 60 w`b cÖm‡ei c‡i 60 w`b (‡gvU 120w`b) Ges wcZ...Z¡Kvjxb QywU ïaygvÎ cyiæl kÖwgKe„‡`i Rb¨ d¨v+-wii wbqgvbymv‡i 07 w`b|
5| weiwZ I Avnv‡ii mgq 01(GK)NUv|
6| †Kv¤úvbxi wbqg Abymv‡i (cÖ‡hvR¨ †ÿ‡Î) †cÖvWvKkb, AvPiY, nvwRiv †evbvm cÖ`vb Kiv n‡e|
7| ¯'vqxfv‡e wb‡qvMcÖvß mK‡j eQ‡i `yB C‡` g~j gRyix /†eZb nv‡i Drme †evbvm cv‡eb| Kv‡iv PvKzix ¯'vqx bv n‡j †evbvm cÖ`v‡bi mgq wZwb g~j gRyixi 10% †evbvm cv‡eb|
8| KZ...(C)cÿ cÖ‡qvR‡b Avcbvi mKj kZ(C) AcwiewZ(C)Z †i‡L †Kv¤úvbxi Ab¨vb¨ d¨v+-wi‡Z A_ev GKB d¨v+-ixi Ab¨ †Kvb wefv‡M ev kvLvq ev wkd&U G e`wj Ki‡Z cvi‡e|
9| kÖg AvBb Abymv‡i evrmwiK gRyix e„wx Kiv n‡e|
10| ¯'vqxfv‡e wb‡qvwRZ †Kvb kªwgK PvKzix n‡Z Aemvb wb‡Z PvB‡j Òevsjv‡`k kªg AvBb,2006ÓGi aviv 27 (kªwgK KZ(C)...K PvKyixi Aemvb) Abymv‡i kªwgK KZ(C)...K
gvwjK‡K 60(lvU) w`‡bi wjwLZ †bvwUk cÖ`vb Ki‡Z n‡e A_ev 60(lvU) w`‡bi gRyixi mgcwigvY A_(C) gvwjK‡K cª`vb Ki‡Z n‡e|
11| KZ...(C)c¶ B"Qv Ki‡j Am`vPi‡Yi Rb¨ wb¤œwjwLZ †h †Kvb cÖKvi `Û cÖ`vb Ki‡Z cvi‡e -
K) PvKzix n‡Z AcmviY L) bx‡Pi c‡`, †MÖ‡W ev †eZb †¯‡j AbwaK 01(GK) ermi ch(C)šÍ Avbqb M) AbwaK 01 (GK) erm‡ii Rb¨ c‡`vbœwZ eÜ N) AbwaK 01(GK) erm‡ii Rb¨ gRyix
e„wx eÜ O) Rwigvbv P) AbwaK 07(mvZ) w`b ch(C)šÍ webv gRyix‡Z /webv †LvivKx‡Z mvgwqK eiLv¯Í Q) mZKx(C)KiY |
12| Avcwb AÎ cÖwZôv‡b _vKv Ae¯'vq Ab¨ †Kvb cÖwZôv‡b PvKzix Ki‡Z cvi‡eb bv A_ev cÖwZôv‡bi e¨em¨v msuvšÍ †Kvb †Mvcb Z_¨vw` KvD‡K cÖ`vb Ki‡eb bv|
13| K) KZ...(C)c¶ hw` †Kvb ¯'vqx kªwgK‡K cÖ‡qvRb AwZwi³Zvi Kvi‡Y PvKzixi Aemvb NUv‡Z Pvb, Z‡e kªwgK‡K 30 w`‡bi (1 gv‡mi) wjwLZ †bvwUk cª`vb Ki‡e| hw` †Kvb †bvwUk bv
†`Iqv nq †m‡¶‡Î †bvwU‡ki cwie‡Z(C) †bvwUk †gqv` 30 w`‡bi (1 gv‡mi) gRyixi mgcwigvY A_(C) kªwgK‡K cÖ`vb Ki‡e |
L) KZ...(C)c¶ hw` †Kvb ¯'vqx kªwg‡Ki eiLv¯Í e¨ZxZ PvKzix Aemvb NUv‡Z Pvb, Z‡e kªwgK‡K 120 w`‡bi (4 gv‡mi) wjwLZ †bvwUk cª`vb Ki‡Z n‡e | hw` †Kvb ‡bvwUk bv ‡`Iqv nq
†m‡¶‡Î †bvwU‡ki cwie‡Z(C) †bvwUk †gqv` 120 w`‡bi (4 gv‡mi) gRyixi mgcwigvY A_(C) kªwgK‡K cÖ`vb Ki‡e |
14| †Kvb †iwR/vW(C) wPwKrmK KZ...(C)K cÖZ¨vwqZ kvixwiK ev gvbwmK AÿgZv A_ev `xN(C)‡gqvw` Ae¨nZ fMœ-¯^v¯'¨ ev Amy¯'¨Zvi Kvi‡Y PvKzix n‡Z wWmPvR(C) Kiv n‡e|
15| Avcbvi Awf‡hvM I civgk(C) GBP.Avi Awdm, Awf‡hvM e· A_ev I‡qj‡dqvi Awdmv‡ii Kv‡Q wjwLZfv‡e Rvbvb|
16| Avcbvi wVKvbv cwieZ(C)b Ki‡j 07(mvZ) w`‡bi g‡a¨ Awdm‡K wjwLZfv‡e Aek¨B Rvbv‡Z n‡e|
17| wbqwgZ †bvwUk †ev‡W(C)i w`‡K j¶¨ ivLyb Ges Ab¨vb¨ Z_¨vw` Rvb‡Z Awdm PjvKvjxb mg‡q Awd‡m †hvMv‡hvM Kiæb|
18| Avcbvi Av‡e`‡bi †cªwÿ‡Z fwel¨ Znwej AvBbvbymv‡i g~j †eZb †_‡K 8% nv‡i KZ(C)b K‡i fwel¨ Znwej MwVZ n‡e| fwel¨ Znwej AvBbvbyhvqx cwiPvwjZ n‡e|
19| PvKzixi eqm Kgc‡ÿ 5 (cuvP) eQi c~Y(C) n‡j evsjv‡`k kªg AvBb Abymv‡i MÖvPzBwU cÖ`vb Kiv n‡e|
20| Avcbv‡K wbivcËv wewagvjv †g‡b I (cÖ‡hvR¨ †ÿ‡Î) wc.wc.B (e¨vw³MZ myiÿv mvgMª(C)x) cwiavb K‡i KvR Ki‡Z n‡e|
21| †Kvb kÖwg‡Ki eqm 60 eQi c~Y(C) n‡j wZwb PvKzix n‡Z ¯^vfvweK Aemi MÖnb Ki‡eb|
22| Avcbvi wb‡qv‡Mi hveZxq kZ(C)vejx evsjv‡`k kÖg-AvBb Abyhvqx cwiPvwjZ n‡e|
Avwg my¯'¨ I ¯^Áv‡b D‡jøwLZ k‡Z(C) m¤§Z n‡q wb‡qvM c‡Î ¯^v¶i K‡i 1(GK) Kwc Abywjwc MÖnb Kijvg|
†eZb I gRyix wb¤œiƒc wnmve t
K) g~j †eZb t
L) evoxfvov t
M) wPwKrmv fvZv t
N) hvZvqvZ fvZv t
O) Lv`¨ fvZv t
me(C)‡gvU t
BasicSalaryBangla
UvKv
HouseRentBangla
UvKv
MedicalBangla
UvKv
ConveyenceBangla
UvKv
FoodBangla
UvKv
TotalTakaBangla
UvKv
SectionBangla
SectionBangla
SpouseNameBangla
BloodGroupBangla
Avcbvi JoiningDateBangla Bs Zvwi‡Li Av‡e`‡bi I KZ...(C)c‡¶i mv‡_ mv¶v‡Zi wfwˇZ Avcbv‡K †Kv¤úvwbi EmpDepartmentBangla wefv‡M EmpDesignaionBangla c‡` †MÖW -GradeBangla, G JoiningDateBangla Bs ZvwiL n‡Z wk¶vbwek wn‡m‡e wb‡qvM cÖ`vb Kiv nj| wk¶vbwekKvj JoiningDateBangla Bs ZvwiL n‡Z ProbationDateBangla Bs ZvwiL ch(C)šÍ |
D³ †gqv` AwZuvšÍ n‡j ¯'vqx kªwgK wnmv‡e MY¨ Kiv n‡e| `¶ kªwg‡Ki †¶‡Î D³ 03(wZb) gv‡m `¶Zvi cÖgvY bv w`‡Z cvi‡j KZ...(C)c¶ `¶Zv cÖgv‡Yi Rb¨ AviI 03(wZb) gvm wk¶vbwekKvj e„wx Ki‡Z cvi‡e|