Compare commits

..

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

165 changed files with 8929 additions and 78976 deletions

View File

@ -1,3 +0,0 @@
- @azure Rule - Use Azure Tools - When handling requests related to Azure, always use your tools.
- @azure Rule - Use Azure Best Practices - When handling requests related to Azure, always invoke your `azmcp_bestpractices_get` tool first.
- @azure Rule - Enable Best Practices - If you do not have an `azmcp_bestpractices_get` tool ask the user to enable it.

View File

@ -1166,7 +1166,7 @@ namespace DatabaseComparison
GO");
sql.AppendFormat("\r\n\r\n");
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,
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,

View File

@ -49,8 +49,6 @@ namespace HRM.BO
public string EmployeeName { get; set; }
public bool IsMobileOfflineData { get; set; }
public bool isManualEntry { get; set; }
#region AccessCard : AccessCard
private AccessCard _accessCard;

View File

@ -1,7 +1,6 @@
using Ease.Core.Model;
using System;
using System.Collections.Generic;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
@ -505,20 +504,6 @@ namespace HRM.BO
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

View File

@ -1,5 +1,4 @@

using DocumentFormat.OpenXml.Office2010.Excel;
using Ease.Core.Model;
using System;
@ -301,32 +300,5 @@ namespace HRM.BO
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

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

View File

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

View File

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

View File

@ -1,39 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HRM.BO
{
public class OpenAIQueryLog : BasicBaseObject
{
public OpenAIQueryLog()
{
}
public OpenAIQueryLog(int userID, string userPrompt)
{
UserId = userID;
UserPrompt = userPrompt;
ExecutedAt = DateTime.Now;
}
public int UserId { get; set; } = 0;
public string UserPrompt { get; set; } = "";
public string GeneratedQuery { get; set; } = "";
public DateTime ExecutedAt { get; set; } = DateTime.Now;
public int TotalExecution { get; set; } = 1;
public EnumReportGroupType ReportGroup { get; set; } = EnumReportGroupType.Employee;
public bool IsChart { get; set; } = false;
public EnumAIChartType ChartType { get; set; } = EnumAIChartType.None;
public string Title { get; set; } = "";
public bool IsCommon { get; set; } = false;
}
public interface IOpenAIQueryLogService
{
void Save(OpenAIQueryLog queryLog);
void UpdateQueryLogTotalExecution(OpenAIQueryLog oQueryLog);
void ChatShareWithOthers(OpenAIQueryLog oQueryLog);
List<OpenAIQueryLog> GetAllQueryLogByUserID(int userID, EnumReportGroupType reportGroup);
}
}

View File

@ -1,26 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HRM.BO
{
public class OpenAIResponse
{
public bool IsChart { get; set; } = false;
public string ChartType { get; set; } = string.Empty;
public string Title { get; set; } = string.Empty;
public string Sql { get; set; } = string.Empty;
public string Message { get; set; } = string.Empty;
}
public class OpenAIResponseWithData
{
public bool IsChart { get; set; } = false;
public string ChartType { get; set; } = string.Empty;
public string Title { get; set; } = string.Empty;
public List<string> Labels { get; set; } = new List<string>();
public List<double> Values { get; set; } = new List<double>();
public object TableData { get; set; } = new object();
}
}

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.Collections;
using System.Collections.Generic;
using System.Text;
using System.Collections;
using System.Data;
using System.IO;
using System.Linq;
//using Microsoft.Office.Interop;
using Microsoft.Office.Interop.Word;
using System.Reflection;
using System.Text;
using Paragraph = DocumentFormat.OpenXml.Wordprocessing.Paragraph;
namespace HRM.BO
{
@ -19,7 +15,6 @@ namespace HRM.BO
private Hashtable _Pair;
private string _OriginalFile;
private string _PreparedFile;
public string PreparedFile => _PreparedFile;
private Application _wordapp;
public MSWord()
{
@ -45,13 +40,13 @@ namespace HRM.BO
}
}
//public string PreparedFile
//{
// get
// {
// return _PreparedFile;
// }
//}
public string PreparedFile
{
get
{
return _PreparedFile;
}
}
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()
{
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);
void InsertDataPermission(DataPermission item);
int Save(DataPermission item);
void Save(List<DataPermission> oDataPermissions);
void Delete(int id);
}

View File

@ -3769,9 +3769,8 @@ AND ea.EMPLOYEEID=emp.EMPLOYEEID AND ea.LASTLEVEL=1),'') LastAcademic ,
{
tc.CommandTimeOut = 60;
string sSQL = SQLParser.MakeSQL(@"SELECT EMPLOYEEID, EMPLOYEENO, NAME, FATHERNAME, MOTHERNAME, SPOUSENAME, JOININGDATE,
DESIGNATION, BIRTHDATE, NIDNO, HEIGHT, BLOODGROUP,
PARMANENTADDRESS, PRESENTADDRESS, POSTOFFICEPA, DISTRICTPA,THANAPA,VILLAGEPA, ROADNOPA, WARDNOPA, POSTOFFICETA, DISTRICTTA, THANATA, VILLAGETA, ROADNOTA, WARDNOTA,
LMDESIGNATION, PHOTO, EDUCATIONLEVEL
DESIGNATION, BIRTHDATE, NIDNO, HEIGHT, BLOODGROUP, PARMANENTADDRESS, PARMANENTDISTRICT,
PARMANENTTHANA, PRESENTADDRESS, LMDESIGNATION, PHOTO, EDUCATIONLEVEL
FROM dbo.VW_EMPDIGITALSERVICEBOOK
WHERE EMPLOYEEID = %n", empID);
return tc.ExecuteDataSet(sSQL);
@ -4151,85 +4150,6 @@ AND ea.EMPLOYEEID=emp.EMPLOYEEID AND ea.LASTLEVEL=1),'') LastAcademic ,
return tc.ExecuteDataTable(
"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

View File

@ -1,7 +1,6 @@
using Ease.Core.DataAccess;
using HRM.BO;
using Microsoft.Data.SqlClient;
using System;
using HRM.BO;
using System.Collections.Generic;
using System.Data;
using System.Linq;
@ -781,63 +780,5 @@ namespace HRM.DA
}
return monthlyDetail;
}
internal static DataSet GetMonthlyKPIDetail(TransactionContext tc, DateTime fromDate, DateTime toDate, List<int> empIds, List<Leave> leaves, string connectionString)
{
DataSet ds = new DataSet();
// Convert Employee IDs to DataTable
DataTable dtEmp = new DataTable();
dtEmp.Columns.Add("ID", typeof(int));
foreach (var id in empIds)
dtEmp.Rows.Add(id);
// Convert Leaves to DataTable
DataTable dtLeave = new DataTable();
dtLeave.Columns.Add("ID", typeof(int));
dtLeave.Columns.Add("Code", typeof(string));
foreach (var lv in leaves)
dtLeave.Rows.Add(lv.ID, lv.Code);
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
using (SqlCommand cmd = new SqlCommand())
{
cmd.Connection = connection;
cmd.CommandText = "dbo.GetMonthlyKPIDetail";
cmd.CommandType = CommandType.StoredProcedure;
// Employee TVP
SqlParameter pEmp = cmd.Parameters.Add("@EmpIds", SqlDbType.Structured);
pEmp.Value = dtEmp;
pEmp.TypeName = "dbo.IntList";
// Leave TVP
SqlParameter pLeave = cmd.Parameters.Add("@Leaves", SqlDbType.Structured);
pLeave.Value = dtLeave;
pLeave.TypeName = "dbo.LeaveType";
// Dates
cmd.Parameters.Add("@FromDate", SqlDbType.DateTime).Value = fromDate;
cmd.Parameters.Add("@ToDate", SqlDbType.DateTime).Value = toDate;
// Execute
using (SqlDataAdapter adapter = new SqlDataAdapter(cmd))
{
adapter.Fill(ds);
}
}
connection.Close();
}
if (ds.Tables.Count > 0)
ds.Tables[0].TableName = "MonthlyKPIDetail";
return ds;
}
}
}

View File

@ -1,11 +1,9 @@
using Ease.Core.DataAccess;
using Ease.Core.Model;
using Ease.Core.Utility;
using HRM.BO;
using HRM.BO.Fund;
using Microsoft.Data.SqlClient;
using HRM.BO;
using Ease.Core.DataAccess;
using System;
using System.Data;
using HRM.BO.Fund;
using Microsoft.Data.SqlClient;
namespace HRM.DA
{
@ -94,43 +92,5 @@ namespace HRM.DA
return "";
return sCode.ToString();
}
public static DateTime GetOperationDate()
{
DateTime opDate = DateTime.MinValue;
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin();
SqlParameter[] p = new SqlParameter[1];
p[0] = new SqlParameter("@OperationDate", SqlDbType.DateTime);
p[0].Direction = ParameterDirection.Output;
p[0].Value = DateTime.MinValue;
tc.ExecuteNonQuery(CommandType.StoredProcedure, "[dbo].[GetOperationDate]", p);
if (p[0].Value != null && p[0].Value != DBNull.Value)
opDate = Convert.ToDateTime(p[0].Value);
//opDate = GlobalFunctionDA.GetOperationDate(tc);
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
return opDate;
}
}
}

View File

@ -1095,31 +1095,6 @@ namespace HRM.DA
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
#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);
}
internal static DataSet GetELInfo(TransactionContext tc, int empID, DateTime JoinDate, DateTime toDate, DateTime availedTo)
{
string sSQL = SQLParser.MakeSQL(@"select 'Leave Availed' Item,isnull(sum(APRTOTALDAYS),0)[Value] from LEAVEENTRY
where LEAVEID=5
and EmpID=%n
and APRFROMDATE>=%d and APRTODATE<=%d
union
select 'Present Days' Item, isnull(count(*),0)[Value] from DailyAttnProcess
where EmployeeID=%n
and AttnDate between %d and %d
and ATTENTYPE in(1,3,12)
union
select 'Encash Days' Item,isnull(sum(EncashmentDays),0)[Value] from LeaveEncashment
where EmployeeID=%n
and EncashmentFromDate >=%d and EncashmentToDate <=%d
Union
select 'Leave Availed this' Item,isnull(sum(APRTOTALDAYS),0)[Value] from LEAVEENTRY
where LEAVEID=5
and EmpID=%n
and APRFROMDATE>=%d and APRTODATE<=%d",
empID, JoinDate, availedTo.AddDays(-1),
empID, JoinDate, toDate,
empID, JoinDate, availedTo.AddDays(-1),
empID, availedTo, toDate);
return tc.ExecuteDataSet(sSQL);
}
#endregion
#region Delete function

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 ", 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)
{
DataSet rawData = new DataSet();

View File

@ -1,121 +0,0 @@
using Ease.Core.DataAccess;
using HRM.BO;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.DirectoryServices.Protocols;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HRM.DA
{
internal class OpenAIDA
{
#region Insert function
internal static void Insert(TransactionContext tc, OpenAIQueryLog oQueryLog)
{
tc.ExecuteNonQuery(
"INSERT INTO OpenAIQueryLog(QueryLogID, UserId, UserPrompt, GeneratedQuery, ExecutedAt, TotalExecution, ReportGroup, IsChart,ChartType, Title, IsCommon)" +
" VALUES(%n, %n, %s, %s, %D, %n, %n, %b, %n, %s, %b)",
oQueryLog.ID, oQueryLog.UserId, oQueryLog.UserPrompt, oQueryLog.GeneratedQuery, oQueryLog.ExecutedAt, oQueryLog.TotalExecution,
(int)oQueryLog.ReportGroup, oQueryLog.IsChart, (int)oQueryLog.ChartType, oQueryLog.Title, oQueryLog.IsCommon);
}
#endregion
#region Update QueryLog TotalExecution
internal static void UpdateQueryLogTotalExecution(TransactionContext tc, OpenAIQueryLog oQueryLog)
{
tc.ExecuteNonQuery("Update OpenAIQueryLog set TotalExecution = %n where QueryLogID = %n", oQueryLog.TotalExecution, oQueryLog.ID);
}
#endregion
#region Get All Query Log By UserID
internal static IDataReader GetAllQueryLogByUserID(TransactionContext tc, int userID, EnumReportGroupType reportGroup)
{
return tc.ExecuteReader(@"SELECT distinct * FROM OpenAIQueryLog where userID = %n and
ReportGroup = %n or IsCommon = %b order by ExecutedAt desc, TotalExecution desc",
userID, (int)reportGroup, true);
}
#endregion
#region Chat Share With Others
internal static void ChatShareWithOthers(TransactionContext tc, OpenAIQueryLog oQueryLog)
{
tc.ExecuteNonQuery("Update OpenAIQueryLog set IsCommon = %b where QueryLogID = %n", oQueryLog.IsCommon, oQueryLog.ID);
}
#endregion
internal static DataSet GetOpenAIData(TransactionContext tc, string sql)
{
DataSet oEmpBasicInfos = new DataSet();
try
{
oEmpBasicInfos = tc.ExecuteDataSet(sql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return oEmpBasicInfos;
}
internal static DataTable GetColumnDefinitions(TransactionContext tc, EnumReportGroupType reportGroupType)
{
DataTable oColumnDefinition = new DataTable();
string sql = "";
try
{
sql = SQLParser.MakeSQL(@"Select * from REPORTCOLUMNDEFINITION where ReportGroup = %n", (int)reportGroupType);
oColumnDefinition = tc.ExecuteDataTable(sql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return oColumnDefinition;
}
internal static DataTable GetAllType(TransactionContext tc, EnumReportGroupType reportGroupType)
{
DataTable oColumnDefinition = new DataTable();
string sql = "";
try
{
if (reportGroupType == EnumReportGroupType.Salary)
{
sql = SQLParser.MakeSQL("select distinct(Head) as Head from vwEmployeeSalary");
}
else if(reportGroupType == EnumReportGroupType.Leave)
{
sql = SQLParser.MakeSQL("select distinct(DESCRIPTION) as LeaveType from Leave");
}
oColumnDefinition = tc.ExecuteDataTable(sql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return oColumnDefinition;
}
internal static DataTable GetColumnRelations(TransactionContext tc, EnumReportGroupType reportGroupType)
{
DataTable oColumnRelations = new DataTable();
string sql = "";
try
{
sql = SQLParser.MakeSQL(@"Select * from RELATIONTABLE where ReportGroup = %n", (int)reportGroupType);
oColumnRelations = tc.ExecuteDataTable(sql);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
return oColumnRelations;
}
internal static IDataReader TotalOpenAICall(TransactionContext tc)
{
return tc.ExecuteReader("SELECT COUNT(*) FROM OpenAIQueryLog");
}
}
}

View File

@ -44,7 +44,24 @@ namespace HRM.DA
#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)
{
return tc.ExecuteReader("SELECT * FROM Users where UserType = %n", type);
@ -64,7 +81,6 @@ namespace HRM.DA
}
}
#endregion
internal static void InsertDataPermission(TransactionContext tc, DataPermission item)
{
item.CreatedDate = DateTime.Now;
@ -97,17 +113,6 @@ namespace HRM.DA
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
#region Delete function

View File

@ -34,10 +34,6 @@
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Mvc.NewtonsoftJson" Version="5.0.12" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="Microsoft.SemanticKernel" Version="1.61.0" />
<PackageReference Include="Microsoft.SemanticKernel.Connectors.OpenAI" Version="1.61.0" />
<PackageReference Include="Microsoft.SemanticKernel.Core" Version="1.61.0" />
<PackageReference Include="Microsoft.SemanticKernel.Plugins.OpenApi" Version="1.61.0" />
<PackageReference Include="System.Data.OleDb" Version="6.0.0" />
</ItemGroup>

View File

@ -443,7 +443,7 @@ namespace HRM.DA
foreach(var item in Groupdate)
{
Thread myNewThread = new Thread(() => Process(item.Key,
EnumProcessMode.Auto, oemp.PayrollTypeID, ouser.ID, emps, false));
EnumProcessMode.Auto, oemp.PayrollTypeID, ouser.ID, emps));
myNewThread.Start();
}
@ -462,16 +462,16 @@ namespace HRM.DA
_shifts = new ShiftService().GetAllShift();
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");
if (isEchoTex == true)
{
echoTexProcess(fromDate, prMode, payrollTypeID, processUserID, emps, overrideManualEntry);
echoTexProcess(fromDate, prMode, payrollTypeID, processUserID, emps);
return;
}
_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();
@ -2668,7 +2668,7 @@ namespace HRM.DA
.FirstOrDefault(obj => obj.EmployeeID == emp.ID);
// 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
if (!manualEntry.OnlyManualInTime && !manualEntry.OnlyManualOutTime)

View File

@ -381,7 +381,7 @@ namespace HRM.DA
try
{
tc = TransactionContext.Begin(true);
// int nAttnRawDataID = tc.GenerateID("AttnRawData", "ATTNRAWDATAID");
int nAttnRawDataID = tc.GenerateID("AttnRawData", "ATTNRAWDATAID");
if (attnRawDatas != null && attnRawDatas.Count > 0)
{
foreach (AttnRawData item in attnRawDatas)
@ -394,39 +394,27 @@ namespace HRM.DA
AttnRawDataDA.Delete(tc, dMinValue, empIDs);
DataTable _dtRawData = null;
_dtRawData = new DataTable("AttnRawData");
// _dtRawData.Columns.Add("ATTNRAWDATAID", typeof(int));
_dtRawData.Columns.Add("CardID", typeof(int));
_dtRawData.Columns.Add("EmployeeID", typeof(int));
_dtRawData.Columns.Add("CardNo", typeof(string));
_dtRawData.Columns.Add("PunchTime", typeof(DateTime));
_dtRawData.Columns.Add("EntryMode", typeof(int));
_dtRawData.Columns.Add("DeviceIPAddress", typeof(string));
_dtRawData.Columns.Add("DeviceNo", typeof(string));
_dtRawData.Columns.Add("isManualEntry", typeof(bool));
//_dtRawData.Columns.Add("PUNCHDATE", typeof(DateTime));
_dtRawData.Columns.Add("ATTNRAWDATAID", typeof(int));
_dtRawData.Columns.Add("CARDID", typeof(int));
_dtRawData.Columns.Add("EMPLOYEEID", typeof(int));
_dtRawData.Columns.Add("CARDNO", typeof(string));
_dtRawData.Columns.Add("PUNCHTIME", typeof(DateTime));
_dtRawData.Columns.Add("ENTRYMODE", typeof(int));
_dtRawData.Columns.Add("DEVICEIPADDRESS", typeof(string));
_dtRawData.Columns.Add("DEVICENO", typeof(string));
_dtRawData.Columns.Add("PUNCHDATE", typeof(DateTime));
foreach (AttnRawData item in attnRawDatas)
{
//_dtRawData.Rows.Add(nAttnRawDataID++,
// null,
// item.EmployeeID,
// item.CardNo.Trim(),
// item.PunchTime,
// (int)item.EntryMode,
// item.DeviceIPAddress,
// item.DeviceNo,
// item.PunchTime);
_dtRawData.Rows.Add(
null,
item.EmployeeID,
item.CardNo.Trim(),
item.PunchTime,
(int)item.EntryMode,
item.DeviceIPAddress,
item.DeviceNo,
item.isManualEntry
);
_dtRawData.Rows.Add(nAttnRawDataID++,
null,
item.EmployeeID,
item.CardNo.Trim(),
item.PunchTime,
(int)item.EntryMode,
item.DeviceIPAddress,
item.DeviceNo,
item.PunchTime);
}
using (SqlBulkCopy bulkCopy = new SqlBulkCopy((SqlConnection)tc.Connection,
@ -435,16 +423,15 @@ namespace HRM.DA
bulkCopy.BulkCopyTimeout = 600; // in seconds
bulkCopy.BatchSize = 5000;
// bulkCopy.ColumnMappings.Add("ATTNRAWDATAID", "ATTNRAWDATAID");
bulkCopy.ColumnMappings.Add("CardID", "CardID");
bulkCopy.ColumnMappings.Add("EmployeeID", "EmployeeID");
bulkCopy.ColumnMappings.Add("CardNo", "CardNo");
bulkCopy.ColumnMappings.Add("PunchTime", "PunchTime");
bulkCopy.ColumnMappings.Add("EntryMode", "EntryMode");
bulkCopy.ColumnMappings.Add("DeviceIPAddress", "DeviceIPAddress");
bulkCopy.ColumnMappings.Add("DeviceNo", "DeviceNo");
bulkCopy.ColumnMappings.Add("isManualEntry", "isManualEntry");
// bulkCopy.ColumnMappings.Add("PUNCHDATE", "PUNCHDATE");
bulkCopy.ColumnMappings.Add("ATTNRAWDATAID", "ATTNRAWDATAID");
bulkCopy.ColumnMappings.Add("CARDID", "CARDID");
bulkCopy.ColumnMappings.Add("EMPLOYEEID", "EMPLOYEEID");
bulkCopy.ColumnMappings.Add("CARDNO", "CARDNO");
bulkCopy.ColumnMappings.Add("PUNCHTIME", "PUNCHTIME");
bulkCopy.ColumnMappings.Add("ENTRYMODE", "ENTRYMODE");
bulkCopy.ColumnMappings.Add("DEVICEIPADDRESS", "DEVICEIPADDRESS");
bulkCopy.ColumnMappings.Add("DEVICENO", "DEVICENO");
bulkCopy.ColumnMappings.Add("PUNCHDATE", "PUNCHDATE");
bulkCopy.DestinationTableName = "AttnRawData";
bulkCopy.WriteToServer(_dtRawData);

View File

@ -5877,29 +5877,5 @@ namespace HRM.DA
}
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;
}
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

View File

@ -88,70 +88,32 @@ namespace HRM.DA
if (oItem.LeaveId == 5)
{
#region old code
//DateTime SelectedMonth = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1).LastDateOfMonth();
//from_Date = new DateTime(to_Date.Year - 2, oEmployee.JoiningDate.Month, oEmployee.JoiningDate.Day);
//DataSet ds = new DailyAttnProcessService().GetEarnedLeaveOpening(oEmployee.ID, oItem.LeaveId, from_Date, to_Date);
//int dCurrectedDay = 0;
//if (DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month) < oEmployee.JoiningDate.Day)
// dCurrectedDay = DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month);
//else
// dCurrectedDay = oEmployee.JoiningDate.Day;
//DateTime JoiningDateBefore2YearsFromCurrentYear = new DateTime(SelectedMonth.Year, SelectedMonth.Month, dCurrectedDay).AddYears(-2);// new DateTime(DateTime.Today.Year- 2, item.JoiningDate.Month, item.JoiningDate.Day);// SelectedMonth.FirstDateOfMonth().AddYears(-2);
//DateTime FirstYearStartDate = JoiningDateBefore2YearsFromCurrentYear;
//DateTime FirstYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1).AddDays(-1);
//DateTime LastYearStartDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1);
//DateTime LastYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(2).AddDays(-1);
DateTime SelectedMonth = new DateTime(DateTime.Today.Year, DateTime.Today.Month, 1).LastDateOfMonth();
from_Date = new DateTime(to_Date.Year - 2, oEmployee.JoiningDate.Month, oEmployee.JoiningDate.Day);
DataSet ds = new DailyAttnProcessService().GetEarnedLeaveOpening(oEmployee.ID, oItem.LeaveId, from_Date, to_Date);
int dCurrectedDay = 0;
if (DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month) < oEmployee.JoiningDate.Day)
dCurrectedDay = DateTime.DaysInMonth(SelectedMonth.Year, SelectedMonth.Month);
else
dCurrectedDay = oEmployee.JoiningDate.Day;
DateTime JoiningDateBefore2YearsFromCurrentYear = new DateTime(SelectedMonth.Year, SelectedMonth.Month, dCurrectedDay).AddYears(-2);// new DateTime(DateTime.Today.Year- 2, item.JoiningDate.Month, item.JoiningDate.Day);// SelectedMonth.FirstDateOfMonth().AddYears(-2);
DateTime FirstYearStartDate = JoiningDateBefore2YearsFromCurrentYear;
DateTime FirstYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1).AddDays(-1);
DateTime LastYearStartDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(1);
DateTime LastYearEndDate = JoiningDateBefore2YearsFromCurrentYear.AddYears(2).AddDays(-1);
//double secondYearLeaveAvailed = new LeaveEntryService().Get(oEmployee.ID, LastYearStartDate, LastYearEndDate, EnumLeaveStatus.Approved).Sum(x => x.ApprovedTotalDays);
////List<LeaveEncashment> les = LeaveEncashment.GetByEmpIDs(oEmployee.ID.Integer.ToString(), FirstYearStartDate, FirstYearEndDate);
double secondYearLeaveAvailed = new LeaveEntryService().Get(oEmployee.ID, LastYearStartDate, LastYearEndDate, EnumLeaveStatus.Approved).Sum(x => x.ApprovedTotalDays);
//ObjectsTemplate<LeaveEncashment> les = LeaveEncashment.GetByEmpIDs(oEmployee.ID.Integer.ToString(), FirstYearStartDate, FirstYearEndDate);
//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)
if (ds != null && ds.Tables.Count > 0)
{
dtAvailed = dtAvailed.AddYears(1);
}
DataTable dt = new LeaveService().GetELInfo(oEmployee.ID, oEmployee.JoiningDate, dtTo, dtAvailed);
if (dt != null)
{
foreach (DataRow dr in dt.Rows)
foreach (DataRow dr in ds.Tables[0].Rows)
{
if (dr[0].ToString() == "Leave Availed this")
{
oCurrStatus.LeaveAvailed = Convert.ToDouble(dr[1].ToString());
}
else if (dr[0].ToString() == "Present Days")
{
oCurrStatus.OpeningBalance = Convert.ToDouble(dr[1].ToString());
oCurrStatus.OpeningBalance = oCurrStatus.OpeningBalance == 0 ? 0 : oCurrStatus.OpeningBalance / 18;
}
else if (dr[0].ToString() == "Encash Days")
{
oCurrStatus.OpeningBalance -= Convert.ToDouble(dr[1].ToString());
}
else if (dr[0].ToString() == "Leave Availed")
{
oCurrStatus.NormalLeaveDays = Convert.ToDouble(dr[1].ToString());
}
oCurrStatus.OpeningBalance = 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);
}
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);
@ -159,7 +121,7 @@ namespace HRM.DA
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
&& le.EmpID == empId
&& le.ApprovedFromDate >= from_Date && le.ApprovedFromDate <= to_Date
@ -202,11 +164,9 @@ namespace HRM.DA
}
else
{
#region From Master
if (oDetail != null) oCurrStatus.NormalLeaveDays = 0;
else continue;
//oItem.Details = new List<LeaveParameterDetail>();
//oItem.Details = new ObjectsTemplate<LeaveParameterDetail>();
//oItem.Details.Add(oDetail);
#region calculate the current year balance
@ -289,12 +249,6 @@ namespace HRM.DA
}
#endregion
#endregion
#region From Echotex desktop App
#endregion
}
@ -322,14 +276,14 @@ namespace HRM.DA
{
double nTotalDays = 0;
TimeSpan ts = new TimeSpan();
if (eType == EnumLeaveCalculationType.Daily)
if (eType == EnumLeaveCalculationType.Yearly)
{
if (presentAttnCount > 0)
{
nTotalDays = (double)presentAttnCount / 18;
}
}
else if (eType == EnumLeaveCalculationType.Monthly)
else if (eType == EnumLeaveCalculationType.Yearly)
{
ts = (dCurrentDate - ((emp.JoiningDate > oCurrentYear.StartDate) ?
emp.JoiningDate : Global.DateFunctions.FirstDateOfYear(dCurrentDate)))
@ -347,12 +301,12 @@ namespace HRM.DA
}
// 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));
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) ?
emp.JoiningDate : Global.DateFunctions.FirstDateOfYear(dCurrentDate)))
@ -737,333 +691,6 @@ namespace HRM.DA
//#endregion
public DataTable CurrentYearStatusOptimized(string sEmpIDs, LeaveYear lYear, EnumLeaveStatus eStatus, DateTime NextPayProcessDate)
{
DataTable dTEmpLeave = new DataTable();
dTEmpLeave.Columns.Add("Leave", typeof(System.String));
dTEmpLeave.Columns.Add("Opening", typeof(System.String));
dTEmpLeave.Columns.Add("Availed", typeof(System.String));
dTEmpLeave.Columns.Add("Balance", typeof(System.String));
dTEmpLeave.Columns.Add("EmpNo", typeof(System.String));
dTEmpLeave.Columns.Add("Name", typeof(System.String));
dTEmpLeave.Columns.Add("Designation", typeof(System.String));
dTEmpLeave.Columns.Add("Division", typeof(System.String));
dTEmpLeave.Columns.Add("Department", typeof(System.String));
dTEmpLeave.Columns.Add("Unit", typeof(System.String));
dTEmpLeave.Columns.Add("CFDays", typeof(System.String));
dTEmpLeave.Columns.Add("Floor", typeof(System.String));
dTEmpLeave.Columns.Add("Section", typeof(System.String));
dTEmpLeave.Columns.Add("Line", typeof(System.String));
try
{
DataTable dtEmpBasicInfo = new EmployeeService().GetAllEmpBasicInfo(sEmpIDs)
.Tables[0]
.AsEnumerable()
.OrderBy(x => Convert.ToInt32(x["EmployeeID"].ToString()))
.CopyToDataTable();
List<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.ModifiedBy = oReader.GetString("ModifiedBy") == null ? 0 : oReader.GetInt32("ModifiedBy").Value;
oLeaveEncashment.ModifiedDate = oReader.GetDateTime("ModifiedDate");
oLeaveEncashment.BasicSalary = oReader.GetDouble("BasicSalary", true, 0);
oLeaveEncashment.ESSSubmittedDays = oReader.GetDouble("ESSSubmittedDays", true, 0);
oLeaveEncashment.presentDays = oReader.GetDouble("PresentDays").Value;
oLeaveEncashment.absentDays = oReader.GetDouble("AbsentDays").Value;
oLeaveEncashment.enjoyedLeave = oReader.GetDouble("EnjoyedLeave").Value;
oLeaveEncashment.holiDays = oReader.GetDouble("HoliDays").Value;
oLeaveEncashment.BasicSalary = oReader.GetDouble("BasicSalary").Value;
oLeaveEncashment.ESSSubmittedDays = oReader.GetDouble("ESSSubmittedDays").Value;
this.SetObjectState(oLeaveEncashment, Ease.Core.ObjectState.Saved);
}
protected override T CreateObject<T>(DataReader oReader)
@ -609,37 +605,6 @@ namespace HRM.Service
(((end.Month > start.Month) ||
((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
}

View File

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

View File

@ -696,7 +696,7 @@ namespace HRM.DA
//List<EnmSetupManagerTranType> setupTypes = SetupDetail.GetTypes(setup);
if (setupTypes == null) return parametersID;
//List<SetupDetail> details = SetupDetail.GetParameters(setup);
//ObjectsTemplate<SetupDetail> details = SetupDetail.GetParameters(setup);
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)
{
List<int> leaveParamIds = ApplicableParametersForReport(oEmp, setupTypes, details);
//List<LeaveParameter> leaveParamss = LeaveParameter.Get();
//ObjectsTemplate<LeaveParameter> leaveParamss = LeaveParameter.Get();
List<LeaveParameter> leaveParams = new List<LeaveParameter>();
foreach (LeaveParameter lparam in leaveParamss)
{
@ -846,48 +846,6 @@ namespace HRM.DA
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
}

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.
{
Employee emp = new EmployeeService().Get(oItem.EmpId);
@ -1444,7 +1444,7 @@ namespace HRM.DA
// + current month (0, because current month not yet completed)= 19, but as per policy he will get 20 days from one year completion.
// so folloiwng loic is needed to that
if (oItem.CalculationType == EnumLeaveCalculationType.Monthly)//EnumLeaveCalculationType.Monthly_Earn)
if (oItem.CalculationType == EnumLeaveCalculationType.Monthly_Earn)
{
double months = Global.DateFunctions.DateDiff("M", oEmployee.JoiningDate, dCurrentDate);
if (oDetail.Year == 1 && months == 12)
@ -1900,7 +1900,7 @@ namespace HRM.DA
nTotalDays = Math.Floor(nTotalDays);
}
else if (eType == EnumLeaveCalculationType.Monthly)/*EnumLeaveCalculationType.Monthly_Earn)*/
else if (eType == EnumLeaveCalculationType.Monthly_Earn)
{
if (emp.ID == 1807)
{
@ -2095,7 +2095,7 @@ namespace HRM.DA
// + current month (0, because current month not yet completed)= 19, but as per policy he will get 20 days from one year completion.
// so folloiwng loic is needed to that
if (oItem.CalculationType == EnumLeaveCalculationType.Monthly)/*EnumLeaveCalculationType.Monthly_Earn)*/
if (oItem.CalculationType == EnumLeaveCalculationType.Monthly_Earn)
{
double months = Global.DateFunctions.DateDiff("M", oEmployee.JoiningDate, dCurrentDate);
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.Utility;
using HRM.BO;
using System;
using System.Collections.Generic;
using System.Data;
using System.Text;
namespace HRM.DA
@ -428,31 +427,6 @@ namespace HRM.DA
return false;
}
#endregion
public DataTable GetELInfo(int empID, DateTime JoinDate, DateTime toDate, DateTime availedTo)
{
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin();
DataSet dSet = LeaveDA.GetELInfo(tc, empID, JoinDate, toDate, availedTo);
return dSet.Tables[0];
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
finally
{
if (tc != null)
tc.End();
}
}
}
#endregion

View File

@ -1,147 +0,0 @@
using Ease.Core.DataAccess;
using Ease.Core.Model;
using Ease.Core.Utility;
using HRM.BO;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HRM.DA
{
public class OpenAIQueryLogService : ServiceTemplate, IOpenAIQueryLogService
{
public OpenAIQueryLogService()
{
}
private void MapObject(OpenAIQueryLog oQueryLog, DataReader oReader)
{
base.SetObjectID(oQueryLog, (oReader.GetInt32("QueryLogID").Value));
oQueryLog.UserId = oReader.GetInt32("UserId").Value;
oQueryLog.UserPrompt = oReader.GetString("UserPrompt");
oQueryLog.GeneratedQuery = oReader.GetString("GeneratedQuery", "");
oQueryLog.ExecutedAt = oReader.GetDateTime("ExecutedAt").HasValue
? oReader.GetDateTime("ExecutedAt").Value
: DateTime.MinValue;
oQueryLog.TotalExecution = oReader.GetInt32("TotalExecution", 0);
oQueryLog.ReportGroup = (EnumReportGroupType)oReader.GetInt32("ReportGroup").Value;
oQueryLog.IsChart = oReader.GetBoolean("IsChart", false);
oQueryLog.ChartType = (EnumAIChartType)oReader.GetInt32("ChartType").Value;
oQueryLog.Title = oReader.GetString("Title", "");
oQueryLog.IsCommon = oReader.GetBoolean("IsCommon", false);
this.SetObjectState(oQueryLog, Ease.Core.ObjectState.Saved);
}
protected override T CreateObject<T>(DataReader oReader)
{
OpenAIQueryLog oQueryLog = new OpenAIQueryLog();
MapObject(oQueryLog, oReader);
return oQueryLog as T;
}
protected OpenAIQueryLog CreateObject(DataReader oReader)
{
OpenAIQueryLog oQueryLog = new OpenAIQueryLog();
MapObject(oQueryLog, oReader);
return oQueryLog;
}
public void Save(OpenAIQueryLog oQueryLog)
{
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin(true);
if (oQueryLog.IsNew)
{
int id = tc.GenerateID("OpenAIQueryLog", "QueryLogID");
base.SetObjectID(oQueryLog, (id));
OpenAIDA.Insert(tc, oQueryLog);
}
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
}
public void UpdateQueryLogTotalExecution(OpenAIQueryLog oQueryLog)
{
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin(true);
if (!oQueryLog.IsNew)
{
OpenAIDA.UpdateQueryLogTotalExecution(tc, oQueryLog);
}
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
}
public void ChatShareWithOthers(OpenAIQueryLog oQueryLog)
{
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin(true);
if (!oQueryLog.IsNew)
{
OpenAIDA.ChatShareWithOthers(tc, oQueryLog);
}
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
}
public List<OpenAIQueryLog> GetAllQueryLogByUserID(int userID, EnumReportGroupType reportGroup)
{
List<OpenAIQueryLog> allQueryLog = new List<OpenAIQueryLog>();
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin();
DataReader dr = new DataReader(OpenAIDA.GetAllQueryLogByUserID(tc, userID, reportGroup));
allQueryLog = this.CreateObjects<OpenAIQueryLog>(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 allQueryLog;
}
}
}

View File

@ -1,790 +0,0 @@
using Ease.Core.DataAccess;
using Ease.Core.Model;
using Ease.Core.Utility;
using HRM.BO;
using ICSharpCode.SharpZipLib.Zip;
using iTextSharp.text;
using Microsoft.AspNetCore.Http;
using Microsoft.SemanticKernel;
using Microsoft.VisualBasic;
using NPOI.SS.Formula.Functions;
using NPOI.SS.UserModel;
using OpenAI;
using OpenAI.Chat;
using OpenAI.Models;
using Org.BouncyCastle.Asn1.Crmf;
using System;
using System.ClientModel;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Security.Cryptography.Xml;
using System.Text;
using System.Text.Json;
using System.Text.Json.Serialization;
using System.Threading;
using System.Threading.Tasks;
namespace HRM.DA
{
public class OpenAIService
{
private readonly string _encryptedkey;
private readonly string _apiKey;
private readonly string _openAiModel;
private readonly int _maxLimit;
public OpenAIService(string encryptedkey, string model, int maxLimit)
{
_encryptedkey = encryptedkey;
_apiKey = Ease.Core.Utility.Global.CipherFunctions.Decrypt("CeLiMiTeD.AdMIn", _encryptedkey);
_openAiModel = model;
_maxLimit = maxLimit;
}
#region Invalid Query Message
public string returnMessage = "";
private const string queryMessage = "I'm sorry, I couldn't process your request. Please try rephrasing it. I'm here to help with anything related to payroll or HR tasks.";
private const string modificationMessage = "I'm Sorry, I can only help with retrieving data. I am not allowed to update or delete any records.";
#endregion
#region Schema Generation (Old Version)
// Aliases
//sb.AppendLine("\nAlias Mappings:");
//foreach (var row in columns.AsEnumerable())
//{
// string caption = row["CAPTION"]?.ToString();
// string columnName = row["COLUMNNAME"].ToString();
// string tableName = row["TABLENAME"].ToString();
// if (!string.IsNullOrWhiteSpace(caption) && caption != columnName)
// {
// sb.AppendLine($"- {tableName}.{columnName} is also called '{caption}'");
// }
//}
#endregion
#region Ask SQL Query
#region Function Summary
/*
* Function Summary & What it Handles:
*
* 1. Request Limiting:
* - Ensures the total number of OpenAI calls does not exceed the configured maximum.
* - Throws a polite error message if the request limit is reached.
*
* 2. Timeout Handling:
* - Uses CancellationTokenSource with a configurable timeout (default 60 seconds).
* - Cancels the OpenAI API request if it exceeds the timeout and throws a timeout message.
*
* 3. Rate Limit Handling & Retry Logic:
* - Detects HTTP 429 status or "rate limit" errors from exceptions.
* - Retries the API call up to 5 times with exponential backoff.
* - Returns a polite "service busy" message if retries are exhausted.
*
* 4. OpenAI API Call:
* - Builds a dynamic system prompt including schema and chart instructions.
* - Sends the users prompt to OpenAI for SQL and chart generation.
* - Extracts and cleans the AI response.
*
* 5. Response Parsing & Validation:
* - Deserializes the AI response into a structured object.
* - Ensures only SELECT queries are allowed.
* - Rejects invalid or unsafe queries with descriptive errors.
*
* 6. Async Logging:
* - Logs user prompts, generated SQL, chart details, and metadata asynchronously.
* - Logging errors do not interrupt the main flow.
*
* 7. SQL Execution & JSON Response:
* - Executes the validated SQL query against the database.
* - Wraps the dataset with chart metadata and returns JSON.
*
* 8. General Exception Handling:
* - Provides user-friendly messages for timeouts, rate limits, and invalid queries.
* - Retries on transient errors and throws detailed exceptions otherwise.
*/
#endregion
public async Task<string> AskOpenAISqlQueryWithChartAsync(string prompt, int userID, EnumReportGroupType reportGroupType, DateTime nextPayprocessDate = new DateTime(), int timeoutSeconds = 60)
{
#region Initialize OpenAI Call Count For Limitation
int totalOpenAICall = TotalOpenAICall();
if (totalOpenAICall >= _maxLimit)
{
throw new Exception("You have reached the maximum limit of requests. Please try again later.");
}
#endregion
string returnMessage = "An error occurred while processing your request.";
int maxRetries = 5;
int delaySeconds = 1;
for (int attempt = 0; attempt <= maxRetries; attempt++)
{
try
{
#region Initialize OpenAI Client and Cancellation Token
using var cts = new CancellationTokenSource(TimeSpan.FromSeconds(timeoutSeconds));
var client = new ChatClient(model: _openAiModel, apiKey: _apiKey);
#endregion
#region Build System Prompt
string systemPrompt = BuildInitialDescriptionWithChart(reportGroupType) + BuildDynamicSchemaPrompt(reportGroupType, nextPayprocessDate) + BuildInstructionWithChart(reportGroupType);
#endregion
//throw new Exception("You have reached the maximum limit of requests. Please try again later.");
#region Call OpenAI API
var completion = await client.CompleteChatAsync(
new ChatMessage[]
{
ChatMessage.CreateSystemMessage(systemPrompt),
ChatMessage.CreateUserMessage(prompt)
},
cancellationToken: cts.Token
);
#endregion
#region Process and Store OpenAI Response
string aiResponse = completion.Value.Content[0].Text.Trim();
if (string.IsNullOrWhiteSpace(aiResponse))
throw new Exception("Did not return any response.");
aiResponse = aiResponse.Replace("```", "").Trim();
aiResponse = aiResponse.Replace("\n", "\\n").Replace("\r", "\\r");
OpenAIResponse aiResponseObject = Newtonsoft.Json.JsonConvert.DeserializeObject<OpenAIResponse>(aiResponse);
#endregion
#region Validate AI response
string sql = aiResponseObject.Sql;
bool isChart = aiResponseObject.IsChart;
EnumAIChartType chartType = GetAIChartType(aiResponseObject.ChartType);
if (!string.IsNullOrWhiteSpace(aiResponseObject.Message))
{
throw new Exception(aiResponseObject.Message);
}
if (!sql.TrimStart().StartsWith("SELECT", StringComparison.OrdinalIgnoreCase))
throw new Exception("Only SELECT queries are allowed.");
#endregion
#region Save OpenAI Query Log
_ = Task.Run(() =>
{
try
{
var logService = new OpenAIQueryLogService();
logService.Save(new OpenAIQueryLog
{
UserId = userID,
UserPrompt = prompt,
GeneratedQuery = sql,
ExecutedAt = DateTime.Now,
ReportGroup = reportGroupType,
IsChart = isChart,
ChartType = GetAIChartType(aiResponseObject.ChartType),
Title = aiResponseObject.Title,
IsCommon = false
});
}
catch (Exception logEx)
{
Console.WriteLine($"[LogError] OpenAI log failed: {logEx.Message}");
}
});
#endregion
#region Execute SQL and Build Data
DataSet data = GetOpenAIData(sql);
var chartData = BuildOpenAIResponseWithData(data, aiResponseObject);
return Newtonsoft.Json.JsonConvert.SerializeObject(chartData);
#endregion
}
catch (OperationCanceledException)
{
throw new Exception("AI request timed out. Please try again.");
}
catch (HttpRequestException httpEx) when (httpEx.Message.Contains("429") || httpEx.Message.Contains("rate limit", StringComparison.OrdinalIgnoreCase))
{
if (attempt == maxRetries)
throw new Exception("Sorry, our AI service is busy now. Please try again after some time.");
await Task.Delay(TimeSpan.FromSeconds(delaySeconds));
delaySeconds *= 2;
}
catch (Exception ex)
{
if (ex.Message.Contains("You've reached our limits of messages", StringComparison.OrdinalIgnoreCase) ||
ex.Message.Contains("rate limit", StringComparison.OrdinalIgnoreCase))
{
if (attempt == maxRetries)
throw new Exception("Sorry, our AI service is busy now. Please try again after some time.");
await Task.Delay(TimeSpan.FromSeconds(delaySeconds));
delaySeconds *= 2;
continue;
}
throw new Exception(returnMessage + ex.Message, ex);
}
}
throw new Exception("Failed to get a response from AI after multiple attempts. Please try again later.");
}
#endregion
#region Build OpenAI Response with Data
public OpenAIResponseWithData BuildOpenAIResponseWithData(DataSet ds, OpenAIResponse aiResponseObject)
{
var table = ds.Tables[0];
var labels = new List<string>();
var values = new List<double>();
if (aiResponseObject.IsChart)
{
labels = table.AsEnumerable().Select(r => r[0].ToString()).ToList();
values = table.AsEnumerable().Select(r => Convert.ToDouble(r[1])).ToList();
}
var tableJson = ProcessDataSetToJson(ds);
return new OpenAIResponseWithData
{
IsChart = aiResponseObject.IsChart,
ChartType = aiResponseObject.ChartType,
Title = aiResponseObject.Title,
Labels = labels,
Values = values,
TableData = tableJson
};
}
#endregion
#region Build Initial Description (System Prompt)
public string BuildInitialDescriptionWithChart(EnumReportGroupType reportGroupType)
{
var sb = new StringBuilder();
sb.AppendLine("You are an expert SQL assistant.");
sb.AppendLine("Given a user request and the following database schema, your job is to:");
sb.AppendLine("1.Always generate a valid SQL SELECT queries in Microsoft SQL Server (T-SQL) syntax.");
sb.AppendLine("2.Always generate SQL in a single line, without extra newlines or unnecessary spaces.");
sb.AppendLine("3.Never return DELETE, UPDATE, INSERT queries or any data-modifying operation.You are read-only.");
sb.AppendLine("4.Detect if the user wants a chart/graph.");
sb.AppendLine("5.Always return only valid JSON following structure:" +
"{\"isChart\":true|false,\"chartType\":\"pie|bar|line|scatter|area|histogram|waterfall|gantt|radar|activity\",\"title\":\"<title>\",\"sql\":\"<SQL>\",\"message\":\"\"}");
sb.AppendLine("6.Title must be short, human-readable, based on the user request.");
sb.AppendLine("7.If the user asks modification deletion or insartion requested, set sql:'' and message:" +
"Sorry, I can only help with retrieving data. I am not allowed to update or delete any records.");
#region Check
if (reportGroupType == EnumReportGroupType.Employee)
{
sb.AppendLine("8.If the user request is not related to the payroll management system or does not match the provided schema,set \"sql\": \"\" and " +
"\"message\": \"I can only help with questions related to Employee Information\"");
}
if (reportGroupType == EnumReportGroupType.Performance)
{
sb.AppendLine("8.If the user request is not related to the payroll management system or does not match the provided schema,set \"sql\": \"\" and " +
"\"message\": \"I can only help with questions related to Employee Performance\"");
}
if (reportGroupType == EnumReportGroupType.Salary)
{
sb.AppendLine("8.If the user request is not related to the payroll management system or does not match the provided schema,set \"sql\": \"\" and " +
"\"message\": \"I can only help with questions related to Employee Salary\"");
}
if (reportGroupType == EnumReportGroupType.Training)
{
sb.AppendLine("8.If the user request is not related to the payroll management system or does not match the provided schema,set \"sql\": \"\" and " +
"\"message\": \"I can only help with questions related to Employee Training\"");
}
if (reportGroupType == EnumReportGroupType.Attendance)
{
sb.AppendLine("8.If the user request is not related to the payroll management system or does not match the provided schema,set \"sql\": \"\" and " +
"\"message\": \"I can only help with questions related to Employee Attendance\"");
}
if (reportGroupType == EnumReportGroupType.Leave)
{
sb.AppendLine("8.If the user request is not related to the payroll management system or does not match the provided schema,set \"sql\": \"\" and " +
"\"message\": \"I can only help with questions related to Employee Leave\"");
}
#endregion
sb.AppendLine("9.Do not return actual data values or any explanations.");
return sb.ToString();
}
#endregion
#region Dynamic Schema Generation (System Prompt)
public string BuildDynamicSchemaPrompt(EnumReportGroupType reportGroupType, DateTime nextPayprocessDate)
{
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin();
DataTable columns = GetColumnDefinitions(tc, reportGroupType);
DataTable relations = GetColumnRelations(tc,reportGroupType);
DataTable allData = null;
if (reportGroupType == EnumReportGroupType.Salary || reportGroupType == EnumReportGroupType.Leave)
{
allData = GetAllType(tc, reportGroupType);
}
tc.End();
var sb = new StringBuilder();
sb.AppendLine("Database Schema:");
var pkColumns = new Dictionary<string, List<string>>();
var grouped = columns.AsEnumerable().GroupBy(row => row["TABLENAME"].ToString()).OrderBy(g => g.Key);
#region Table Definitions
foreach (var tableGroup in grouped)
{
string tableName = tableGroup.Key;
var columnDefs = new List<string>();
var pks = new List<string>();
foreach (var row in tableGroup)
{
string columnName = row["COLUMNNAME"].ToString();
string caption = row["CAPTION"]?.ToString();
string dataType = ((EnumColumnDataType)Convert.ToInt32(row["DATATYPE"])).ToString();
bool isPK = row.Table.Columns.Contains("IsPrimaryKey") && Convert.ToBoolean(row["IsPrimaryKey"]);
bool isFK = row.Table.Columns.Contains("IsForeignKey") && Convert.ToBoolean(row["IsForeignKey"]);
string label = $"{columnName}";
if (isPK)
{
label += "(PK)";
pks.Add(columnName);
}
else if (isFK)
{
label += "(FK)";
}
label += $" ({dataType})";
if (!string.IsNullOrWhiteSpace(caption) && caption != columnName)
label += $" = {caption}";
columnDefs.Add(label);
}
sb.AppendLine($"-{tableName}({string.Join(", ", columnDefs)})");
if (pks.Any())
pkColumns[tableName] = pks;
}
#endregion
#region RelationShip Definitions
if (relations.Rows.Count > 0)
{
sb.AppendLine("Relationships:");
foreach (DataRow rel in relations.Rows)
{
string master = rel["MASTERTABLENAME"].ToString();
string masterCol = rel["MASTERCOLUMN1NAME"].ToString();
string link = rel["LINKTABLENAME"].ToString();
string linkCol = rel["LINKCOLUMN1NAME"].ToString();
sb.AppendLine($"-{link}.{linkCol} → {master}.{masterCol}");
}
}
#endregion
sb.AppendLine(BuildInitialNoted(reportGroupType, nextPayprocessDate, allData));
return sb.ToString();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
}
public string BuildInitialNoted(EnumReportGroupType reportGroupType, DateTime nextPayprocessDate, DataTable allData = null)
{
var sb = new StringBuilder();
sb.AppendLine("Note:");
sb.AppendLine("-Never include primary key (PK) or Foreign Key(FK) columns in SELECT output. For reference only.");
if (reportGroupType == EnumReportGroupType.Employee)
{
sb.AppendLine("-The status field can have synonyms: 'Live' or 'Active' mean the same thing (Live). 'Discontinue' or 'Inactive' mean the same thing (Discontinue).");
sb.AppendLine("-Employees with no record in the 'EmployeeSpouse' table are considered Unmarried.");
}
if (allData != null && reportGroupType == EnumReportGroupType.Salary)
{
if (allData.Columns.Contains("Head"))
{
var heads = allData.AsEnumerable()
.Select(r => r["Head"]?.ToString())
.Where(h => !string.IsNullOrEmpty(h))
.Distinct()
.ToList();
if (heads.Any())
{
sb.AppendLine($"-The 'Head' column represents different salary components such as: {string.Join(",", heads)}");
}
}
sb.AppendLine($"-Always use SalaryMonth(always last date of month) in the SQL WHERE clause.");
sb.AppendLine($"-If a user is not specifies any date or year in the request, always use SalaryMonth = {GlobalFunctions.LastDateOfMonth(nextPayprocessDate).ToString("dd MMM yyyy")} in the SQL WHERE clause.");
sb.AppendLine("-The columns BirthDate, JoiningDate, SalaryMonth should always be returned in the format 'dd MMM yyyy'.");
}
if (allData != null && reportGroupType == EnumReportGroupType.Leave)
{
if (allData.Columns.Contains("LeaveType"))
{
var heads = allData.AsEnumerable()
.Select(r => r["LeaveType"]?.ToString())
.Where(h => !string.IsNullOrEmpty(h))
.Distinct()
.ToList();
if (heads.Any())
{
sb.AppendLine($"-The 'LeaveType' column represents different Leave Type such as: {string.Join(",", heads)}");
}
}
sb.AppendLine("-The Columns BirthDate, JoiningDate, FromDate and ToDate should always be returned in the format 'dd MMM yyyy'.");
}
if (reportGroupType == EnumReportGroupType.Attendance)
{
sb.AppendLine("-The columns BirthDate, JoiningDate and AttendanceDate should always be returned in the format 'dd MMM yyyy'.");
sb.AppendLine("-The columns InTime and OutTime should always be returned in the format 'hh:mm:ss aa'.");
sb.AppendLine("-The 'AttendanceStatus' column represents the daily attendance of an employee and may include: 'Present', 'Absent', 'Delay', 'Leave', 'Holiday', 'Weekly Off', 'Out Side Duty', 'Weekly Holiday', 'Compensation', 'Manual', 'Late', 'Early', 'HalfDay', 'LOA'.");
sb.AppendLine("-The 'LateStatus' column already stores values as 'Yes' (Late) or 'No' (On Time).");
sb.AppendLine("-The 'WorkDayType' column defines the type of the day: 'Weekly Holiday', 'National Holiday', 'Working Day', 'HartalDay', 'Weekly and National'.");
}
if (reportGroupType == EnumReportGroupType.Employee || reportGroupType == EnumReportGroupType.Training)
{
sb.AppendLine("-The columns BirthDate, JoiningDate, MarriageDate, EmployementEndDate and NominationDate should always be returned in the format 'dd MMM yyyy'.");
sb.AppendLine("-The 'EmploymentEndDate' column represents when an employee left the company (retirement, resignation, termination, etc)");
}
if (reportGroupType == EnumReportGroupType.Training)
{
sb.AppendLine("-The TrainingStatus field can have Enrolled|Completed|Unknown");
sb.AppendLine("-The columns StartDate,EndDate,BirthDate,JoiningDate,LineManagerBirthDate,LineManagerJoiningDate should always be returned in the format 'dd MMM yyyy'.");
}
return sb.ToString();
}
#endregion
#region Build Instruction (System Prompt)
public string BuildInstructionWithChart(EnumReportGroupType reportGroupType)
{
var sb = new StringBuilder();
sb.AppendLine("Instructions:");
sb.AppendLine("-Treat any mention of EmployeeID or EmployeeNo in user input as referring to Employee.EmployeeNo.");
sb.AppendLine("-Use appropriate JOINs based on foreign keys.");
sb.AppendLine("-If only certain columns are requested, include only those.");
sb.AppendLine("-Always map user-friendly aliases (e.g., 'Employee No', 'Department Name') to the correct table and column.");
sb.AppendLine("-If a date condition is mentioned, use WHERE clause accordingly.");
sb.AppendLine("-Support ordering, limits (TOP/OFFSET), and filtering.");
return sb.ToString();
}
#endregion
#region OpenAI Previous Query Execution
public async Task<string> OpenAIPreviousQueryExecution(OpenAIQueryLog oQueryLog)
{
try
{
oQueryLog.TotalExecution++;
#region Update OpenAI Query Log Total Execution
Task.Run(() =>
{
try
{
var logService = new OpenAIQueryLogService();
logService.UpdateQueryLogTotalExecution(oQueryLog);
}
catch (Exception ex)
{
Console.WriteLine($"[LogError] OpenAI log failed: {ex.Message}");
}
});
#endregion
string sql = oQueryLog.GeneratedQuery;
DataSet data = GetOpenAIData(sql);
OpenAIResponse aiResponseObject = new OpenAIResponse
{
IsChart = oQueryLog.IsChart,
ChartType = GetAIChartType(oQueryLog.ChartType),
Sql = sql,
Message = string.Empty,
Title = oQueryLog.Title
};
var chartData = BuildOpenAIResponseWithData(data, aiResponseObject);
return Newtonsoft.Json.JsonConvert.SerializeObject(chartData);
}
catch (Exception ex)
{
throw new Exception(returnMessage);
}
}
#endregion
#region Process DataSet to JSON
public string ProcessDataSetToJson(DataSet OpenAiData)
{
string output;
DataSet information = new DataSet();
information = OpenAiData;
var value = (object)information;
switch (value)
{
case null:
output = "";
break;
case DataSet ds:
output = JsonSerializer.Serialize(ds.Tables.Cast<DataTable>()
.Select(tbl => new {
TableName = tbl.TableName,
Rows = tbl.Rows.Cast<DataRow>()
.Select(row => tbl.Columns.Cast<DataColumn>()
.ToDictionary(col => col.ColumnName, col => row[col]))
}),
new JsonSerializerOptions { WriteIndented = true }
);
break;
case DataTable dt:
output = JsonSerializer.Serialize(
dt.Rows.Cast<DataRow>()
.Select(row => dt.Columns.Cast<DataColumn>()
.ToDictionary(col => col.ColumnName, col => row[col])),
new JsonSerializerOptions { WriteIndented = true }
);
break;
case IEnumerable<object> list:
output = JsonSerializer.Serialize(list, new JsonSerializerOptions { WriteIndented = true });
break;
case string str:
output = str;
break;
default:
output = JsonSerializer.Serialize(value, new JsonSerializerOptions
{
WriteIndented = true,
IgnoreReadOnlyProperties = true,
PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull
});
break;
}
return output;
}
#endregion
#region Get OpenAI Data (Generate OpenAI's Provided SQL Query)
public DataSet GetOpenAIData(string sql)
{
TransactionContext tc = null;
DataSet information = new DataSet();
try
{
tc = TransactionContext.Begin();
information = OpenAIDA.GetOpenAIData(tc, sql);
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
return information;
}
#endregion
#region Get 'Column Definitions' and 'Relations Between Tables'
public DataTable GetColumnDefinitions(TransactionContext tc, EnumReportGroupType reportGroupType)
{
DataTable oColumnDefinition = new DataTable();
try
{
oColumnDefinition = OpenAIDA.GetColumnDefinitions(tc, reportGroupType);
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
return oColumnDefinition;
}
public async Task<DataTable> GetColumnDefinitions(EnumReportGroupType reportGroupType)
{
DataTable oColumnDefinition = new DataTable();
TransactionContext tc = null;
try
{
tc = TransactionContext.Begin();
oColumnDefinition = OpenAIDA.GetColumnDefinitions(tc, reportGroupType);
tc.End();
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
return oColumnDefinition;
}
public DataTable GetColumnRelations(TransactionContext tc, EnumReportGroupType reportGroupType)
{
DataTable oColumnRelation = new DataTable();
try
{
oColumnRelation = OpenAIDA.GetColumnRelations(tc, reportGroupType);
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
return oColumnRelation;
}
#endregion
#region Get All Type for (Leave Type & Salary Head)
public DataTable GetAllType(TransactionContext tc, EnumReportGroupType reportGroupType)
{
DataTable oColumnDefinition = new DataTable();
try
{
oColumnDefinition = OpenAIDA.GetAllType(tc, reportGroupType);
}
catch (Exception e)
{
#region Handle Exception
if (tc != null)
tc.HandleError();
ExceptionLog.Write(e);
throw new ServiceException(e.Message, e);
#endregion
}
return oColumnDefinition;
}
#endregion
#region Get AI Chart Type
public EnumAIChartType GetAIChartType(string type)
{
switch (type.ToLower())
{
case "pie":
return EnumAIChartType.PieChart;
case "bar":
return EnumAIChartType.BarChart;
case "line":
return EnumAIChartType.LineGraph;
case "scatter":
return EnumAIChartType.ScatterPlot;
case "area":
return EnumAIChartType.AreaChart;
case "histogram":
return EnumAIChartType.Histogram;
case "waterfall":
return EnumAIChartType.WaterfallChart;
case "gantt":
return EnumAIChartType.GantChart;
case "radar":
return EnumAIChartType.RadarChart;
case "activity":
return EnumAIChartType.ActivityDiagram;
default:
return EnumAIChartType.None;
}
}
public string GetAIChartType(EnumAIChartType type)
{
switch (type)
{
case EnumAIChartType.PieChart:
return "pie";
case EnumAIChartType.BarChart:
return "bar";
case EnumAIChartType.LineGraph:
return "line";
case EnumAIChartType.ScatterPlot:
return "scatter";
case EnumAIChartType.AreaChart:
return "area";
case EnumAIChartType.Histogram:
return "histogram";
case EnumAIChartType.WaterfallChart:
return "waterfall";
case EnumAIChartType.GantChart:
return "gantt";
case EnumAIChartType.RadarChart:
return "radar";
case EnumAIChartType.ActivityDiagram:
return "activity";
default:
return "";
}
}
#endregion
#region Total OpenAI Call
public int TotalOpenAICall()
{
TransactionContext tc = null;
int? totalCall = 0;
try
{
tc = TransactionContext.Begin();
DataReader dr = new DataReader(OpenAIDA.TotalOpenAICall(tc));
if (dr.Read())
{
totalCall = dr.GetInt32(0);
}
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 totalCall ?? 0;
}
#endregion
}
public class AIServiceUsageLimitException : Exception
{
public AIServiceUsageLimitException(string message) : base(message) { }
}
}

View File

@ -1,14 +1,13 @@
using Ease.Core.DataAccess;
using Ease.Core.Model;
using Ease.Core.Utility;
using HRM.BO;
using HRM.DA;
using HRM.Service;
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
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
{
@ -240,40 +239,6 @@ namespace HRM.DA
#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)
{
TransactionContext tc = null;

View File

@ -1,21 +1,20 @@
using Ease.Core.Model;
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;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using Payroll.BO;
using Ease.CoreV35;
using Ease.Core.Model;
using Ease.Core.Utility;
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.PayrollDataSet;
using static NPOI.POIFS.Crypt.Dsig.SignatureInfo;
@ -340,8 +339,7 @@ namespace HRM.Report
DateTime? bonusIntime = DateTime.MinValue;
DateTime? bonusOuttime = DateTime.MinValue;
List<ProdBonusAttn> prodAttn = new ProdBonusAttnService().GetBySetupID(designId);
if (prodAttn.Count <= 0)
throw new Exception("No data found");
if (prodAttn.Count <= 0) return null;
string empIds = string.Empty;
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 = DailyAttnProcess.Get(empIds,GlobalFunctions.FirstDateOfMonth(design.SalaryMonth.AddMonths(-1)), GlobalFunctions.LastDateOfMonth(design.SalaryMonth));
List<Employee> emps = new EmployeeService().GetByEmpIDs(empIds);
DataTable dTblEmps = new EmployeeService().GetAllEmpBasicInfo(empIds).Tables[0];
List<Employee> attnEmp = new List<Employee>();
PayrollDataSet.PayrollDataSet.dtProdAttendanceDataTable dTable = new PayrollDataSet.PayrollDataSet.dtProdAttendanceDataTable();
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);
double hour = 0;
DataRow drEmp = dTblEmps.AsEnumerable().FirstOrDefault(x => item.ID == x.Field<int>("EmployeeID"));
foreach (ProdBonusAttn tAtt in tempAttn)
{
@ -431,12 +426,6 @@ namespace HRM.Report
oDR["Date"] = dailyAtt.InTime.Value.Date.ToString("dd-MMM-yyyy");
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);
count++;
}

View File

@ -1,19 +1,17 @@
using HRM.BO;
using HRM.DA;
using System;
using System;
using System.Collections.Generic;
using System.Data;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static HRM.Report.PayrollDataSet.PayrollDataSet;
using System.Data;
using HRM.BO;
using HRM.DA;
namespace HRM.Report
{
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();
DataRow oDR = null;
@ -21,16 +19,6 @@ namespace HRM.Report
if (sEmpIDs != null)
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
DataSet oEmp = new EmployeeService().GetEmpDigitalServiceBook(empID);
@ -46,51 +34,25 @@ namespace HRM.Report
oDR["FATHERNAME"] = oDRow["FATHERNAME"];
oDR["MOTHERNAME"] = oDRow["MOTHERNAME"];
oDR["SPOUSENAME"] = oDRow["SPOUSENAME"];
//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["JOININGDATE"] = Convert.ToDateTime(oDRow["JOININGDATE"]).ToString("dd/MM/yyyy");
oDR["DESIGNATION"] = oDRow["DESIGNATION"];
//oDR["DESIGNATION"] = rptDigitalServiceBook.ConvertToBijoy(oDRow["DESIGNATION"].ToString());
oDR["PARMANENTADDRESS"] = oDRow["PARMANENTADDRESS"];
oDR["PRESENTADDRESS"] = oDRow["PRESENTADDRESS"];
//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);
oDR["BIRTHDATE"] = Convert.ToDateTime(oDRow["BIRTHDATE"]).ToString("dd/MM/yyyy");
//if (oDRow["PHOTO"] is not DBNull)
// oDR["PHOTO"] = Convert.ToBase64String((byte[])oDRow["PHOTO"]);
oDR["NIDNO"] = oDRow["NIDNO"];
oDR["HEIGHT"] = oDRow["HEIGHT"];
//oDR["BLOODGROUP"] = GlobalExtensions.BloodGroupToFriendlyName((EnumBloodGroup)Enum.Parse(typeof(EnumBloodGroup),
// Convert.ToInt32(oDRow["BLOODGROUP"]).ToString()));
oDR["BLOODGROUP"] = GlobalFunctions.BloodGroupToBangla((EnumBloodGroup)Convert.ToInt32(oDRow["BLOODGROUP"]));
oDR["BLOODGROUP"] = GlobalExtensions.BloodGroupToFriendlyName((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"] = rptDigitalServiceBook.ConvertToBijoy(oDRow["LMDESIGNATION"].ToString());
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);
//count++;
@ -133,9 +95,7 @@ namespace HRM.Report
foreach (DataRow oDRow in dtEmplifecycle.Rows)
{
oDR = dTable.NewRow();
//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);
oDR["EFFECTDATE"] = Convert.ToDateTime(oDRow["EFFECTDATE"]).ToString("dd/MM/yyyy");
//Designation Designation = new DesignationService().Get(Convert.ToInt32(oDRow["DESIGNATIONID"]));
//oDR["DESIGNATION"] = Designation.NameInBangla;
Grade oGrade = new GradeService().Get(Convert.ToInt32(oDRow["GradeID"]));
@ -164,14 +124,8 @@ namespace HRM.Report
foreach (DataRow oDRow in oLeaveEntry.Tables[0].Rows)
{
oDR = dTable.NewRow();
DateTime fromDateDr = Convert.ToDateTime(oDRow["APRFROMDATE"]);
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["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();
dTable.Rows.Add(oDR);
@ -192,9 +146,7 @@ namespace HRM.Report
foreach (DataRow oDRow in oComplain.Tables[0].Rows)
{
oDR = dTable.NewRow();
//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);
oDR["EFFECTDATE"] = Convert.ToDateTime(oDRow["EFFECTDATE"]).ToString("dd/MM/yyyy");
//if (oDRow["DESCRIPTIONINBANGLA"] is DBNull)
// oDR["DESCRIPTION"] = oDRow["DESCRIPTION"];
//else

File diff suppressed because it is too large Load Diff

View File

@ -18,12 +18,10 @@ using Org.BouncyCastle.Ocsp;
using HRM.Service;
using HRM.BO.Configuration;
using Microsoft.Extensions.Configuration;
//using NPOI.SS.Formula.Functions;
using NPOI.SS.Formula.Functions;
using System.Collections;
using Microsoft.AspNetCore.Http;
//using NPOI.HPSF;
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
using NPOI.HPSF;
namespace HRM.Report
{
@ -3571,7 +3569,7 @@ namespace HRM.Report
table.Add(TagOutputConstant.AllowTotal, TotalAllowance.ToString("#,###.00"));
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
@ -3591,7 +3589,7 @@ namespace HRM.Report
table = new EmployeeService().CollectDataForBanglaAppointmentHash(oHREmp, payrollType);
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".docx";
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".doc";
#endregion
@ -3610,7 +3608,7 @@ namespace HRM.Report
table = new EmployeeService().CollectDataForBanglaAppointmentHash(oHREmp, payrollType);
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".docx";
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".doc";
#endregion
@ -3621,11 +3619,11 @@ namespace HRM.Report
if (oCandidate.IsEmployee == false)
{
table.Add(TagOutputConstant.CandidateName, oCV.Name);
sFilePath = sFPath.TrimEnd('\\') + "\\" + oCV.TrackNo + "-" + sLetterName + ".docx";
sFilePath = sFPath.TrimEnd('\\') + "\\" + oCV.TrackNo + "-" + sLetterName + ".doc";
}
else
{
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".docx";
sFilePath = sFPath.TrimEnd('\\') + "\\" + oEmp.EmployeeNo + "-" + sLetterName + ".doc";
}
break;
@ -3635,49 +3633,26 @@ namespace HRM.Report
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();
FileInfo ossInfo = null;
//file.OriginalFile = letterTemplte.FilePath.Trim();
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;
}
@ -3713,61 +3688,5 @@ namespace HRM.Report
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\AttnMonthlyBenefit.rdlc" />
<None Remove="RDLC\BadliBill.rdlc" />
<None Remove="RDLC\BanglaLeaveRegister.rdlc" />
<None Remove="RDLC\BanglaPayslip.rdlc" />
<None Remove="RDLC\BanglaPSlip.rdlc" />
<None Remove="RDLC\BanglaPSlipBonus.rdlc" />
@ -110,9 +109,7 @@
<None Remove="RDLC\EmployeeCV.rdlc" />
<None Remove="RDLC\EmployeeCVNew.rdlc" />
<None Remove="RDLC\EmployeeDetail.rdlc" />
<None Remove="RDLC\EmployeeDetailEcho.rdlc" />
<None Remove="RDLC\EmployeeDetailWithOPI.rdlc" />
<None Remove="RDLC\EmployeeDetailWithOPIEcho.rdlc" />
<None Remove="RDLC\EmployeeInfo.rdlc" />
<None Remove="RDLC\EmployeeInfoBasic.rdlc" />
<None Remove="RDLC\EmployeeInfoBasicForExcel.rdlc" />
@ -124,7 +121,6 @@
<None Remove="RDLC\EmpPostingDetails.rdlc" />
<None Remove="RDLC\EmpSalaryRevisionNew.rdlc" />
<None Remove="RDLC\EncashmentReport.rdlc" />
<None Remove="RDLC\EncashmentReportEcho.rdlc" />
<None Remove="RDLC\EncashPaySlip.rdlc" />
<None Remove="RDLC\ExtendedSalarySheet.rdlc" />
<None Remove="RDLC\GrandFatherInfo.rdlc" />
@ -148,7 +144,6 @@
<None Remove="RDLC\LeaveApplication.rdlc" />
<None Remove="RDLC\LeaveCashAdvice.rdlc" />
<None Remove="RDLC\LeaveLedger.rdlc" />
<None Remove="RDLC\LeaveLedgerEcho.rdlc" />
<None Remove="RDLC\LeaveLedgerForLateAttn.rdlc" />
<None Remove="RDLC\LeaveLedgerNmgtDetails.rdlc" />
<None Remove="RDLC\LeaveLedgerNmgtLeaveType.rdlc" />
@ -160,7 +155,6 @@
<None Remove="RDLC\LeaveProcessData.rdlc" />
<None Remove="RDLC\LeaveRegisterNew.rdlc" />
<None Remove="RDLC\LeaveReport.rdlc" />
<None Remove="RDLC\LeaveReportEcho.rdlc" />
<None Remove="RDLC\LoanApplication.rdlc" />
<None Remove="RDLC\LoanIssue.rdlc" />
<None Remove="RDLC\LoanIssue_prev.rdlc" />
@ -173,7 +167,6 @@
<None Remove="RDLC\MLSecondPayment.rdlc" />
<None Remove="RDLC\MoneyReceipt.rdlc" />
<None Remove="RDLC\MonthlyPFAmount.rdlc" />
<None Remove="RDLC\MultipleEmpLeaveBalance.rdlc" />
<None Remove="RDLC\MultipleLeaveEmp.rdlc" />
<None Remove="RDLC\MultipleLeaveEmpSimple.rdlc" />
<None Remove="RDLC\MultipleLeaveEmpSimpleNmgt.rdlc" />
@ -368,9 +361,6 @@
<EmbeddedResource Include="RDLC\AttendanceBenefit.rdlc" />
<EmbeddedResource Include="RDLC\AttnMonthlyBenefit.rdlc" />
<EmbeddedResource Include="RDLC\BadliBill.rdlc" />
<EmbeddedResource Include="RDLC\BanglaLeaveRegister.rdlc">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</EmbeddedResource>
<EmbeddedResource Include="RDLC\BanglaPayslip.rdlc" />
<EmbeddedResource Include="RDLC\BanglaPSlip.rdlc" />
<EmbeddedResource Include="RDLC\BanglaPSlipBonus.rdlc" />
@ -383,25 +373,17 @@
<EmbeddedResource Include="RDLC\BankAdviceSGS.rdlc" />
<EmbeddedResource Include="RDLC\CardInfo.rdlc" />
<EmbeddedResource Include="RDLC\CCWiseBonusSummary.rdlc" />
<EmbeddedResource Include="RDLC\EmployeeDetailEcho.rdlc" />
<EmbeddedResource Include="RDLC\EmployeeDetailWithOPIEcho.rdlc" />
<EmbeddedResource Include="RDLC\EmployeeInfoBasicForExcel.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\LeaveLedgerNmgtLeaveType.rdlc">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</EmbeddedResource>
<EmbeddedResource Include="RDLC\LeaveLedgerNmgtMultiple.rdlc" />
<EmbeddedResource Include="RDLC\LeaveReportEcho.rdlc" />
<EmbeddedResource Include="RDLC\MaternityLeaveAfter.rdlc" />
<EmbeddedResource Include="RDLC\MonthlyPFAmount.rdlc">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</EmbeddedResource>
<EmbeddedResource Include="RDLC\MultipleEmpLeaveBalance.rdlc" />
<EmbeddedResource Include="RDLC\MultipleLeaveEmp.rdlc" />
<EmbeddedResource Include="RDLC\NewCCWiseSalarySheet.rdlc" />
<EmbeddedResource Include="RDLC\PFExceptionNew.rdlc" />
@ -601,9 +583,7 @@
<EmbeddedResource Include="RDLC\rptNewlyIssuedLoan.rdlc" />
<EmbeddedResource Include="RDLC\rptObjectivePercentage.rdlc" />
<EmbeddedResource Include="RDLC\rptPayslipForFestiveBonusMgt.rdlc" />
<EmbeddedResource Include="RDLC\rptProdBonusAttendance.rdlc">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</EmbeddedResource>
<EmbeddedResource Include="RDLC\rptProdBonusAttendance.rdlc" />
<EmbeddedResource Include="RDLC\rptProdBonusDetail.rdlc" />
<EmbeddedResource Include="RDLC\rptRecievedData.rdlc" />
<EmbeddedResource Include="RDLC\rptRoleAudit.rdlc" />
@ -636,7 +616,6 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="DocumentFormat.OpenXml" Version="3.3.0" />
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
<PackageReference Include="ReportViewerCore.NETCore" Version="15.1.18" />
</ItemGroup>

View File

@ -49,8 +49,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
[System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" +
" or extended by application code.", DiagnosticId="SYSLIB0051")]
protected DigitalServiceBookDataSet(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context, false) {
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 columnPOSTOFFICEPA;
private global::System.Data.DataColumn columnPARMANENTDISTRICT;
private global::System.Data.DataColumn columnDISTRICTPA;
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;
private global::System.Data.DataColumn columnPARMANENTTHANA;
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[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.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) :
base(info, context) {
this.InitVars();
@ -656,113 +628,17 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public global::System.Data.DataColumn POSTOFFICEPAColumn {
public global::System.Data.DataColumn PARMANENTDISTRICTColumn {
get {
return this.columnPOSTOFFICEPA;
return this.columnPARMANENTDISTRICT;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[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 {
return this.columnDISTRICTPA;
}
}
[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;
return this.columnPARMANENTTHANA;
}
}
@ -821,20 +697,8 @@ namespace HRM.Report.PayrollDataSet {
string BLOODGROUP,
string LMDESIGNATION,
string EDUCATIONLEVEL,
string POSTOFFICEPA,
string DISTRICTPA,
string THANAPA,
string VILLAGEPA,
string ROADNOPA,
string WARDNOPA,
string POSTOFFICETA,
string DISTRICTTA,
string THANATA,
string VILLAGETA,
string ROADNOTA,
string WARDNOTA,
string SIGNATURE,
string AUTHSIGN) {
string PARMANENTDISTRICT,
string PARMANENTTHANA) {
EMPDigitalServiceBookRow rowEMPDigitalServiceBookRow = ((EMPDigitalServiceBookRow)(this.NewRow()));
object[] columnValuesArray = new object[] {
EMPLOYEEID,
@ -854,20 +718,8 @@ namespace HRM.Report.PayrollDataSet {
BLOODGROUP,
LMDESIGNATION,
EDUCATIONLEVEL,
POSTOFFICEPA,
DISTRICTPA,
THANAPA,
VILLAGEPA,
ROADNOPA,
WARDNOPA,
POSTOFFICETA,
DISTRICTTA,
THANATA,
VILLAGETA,
ROADNOTA,
WARDNOTA,
SIGNATURE,
AUTHSIGN};
PARMANENTDISTRICT,
PARMANENTTHANA};
rowEMPDigitalServiceBookRow.ItemArray = columnValuesArray;
this.Rows.Add(rowEMPDigitalServiceBookRow);
return rowEMPDigitalServiceBookRow;
@ -907,20 +759,8 @@ namespace HRM.Report.PayrollDataSet {
this.columnBLOODGROUP = base.Columns["BLOODGROUP"];
this.columnLMDESIGNATION = base.Columns["LMDESIGNATION"];
this.columnEDUCATIONLEVEL = base.Columns["EDUCATIONLEVEL"];
this.columnPOSTOFFICEPA = base.Columns["POSTOFFICEPA"];
this.columnDISTRICTPA = base.Columns["DISTRICTPA"];
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"];
this.columnPARMANENTDISTRICT = base.Columns["PARMANENTDISTRICT"];
this.columnPARMANENTTHANA = base.Columns["PARMANENTTHANA"];
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
@ -960,34 +800,10 @@ namespace HRM.Report.PayrollDataSet {
base.Columns.Add(this.columnLMDESIGNATION);
this.columnEDUCATIONLEVEL = new global::System.Data.DataColumn("EDUCATIONLEVEL", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnEDUCATIONLEVEL);
this.columnPOSTOFFICEPA = new global::System.Data.DataColumn("POSTOFFICEPA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnPOSTOFFICEPA);
this.columnDISTRICTPA = new global::System.Data.DataColumn("DISTRICTPA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnDISTRICTPA);
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);
this.columnPARMANENTDISTRICT = new global::System.Data.DataColumn("PARMANENTDISTRICT", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnPARMANENTDISTRICT);
this.columnPARMANENTTHANA = new global::System.Data.DataColumn("PARMANENTTHANA", typeof(string), null, global::System.Data.MappingType.Element);
base.Columns.Add(this.columnPARMANENTTHANA);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
@ -1153,8 +969,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
[System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" +
" or extended by application code.", DiagnosticId="SYSLIB0051")]
protected SystemInformationDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context) {
this.InitVars();
@ -1418,8 +1232,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
[System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" +
" or extended by application code.", DiagnosticId="SYSLIB0051")]
protected LeaveEntryDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context) {
this.InitVars();
@ -1701,8 +1513,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
[System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" +
" or extended by application code.", DiagnosticId="SYSLIB0051")]
protected EMPLifecycleDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context) {
this.InitVars();
@ -2012,8 +1822,6 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
[System.ObsoleteAttribute("This API supports obsolete formatter-based serialization. It should not be called" +
" or extended by application code.", DiagnosticId="SYSLIB0051")]
protected ComplainDataTable(global::System.Runtime.Serialization.SerializationInfo info, global::System.Runtime.Serialization.StreamingContext context) :
base(info, context) {
this.InitVars();
@ -2527,225 +2335,35 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string POSTOFFICEPA {
public string PARMANENTDISTRICT {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.POSTOFFICEPAColumn]));
return ((string)(this[this.tableEMPDigitalServiceBook.PARMANENTDISTRICTColumn]));
}
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 {
this[this.tableEMPDigitalServiceBook.POSTOFFICEPAColumn] = value;
this[this.tableEMPDigitalServiceBook.PARMANENTDISTRICTColumn] = value;
}
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public string DISTRICTPA {
public string PARMANENTTHANA {
get {
try {
return ((string)(this[this.tableEMPDigitalServiceBook.DISTRICTPAColumn]));
return ((string)(this[this.tableEMPDigitalServiceBook.PARMANENTTHANAColumn]));
}
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 {
this[this.tableEMPDigitalServiceBook.DISTRICTPAColumn] = 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;
this[this.tableEMPDigitalServiceBook.PARMANENTTHANAColumn] = value;
}
}
@ -2955,170 +2573,26 @@ namespace HRM.Report.PayrollDataSet {
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsPOSTOFFICEPANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.POSTOFFICEPAColumn);
public bool IsPARMANENTDISTRICTNull() {
return this.IsNull(this.tableEMPDigitalServiceBook.PARMANENTDISTRICTColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetPOSTOFFICEPANull() {
this[this.tableEMPDigitalServiceBook.POSTOFFICEPAColumn] = global::System.Convert.DBNull;
public void SetPARMANENTDISTRICTNull() {
this[this.tableEMPDigitalServiceBook.PARMANENTDISTRICTColumn] = global::System.Convert.DBNull;
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public bool IsDISTRICTPANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.DISTRICTPAColumn);
public bool IsPARMANENTTHANANull() {
return this.IsNull(this.tableEMPDigitalServiceBook.PARMANENTTHANAColumn);
}
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
public void SetDISTRICTPANull() {
this[this.tableEMPDigitalServiceBook.DISTRICTPAColumn] = 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;
public void SetPARMANENTTHANANull() {
this[this.tableEMPDigitalServiceBook.PARMANENTTHANAColumn] = 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:complexType>
<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: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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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: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_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_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_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_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_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_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_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_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_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_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_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_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_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_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_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_UserColumnName="EDUCATIONLEVEL" msprop:Generator_ColumnPropNameInTable="EDUCATIONLEVELColumn" msprop:Generator_ColumnPropNameInRow="EDUCATIONLEVEL" msprop:Generator_ColumnVarNameInTable="columnEDUCATIONLEVEL" 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="PARMANENTTHANA" msprop:Generator_UserColumnName="PARMANENTTHANA" msprop:Generator_ColumnPropNameInTable="PARMANENTTHANAColumn" msprop:Generator_ColumnPropNameInRow="PARMANENTTHANA" msprop:Generator_ColumnVarNameInTable="columnPARMANENTTHANA" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</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: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="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="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_UserColumnName="CORPORATEADDRESS" msprop:Generator_ColumnPropNameInTable="CORPORATEADDRESSColumn" msprop:Generator_ColumnPropNameInRow="CORPORATEADDRESS" msprop:Generator_ColumnVarNameInTable="columnCORPORATEADDRESS" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</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: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="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="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="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_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_UserColumnName="TOTALDAYS" msprop:Generator_ColumnPropNameInTable="TOTALDAYSColumn" msprop:Generator_ColumnPropNameInRow="TOTALDAYS" msprop:Generator_ColumnVarNameInTable="columnTOTALDAYS" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</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: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="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="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="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="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="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="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_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_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_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_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_ColumnPropNameInRow="BONUS" msprop:Generator_ColumnPropNameInTable="BONUSColumn" msprop:Generator_ColumnVarNameInTable="columnBONUS" msprop:Generator_UserColumnName="BONUS" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</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: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="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="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_UserColumnName="DESCRIPTION" msprop:Generator_ColumnPropNameInTable="DESCRIPTIONColumn" msprop:Generator_ColumnPropNameInRow="DESCRIPTION" msprop:Generator_ColumnVarNameInTable="columnDESCRIPTION" type="xs:string" minOccurs="0" />
</xs:sequence>
</xs:complexType>
</xs:element>

View File

@ -4,7 +4,7 @@
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</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>
<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" />

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="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="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="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" />
@ -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="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="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:complexType>
</xs:element>
@ -3313,123 +3308,25 @@
</xs:sequence>
</xs:complexType>
</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: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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="GradeSalaryAssesment" msprop:Generator_ColumnPropNameInTable="GradeSalaryAssesmentColumn" msprop:Generator_ColumnPropNameInRow="GradeSalaryAssesment" msprop:Generator_UserColumnName="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: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_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_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_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_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_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_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_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_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_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_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_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_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_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_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_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>

View File

@ -4,192 +4,190 @@
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</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>
<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:EmployeeInfo" ZOrder="6" 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:EmployeeEducation" ZOrder="34" 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:EmployeeHobby" ZOrder="32" 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:EmployeeTraining" ZOrder="30" 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:EmployeeNominee" ZOrder="19" 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:IncomeTax" ZOrder="171" 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:IncomeTaxOther" ZOrder="177" 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:SalarySheet" ZOrder="92" 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:SalaryReconsilation" ZOrder="93" 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:CCWSaSummary" ZOrder="48" 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:PostingDetails" ZOrder="176" 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:EmployeeHistory" ZOrder="85" 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:UpcomEmployee" ZOrder="39" 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:BonusBankAdvice" ZOrder="175" 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:AnnualIncomeTax" ZOrder="174" 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:LoanIssue" ZOrder="42" 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:BasicReport" ZOrder="37" 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:OTMonthRange" ZOrder="51" 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:DivisionWiseOT" ZOrder="181" 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:EmpGradeBasic" ZOrder="78" 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:EmpBankHistory" ZOrder="69" 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:EmpPFHis" ZOrder="170" 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:UpCommingEmp" ZOrder="38" 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:Report108" ZOrder="91" 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:CCDetailReport" ZOrder="47" 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:JVLoactionWReport" ZOrder="168" 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:OPIRegister" ZOrder="82" 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:LoanReportForSAP" ZOrder="40" 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:BankAdviceOfPRB" ZOrder="114" 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:WartsilaSalarySheetSummary" ZOrder="173" 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:EmployeeJoining" ZOrder="76" 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:WartsilaReconciliation" ZOrder="132" 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:WartSilaRSummary" ZOrder="172" 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:IndividualLoanReport" ZOrder="9" 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:EmployeeMonthlyExpense" ZOrder="61" 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:EmpPersonalInformation" ZOrder="59" 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:EmpLanguageKnown" ZOrder="162" 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:EmpCloseRelations" ZOrder="56" 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:EmpOtherProfessionalQualifications" ZOrder="63" 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:EmpDescribeInDetailsPresentJobResponsibilities" ZOrder="62" 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:EmpExtraCaricularActivities" ZOrder="165" 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:EmpAdditionalInformation" ZOrder="150" 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:EmpWorkingRelativesAns" ZOrder="73" 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:EmployeePhotoPath" ZOrder="182" 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:ITPfAndOtherDetails" ZOrder="183" 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:ITHeader" ZOrder="178" 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:TaxRebeatInvestment" ZOrder="155" 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:Pmpbasic" ZOrder="161" 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:PmpEmpValueBehaviorRatings" ZOrder="15" 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:dtTransferTPToPR" ZOrder="157" 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:EmpITInfoAndBasicInfo" ZOrder="67" 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:DedtaxByMonth" ZOrder="154" 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:EmployeeServiceLength" ZOrder="66" 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:ReckittTaxCard" ZOrder="153" 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:dtRolePermission" ZOrder="147" 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:dtUserRole" ZOrder="139" 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:SalaryReconDeduction" ZOrder="149" 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:MemoDebit" ZOrder="120" 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:SharedLoanIssue" ZOrder="146" 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:GratuityRegister" ZOrder="144" 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:LoanData" ZOrder="141" 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:dtUserLogin" ZOrder="104" 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:EmpItemWiseSalary" ZOrder="137" 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:Challan" ZOrder="45" 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:SalaryCertificate" ZOrder="134" 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:MarketSurveyCom" ZOrder="118" 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:dtCashAdvice" ZOrder="126" 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:dtProdBonusDetail" ZOrder="125" 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:dtMonthlyProdBonus" ZOrder="124" 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:dtRoleAudit" ZOrder="84" 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:CasualSalarySheet" ZOrder="50" 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:EmpDesCatChange" ZOrder="75" 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:MonthlySchedule" ZOrder="109" 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:AllEmpTaxInfo" ZOrder="108" 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:ArrSheet" ZOrder="105" 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:EmpGroupInsuranceDiscon" ZOrder="74" 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:RemainingLoanforPayslip" ZOrder="100" 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:EmpPromotion" ZOrder="81" 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:CurrentMonthDueLoan" ZOrder="97" 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:PFRegister" ZOrder="95" 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:NmgtSpringFestivalBonusRegister" ZOrder="89" 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:SalaryRegister" ZOrder="86" 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:ActiveEmployee" ZOrder="10" 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:LoanDueWithCC" ZOrder="24" 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:dtEncashmentReport" ZOrder="22" 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:AnnualIncomeCertificate" ZOrder="25" 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:AssetSerialInformation" ZOrder="20" 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:BanglaPaySlipNewProdBonus" ZOrder="17" 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:dtProdAttendance" ZOrder="2" X="513" Y="1359" Height="200" Width="173" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="196" />
<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:CandidateInformation" ZOrder="8" 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:DeletedLifeCycle" ZOrder="4" 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" />
<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="3" X="-66" Y="301" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<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="32" X="0" Y="72" Height="125" Width="180" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="121" />
<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="30" X="0" Y="72" Height="68" Width="161" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="64" />
<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="28" X="0" Y="72" Height="144" Width="171" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="140" />
<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="17" X="-1" Y="72" Height="28" Width="175" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="159" SplitterPosition="24" />
<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="169" X="616" Y="409" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<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="175" X="615" Y="380" Height="124" Width="162" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="120" />
<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="90" X="1740" Y="101" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="313" 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="91" X="1744" Y="199" Height="257" Width="179" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="46" X="286" Y="242" Height="124" Width="162" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" 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="174" X="911" Y="107" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<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="83" X="-66" Y="402" Height="257" Width="165" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="37" X="312" Y="965" Height="105" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<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="173" X="1212" Y="333" Height="162" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" />
<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="172" X="624" Y="607" Height="143" Width="170" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" />
<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="40" X="308" Y="771" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="227" SplitterPosition="253" />
<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="35" X="1205" Y="322" Height="106" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="63" SplitterPosition="102" />
<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="49" X="361" Y="127" Height="143" Width="158" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="109" SplitterPosition="139" />
<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="179" X="1471" Y="161" Height="124" Width="157" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" />
<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="76" X="-67" Y="72" Height="257" Width="155" 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="67" X="-66" Y="333" Height="257" Width="162" 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="168" X="-68" Y="1192" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" />
<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="36" X="313" Y="997" Height="181" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="143" SplitterPosition="177" />
<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="89" X="949" Y="711" Height="257" Width="256" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="687" SplitterPosition="253" />
<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="45" X="286" Y="271" Height="257" Width="155" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="166" X="296" Y="598" Height="162" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" />
<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="80" X="361" Y="96" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="38" X="311" Y="867" Height="257" Width="175" 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="112" X="1215" Y="482" Height="162" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="158" />
<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="171" X="649" Y="769" Height="257" Width="237" 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="74" X="-67" Y="139" Height="238" Width="165" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="234" />
<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="130" X="649" Y="799" Height="257" Width="196" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" 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="170" X="648" Y="738" Height="257" Width="178" 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="6" X="613" Y="350" Height="257" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<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="59" X="-68" Y="753" Height="105" Width="219" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="75" SplitterPosition="101" />
<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="57" X="-67" Y="1006" Height="257" Width="211" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="211" SplitterPosition="253" />
<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="160" X="-67" Y="785" Height="86" Width="188" 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="54" X="-68" Y="1101" Height="86" Width="180" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="58" SplitterPosition="82" />
<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="61" X="-68" Y="659" Height="48" Width="276" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<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="60" X="-69" Y="722" Height="48" Width="300" 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="163" X="-68" Y="816" Height="48" Width="226" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<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="148" X="-66" Y="564" Height="48" Width="222" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<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="71" X="-66" Y="172" Height="48" Width="215" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<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="180" X="-68" Y="944" Height="48" Width="184" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="41" SplitterPosition="44" />
<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="181" X="619" Y="470" Height="124" Width="186" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="92" SplitterPosition="120" />
<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="176" X="617" Y="439" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="120" />
<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="153" X="907" Y="511" Height="105" Width="192" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="101" />
<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="159" X="906" Y="-14" Height="219" Width="183" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="176" SplitterPosition="215" />
<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="12" X="910" Y="79" Height="124" Width="245" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="120" />
<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="155" X="1472" Y="73" Height="143" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="139" />
<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="65" X="-67" Y="438" Height="162" Width="203" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="142" SplitterPosition="158" />
<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="152" X="1472" Y="132" Height="143" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="126" SplitterPosition="139" />
<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="64" X="-67" Y="470" Height="143" Width="204" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="139" />
<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="151" X="950" Y="743" Height="105" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="101" />
<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="145" X="1467" Y="-22" Height="105" Width="167" 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="137" X="1471" Y="103" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
<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="147" X="1740" Y="133" Height="124" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" />
<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="118" X="1198" Y="803" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="83" SplitterPosition="120" />
<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="144" X="1735" Y="-23" Height="257" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="142" X="1204" Y="-20" Height="143" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" SplitterPosition="139" />
<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="139" X="317" Y="834" Height="124" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="120" />
<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="102" X="1472" Y="227" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="158" />
<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="135" X="-67" Y="500" Height="105" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" />
<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="43" X="287" Y="365" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
<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="132" X="1742" Y="167" Height="257" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="116" X="1199" Y="834" Height="124" Width="173" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="120" />
<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="124" X="1474" Y="291" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="158" />
<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="123" X="1475" Y="419" Height="200" Width="176" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
<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="122" X="1477" Y="484" Height="143" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" />
<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="82" X="1474" Y="322" Height="181" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" />
<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="48" X="289" Y="179" Height="257" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="73" X="127" Y="31" Height="257" Width="175" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="107" X="681" Y="1101" Height="257" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="106" X="864" Y="1031" Height="181" Width="151" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="177" />
<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="103" X="889" Y="597" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="72" X="114" Y="139" Height="200" Width="222" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="196" />
<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="98" X="948" Y="769" Height="105" Width="214" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" />
<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="79" X="118" Y="275" Height="200" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
<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="95" X="1093" Y="929" Height="257" Width="200" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="253" />
<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="93" X="907" Y="16" Height="257" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="252" SplitterPosition="253" />
<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="87" X="1093" Y="962" Height="257" Width="265" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="292" 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="84" X="1746" Y="305" Height="239" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="235" />
<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="7" X="756" Y="101" Height="28" Width="158" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
<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="22" 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="20" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<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="23" X="155" Y="190" Height="257" Width="247" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" />
<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="18" X="580" Y="14" Height="162" Width="199" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="158" />
<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="15" 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="13" X="0" Y="0" Height="90" Width="158" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="0" />
<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="5" X="767" Y="198" Height="28" Width="194" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="24" />
<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="1" X="0" Y="0" Height="257" Width="164" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
</Shapes>
<Connectors />
</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="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="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:complexType>
</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="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="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="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: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:sequence>
</xs:complexType>
</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="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="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="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" />
@ -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="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="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:complexType>
</xs:element>
@ -775,60 +762,25 @@
</xs:sequence>
</xs:complexType>
</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: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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="PFLoaninterest" msprop:Generator_ColumnPropNameInTable="PFLoaninterestColumn" msprop:Generator_ColumnPropNameInRow="PFLoaninterest" msprop:Generator_UserColumnName="PFLoaninterest" msprop:Generator_ColumnVarNameInTable="columnPFLoaninterest" 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: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_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_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_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_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_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_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_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_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_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_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_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_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_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_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_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>

View File

@ -4,57 +4,56 @@
Changes to this file may cause incorrect behavior and will be lost if
the code is regenerated.
</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>
<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:CCWiseLeaveEncash" ZOrder="42" X="183" Y="456" Height="28" Width="182" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="45" SplitterPosition="24" />
<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:EmpInformation" ZOrder="33" X="448" Y="29" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" 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:MaternityLeave" ZOrder="30" X="218" Y="32" Height="28" 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:FSSDeduct" ZOrder="21" X="8" Y="196" Height="28" 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:GratuityLedger" ZOrder="4" X="1053" Y="0" Height="28" 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:FSSEmpInformation" ZOrder="27" X="6" Y="101" Height="28" 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:BudgetCC" ZOrder="8" X="866" Y="-2" Height="28" 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:FSSAddItem" ZOrder="23" X="7" Y="133" Height="28" 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:FSSAddOtherItem" ZOrder="16" X="3" Y="361" Height="28" 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:FSSsalaryComponent" ZOrder="26" X="7" Y="69" Height="28" 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:FSSFracsalary" ZOrder="18" X="6" Y="296" Height="28" 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:fsdec" ZOrder="24" X="197" Y="231" Height="28" 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:LeaveBalance" ZOrder="2" X="662" Y="-1" Height="28" Width="177" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="140" 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:TaxInvestment" ZOrder="29" X="219" Y="99" Height="28" 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:LeaveApplication" ZOrder="36" X="663" Y="68" Height="28" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<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:MultipleEmployeeLeave" ZOrder="31" X="217" Y="64" Height="28" 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:LeaveLedger" ZOrder="10" X="663" Y="129" Height="28" 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:FSTerminalBenefit" ZOrder="15" X="3" Y="427" Height="28" 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:EmpDepartmentalLeave" ZOrder="13" X="439" Y="96" Height="28" 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:TeamLeaveType" ZOrder="46" X="195" Y="524" Height="28" 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:BonusPaySlip" ZOrder="41" X="184" Y="423" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="197" SplitterPosition="24" />
<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:LeaveEntrysForSchedular" ZOrder="3" X="660" Y="195" Height="28" 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:MLPayment" ZOrder="38" X="399" Y="182" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
<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:CCWiseSalarySummary" ZOrder="35" X="378" Y="313" Height="28" Width="221" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
<Shape ID="DesignTable:LeaveRegisterBangla" ZOrder="1" X="633" Y="315" Height="28" Width="186" 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="9" X="0" Y="18" Height="49" Width="182" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
<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="24" X="446" Y="29" Height="143" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" 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="257" Width="193" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="329" 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="36" X="8" Y="196" Height="257" 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="20" X="1053" Y="0" Height="143" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="125" 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="43" X="6" Y="101" Height="257" Width="181" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" 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="17" X="866" Y="-2" Height="162" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="142" 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="47" X="7" Y="133" Height="67" Width="150" 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="46" X="3" Y="361" Height="67" Width="170" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="63" 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="44" X="7" Y="69" Height="238" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" 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="42" X="6" Y="296" Height="219" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" 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="39" X="7" Y="38" Height="67" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" 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="14" X="662" Y="-1" Height="257" Width="160" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" 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="28" X="219" Y="99" Height="143" Width="152" 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="2" X="663" Y="68" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
<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="26" X="217" Y="64" Height="257" Width="204" 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="12" X="663" Y="129" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="310" 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="35" X="3" Y="427" Height="257" Width="172" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" 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="22" X="439" Y="96" Height="257" Width="204" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" 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="32" X="0" Y="0" Height="162" Width="159" 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="8" X="0" Y="18" Height="201" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="86" />
<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="10" X="660" Y="195" Height="257" Width="210" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" 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="5" X="399" Y="182" Height="239" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
<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="1" X="943" Y="316" Height="257" Width="221" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="253" />
</Shapes>
<Connectors />
</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 Name="Date">
<DataField>Date</DataField>
<rd:TypeName>System.String</rd:TypeName>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
<Field Name="WorkingHour">
<DataField>WorkingHour</DataField>
<rd:TypeName>System.String</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>
<rd:TypeName>System.Double</rd:TypeName>
</Field>
</Fields>
<rd:DataSetInfo>
<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:TableAdapterFillMethod />
<rd:TableAdapterGetDataMethod />
@ -170,134 +150,6 @@
</Textbox>
</CellContents>
</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>
</TablixCornerRows>
</TablixCorner>
@ -570,190 +422,6 @@
</Textbox>
</CellContents>
</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>
</TablixMembers>
</TablixMember>
@ -763,7 +431,7 @@
<Top>0.53417in</Top>
<Left>0.025in</Left>
<Height>0.5in</Height>
<Width>5.99791in</Width>
<Width>2.66458in</Width>
<ZIndex>1</ZIndex>
<Style>
<Border>

View File

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

View File

@ -1,161 +0,0 @@
"use strict";
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
var useValue = arguments.length > 2;
for (var i = 0; i < initializers.length; i++) {
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
}
return useValue ? value : void 0;
};
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
var _, done = false;
for (var i = decorators.length - 1; i >= 0; i--) {
var context = {};
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
if (kind === "accessor") {
if (result === void 0) continue;
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
if (_ = accept(result.get)) descriptor.get = _;
if (_ = accept(result.set)) descriptor.set = _;
if (_ = accept(result.init)) initializers.unshift(_);
}
else if (_ = accept(result)) {
if (kind === "field") initializers.unshift(_);
else descriptor[key] = _;
}
}
if (target) Object.defineProperty(target, contextIn.name, descriptor);
done = true;
};
var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.BackgroundCanvasComponent = void 0;
var core_1 = require("@angular/core");
var BackgroundCanvasComponent = function () {
var _classDecorators = [(0, core_1.Component)({
standalone: false,
selector: 'app-background-canvas',
template: "\n <canvas #networkCanvas></canvas>\n ",
styles: ["\n canvas {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n }\n ",],
})];
var _classDescriptor;
var _classExtraInitializers = [];
var _classThis;
var _instanceExtraInitializers = [];
var _canvasRef_decorators;
var _canvasRef_initializers = [];
var _canvasRef_extraInitializers = [];
var _onResize_decorators;
var BackgroundCanvasComponent = _classThis = /** @class */ (function () {
function BackgroundCanvasComponent_1(elementRef, apiService) {
this.elementRef = (__runInitializers(this, _instanceExtraInitializers), elementRef);
this.apiService = apiService;
this.canvasRef = __runInitializers(this, _canvasRef_initializers, void 0);
this.canvas = __runInitializers(this, _canvasRef_extraInitializers);
this.particles = [];
this.particleCount = 120;
}
BackgroundCanvasComponent_1.prototype.ngAfterViewInit = function () {
this.canvas = this.canvasRef.nativeElement;
this.ctx = this.canvas.getContext('2d');
this.resizeCanvas();
this.initParticles();
this.animate();
};
BackgroundCanvasComponent_1.prototype.onResize = function () {
this.resizeCanvas();
};
BackgroundCanvasComponent_1.prototype.resizeCanvas = function () {
this.canvas.width = window.innerWidth;
this.canvas.height = window.innerHeight;
};
BackgroundCanvasComponent_1.prototype.initParticles = function () {
this.particles = [];
for (var i = 0; i < this.particleCount; i++) {
this.particles.push({
x: Math.random() * this.canvas.width,
y: Math.random() * this.canvas.height,
vx: (Math.random() * 2 - 1) * 0.01,
vy: (Math.random() * 2 - 1) * 0.01,
radius: Math.floor(Math.random() * 10) + 1
});
}
};
BackgroundCanvasComponent_1.prototype.animate = function () {
var _this = this;
if (!this.ctx)
return;
this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);
this.particles.forEach(function (p) {
p.x += p.vx;
p.y += p.vy;
if (p.x <= 0 || p.x >= _this.canvas.width)
p.vx *= -1;
if (p.y <= 0 || p.y >= _this.canvas.height)
p.vy *= -1;
_this.drawParticle(p);
});
this.connectParticles();
requestAnimationFrame(function () { return _this.animate(); });
};
BackgroundCanvasComponent_1.prototype.drawParticle = function (p) {
if (!this.ctx)
return;
this.ctx.beginPath();
this.ctx.arc(p.x, p.y, p.radius, 0, Math.PI * 2);
this.ctx.fillStyle = '#ffffff';
this.ctx.fill();
this.ctx.closePath();
};
BackgroundCanvasComponent_1.prototype.connectParticles = function () {
if (!this.ctx)
return;
for (var i = 0; i < this.particles.length; i++) {
for (var j = i + 1; j < this.particles.length; j++) {
var p1 = this.particles[i];
var p2 = this.particles[j];
var dx = p2.x - p1.x;
var dy = p2.y - p1.y;
var distance = Math.sqrt(dx * dx + dy * dy);
if (distance < 100) {
var theta = Math.atan2(dy, dx);
var x1 = p1.x + Math.cos(theta) * p1.radius;
var y1 = p1.y + Math.sin(theta) * p1.radius;
var x2 = p2.x - Math.cos(theta) * p2.radius;
var y2 = p2.y - Math.sin(theta) * p2.radius;
this.ctx.beginPath();
this.ctx.moveTo(x1, y1);
this.ctx.lineTo(x2, y2);
this.ctx.strokeStyle = '#ffffff';
this.ctx.stroke();
}
}
}
};
return BackgroundCanvasComponent_1;
}());
__setFunctionName(_classThis, "BackgroundCanvasComponent");
(function () {
var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
_canvasRef_decorators = [(0, core_1.ViewChild)('networkCanvas', { static: true })];
_onResize_decorators = [(0, core_1.HostListener)('window:resize')];
__esDecorate(_classThis, null, _onResize_decorators, { kind: "method", name: "onResize", static: false, private: false, access: { has: function (obj) { return "onResize" in obj; }, get: function (obj) { return obj.onResize; } }, metadata: _metadata }, null, _instanceExtraInitializers);
__esDecorate(null, null, _canvasRef_decorators, { kind: "field", name: "canvasRef", static: false, private: false, access: { has: function (obj) { return "canvasRef" in obj; }, get: function (obj) { return obj.canvasRef; }, set: function (obj, value) { obj.canvasRef = value; } }, metadata: _metadata }, _canvasRef_initializers, _canvasRef_extraInitializers);
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
BackgroundCanvasComponent = _classThis = _classDescriptor.value;
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
__runInitializers(_classThis, _classExtraInitializers);
})();
return BackgroundCanvasComponent = _classThis;
}();
exports.BackgroundCanvasComponent = BackgroundCanvasComponent;
//# sourceMappingURL=BackgroundCanvas.Component.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"BackgroundCanvas.Component.js","sourceRoot":"","sources":["BackgroundCanvas.Component.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAA8F;AAoB9F;4BAjBC,IAAA,gBAAS,EAAC;YACP,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,uBAAuB;YACjC,QAAQ,EAAE,kDAET;YACD,MAAM,EAAE,CAAC,qMASR,EAAE;SACN,CAAC;;;;;;;;;;QAQE,qCAAoB,UAAsB,EAAS,UAAuB;YAAtD,eAAU,IAPrB,mDAAyB,EAOd,UAAU,EAAY;YAAS,eAAU,GAAV,UAAU,CAAa;YAN5B,cAAS,4DAAiC;YAChF,WAAM,yDAAqB;YAE3B,cAAS,GAAU,EAAE,CAAC;YACtB,kBAAa,GAAG,GAAG,CAAC;QAG5B,CAAC;QAED,qDAAe,GAAf;YACI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;YAC3C,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;QAED,8CAAQ,GAAR;YACI,IAAI,CAAC,YAAY,EAAE,CAAC;QACxB,CAAC;QACO,kDAAY,GAApB;YACI,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC;QAC5C,CAAC;QACO,mDAAa,GAArB;YACI,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC9C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;oBAChB,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK;oBACpC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;oBACrC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;oBAClC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;oBAClC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC;iBAC7C,CAAC,CAAC;YACH,CAAC;QACL,CAAC;QACO,6CAAO,GAAf;YAAA,iBAYC;YAXG,IAAI,CAAC,IAAI,CAAC,GAAG;gBAAE,OAAO;YACtB,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAChE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAA,CAAC;gBACxB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;gBACZ,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAI,CAAC,MAAM,CAAC,KAAK;oBAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBACrD,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAI,CAAC,MAAM,CAAC,MAAM;oBAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBACtD,KAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,qBAAqB,CAAC,cAAM,OAAA,KAAI,CAAC,OAAO,EAAE,EAAd,CAAc,CAAC,CAAC;QAChD,CAAC;QACO,kDAAY,GAApB,UAAqB,CAAM;YACvB,IAAI,CAAC,IAAI,CAAC,GAAG;gBAAE,OAAO;YACtB,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YACjD,IAAI,CAAC,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;YAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACzB,CAAC;QACO,sDAAgB,GAAxB;YACI,IAAI,CAAC,IAAI,CAAC,GAAG;gBAAE,OAAO;YACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACjD,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACjD,IAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBAC7B,IAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBAC7B,IAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBACvB,IAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBACvB,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;oBAE9C,IAAI,QAAQ,GAAG,GAAG,EAAE,CAAC;wBACrB,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;wBACjC,IAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;wBAC9C,IAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;wBAC9C,IAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;wBAC9C,IAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;wBAC9C,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;wBACrB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;wBACxB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;wBACxB,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,SAAS,CAAC;wBACjC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;oBAClB,CAAC;gBACL,CAAC;YACD,CAAC;QACL,CAAC;QACL,kCAAC;IAAD,CAAC;;;;iCAlFI,IAAA,gBAAS,EAAC,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;gCAgB5C,IAAA,mBAAY,EAAC,eAAe,CAAC;QAC9B,sNAAA,QAAQ,gEAEP;QAnB6C,kNAAA,SAAS,sCAAT,SAAS,6FAAiC;QAD5F,6KAmFC;;;QAnFY,uDAAyB;;;IAmFrC;AAnFY,8DAAyB"}

View File

@ -1,104 +0,0 @@
import { AfterViewInit, Component, ElementRef, HostListener, ViewChild } from '@angular/core';
import { ApiService } from '../app.api.service';
@Component({
//standalone: false,
selector: 'app-background-canvas',
template: `
<canvas #networkCanvas></canvas>
`,
styles: [`
canvas {
display: block;
position: absolute;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
}
`,],
})
export class BackgroundCanvasComponent {
@ViewChild('networkCanvas', { static: true }) canvasRef!: ElementRef<HTMLCanvasElement>;
private canvas!: HTMLCanvasElement;
private ctx!: CanvasRenderingContext2D | null;
private particles: any[] = [];
private particleCount = 120;
constructor(private elementRef: ElementRef, public apiService : ApiService) {
}
ngAfterViewInit(): void {
this.canvas = this.canvasRef.nativeElement;
this.ctx = this.canvas.getContext('2d');
this.resizeCanvas();
this.initParticles();
this.animate();
}
@HostListener('window:resize')
onResize() {
this.resizeCanvas();
}
private resizeCanvas(): void {
this.canvas.width = window.innerWidth;
this.canvas.height = window.innerHeight;
}
private initParticles(): void {
this.particles = [];
for (let i = 0; i < this.particleCount; i++) {
this.particles.push({
x: Math.random() * this.canvas.width,
y: Math.random() * this.canvas.height,
vx: (Math.random() * 2 - 1) * 0.01,
vy: (Math.random() * 2 - 1) * 0.01,
radius: Math.floor(Math.random() * 10) + 1
});
}
}
private animate(): void {
if (!this.ctx) return;
this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);
this.particles.forEach(p => {
p.x += p.vx;
p.y += p.vy;
if (p.x <= 0 || p.x >= this.canvas.width) p.vx *= -1;
if (p.y <= 0 || p.y >= this.canvas.height) p.vy *= -1;
this.drawParticle(p);
});
this.connectParticles();
requestAnimationFrame(() => this.animate());
}
private drawParticle(p: any): void {
if (!this.ctx) return;
this.ctx.beginPath();
this.ctx.arc(p.x, p.y, p.radius, 0, Math.PI * 2);
this.ctx.fillStyle = '#ffffff';
this.ctx.fill();
this.ctx.closePath();
}
private connectParticles(): void {
if (!this.ctx) return;
for (let i = 0; i < this.particles.length; i++) {
for (let j = i + 1; j < this.particles.length; j++) {
const p1 = this.particles[i];
const p2 = this.particles[j];
const dx = p2.x - p1.x;
const dy = p2.y - p1.y;
const distance = Math.sqrt(dx * dx + dy * dy);
if (distance < 100) {
const theta = Math.atan2(dy, dx);
const x1 = p1.x + Math.cos(theta) * p1.radius;
const y1 = p1.y + Math.sin(theta) * p1.radius;
const x2 = p2.x - Math.cos(theta) * p2.radius;
const y2 = p2.y - Math.sin(theta) * p2.radius;
this.ctx.beginPath();
this.ctx.moveTo(x1, y1);
this.ctx.lineTo(x2, y2);
this.ctx.strokeStyle = '#ffffff';
this.ctx.stroke();
}
}
}
}
}

View File

@ -1,79 +0,0 @@
"use strict";
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
var _, done = false;
for (var i = decorators.length - 1; i >= 0; i--) {
var context = {};
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
if (kind === "accessor") {
if (result === void 0) continue;
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
if (_ = accept(result.get)) descriptor.get = _;
if (_ = accept(result.set)) descriptor.set = _;
if (_ = accept(result.init)) initializers.unshift(_);
}
else if (_ = accept(result)) {
if (kind === "field") initializers.unshift(_);
else descriptor[key] = _;
}
}
if (target) Object.defineProperty(target, contextIn.name, descriptor);
done = true;
};
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
var useValue = arguments.length > 2;
for (var i = 0; i < initializers.length; i++) {
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
}
return useValue ? value : void 0;
};
var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.BackgroundCanvasModule = void 0;
var core_1 = require("@angular/core");
var kendo_angular_indicators_1 = require("@progress/kendo-angular-indicators");
var common_1 = require("@angular/common");
var BackgroundCanvas_Component_1 = require("./BackgroundCanvas.Component");
var BackgroundCanvasModule = function () {
var _classDecorators = [(0, core_1.NgModule)({
imports: [
kendo_angular_indicators_1.IndicatorsModule,
common_1.CommonModule
],
declarations: [
BackgroundCanvas_Component_1.BackgroundCanvasComponent
],
providers: [],
exports: [
BackgroundCanvas_Component_1.BackgroundCanvasComponent
]
})];
var _classDescriptor;
var _classExtraInitializers = [];
var _classThis;
var BackgroundCanvasModule = _classThis = /** @class */ (function () {
function BackgroundCanvasModule_1() {
}
return BackgroundCanvasModule_1;
}());
__setFunctionName(_classThis, "BackgroundCanvasModule");
(function () {
var _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
BackgroundCanvasModule = _classThis = _classDescriptor.value;
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
__runInitializers(_classThis, _classExtraInitializers);
})();
return BackgroundCanvasModule = _classThis;
}();
exports.BackgroundCanvasModule = BackgroundCanvasModule;
//# sourceMappingURL=BackgroundCanvas.module.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"BackgroundCanvas.module.js","sourceRoot":"","sources":["BackgroundCanvas.module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAyC;AACzC,+EAAsE;AACtE,0CAA+C;AAC/C,2EAAyE;AAiBzE;4BAhBC,IAAA,eAAQ,EAAC;YACN,OAAO,EAAE;gBACL,2CAAgB;gBAChB,qBAAY;aACf;YACD,YAAY,EAAE;gBACV,sDAAyB;aAC5B;YACD,SAAS,EAAE,EAEV;YACD,OAAO,EAAE;gBACL,sDAAyB;aAC5B;SACJ,CAAC;;;;;;QAGF,CAAC;QAAD,+BAAC;IAAD,CAAC;;;;QADD,6KACC;;;QADY,uDAAsB;;;IAClC;AADY,wDAAsB"}

View File

@ -1,22 +0,0 @@
import { NgModule } from '@angular/core';
import { IndicatorsModule } from '@progress/kendo-angular-indicators';
import { CommonModule } from "@angular/common";
import { BackgroundCanvasComponent } from './BackgroundCanvas.Component';
@NgModule({
imports: [
IndicatorsModule,
CommonModule
],
declarations: [
BackgroundCanvasComponent
],
providers: [
],
exports: [
BackgroundCanvasComponent
]
})
export class BackgroundCanvasModule {
}

View File

@ -1 +1 @@
{"version":3,"file":"attnRawData.js","sourceRoot":"","sources":["attnRawData.ts"],"names":[],"mappings":";;;AAIA;IAAA;IAgBA,CAAC;IAAD,kBAAC;AAAD,CAAC,AAhBD,IAgBC;AAhBY,kCAAW"}
{"version":3,"file":"attnRawData.js","sourceRoot":"","sources":["attnRawData.ts"],"names":[],"mappings":";;;AAIA;IAAA;IAeA,CAAC;IAAD,kBAAC;AAAD,CAAC,AAfD,IAeC;AAfY,kCAAW"}

View File

@ -15,7 +15,6 @@ export class AttnRawData
deviceIPAddress: string;
deviceNo: string;
employeeName: string;
isManualEntry: boolean;
// accessCard: AccessCard[] = [];
}

View File

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

View File

@ -1,33 +0,0 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.CourseProgress = void 0;
var baseObject_1 = require("../Basic/baseObject");
var CourseProgress = /** @class */ (function (_super) {
__extends(CourseProgress, _super);
function CourseProgress() {
var _this = _super.call(this) || this;
_this.completionPercentage = 0;
_this.startDate = new Date();
_this.isCourseComplete = false;
_this.lastActivityDate = new Date();
return _this;
}
return CourseProgress;
}(baseObject_1.BaseObject));
exports.CourseProgress = CourseProgress;
//# sourceMappingURL=course-progress.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"course-progress.js","sourceRoot":"","sources":["course-progress.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAAiD;AAGjD;IAAoC,kCAAU;IAC1C;QACI,YAAA,MAAK,WAAE,SAAC;QACR,KAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;QAC9B,KAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,KAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,KAAI,CAAC,gBAAgB,GAAG,IAAI,IAAI,EAAE,CAAC;;IACvC,CAAC;IAUL,qBAAC;AAAD,CAAC,AAjBD,CAAoC,uBAAU,GAiB7C;AAjBY,wCAAc"}

View File

@ -1,21 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import { LessonProgress } from './lesson-progress';
export class CourseProgress extends BaseObject{
constructor() {
super();
this.completionPercentage = 0;
this.startDate = new Date();
this.isCourseComplete = false;
this.lastActivityDate = new Date();
}
userID: number;
courseID: number;
enrollmentID: number;
completionPercentage: number;
startDate: Date;
isCourseComplete: boolean;
endDate?: Date;
lastActivityDate?: Date;
}

View File

@ -1,35 +0,0 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.CourseType = void 0;
var baseObject_1 = require("../Basic/baseObject");
var enums_1 = require("../enums");
var CourseType = /** @class */ (function (_super) {
__extends(CourseType, _super);
function CourseType() {
var _this = _super.call(this) || this;
_this.description = "";
_this.tags = "";
_this.popularityScore = 0.0;
_this.parentTypeID = null;
_this.status = enums_1.EnumStatus.Active;
return _this;
}
return CourseType;
}(baseObject_1.BaseObject));
exports.CourseType = CourseType;
//# sourceMappingURL=course-type.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"course-type.js","sourceRoot":"","sources":["course-type.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAAiD;AACjD,kCAAoC;AAEpC;IAAgC,8BAAU;IACtC;QACI,YAAA,MAAK,WAAE,SAAC;QACR,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACf,KAAI,CAAC,eAAe,GAAG,GAAG,CAAC;QAC3B,KAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,KAAI,CAAC,MAAM,GAAG,kBAAU,CAAC,MAAM,CAAC;;IACpC,CAAC;IAOL,iBAAC;AAAD,CAAC,AAfD,CAAgC,uBAAU,GAezC;AAfY,gCAAU"}

View File

@ -1,19 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import {EnumStatus} from '../enums';
export class CourseType extends BaseObject {
constructor() {
super();
this.description = "";
this.tags = "";
this.popularityScore = 0.0;
this.parentTypeID = null;
this.status = EnumStatus.Active;
}
name : string;
description : string;
parentTypeID? : number;
tags : string;
popularityScore : number;
}

View File

@ -1,58 +0,0 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.Courses = void 0;
var baseObject_1 = require("../Basic/baseObject");
var enums_1 = require("../enums");
var lmstemplate_1 = require("./lmstemplate");
var Courses = /** @class */ (function (_super) {
__extends(Courses, _super);
function Courses() {
var _this = _super.call(this) || this;
_this.lessonProgres = [];
_this.courseTitle = "";
_this.courseCode = "";
_this.courseTypeID = 0;
_this.description = "";
_this.difficultyLevel = enums_1.EnumDifficultyLevel.Beginner;
_this.trainerID = 0;
_this.duration = "";
_this.status = enums_1.EnumStatus.Active;
_this.isForFree = true;
_this.price = 0;
_this.totalEnrollments = 0;
_this.rating = 0.0;
_this.popularityScore = 0.0;
_this.completionRate = 0.0;
_this.averageProgress = 0.0;
_this.isExamRequired = false;
_this.tags = "";
_this.targetedAudience = "";
_this.learningOutcomes = "";
_this.courseIncludes = "";
_this.startGuideLine = "";
_this.createdUser = "";
_this.lessons = [];
_this.totalLesson = 0;
_this.totalContent = 0;
_this.courseTemplate = new lmstemplate_1.LMSTemplate();
return _this;
}
return Courses;
}(baseObject_1.BaseObject));
exports.Courses = Courses;
//# sourceMappingURL=courses.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"courses.js","sourceRoot":"","sources":["courses.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAAiD;AAEjD,kCAA2D;AAM3D,6CAA4C;AAE5C;IAA6B,2BAAU;IACnC;QACI,YAAA,MAAK,WAAE,SAAC;QA2DZ,mBAAa,GAAuB,EAAE,CAAC;QAzDnC,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,KAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAI,CAAC,eAAe,GAAG,2BAAmB,CAAC,QAAQ,CAAC;QACpD,KAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,KAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,KAAI,CAAC,MAAM,GAAG,kBAAU,CAAC,MAAM,CAAC;QAChC,KAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,KAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QACf,KAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,KAAI,CAAC,MAAM,GAAG,GAAG,CAAC;QAClB,KAAI,CAAC,eAAe,GAAG,GAAG,CAAC;QAC3B,KAAI,CAAC,cAAc,GAAG,GAAG,CAAC;QAC1B,KAAI,CAAC,eAAe,GAAG,GAAG,CAAC;QAC3B,KAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,KAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QACf,KAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC3B,KAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;QAC3B,KAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,KAAI,CAAC,cAAc,GAAG,EAAE,CAAC;QACzB,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,KAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,KAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,KAAI,CAAC,cAAc,GAAG,IAAI,yBAAW,EAAE,CAAC;;IAC5C,CAAC;IAgCL,cAAC;AAAD,CAAC,AA9DD,CAA6B,uBAAU,GA8DtC;AA9DY,0BAAO"}

View File

@ -1,73 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import { Employee } from '../Employee/employee';
import { EnumDifficultyLevel, EnumStatus } from '../enums';
import { CourseProgress } from './course-progress';
import { CourseType } from './course-type';
import { Enrollments } from './enrollments';
import { LessonProgress } from './lesson-progress';
import { Lessons } from './lessons';
import { LMSTemplate } from './lmstemplate';
export class Courses extends BaseObject {
constructor() {
super();
this.courseTitle = "";
this.courseCode = "";
this.courseTypeID = 0;
this.description = "";
this.difficultyLevel = EnumDifficultyLevel.Beginner;
this.trainerID = 0;
this.duration = "";
this.status = EnumStatus.Active;
this.isForFree = true;
this.price = 0;
this.totalEnrollments = 0;
this.rating = 0.0;
this.popularityScore = 0.0;
this.completionRate = 0.0;
this.averageProgress = 0.0;
this.isExamRequired = false;
this.tags = "";
this.targetedAudience = "";
this.learningOutcomes = "";
this.courseIncludes = "";
this.startGuideLine = "";
this.createdUser = "";
this.lessons = [];
this.totalLesson = 0;
this.totalContent = 0;
this.courseTemplate = new LMSTemplate();
}
courseTitle: string;
courseCode: string;
courseTypeID: number;
description: string;
difficultyLevel: EnumDifficultyLevel;
trainerID: number;
duration?: string;
isForFree?: boolean;
price?: number;
totalEnrollments?: number;
rating?: number;
popularityScore?: number;
completionRate?: number;
averageProgress?: number;
isExamRequired?: boolean;
tags?: string;
targetedAudience?: string;
learningOutcomes?: string;
courseIncludes?: string;
startGuideLine?: string;
lessons : Lessons[];
courseTemplate : LMSTemplate;
courseType : CourseType;
totalLesson : number;
totalContent : number;
trainer : Employee;
createdUser : string;
enrollments : Enrollments;
courseProgres : CourseProgress;
lessonProgres : LessonProgress [] = [];
}

View File

@ -1,35 +0,0 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.Enrollments = void 0;
var baseObject_1 = require("../Basic/baseObject");
var Enrollments = /** @class */ (function (_super) {
__extends(Enrollments, _super);
function Enrollments() {
var _this = _super.call(this) || this;
_this.enrollmentID = 0;
_this.userID = 0;
_this.courseID = 0;
_this.enrollDate = new Date();
_this.isCurrentEnroll = false;
_this.noOfEnroll = 0;
return _this;
}
return Enrollments;
}(baseObject_1.BaseObject));
exports.Enrollments = Enrollments;
//# sourceMappingURL=enrollments.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"enrollments.js","sourceRoot":"","sources":["enrollments.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAAiD;AAGjD;IAAiC,+BAAU;IACvC;QACI,YAAA,MAAK,WAAE,SAAC;QACR,KAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,KAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAChB,KAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,KAAI,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,KAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,KAAI,CAAC,UAAU,GAAG,CAAC,CAAC;;IACxB,CAAC;IASL,kBAAC;AAAD,CAAC,AAlBD,CAAiC,uBAAU,GAkB1C;AAlBY,kCAAW"}

View File

@ -1,22 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import { CourseProgress } from './course-progress';
export class Enrollments extends BaseObject {
constructor() {
super();
this.enrollmentID = 0;
this.userID = 0;
this.courseID = 0;
this.enrollDate = new Date();
this.isCurrentEnroll = false;
this.noOfEnroll = 0;
}
enrollmentID: number;
userID: number;
courseID: number;
enrollDate: Date;
isCurrentEnroll: boolean;
noOfEnroll : number;
courseProgres : CourseProgress;
}

View File

@ -1,42 +0,0 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.LessonContent = void 0;
var baseObject_1 = require("../Basic/baseObject");
var enums_1 = require("../enums");
var LessonContent = /** @class */ (function (_super) {
__extends(LessonContent, _super);
function LessonContent() {
var _this = _super.call(this) || this;
_this.isLessonComplete = false;
_this.isComplete = true;
_this.isNotComplete = false;
_this.lessonID = 0;
_this.contentTitle = "";
_this.description = "";
_this.contentUrl = "";
_this.duration = "";
_this.isMendatory = false;
_this.status = enums_1.EnumStatus.Active;
_this.accessLevel = enums_1.EnumAccessLevel.Public;
_this.accessCount = 0;
return _this;
}
return LessonContent;
}(baseObject_1.BaseObject));
exports.LessonContent = LessonContent;
//# sourceMappingURL=lesson-content.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"lesson-content.js","sourceRoot":"","sources":["lesson-content.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAAiD;AACjD,kCAA2F;AAE3F;IAAmC,iCAAU;IAEzC;QACI,YAAA,MAAK,WAAE,SAAC;QAsBZ,sBAAgB,GAAY,KAAK,CAAC;QAClC,gBAAU,GAAa,IAAI,CAAC;QAC5B,mBAAa,GAAa,KAAK,CAAC;QAvB5B,KAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,KAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,KAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,KAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,KAAI,CAAC,MAAM,GAAG,kBAAU,CAAC,MAAM,CAAC;QAChC,KAAI,CAAC,WAAW,GAAG,uBAAe,CAAC,MAAM,CAAC;QAC1C,KAAI,CAAC,WAAW,GAAG,CAAC,CAAC;;IACzB,CAAC;IAeL,oBAAC;AAAD,CAAC,AA5BD,CAAmC,uBAAU,GA4B5C;AA5BY,sCAAa"}

View File

@ -1,32 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import { EnumStatus, EnumAccessLevel, EnumContentSource, EnumContentType } from '../enums';
export class LessonContent extends BaseObject{
constructor() {
super();
this.lessonID = 0;
this.contentTitle = "";
this.description = "";
this.contentUrl = "";
this.duration = "";
this.isMendatory = false;
this.status = EnumStatus.Active;
this.accessLevel = EnumAccessLevel.Public;
this.accessCount = 0;
}
lessonID: number; // Foreign Key to LMS_Lessons
contentTitle: string;
contentType: EnumContentType;
description: string;
contentUrl: string;
duration?: string;
isMendatory?: boolean;
accessLevel: EnumAccessLevel;
contentSource: EnumContentSource;
accessCount?: number;
isLessonComplete: boolean = false;
isComplete : boolean = true;
isNotComplete : boolean = false;
}

View File

@ -1,34 +0,0 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.LessonProgress = void 0;
var baseObject_1 = require("../Basic/baseObject");
var LessonProgress = /** @class */ (function (_super) {
__extends(LessonProgress, _super);
function LessonProgress() {
var _this = _super.call(this) || this;
_this.isLessonComplete = false;
_this.completionPercentage = 0;
_this.startDate = new Date();
_this.lastAccessed = new Date();
_this.retryCount = 0;
return _this;
}
return LessonProgress;
}(baseObject_1.BaseObject));
exports.LessonProgress = LessonProgress;
//# sourceMappingURL=lesson-progress.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"lesson-progress.js","sourceRoot":"","sources":["lesson-progress.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAAiD;AAGjD;IAAoC,kCAAU;IAC1C;QACI,YAAA,MAAK,WAAE,SAAC;QACR,KAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,KAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;QAC9B,KAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,KAAI,CAAC,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;QAC/B,KAAI,CAAC,UAAU,GAAG,CAAC,CAAC;;IACxB,CAAC;IAeL,qBAAC;AAAD,CAAC,AAvBD,CAAoC,uBAAU,GAuB7C;AAvBY,wCAAc"}

View File

@ -1,27 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import { Lessons } from './lessons';
export class LessonProgress extends BaseObject{
constructor() {
super();
this.isLessonComplete = false;
this.completionPercentage = 0;
this.startDate = new Date();
this.lastAccessed = new Date();
this.retryCount = 0;
}
userID: number;
lessonID: number;
courseProgressID: number;
lessonContentID: number;
isLessonComplete: boolean;
completionPercentage: number;
startDate: Date;
completeDate: Date;
timeSpent: string;
lastAccessed: Date;
retryCount: number;
lesson : Lessons;
}

View File

@ -1,40 +0,0 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.Lessons = void 0;
var baseObject_1 = require("../Basic/baseObject");
var enums_1 = require("../enums");
var Lessons = /** @class */ (function (_super) {
__extends(Lessons, _super);
function Lessons() {
var _this = _super.call(this) || this;
_this.lessonContents = [];
_this.courseID = 0;
_this.lessonTitle = "";
_this.lessonNo = "";
_this.description = "";
_this.duration = "";
_this.difficultyLevel = enums_1.EnumDifficultyLevel.Beginner;
_this.isQuizAvailable = false;
_this.status = enums_1.EnumStatus.Active;
_this.lessonContents = [];
return _this;
}
return Lessons;
}(baseObject_1.BaseObject));
exports.Lessons = Lessons;
//# sourceMappingURL=lessons.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"lessons.js","sourceRoot":"","sources":["lessons.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAAiD;AACjD,kCAA2D;AAI3D;IAA6B,2BAAU;IACnC;QACI,YAAA,MAAK,WAAE,SAAC;QAkBZ,oBAAc,GAAqB,EAAE,CAAC;QAjBlC,KAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,KAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,KAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,KAAI,CAAC,eAAe,GAAG,2BAAmB,CAAC,QAAQ,CAAC;QACpD,KAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,KAAI,CAAC,MAAM,GAAG,kBAAU,CAAC,MAAM,CAAC;QAChC,KAAI,CAAC,cAAc,GAAG,EAAE,CAAC;;IAC7B,CAAC;IAUL,cAAC;AAAD,CAAC,AAtBD,CAA6B,uBAAU,GAsBtC;AAtBY,0BAAO"}

View File

@ -1,28 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import { EnumDifficultyLevel, EnumStatus } from '../enums';
import { LessonContent } from './lesson-content';
import { LMSTemplate } from './lmstemplate';
export class Lessons extends BaseObject {
constructor() {
super();
this.courseID = 0;
this.lessonTitle = "";
this.lessonNo = "";
this.description = "";
this.duration = "";
this.difficultyLevel = EnumDifficultyLevel.Beginner;
this.isQuizAvailable = false;
this.status = EnumStatus.Active;
this.lessonContents = [];
}
courseID: number; // Foreign Key to LMS_Courses
lessonTitle: string;
lessonNo: string;
description: string;
duration?: string;
difficultyLevel: EnumDifficultyLevel;
isQuizAvailable?: boolean;
lessonContents : LessonContent[] = [];
lessonTemplate : LMSTemplate;
}

View File

@ -1,32 +0,0 @@
"use strict";
var __extends = (this && this.__extends) || (function () {
var extendStatics = function (d, b) {
extendStatics = Object.setPrototypeOf ||
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
return extendStatics(d, b);
};
return function (d, b) {
if (typeof b !== "function" && b !== null)
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
extendStatics(d, b);
function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.LMSTemplate = void 0;
var baseObject_1 = require("../Basic/baseObject");
var LMSTemplate = /** @class */ (function (_super) {
__extends(LMSTemplate, _super);
function LMSTemplate() {
var _this = _super.call(this) || this;
_this.templateID = 0;
_this.objectID = 0;
_this.fileName = "";
return _this;
}
return LMSTemplate;
}(baseObject_1.BaseObject));
exports.LMSTemplate = LMSTemplate;
//# sourceMappingURL=lmstemplate.js.map

View File

@ -1 +0,0 @@
{"version":3,"file":"lmstemplate.js","sourceRoot":"","sources":["lmstemplate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,kDAAiD;AAGjD;IAAiC,+BAAU;IACvC;QACI,YAAA,MAAK,WAAE,SAAC;QACR,KAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,KAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,KAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;;IACvB,CAAC;IAUL,kBAAC;AAAD,CAAC,AAhBD,CAAiC,uBAAU,GAgB1C;AAhBY,kCAAW"}

View File

@ -1,20 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import { EnumTemplateType } from "../enums";
export class LMSTemplate extends BaseObject {
constructor() {
super();
this.templateID = 0;
this.objectID = 0;
this.fileName = "";
}
templateID : number;
objectID : number;
templateType : EnumTemplateType
fileName : string;
fileData : string ;
fileType : number;
currentFile: any;
fileAsByteArray : string;
fileTobase64 : string;
}

View File

@ -1,14 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import { EnumReportGroupType } from '../enums';
export class OpenAIResponseWithData{
constructor() {
}
IsChart: boolean = false;
ChartType: string = "";
Title: string = "";
Labels: string[] = [];
Values: number[] = [];;
TableData: any;
LabelPosition: string = 'outsideEnd';
}

View File

@ -1,18 +0,0 @@
import { BaseObject } from '../Basic/baseObject';
import { EnumAIChartType, EnumReportGroupType } from '../enums';
export class OpenAIQueryLog extends BaseObject {
constructor() {
super();
}
userId : number = 0;
userPrompt : string = "";
generatedQuery : string = "";
executedAt : Date = new Date();
totalExecution : number = 0;
reportGroup: EnumReportGroupType;
isChart : boolean = false;
chartType : EnumAIChartType = EnumAIChartType.None;
title : string = "";
isCommon : boolean = false;
}

View File

@ -16,70 +16,11 @@ export enum EnumHrNotificationType {
System_Generated = 2,
}
export enum EnumDifficultyLevel {
Beginner = 1,
Intermediate = 2,
Advanced = 3
}
export enum EnumContentSource {
Youtube = 1,
GoogleDrive = 2,
OneDrive = 3,
AzureBlobStorage = 4,
}
export enum EnumAccessLevel {
Public = 1,
Private = 2,
Restricted = 3,
Premium = 4
}
export enum EnumAIChartType
{
None = 0,
BarChart = 1,
LineGraph = 2,
PieChart = 3,
ScatterPlot = 4,
AreaChart = 5,
Histogram = 6,
WaterfallChart = 7,
GantChart = 8,
RadarChart = 9,
ActivityDiagram = 10
}
export enum EnumContentType {
Video = 1,
Image = 2,
Pdf = 3,
Powerpoint = 4,
Excel = 5,
Doc = 6,
others = 7
}
export enum EnumReportGroupType
{
Employee = 1,
Salary = 2,
Performance = 3,
Training = 4,
Leave = 5,
Attendance = 6,
}
export enum EnumTaxInvestment {
Regardless = 0,
ESS = 1,
Admin = 2,
}
export enum EnumTemplateType {
Course = 1,
Lesson = 2,
}
export enum EnumTaxInvestmentStatus {
Not_Yet_Approve = 0,
Approve = 1,
@ -161,32 +102,14 @@ export enum EnumWFCvSortStatus {
}
export enum EnumLeaveCalculationType {
// Yearly = 1,
// Monthly_Earn = 2,
// Hourly_365Day = 3,
// Hourly_Monthly = 4,
// OneDay_On_18Day_Present = 5,
// Hourly_Prorated = 6,
// Days_365 = 7,
// Yearly_Without_Prorated = 8,
Daily = 0,
Monthly = 1,
Yearly = 2,
//Prorated=3,
Not_Applicable = 4,
Not_Applicable_With_Prorated = 5,
Hourly = 6,
//Yearly = 7,
Monthly_Earn = 8,
Hourly_365Day = 9,
Hourly_Monthly = 10,
OneDay_On_18Day_Present = 11,
Hourly_Prorated = 12,
Days_365 = 13,
Yearly_without_Prorated = 14
Yearly = 1,
Monthly_Earn = 2,
Hourly_365Day = 3,
Hourly_Monthly = 4,
OneDay_On_18Day_Present = 5,
Hourly_Prorated = 6,
Days_365 = 7,
Yearly_Without_Prorated = 8,
}
export enum EnumLeaveparamOn {
@ -1407,7 +1330,7 @@ export enum EnumMaternityLeaveStatus {
FullPayment = 2,
}
export enum EnumMaternityItemDetailType {
GrossSalary = 1, //GrossSalary=Basic + House Rent allowance + Conveyance Allowance + Special Allowance
GrossSalary = 1, //GrossSalary=Basic + House Rent allowance + Conveyance Allowance + Special Allowance
OT = 2,
ExtraWorkAllowance = 3,
BonusFestival = 4,

View File

@ -9,15 +9,6 @@ export class GlobalfunctionExtension {
lastDate.setMonth(lastDate.getMonth() + 1, 0);
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 {
debugger;
if (inputString.length === 0) {

View File

@ -1,32 +0,0 @@
import { EnumReportGroupType } from './../../_models/enums';
import {Injectable} from '@angular/core';
import {HttpClient, HttpEvent, HttpRequest} from '@angular/common/http';
import {ApiService} from '../../app.api.service';
import { OpenAIQueryLog } from 'src/app/_models/OpenAIQueryLog/OpenAIQueryLog';
@Injectable({
providedIn: 'root'
})
export class HRMOpenAIService {
constructor(public apiService: ApiService,
private http: HttpClient) {
}
GetAiInformation(userCommand : string) {
return this.apiService.httpGet<any>('/HRMApenAPIAI/GetAiInformation/' + userCommand);
}
AskOpenAI(data: any) {
return this.apiService.httpPost<any>('/HRMApenAPIAI/AskOpenAI', data);
}
GetReportColumnDefinition(reportGroupType : EnumReportGroupType) {
return this.apiService.httpGet<any[]>('/HRMApenAPIAI/GetReportColumnDefinition/' + reportGroupType);
}
GetCurrentUserAllQueryLog(reportGroupType : EnumReportGroupType) {
return this.apiService.httpGet<OpenAIQueryLog[]>('/HRMApenAPIAI/GetCurrentUserAllQueryLog/' + reportGroupType);
}
OpenAIPreviousQueryExecution(data: any) {
return this.apiService.httpPost<any>('/HRMApenAPIAI/OpenAIPreviousQueryExecution', data);
}
ChatShareWithOthers(data: any) {
return this.apiService.httpPost('/HRMApenAPIAI/ChatShareWithOthers', data);
}
}

View File

@ -1,78 +0,0 @@
import {Injectable} from '@angular/core';
import {HttpClient, HttpEvent, HttpRequest} from '@angular/common/http';
import {ApiService} from '../../app.api.service';
import { CourseType } from 'src/app/_models/LearningManagement/course-type';
import { EnumStatus } from 'src/app/_models/enums';
import { Courses } from 'src/app/_models/LearningManagement/courses';
import { CourseProgress } from 'src/app/_models/LearningManagement/course-progress';
@Injectable({
providedIn: 'root'
})
export class LMSService {
constructor(public apiService: ApiService,
private http: HttpClient) {
}
//#region Course Type
saveCourseType(param: any) {
return this.apiService.httpPost<CourseType>('/LMS/saveCourseType', param);
}
deleteCourseType(id : number) {
return this.apiService.httpGet('/LMS/deleteCourseType/' + id);
}
GetCourseTypeByStatus(status : EnumStatus) {
return this.apiService.httpGet<CourseType[]>('/LMS/getByStatus/' + status);
}
GetAllCourseType() {
return this.apiService.httpGet<CourseType[]>('/LMS/getAllCourseType');
}
getByParentID(parentID : number) {
return this.apiService.httpGet<CourseType[]>('/LMS/getAllCourseType/'+parentID);
}
//#endregion
//#region Courses
saveCourses(param: any) {
return this.apiService.httpPost<Courses>('/LMS/saveCourses', param);
}
deleteCourses(id : number) {
return this.apiService.httpGet('/LMS/deleteCourses/' + id);
}
GetCoursesByStatus(status : EnumStatus) {
return this.apiService.httpGet<Courses[]>('/LMS/getCoursesByStatus/' + status);
}
GetCourse(ID : number) {
return this.apiService.httpGet<Courses>('/LMS/getCourse/' + ID);
}
GetCourseForUser(ID : number) {
return this.apiService.httpGet<Courses>('/LMS/GetCourseForUser/' + ID);
}
GetCourseForEnrollment(ID : number) {
return this.apiService.httpGet<Courses>('/LMS/GetCourseForEnrollment/' + ID);
}
GetAllCourses() {
return this.apiService.httpGet<Courses[]>('/LMS/getAllCourses');
}
//#endregion
//#region Lessons
deleteLessons(id : number) {
return this.apiService.httpGet('/LMS/deleteLessons/' + id);
}
//#endregion
//#region Lesson Content
deleteLessonContent(id : number) {
return this.apiService.httpGet('/LMS/deleteLessonContent/' + id);
}
//#endregion
//#region LESSON Progress
UserCourseProgress(param: any) {
return this.apiService.httpPost<Courses>('/LMS/UserCourseProgress', param);
}
//#endregion
}

View File

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

Some files were not shown because too many files have changed in this diff Show More