7252 lines
604 KiB
C#
7252 lines
604 KiB
C#
using HRM.BO;
|
|
using Ease.Core.DataAccess;
|
|
|
|
|
|
using System;
|
|
using System.Data;
|
|
using Ease.Core.Utility;
|
|
|
|
namespace HRM.DA
|
|
{
|
|
#region SalaryMonthlyDA
|
|
|
|
internal class SalaryMonthlyDA
|
|
{
|
|
#region Constructor
|
|
|
|
private SalaryMonthlyDA() { }
|
|
|
|
#endregion
|
|
|
|
#region Insert function
|
|
|
|
internal static void Insert(TransactionContext tc, SalaryMonthly item)
|
|
{
|
|
string sSQL = SQLParser.MakeSQL("INSERT INTO SalaryMonthly(SalaryMonthlyID, SalaryMonth, EmployeeID, CategoryID, DepartmentID, "
|
|
+ "DesignationID, LocationID, GradeID, ISFINALIZED, PaymentDate, "
|
|
+ " PrevMonthBasic, ThisMonthBasic, IsConfirmed, IsEligibleOT, "
|
|
+ " ReligionID, PayrollTypeID, OUTPAYBRANCHID, "
|
|
+ " OutPayAccountNo, Remarks, AccountNo, BranchID, DESIGNATION, "
|
|
+ " SalaryProcessID, PFMEMBERTYPE, Gender, ThisMonthGross,detailid ,salaryWithHeld, EuroRate)"
|
|
+ " VALUES(%n, %d, %n, %n, %n, "
|
|
+ " %n, %n, %n, %b, %d, "
|
|
+ " %n, %n, %b, %b, "
|
|
+ " %n, %n, %n, "
|
|
+ " %s, %s, %s, %n, %s, "
|
|
+ " %n, %n, %n, %n,%n, %n, %n)", item.ID, item.SalaryMonth, item.EmployeeID, item.CategoryID, item.DepartmentID,
|
|
item.DesignationID, item.LocationID, item.GradeID, item.IsFinalized, DataReader.GetNullValue(item.PaymentDate),
|
|
item.PrevMonthBasic, item.ThisMonthBasic, item.IsConfirmed, item.IsEligibleOT,
|
|
DataReader.GetNullValue(item.ReligionID), DataReader.GetNullValue(item.PayrollTypeID), DataReader.GetNullValue(item.OutPayBranchID),
|
|
item.OutPayAccountNo, item.Remarks, item.AccountNo, DataReader.GetNullValue(item.BranchID), item.DesignationText,
|
|
item.SalaryProcessID, item.PFMembershipType, item.Gender, item.ThisMonthGross, 0, item.salaryWithHeld, item.EuroRate);
|
|
tc.ExecuteNonQuery(sSQL);
|
|
}
|
|
|
|
internal static void Insert(TransactionContext tc, SalaryMonthlyDetail item)
|
|
{
|
|
tc.ExecuteNonQuery("INSERT INTO SalaryMonthlyDetail(DetailID, SALARYMONTHLYID, ITEMID, SUPPORTID, DESCRIPTION, POSITION, "
|
|
+ " CALCULATEDAMOUNT, CHANGEDAMOUNT, ITEMCODE, ITEMGROUP)" +
|
|
" VALUES(%n, %n, %n, %n, %s, %n, %n, %n, %n, %n)",
|
|
item.ID, item.SalaryMonthlyID, item.ItemID, DataReader.GetNullValue(item.SupportID), item.Description,
|
|
item.Position, item.CalculatedAmount, item.ChangedAmount, item.ItemCode,
|
|
item.itemGroupCode);
|
|
}
|
|
|
|
internal static void UpdateSalaryDetail(TransactionContext tc, SalaryMonthlyDetail item)
|
|
{
|
|
tc.ExecuteNonQuery("Update SalaryMonthlyDetail SET DESCRIPTION =%s, POSITION =%n, "
|
|
+ " CALCULATEDAMOUNT =%n, CHANGEDAMOUNT =%n WHERE SalaryMonthlyID=%n AND ItemCode=%n AND ItemGroup=%n AND ItemID=%n" +
|
|
" ",
|
|
item.Description, item.Position,
|
|
item.CalculatedAmount, item.ChangedAmount, item.SalaryMonthlyID, item.ItemCode,
|
|
item.itemGroupCode, item.ItemID);
|
|
}
|
|
internal static DataTable NotApprovedBonus(TransactionContext tc, int payrollTypeID)
|
|
{
|
|
DataTable oEmpBasicGrades = new DataTable();
|
|
try
|
|
{
|
|
oEmpBasicGrades = tc.ExecuteDataTable(
|
|
@"select distinct e.EMPLOYEENO, e.NAME, bonus.NAME Bonus from bonusprocess b, bonusprocessDetail bp, employee e, BONUS
|
|
where b.bonusprocessid =bp.bonusprocessid and bp.EMPLOYEEID = e.EMPLOYEEID and bonus.BONUSID = b.BONUSID
|
|
and b.ISTAXPROCESS =1 and b.ISAPPROVE =0 and e.payrolltypeid =%n and e.status =%n",
|
|
payrollTypeID, (int)EnumEmployeeStatus.Live);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
|
|
return oEmpBasicGrades;
|
|
}
|
|
|
|
|
|
internal static void Insert(TransactionContext tc, SalaryEmpCostCenter item)
|
|
{
|
|
tc.ExecuteNonQuery("INSERT INTO SalaryEmpCostCenter(SALARYMONTHLYID, COSTCENTERID, PERCENTAGE, EMPLOYEEID)" +
|
|
" VALUES( %n, %n, %n, %n)", item.SalaryMontlyID, item.CostCenterID, item.Percentage, item.EmployeeID);
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
#region Update function
|
|
|
|
internal static void Update(TransactionContext tc, SalaryMonthly item)
|
|
{
|
|
tc.ExecuteNonQuery("UPDATE SalaryMonthly SET "
|
|
+ " SalaryMonth=%d, EmployeeID=%n, CategoryID=%n, DepartmentID=%n, DesignationID=%n, "
|
|
+ " LocationID=%n, GradeID=%n, ISFINALIZED=%b, PaymentDate=%d,"
|
|
+ " PrevMonthBasic=%n, ThisMonthBasic=%n, IsConfirmed=%b,"
|
|
+ " IsEligibleOT=%b, ReligionID=%n, PayrollTypeID=%n, OUTPAYBRANCHID=%n,"
|
|
+ " OUTPAYACCOUNTNO=%s, Remarks=%s, AccountNo=%s, BranchID=%n, "
|
|
+ " SalaryProcessID=%n, PFMEMBERTYPE=%n, Gender=%n, salaryWithHeld=%n, EuroRate=%n"
|
|
+ " WHERE SalaryMonthlyID=%n",
|
|
item.SalaryMonth, item.EmployeeID, item.CategoryID, item.DepartmentID, item.DesignationID,
|
|
item.LocationID, item.GradeID, item.IsFinalized, item.PaymentDate,
|
|
item.PrevMonthBasic, item.ThisMonthBasic, item.IsConfirmed,
|
|
item.IsEligibleOT, item.ReligionID, item.PayrollTypeID, DataReader.GetNullValue(item.OutPayBranchID),
|
|
item.OutPayAccountNo, item.Remarks, item.AccountNo, DataReader.GetNullValue(item.BranchID),
|
|
item.SalaryProcessID, item.PFMembershipType, item.Gender, item.salaryWithHeld, item.EuroRate, item.ID);
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region Get Function
|
|
|
|
internal static IDataReader Get(TransactionContext tc, int payrollTypeID)
|
|
{
|
|
return tc.ExecuteReader("SELECT * FROM SalaryMonthly where PayrollTypeID=%n", payrollTypeID);
|
|
}
|
|
internal static IDataReader GetbyId(TransactionContext tc, int salarymonthlyID)
|
|
{
|
|
return tc.ExecuteReader("SELECT * FROM SalaryMonthly where SALARYMONTHLYID=%n", salarymonthlyID);
|
|
}
|
|
internal static IDataReader GetCostCenter(TransactionContext tc, DateTime salaryMonth)
|
|
{
|
|
return tc.ExecuteReader("SELECT SD.* FROM SalaryEmpCostCenter SD, SalaryMonthly SM WHERE "
|
|
+ " SM.SalaryMonth =%d AND SD.SalaryMonthlyID=SM.SalaryMonthlyID Order by SM.SalaryMonthlyID, SD.EmployeeID ", salaryMonth);
|
|
}
|
|
|
|
internal static IDataReader Get(TransactionContext tc, DateTime salaryMonth, int payrollTypeID)
|
|
{
|
|
string sql = SQLParser.MakeSQL("SELECT * FROM SalaryMonthly where SalaryMonth =%d and payrolltypeid=%n", salaryMonth, payrollTypeID);
|
|
return tc.ExecuteReader(sql);
|
|
}
|
|
|
|
internal static IDataReader GetDetail(TransactionContext tc, DateTime salaryMonth, int payrollTypeID)
|
|
{
|
|
string sSQL = SQLParser.MakeSQL("SELECT SD.* FROM SalaryMonthlyDetail SD, SalaryMonthly SM WHERE "
|
|
+ " SD.SalaryMonthlyID=SM.SalaryMonthlyID AND SM.SalaryMonth =%d AND SM.payrolltypeid=%n Order by SM.SalaryMonthlyID, SD.Position ", salaryMonth, payrollTypeID);
|
|
return tc.ExecuteReader(sSQL);
|
|
}
|
|
internal static IDataReader GetDetail(TransactionContext tc, DateTime salaryMonth)
|
|
{
|
|
string sSQL = SQLParser.MakeSQL("SELECT SD.* FROM SalaryMonthlyDetail SD, SalaryMonthly SM WHERE "
|
|
+ " SM.SalaryMonth =%d AND SD.SalaryMonthlyID=SM.SalaryMonthlyID Order by SM.SalaryMonthlyID, SD.Position ", salaryMonth);
|
|
return tc.ExecuteReader(sSQL);
|
|
}
|
|
internal static IDataReader GetHistory(TransactionContext tc, int payrolltypeid, string empIn,
|
|
DateTime fromMonth, DateTime toMonth)
|
|
{
|
|
return tc.ExecuteReader(@"SELECT SM.SalaryMonth, SM.EmployeeID, SD.ITEMID, SD.SUPPORTID, "
|
|
+ " SD.CHANGEDAMOUNT Amount, SD.ITEMCODE, SD.ITEMGROUP "
|
|
+ " FROM SalaryMonthlyDetail SD, SalaryMonthly SM WHERE "
|
|
+ " SM.SalaryMonth BETWEEN %d and %d AND SD.SalaryMonthlyID=SM.SalaryMonthlyID " +
|
|
"AND SM.payrolltypeid=%n and SM.EmployeeID IN (%q) Order by SM.EmployeeID, SM.SalaryMonth, SD.Position "
|
|
, fromMonth, toMonth, payrolltypeid, empIn);
|
|
}
|
|
|
|
/*internal static IDataReader Get(TransactionContext tc, int nID)
|
|
{
|
|
return tc.ExecuteReader("SELECT * FROM SalaryMonthly WHERE SalaryMonthlyID=%n", nID);
|
|
}*/
|
|
|
|
internal static DateTime? GetLastPaidSalaryMonth(TransactionContext tc, int nEmpID)
|
|
{
|
|
DateTime? maxDate = DateTime.Today;
|
|
object obj = tc.ExecuteScalar("select max(salarymonth) from SALARYMONTHLY where employeeid=%n", nEmpID);
|
|
if (obj != DBNull.Value)
|
|
{
|
|
maxDate = Convert.ToDateTime(obj);
|
|
}
|
|
else
|
|
{
|
|
maxDate = null;
|
|
}
|
|
return maxDate;
|
|
}
|
|
|
|
internal static IDataReader Get(TransactionContext tc, string sEmpID, DateTime dMonthDate)
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
IDataReader dr = tc.ExecuteReader("SELECT * FROM SalaryMonthly WHERE EmployeeID in(%q) AND SALARYMONTH=%d order by DepartmentID,EmployeeID", sEmpID, dMonthDate);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
return dr;
|
|
}
|
|
|
|
internal static IDataReader GetForWTP(TransactionContext tc, string sEmpID, DateTime dMonthDate)
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
IDataReader dr = tc.ExecuteReader("SELECT * FROM SalaryMonthly WHERE EmployeeID in(%q) AND SALARYMONTH=%d order by EmployeeID", sEmpID, dMonthDate);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
return dr;
|
|
}
|
|
|
|
internal static bool IsSalaryProcessed(TransactionContext tc, int employeeId, DateTime salaryMonth)
|
|
{
|
|
object isprocessed = tc.ExecuteScalar("SELECT count(*) FROM SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth=%d", employeeId, salaryMonth);
|
|
if (isprocessed == DBNull.Value)
|
|
return false;
|
|
if (Convert.ToInt32(isprocessed) == 0) return false;
|
|
else return true;
|
|
}
|
|
internal static bool IsSalaryProcessed(TransactionContext tc, DateTime salaryMonth)
|
|
{
|
|
object isprocessed = tc.ExecuteScalar("SELECT count(*) FROM SalaryMonthly WHERE SalaryMonth=%d", salaryMonth);
|
|
if (isprocessed == DBNull.Value)
|
|
return false;
|
|
if (Convert.ToInt32(isprocessed) == 0) return false;
|
|
else return true;
|
|
}
|
|
internal static bool IsSalaryProcessedWeb(TransactionContext tc, DateTime salaryMonth, int payrollTypeID)
|
|
{
|
|
object isprocessed = tc.ExecuteScalar("SELECT count(*) FROM SALARYPROCESS WHERE SalaryMonth=%d AND ShowINDesktop=1 AND PayrollTypeID=%n", salaryMonth, payrollTypeID);
|
|
if (isprocessed == DBNull.Value)
|
|
return false;
|
|
if (Convert.ToInt32(isprocessed) == 0) return false;
|
|
else return true;
|
|
}
|
|
|
|
internal static bool IsPermanentEmp(TransactionContext tc, int employeeId, DateTime salaryMonth, int payrollTypeID)
|
|
{
|
|
object isprocessed = tc.ExecuteScalar("SELECT count(*) FROM SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth=%d AND PayrollTypeID=%n", employeeId, salaryMonth, payrollTypeID);
|
|
if (isprocessed == DBNull.Value)
|
|
return false;
|
|
if (Convert.ToInt32(isprocessed) == 0) return false;
|
|
else return true;
|
|
}
|
|
|
|
internal static int GetUnAuthorizeDays(TransactionContext tc, int employeeId, DateTime salaryMonth)
|
|
{
|
|
object leaveDays = tc.ExecuteScalar("SELECT SUM(ChangedAmount) FROM SalaryMonthly S, SalaryMonthlyDetail SD WHERE EmployeeID=%n AND SalaryMonth=%d"
|
|
+ " AND S.SalaryMonthlyID=SD.SalaryMonthlyID and SD.ItemGroup=%n and SD.ItemCode=%n", employeeId, salaryMonth,
|
|
EnumSalaryGroup.Miscellaneous, EnumSalaryItemCode.Tot_UnauthLeave_Days);
|
|
if (leaveDays == DBNull.Value)
|
|
return 0;
|
|
return Convert.ToInt32(leaveDays);
|
|
}
|
|
|
|
internal static int GetTotalEmp(TransactionContext tc, int SProcessID)
|
|
{
|
|
int empCount = 0;
|
|
object obj = tc.ExecuteScalar("Select COUNT(*) from SALARYMONTHLY where SALARYPROCESSID=%n", SProcessID);
|
|
if (obj != null)
|
|
{
|
|
empCount = Convert.ToInt32(obj);
|
|
}
|
|
else
|
|
{
|
|
empCount = 0;
|
|
}
|
|
return empCount;
|
|
}
|
|
|
|
internal static IDataReader GetByProcessID(TransactionContext tc, int SProcessID)
|
|
{
|
|
return tc.ExecuteReader("Select * from SALARYMONTHLY where SALARYPROCESSID=%n", SProcessID);
|
|
|
|
}
|
|
|
|
internal static bool IsSalaryFinalized(TransactionContext tc, int employeeId, DateTime salaryMonth)
|
|
{
|
|
object isprocessed = tc.ExecuteScalar("SELECT count(*) FROM SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth=%d AND ISFINALIZED=%b", employeeId, salaryMonth, true);
|
|
if (isprocessed == DBNull.Value)
|
|
return false;
|
|
if (Convert.ToInt32(isprocessed) == 0) return false;
|
|
else return true;
|
|
}
|
|
internal static bool IsSalaryFinalized(TransactionContext tc, DateTime salaryMonth)
|
|
{
|
|
object isprocessed = tc.ExecuteScalar("SELECT count(*) FROM SalaryMonthly WHERE SalaryMonth=%d AND ISFINALIZED=%b", salaryMonth, true);
|
|
if (isprocessed == DBNull.Value)
|
|
return false;
|
|
if (Convert.ToInt32(isprocessed) == 0) return false;
|
|
else return true;
|
|
}
|
|
internal static IDataReader GetSalaryDetail(TransactionContext tc, int nID)
|
|
{
|
|
return tc.ExecuteReader("SELECT * FROM SalaryMonthlyDetail WHERE SalaryMonthlyID=%n", nID);
|
|
}
|
|
internal static IDataReader GetSalaryDetail(TransactionContext tc, string nIDs)
|
|
{
|
|
string sTableName;
|
|
nIDs = IDHelper.GetIDs(tc, nIDs, out sTableName);
|
|
|
|
IDataReader dr = tc.ExecuteReader("SELECT * FROM SalaryMonthlyDetail WHERE SalaryMonthlyID in (%q)", nIDs);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
return dr;
|
|
|
|
}
|
|
internal static IDataReader GetEmpCostCenter(TransactionContext tc, int nID)
|
|
{
|
|
string sSQL = SQLParser.MakeSQL("SELECT * FROM SalaryEmpCostCenter WHERE SalaryMonthlyID=%n", nID);
|
|
return tc.ExecuteReader(sSQL);
|
|
}
|
|
|
|
internal static DataSet GetSumOnRange(TransactionContext tc, string sEmpID, DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode, EnumSalaryItemCode itemCode, int itemId, int payrollTypeID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string sql = SQLParser.MakeSQL("SELECT EmployeeID, SUM(sd.ChangedAmount) as Amount FROM SalaryMonthlyDetail sd, SalaryMonthly s WHERE"
|
|
+ " sd.ItemGroup=%n AND sd.ItemCode=%n and sd.itemId==%n "
|
|
+ " and s.EmployeeID in (%q) AND s.SalaryMonth>=%d AND s.SalaryMonth<=%d AND s.WithNoDetail=%b and s.PayrollTypeID=%n AND s.SalaryMonthlyID=sd.SalaryMonthlyID GROUP BY employeeID"
|
|
, groupCode, itemCode, itemId, sEmpID, fromDate, toDate, false, payrollTypeID);
|
|
oSMonthlys = tc.ExecuteDataSet(sql);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
internal static double GetSumOnRange(TransactionContext tc, int employeeId,
|
|
DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode,
|
|
EnumSalaryItemCode itemCode, int itemId, int payrollTypeID)
|
|
{
|
|
//string strSQL = SQLParser.MakeSQL("SELECT SUM(ChangedAmount) FROM SalaryMonthlyDetail WHERE"
|
|
//+ " ItemGroup=%n AND ItemCode=%n and itemId=%n AND SalaryMonthlyID IN ( SELECT SalaryMonthlyID FROM"
|
|
//+ " SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth>=%d AND SalaryMonth<=%d AND WithNoDetail=%b and PayrollTypeID=%n) "
|
|
// , groupCode, itemCode, itemId, employeeId, fromDate, toDate, false, SystemInformation.CurrentSysInfo.PayrollTypeID);
|
|
|
|
//object amount = tc.ExecuteScalar(strSQL);
|
|
object amount = null;
|
|
//string sSQL = SQLParser.MakeSQL("SELECT SUM(ChangedAmount) FROM SalaryMonthlyDetail WHERE"
|
|
// + " ItemGroup=%n AND ItemCode=%n and itemId==%n AND SalaryMonthlyID IN ( SELECT SalaryMonthlyID FROM"
|
|
// + " SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth>=%d AND SalaryMonth<=%d AND WithNoDetail=%b and PayrollTypeID=%n) "
|
|
// , groupCode, itemCode, itemId, employeeId, fromDate, toDate, false, SystemInformation.CurrentSysInfo.PayrollTypeID);
|
|
|
|
string sSQL = SQLParser.MakeSQL("SELECT SUM(sd.ChangedAmount) FROM SalaryMonthlyDetail sd, SalaryMonthly s WHERE"
|
|
+ " sd.ItemGroup=%n AND sd.ItemCode=%n and sd.itemId==%n "
|
|
+ " and s.EmployeeID=%n AND s.SalaryMonth>=%d AND s.SalaryMonth<=%d AND s.WithNoDetail=%b and s.PayrollTypeID=%n AND s.SalaryMonthlyID=sd.SalaryMonthlyID "
|
|
, groupCode, itemCode, itemId, employeeId, fromDate, toDate, false, payrollTypeID);
|
|
|
|
amount = tc.ExecuteScalar(sSQL);
|
|
if (amount == DBNull.Value)
|
|
return 0;
|
|
else return Convert.ToDouble(amount);
|
|
|
|
//if (amount == DBNull.Value)
|
|
//{
|
|
// string sTempSQL = SQLParser.MakeSQL("Select ThisMOnthAmount from INCOMETAXTEMP WHERE ItemCode=-212 and itemId=-212 and EmployeeID=%n",itemCode,itemId,employeeId);
|
|
// amount = tc.ExecuteScalar(sTempSQL);
|
|
// return Convert.ToDouble(amount);
|
|
//}
|
|
//else return Convert.ToDouble(amount);
|
|
}
|
|
|
|
internal static double GetSumOnRangeOnRound(TransactionContext tc, int employeeId,
|
|
DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode,
|
|
EnumSalaryItemCode itemCode, int itemId, int payrollTypeID)
|
|
{
|
|
//string strSQL = SQLParser.MakeSQL("SELECT SUM(ChangedAmount) FROM SalaryMonthlyDetail WHERE"
|
|
//+ " ItemGroup=%n AND ItemCode=%n and itemId=%n AND SalaryMonthlyID IN ( SELECT SalaryMonthlyID FROM"
|
|
//+ " SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth>=%d AND SalaryMonth<=%d AND WithNoDetail=%b and PayrollTypeID=%n) "
|
|
// , groupCode, itemCode, itemId, employeeId, fromDate, toDate, false, SystemInformation.CurrentSysInfo.PayrollTypeID);
|
|
|
|
//object amount = tc.ExecuteScalar(strSQL);
|
|
object amount = null;
|
|
//string sSQL = SQLParser.MakeSQL("SELECT SUM(ChangedAmount) FROM SalaryMonthlyDetail WHERE"
|
|
// + " ItemGroup=%n AND ItemCode=%n and itemId==%n AND SalaryMonthlyID IN ( SELECT SalaryMonthlyID FROM"
|
|
// + " SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth>=%d AND SalaryMonth<=%d AND WithNoDetail=%b and PayrollTypeID=%n) "
|
|
// , groupCode, itemCode, itemId, employeeId, fromDate, toDate, false, SystemInformation.CurrentSysInfo.PayrollTypeID);
|
|
|
|
string sSQL = SQLParser.MakeSQL("SELECT SUM(Round(sd.ChangedAmount,0)) FROM SalaryMonthlyDetail sd, SalaryMonthly s WHERE"
|
|
+ " sd.ItemGroup=%n AND sd.ItemCode=%n and sd.itemId==%n "
|
|
+ " and s.EmployeeID=%n AND s.SalaryMonth>=%d AND s.SalaryMonth<=%d AND s.WithNoDetail=%b and s.PayrollTypeID=%n AND s.SalaryMonthlyID=sd.SalaryMonthlyID "
|
|
, groupCode, itemCode, itemId, employeeId, fromDate, toDate, false, payrollTypeID);
|
|
|
|
amount = tc.ExecuteScalar(sSQL);
|
|
if (amount == DBNull.Value)
|
|
return 0;
|
|
else return Convert.ToDouble(amount);
|
|
|
|
//if (amount == DBNull.Value)
|
|
//{
|
|
// string sTempSQL = SQLParser.MakeSQL("Select ThisMOnthAmount from INCOMETAXTEMP WHERE ItemCode=-212 and itemId=-212 and EmployeeID=%n",itemCode,itemId,employeeId);
|
|
// amount = tc.ExecuteScalar(sTempSQL);
|
|
// return Convert.ToDouble(amount);
|
|
//}
|
|
//else return Convert.ToDouble(amount);
|
|
}
|
|
|
|
|
|
internal static double GetPrvTaxAmount(TransactionContext tc, EnumIncomeTaxDataFrom dataFrom, int employeeId,
|
|
DateTime fromDate, DateTime toDate)
|
|
{
|
|
|
|
//object amount = null;
|
|
//if (amount ==null)
|
|
//{
|
|
// string sTempSQL = SQLParser.MakeSQL("Select PreviousAmount from INCOMETAXTEMP WHERE ItemCode=%n and itemId=%n and EmployeeID=%n", (int)EnumIncomeTaxItemGroup.Tax_Deducted,(int)EnumIncomeTaxItemGroup.Tax_Deducted, employeeId);
|
|
// amount = tc.ExecuteScalar(sTempSQL);
|
|
// return Convert.ToDouble(amount);
|
|
//}
|
|
//else return Convert.ToDouble(amount);
|
|
|
|
object amount = null;
|
|
string sTempSQL = "";
|
|
if (amount == null)
|
|
{
|
|
if (EnumIncomeTaxDataFrom.ProcessTempData == dataFrom)
|
|
{
|
|
sTempSQL = SQLParser.MakeSQL("Select PreviousAmount from INCOMETAXTEMP WHERE ItemCode=%n and itemId=%n and EmployeeID=%n", (int)EnumIncomeTaxItemGroup.Tax_Deducted, (int)EnumIncomeTaxItemGroup.Tax_Deducted, employeeId);
|
|
}
|
|
else if (EnumIncomeTaxDataFrom.SalaryITTempData == dataFrom)
|
|
{
|
|
sTempSQL = SQLParser.MakeSQL("Select PreviousAmount from SALARYTEMPIT WHERE ItemCode=%n and itemId=%n and EmployeeID=%n", (int)EnumIncomeTaxItemGroup.Tax_Deducted, (int)EnumIncomeTaxItemGroup.Tax_Deducted, employeeId);
|
|
}
|
|
else if (EnumIncomeTaxDataFrom.ProcessedData == dataFrom)
|
|
{
|
|
sTempSQL = SQLParser.MakeSQL("Select PreviousAmount from INCOMETAXYEARLY WHERE ItemCode=%n and itemId=%n and EmployeeID=%n", (int)EnumIncomeTaxItemGroup.Tax_Deducted, (int)EnumIncomeTaxItemGroup.Tax_Deducted, employeeId);
|
|
}
|
|
|
|
amount = tc.ExecuteScalar(sTempSQL);
|
|
return Convert.ToDouble(amount);
|
|
}
|
|
else return Convert.ToDouble(amount);
|
|
|
|
|
|
}
|
|
|
|
internal static double GetAmountOnDateDiff(TransactionContext tc, int employeeId,
|
|
DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode,
|
|
EnumSalaryItemCode itemCode, int itemId, int payrollTypeID)
|
|
{
|
|
|
|
object amount = tc.ExecuteScalar("SELECT SUM(ChangedAmount) FROM SalaryMonthlyDetail WHERE"
|
|
+ " ItemGroup=%n AND ItemCode=%n and itemId==%n AND SalaryMonthlyID IN ( SELECT SalaryMonthlyID FROM"
|
|
+ " SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth>=%d AND SalaryMonth<=%d AND WithNoDetail=%b and PayrollTypeID=%n)"
|
|
, groupCode, itemCode, itemId, employeeId, fromDate, toDate, false, payrollTypeID);
|
|
if (amount == DBNull.Value)
|
|
return 0;
|
|
else return Convert.ToDouble(amount);
|
|
}
|
|
|
|
internal static double GetThisMonthBasicOnDateDiff(TransactionContext tc, int employeeId,
|
|
DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode,
|
|
EnumSalaryItemCode itemCode, int itemId, int payrollTypeID)
|
|
{
|
|
|
|
string sQuary = SQLParser.MakeSQL(@"Select SUM(SM.ThisMonthBasic) from SalaryMonthly SM ,SalaryMonthlyDetail SMD
|
|
where SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and SMD.ItemCode=%n and SMD.ItemGroup=%n and SMD.ItemID=%n
|
|
and SM.EmployeeID=%n and SM.SalaryMonth>=%d AND SM.SalaryMonth<=%d
|
|
and SM.PayrollTypeID=%n", itemCode, groupCode, itemId, employeeId, fromDate, toDate, payrollTypeID);
|
|
object amount = tc.ExecuteScalar(sQuary);
|
|
if (amount == DBNull.Value)
|
|
return 0;
|
|
else return Convert.ToDouble(amount);
|
|
}
|
|
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
internal static double GetAmountOnDateDiffForAll(TransactionContext tc, int employeeId,
|
|
DateTime fromDate, DateTime toDate, int payrollTypeID)
|
|
{
|
|
|
|
object amount = tc.ExecuteScalar("SELECT SUM(ChangedAmount) FROM SalaryMonthlyDetail WHERE"
|
|
+ " ItemGroup IN( 3 ) AND ItemCode IN(-118, -119) and itemId IN (SELECT LoanId FROM LoanBasic) AND SalaryMonthlyID IN ( SELECT SalaryMonthlyID FROM"
|
|
+ " SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth>=%d AND SalaryMonth<=%d AND WithNoDetail=%b and PayrollTypeID=%n) ",
|
|
employeeId, fromDate, toDate, false, payrollTypeID);
|
|
if (amount == DBNull.Value)
|
|
return 0;
|
|
else return Convert.ToDouble(amount);
|
|
}
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
internal static double GetUnAuthorizeAmountOnDateRange(TransactionContext tc, int employeeId, DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode)
|
|
{
|
|
object amount = tc.ExecuteScalar("Select Sum(ChangedAmount) Amount from SalaryMonthlyDetail SMD"
|
|
+ " where SMD.SalaryMonthlyID in("
|
|
+ " Select SalaryMonthlyID from SalaryMonthly SM"
|
|
+ " where SM.SalaryMonth between %d and %d"
|
|
+ " AND SM.EmployeeID=%n) and SMD.ItemGroup=%n", fromDate, toDate, employeeId, groupCode);
|
|
if (amount == DBNull.Value)
|
|
return 0;
|
|
else return Convert.ToDouble(amount);
|
|
}
|
|
|
|
//internal static double GetGrossOnRange(TransactionContext tc, int employeeId,
|
|
// DateTime fromDate, DateTime toDate, EnumSalaryItemCode itemCode, int itemId)
|
|
//{
|
|
// double grossAmount = 0;
|
|
// string strSQL = SQLParser.MakeSQL("SELECT SUM(ChangedAmount) FROM SalaryMonthlyDetail WHERE"
|
|
// + " ItemGroup=%n AND ItemCode=%n and itemId==%n AND SalaryMonthlyID IN ( SELECT SalaryMonthlyID FROM"
|
|
// + " SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth>=%d AND SalaryMonth<=%d AND WithNoDetail=%b )"
|
|
// , EnumSalaryGroup.Gross, itemCode, itemId, employeeId, fromDate, toDate, false);
|
|
|
|
// object amount =tc.ExecuteScalar(strSQL);
|
|
// if (amount != DBNull.Value) ;
|
|
// else grossAmount = grossAmount + Convert.ToDouble(amount);
|
|
|
|
// amount = tc.ExecuteScalar("SELECT SUM(ChangedAmount) FROM SalaryMonthlyDetail WHERE"
|
|
// + " ItemGroup=%n AND ItemCode=%n and itemId==%n AND SalaryMonthlyID IN ( SELECT SalaryMonthlyID FROM"
|
|
// + " SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth>=%d AND SalaryMonth<=%d AND WithNoDetail=%b )"
|
|
// , groupCode, itemCode, itemId, employeeId, fromDate, toDate, false);
|
|
// if (amount == DBNull.Value)
|
|
// return 0;
|
|
// else return Convert.ToDouble(amount);
|
|
//}
|
|
|
|
internal static DataSet GetEmpPaySlipGrossForOthersNew(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sSQL = SQLParser.MakeSQL(@"SELECT Distinct E.NAME Name,E.EMPLOYEENO,G.CODE Grade, DG.Name Designation,L.Description LName,
|
|
D.DESCRIPTION Department,B.NAME BName,sm.THISMONTHBASIC ActualBasic,CAST(E.PAYMENTMODE as varchar(50)) as PAYMENTMODE ,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,cat.DESCRIPTION Category,E.JOININGDATE,E.TINNo,
|
|
E.DEPARTMENTID, E.OUTPAYACCOUNTNO OutAccountNo, B2.NAME OutBank
|
|
FROM SALARYMONTHLY SM
|
|
inner join EMPLOYEE E on SM.EMPLOYEEID=E.EMPLOYEEID
|
|
inner join Grades G on Sm.GRADEID=G.GRADEID
|
|
inner join DEPARTMENT D on SM.DEPARTMENTID=D.DEPARTMENTID
|
|
inner join DESIGNATION DG on SM.DESIGNATIONID =DG.DESIGNATIONID
|
|
inner join LOCATION L on SM.LOCATIONID=L.LOCATIONID
|
|
left outer join BRANCHES Br on SM.BRANCHID=Br.BRANCHID
|
|
left outer join BANKS B on Br.BANKID=B.BANKID
|
|
left outer join BRANCHES Br2 on E.OUTPAYBRANCHID = Br2.BRANCHID
|
|
left outer join BANKS B2 on Br2.BANKID=B2.BANKID
|
|
inner join CATEGORY cat on E.CATEGORYID=cat.CATEGORYID
|
|
inner join SALARYMONTHLYDETAIL SMD on SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP IN(1,2,8)
|
|
AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo", dateTime, sEmpID);
|
|
|
|
DataTable dtTemp = tc.ExecuteDataSet(sSQL).Tables[0];
|
|
dtTemp.TableName = "PayslipBasic";
|
|
oSMonthlys.Tables.Add(dtTemp.Copy());
|
|
|
|
sSQL = SQLParser.MakeSQL(@"SELECT E.EmployeeID,E.NAME Name,E.EMPLOYEENO,G.CODE Grade, DG.Name Designation,L.Description LName,
|
|
D.DESCRIPTION Department,B.NAME BName,sm.THISMONTHBASIC ActualBasic,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,SM.ISFINALIZED,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID,cat.DESCRIPTION Category,E.JOININGDATE,E.TINNo,
|
|
E.DEPARTMENTID
|
|
FROM SALARYMONTHLY SM
|
|
inner join EMPLOYEE E on SM.EMPLOYEEID=E.EMPLOYEEID
|
|
inner join Grades G on Sm.GRADEID=G.GRADEID
|
|
inner join DEPARTMENT D on SM.DEPARTMENTID=D.DEPARTMENTID
|
|
inner join DESIGNATION DG on SM.DESIGNATIONID =DG.DESIGNATIONID
|
|
inner join LOCATION L on SM.LOCATIONID=L.LOCATIONID
|
|
left outer join BRANCHES Br on SM.BRANCHID=Br.BRANCHID
|
|
left outer join BANKS B on Br.BANKID=B.BANKID
|
|
inner join CATEGORY cat on E.CATEGORYID=cat.CATEGORYID
|
|
inner join SALARYMONTHLYDETAIL SMD on SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP IN(1,2,8)
|
|
AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
dtTemp = tc.ExecuteDataSet(sSQL).Tables[0];
|
|
dtTemp.TableName = "PayslipGross";
|
|
oSMonthlys.Tables.Add(dtTemp.Copy());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
internal static DataSet GetEmpPaySlipGrossForOthers(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
DataTable tempDt = new DataTable();
|
|
try
|
|
{
|
|
string sSQL = SQLParser.MakeSQL(@"SELECT E.EmployeeID,E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.[Name] 'Designation',L.Description as LName,
|
|
E.CategoryID,D.DESCRIPTION Department,B.NAME as BName,SM.THISMONTHGROSS ActualBasic,CAST(E.PAYMENTMODE as varchar(50)) as PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,SM.ISFINALIZED,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID,cat.DESCRIPTION as Category,E.JOININGDATE,E.TINNo,
|
|
E.DEPARTMENTID,E.TINNO
|
|
FROM SALARYMONTHLY SM
|
|
inner join EMPLOYEE E on SM.EMPLOYEEID=E.EMPLOYEEID
|
|
inner join Grades G on Sm.GRADEID=G.GRADEID
|
|
inner join DEPARTMENT as D on SM.DEPARTMENTID=D.DEPARTMENTID
|
|
inner join DESIGNATION as DG on E.DESIGNATIONID =DG.DESIGNATIONID
|
|
inner join LOCATION as L on SM.LOCATIONID=L.LOCATIONID
|
|
left outer join BRANCHES as Br on SM.BRANCHID=Br.BRANCHID
|
|
left outer join BANKS as B on Br.BANKID=B.BANKID
|
|
inner join CATEGORY cat on E.CATEGORYID=cat.CATEGORYID
|
|
inner join SALARYMONTHLYDETAIL as SMD on SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP IN(1,2,8)
|
|
AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
|
|
tempDt = tc.ExecuteDataTable(sSQL);
|
|
tempDt.TableName = "PayslipBasic";
|
|
oSMonthlys.Tables.Add(tempDt);
|
|
|
|
sSQL = SQLParser.MakeSQL(@"SELECT E.NAME Name,E.EMPLOYEENO,E.EMPLOYEEID,G.CODE Grade, DG.Name Designation,L.Description LName,
|
|
D.DESCRIPTION Department,B.NAME BName,sm.THISMONTHBASIC ActualBasic,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,SM.ISFINALIZED,
|
|
SUM(SMD.CHANGEDAMOUNT) CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID,cat.DESCRIPTION Category,E.JOININGDATE,E.TINNo,
|
|
E.DEPARTMENTID
|
|
FROM SALARYMONTHLY SM
|
|
inner join EMPLOYEE E on SM.EMPLOYEEID=E.EMPLOYEEID
|
|
inner join Grades G on Sm.GRADEID=G.GRADEID
|
|
inner join DEPARTMENT D on SM.DEPARTMENTID=D.DEPARTMENTID
|
|
inner join DESIGNATION DG on SM.DESIGNATIONID =DG.DESIGNATIONID
|
|
inner join LOCATION L on SM.LOCATIONID=L.LOCATIONID
|
|
left outer join BRANCHES Br on SM.BRANCHID=Br.BRANCHID
|
|
left outer join BANKS B on Br.BANKID=B.BANKID
|
|
inner join CATEGORY cat on E.CATEGORYID=cat.CATEGORYID
|
|
inner join SALARYMONTHLYDETAIL SMD on SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP IN(1,2,8)
|
|
AND SM.EmployeeID IN(%q) GROUP BY E.NAME,E.EMPLOYEENO,E.EMPLOYEEID,G.CODE, DG.Name ,L.Description,
|
|
D.DESCRIPTION,B.NAME ,sm.THISMONTHBASIC,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth, SMD.DESCRIPTION,SMD.ITEMGROUP,SM.ISFINALIZED,
|
|
SMD.ItemCode,SMD.ItemID,cat.DESCRIPTION ,E.JOININGDATE,E.TINNo,
|
|
E.DEPARTMENTID", dateTime, sEmpID);
|
|
|
|
tempDt = tc.ExecuteDataTable(sSQL);
|
|
tempDt.TableName = "PayslipGross";
|
|
oSMonthlys.Tables.Add(tempDt);
|
|
|
|
sSQL = SQLParser.MakeSQL(@"SELECT E.NAME Name,E.EMPLOYEENO,E.EMPLOYEEID,G.CODE Grade, DG.Name Designation,L.Description LName,
|
|
D.DESCRIPTION Department,B.NAME BName,sm.THISMONTHBASIC ActualBasic,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,SMD.Position, SMD.DESCRIPTION Description,SMD.ITEMGROUP,SM.ISFINALIZED,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID,cat.DESCRIPTION Category,E.JOININGDATE,E.TINNo,
|
|
E.DEPARTMENTID
|
|
FROM SALARYMONTHLY SM
|
|
inner join EMPLOYEE E on SM.EMPLOYEEID=E.EMPLOYEEID
|
|
inner join Grades G on Sm.GRADEID=G.GRADEID
|
|
inner join DEPARTMENT D on SM.DEPARTMENTID=D.DEPARTMENTID
|
|
inner join DESIGNATION DG on SM.DESIGNATIONID =DG.DESIGNATIONID
|
|
inner join LOCATION L on SM.LOCATIONID=L.LOCATIONID
|
|
left outer join BRANCHES Br on SM.BRANCHID=Br.BRANCHID
|
|
left outer join BANKS B on Br.BANKID=B.BANKID
|
|
inner join CATEGORY cat on E.CATEGORYID=cat.CATEGORYID
|
|
inner join SALARYMONTHLYDETAIL SMD on SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP IN(4,5)
|
|
AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
|
|
tempDt = tc.ExecuteDataTable(sSQL);
|
|
tempDt.TableName = "PayslipHours";
|
|
|
|
oSMonthlys.Tables.Add(tempDt);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetEmpPaySlipDeductForOthers(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
|
|
string sql = SQLParser.MakeSQL(@"SELECT E.NAME Name,E.EMPLOYEENO,E.EMPLOYEEID,E.JOININGDATE,E.TINNO,G.CODE Grade,DG.Name as 'Designation',L.Description as LName,
|
|
D.DESCRIPTION Department,B.NAME as BName,SM.THISMONTHGROSS ActualBasic,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,
|
|
|
|
'DESCRIPTION' =
|
|
(CASE WHEN SMD.DESCRIPTION = 'PF' THEN 'PF Contribution'
|
|
ELSE SMD.DESCRIPTION
|
|
END
|
|
),
|
|
SMD.ITEMGROUP,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID,E.TINNO
|
|
FROM Employee E Inner join SALARYMONTHLY SM on E.EMPLOYEEID=SM.EMPLOYEEID
|
|
inner join Grades G on sm.GRADEID=G.GRADEID
|
|
Inner join Department D on Sm.DEPARTMENTID =D.DEPARTMENTID
|
|
inner join Designation DG on E.DESIGNATIONID=Dg.DESIGNATIONID
|
|
inner join SalaryMonthlyDetail SMD on sm.SALARYMONTHLYID=smd.SALARYMONTHLYID
|
|
left outer join BRANCHES Br on sm.BRANCHID=br.BRANCHID
|
|
left outer join BANKS B on Br.BANKID=B.BANKID
|
|
Inner join Location L on Sm.LocationID =L.LocationID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=3 AND SM.EmployeeID IN(%q)
|
|
ORDER BY E.EmployeeNo, 'DESCRIPTION'", dateTime, sEmpID);
|
|
|
|
//AND SMD.ITEMCODE Not in(-119)
|
|
// oSMonthlys = tc.ExecuteDataSet(@"SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name 'Designation',L.Description as LName,
|
|
// D.DESCRIPTION Department,B.NAME as BName,E.BASICSALARY ActualBasic,E.PAYMENTMODE,
|
|
// SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,
|
|
// SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID
|
|
// FROM Employee E Inner join SALARYMONTHLY SM on E.EMPLOYEEID=SM.EMPLOYEEID
|
|
// inner join Grades G on sm.GRADEID=G.GRADEID
|
|
// Inner join Department D on Sm.DEPARTMENTID =D.DEPARTMENTID
|
|
// inner join Designation DG on sm.DESIGNATIONID=Dg.DESIGNATIONID
|
|
// inner join SalaryMonthlyDetail SMD on sm.SALARYMONTHLYID=smd.SALARYMONTHLYID
|
|
// left outer join BRANCHES Br on sm.BRANCHID=br.BRANCHID
|
|
// left outer join BANKS B on Br.BANKID=B.BANKID
|
|
// Inner join Location L on Sm.LocationID =L.LocationID
|
|
// AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=3 AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sql);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetGrossDeduction(TransactionContext tc, int empID, DateTime salaryMonth)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
string query1 = SQLParser.MakeSQL(@"select Sum(sd.changedamount) as GrossAmount
|
|
from SALARYMONTHLY S
|
|
INNER JOIN SalaryMonthlyDetail Sd ON S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
INNER JOIN EMPLOYEE E ON s.EMPLOYEEID = E.EMPLOYEEID
|
|
where S.SalaryMonth = %d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID = %n ",
|
|
salaryMonth, empID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query2 = SQLParser.MakeSQL(@"select Sum(sd.CHANGEDAMOUNT) as Deductamount
|
|
from SALARYMONTHLY S
|
|
INNER JOIN SalaryMonthlyDetail Sd on S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
INNER JOIN EMPLOYEE E ON S.EMPLOYEEID = E.EMPLOYEEID
|
|
where S.SalaryMonth = %d
|
|
and Sd.ItemGroup IN (2,3) AND S.EmployeeID = %n", salaryMonth, empID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static void Updatepayment(TransactionContext tc, DateTime paymentDate, int salarymonthlyid, string chequeNo, string remarks, int userID)
|
|
{
|
|
string sql = SQLParser.MakeSQL(@"UPDATE SalaryMonthly SET paymentdate=%d, chequeno=%s , remarks=%s, ModifiedDate=%D,Modifiedby=%n where salarymonthlyid=%n", paymentDate, chequeNo, remarks, DateTime.Now, userID, salarymonthlyid) ;
|
|
tc.ExecuteNonQuery(sql);
|
|
}
|
|
|
|
internal static DataSet GetEmpPaySlipDeductForCitiOthers(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string sql = SQLParser.MakeSQL(@"SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name Designation,L.Description LName,
|
|
D.DESCRIPTION Department,B.NAME BName,SM.THISMONTHGROSS ActualBasic,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,
|
|
|
|
'DESCRIPTION' =
|
|
(CASE WHEN SMD.DESCRIPTION ='PF' THEN 'PF Contribution'
|
|
ELSE SMD.DESCRIPTION
|
|
END
|
|
),
|
|
SMD.ITEMGROUP,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID
|
|
FROM Employee E Inner join SALARYMONTHLY SM on E.EMPLOYEEID=SM.EMPLOYEEID
|
|
inner join Grades G on sm.GRADEID=G.GRADEID
|
|
Inner join Department D on Sm.DEPARTMENTID =D.DEPARTMENTID
|
|
inner join Designation DG on E.DESIGNATIONID=Dg.DESIGNATIONID
|
|
inner join SalaryMonthlyDetail SMD on sm.SALARYMONTHLYID=smd.SALARYMONTHLYID
|
|
left outer join BRANCHES Br on sm.BRANCHID=br.BRANCHID
|
|
left outer join BANKS B on Br.BANKID=B.BANKID
|
|
Inner join Location L on Sm.LocationID =L.LocationID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=3 AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, 'DESCRIPTION'", dateTime, sEmpID);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sql);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetEmpPaySlipDeductForLR(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string sql = SQLParser.MakeSQL(@"SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name Designation,L.Description LName,
|
|
D.DESCRIPTION Department,B.NAME BName,SM.THISMONTHGROSS ActualBasic,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION,
|
|
SMD.ITEMGROUP,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID
|
|
FROM Employee E Inner join SALARYMONTHLY SM on E.EMPLOYEEID=SM.EMPLOYEEID
|
|
inner join Grades G on sm.GRADEID=G.GRADEID
|
|
Inner join Department D on Sm.DEPARTMENTID =D.DEPARTMENTID
|
|
inner join Designation DG on E.DESIGNATIONID=Dg.DESIGNATIONID
|
|
inner join SalaryMonthlyDetail SMD on sm.SALARYMONTHLYID=smd.SALARYMONTHLYID
|
|
left outer join BRANCHES Br on sm.BRANCHID=br.BRANCHID
|
|
left outer join BANKS B on Br.BANKID=B.BANKID
|
|
Inner join Location L on Sm.LocationID =L.LocationID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=4 AND SM.EmployeeID IN(%q) AND SMD.ITEMCODE in(-126) ORDER BY E.EmployeeNo, 'DESCRIPTION'", dateTime, sEmpID);
|
|
//AND SMD.ITEMCODE Not in(-119)
|
|
// oSMonthlys = tc.ExecuteDataSet(@"SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name 'Designation',L.Description LName,
|
|
// D.DESCRIPTION Department,B.NAME BName,E.BASICSALARY ActualBasic,E.PAYMENTMODE,
|
|
// SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,
|
|
// SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID
|
|
// FROM Employee E Inner join SALARYMONTHLY SM on E.EMPLOYEEID=SM.EMPLOYEEID
|
|
// inner join Grades G on sm.GRADEID=G.GRADEID
|
|
// Inner join Department D on Sm.DEPARTMENTID =D.DEPARTMENTID
|
|
// inner join Designation DG on sm.DESIGNATIONID=Dg.DESIGNATIONID
|
|
// inner join SalaryMonthlyDetail SMD on sm.SALARYMONTHLYID=smd.SALARYMONTHLYID
|
|
// left outer join BRANCHES Br on sm.BRANCHID=br.BRANCHID
|
|
// left outer join BANKS B on Br.BANKID=B.BANKID
|
|
// Inner join Location L on Sm.LocationID =L.LocationID
|
|
// AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=3 AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sql);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetEmpPaySlipIncomeTaxAmountForOthers(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(@"SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name Designation,L.Description LName,
|
|
D.DESCRIPTION Department,SM.THISMONTHBASIC ActualBasic,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID
|
|
FROM SALARYMONTHLY SM,Employee E,Grades G,Department D,Designation DG,Location L,
|
|
SalaryMonthlyDetail SMD
|
|
WHERE SM.EMPLOYEEID=E.EMPLOYEEID
|
|
AND SM.GRADEID=G.GRADEID
|
|
AND SM.DEPARTMENTID=D.DEPARTMENTID
|
|
AND SM.LocationID=L.LocationID
|
|
AND E.DESIGNATIONID=DG.DESIGNATIONID
|
|
AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=5 AND SMD.ITEMCODE IN(-129,-132) AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetEmpSalaryProcessedData(TransactionContext tc, DateTime dateTime, string employeeno)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
employeeno = IDHelper.GetIDs(tc, employeeno, out sTableName);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet("SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.CODE 'Designation',D.DESCRIPTION Department,"
|
|
+ " E.BASICSALARY ActualBasic,E.PAYMENTMODE,E.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP, "
|
|
+ " SMD.CHANGEDAMOUNT, SMD.CALCULATEDAMOUNT, SMD.ItemCode"
|
|
+ " FROM SALARYMONTHLY SM INNER JOIN Employee E ON SM.EMPLOYEEID=E.EMPLOYEEID"
|
|
+ " INNER JOIN GRADES G ON SM.GRADEID=G.GRADEID"
|
|
+ " INNER JOIN DEPARTMENT D ON SM.DEPARTMENTID=D.DEPARTMENTID"
|
|
+ " INNER JOIN DESIGNATION DG ON SM.DESIGNATIONID=DG.DESIGNATIONID"
|
|
+ " INNER JOIN SALARYMONTHLYDETAIL SMD ON SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID WHERE SM.SalaryMonth=%d AND E.EMPLOYEENO=%s", dateTime, employeeno);
|
|
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetEmpPaySlipGross(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
#region Old Code
|
|
//oSMonthlys = tc.ExecuteDataSet("SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name 'Designation',"
|
|
// + " D.DESCRIPTION Department,E.BASICSALARY ActualBasic,E.PAYMENTMODE,"
|
|
// + " E.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,"
|
|
// + " SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID"
|
|
// + " FROM SALARYMONTHLY SM,Employee E,Grades G,Department D,Designation DG,"
|
|
// + " SalaryMonthlyDetail SMD"
|
|
// + " WHERE SM.EMPLOYEEID=E.EMPLOYEEID"
|
|
// + " AND SM.GRADEID=G.GRADEID"
|
|
// + " AND SM.DEPARTMENTID=D.DEPARTMENTID"
|
|
// + " AND SM.DESIGNATIONID=DG.DESIGNATIONID"
|
|
// + " AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID"
|
|
// + " AND SM.SalaryMonth=%d AND SMD.ITEMGROUP IN(1,2,8) AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime,sEmpID);
|
|
#endregion
|
|
|
|
#region Latest Old Code
|
|
// oSMonthlys = tc.ExecuteDataSet(@"SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,SM.Designation 'Designation',L.Description LName,
|
|
// D.DESCRIPTION Department,CC.DESCRIPTION RC ,B.NAME BName,E.BASICSALARY ActualBasic,E.PAYMENTMODE,
|
|
// SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,SM.ISFINALIZED,
|
|
// SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID
|
|
// FROM SALARYMONTHLY SM,Employee E,Grades G,Department D,Designation DG,Location L,
|
|
// SalaryMonthlyDetail SMD,CRG CC,SALARYEMPCOSTCENTER SEmpCC,BANKS B,BRANCHES Br
|
|
// WHERE SM.EMPLOYEEID=E.EMPLOYEEID
|
|
// AND SM.GRADEID=G.GRADEID
|
|
// AND SM.DEPARTMENTID=D.DEPARTMENTID
|
|
// AND SM.DESIGNATIONID=DG.DESIGNATIONID
|
|
// AND SM.LOCATIONID=L.LOCATIONID
|
|
// AND CC.CRGID=SEmpCC.COSTCENTERID
|
|
// AND SM.EMPLOYEEID=SEmpCC.EMPLOYEEID
|
|
// AND SM.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID
|
|
// AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
// AND B.BANKID=Br.BANKID
|
|
// AND Br.BRANCHID=SM.BRANCHID
|
|
// AND SM.SalaryMonth=%d AND SMD.ITEMGROUP IN(1,2,8) AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
|
|
string sSQL = SQLParser.MakeSQL(@"SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name Designation,L.Description LName,
|
|
D.DESCRIPTION Department,CC.DESCRIPTION RC ,B.NAME BName,E.BASICSALARY ActualBasic,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,SM.ISFINALIZED,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID,cat.DESCRIPTION Category,E.JOININGDATE,
|
|
E.DEPARTMENTID
|
|
FROM SALARYMONTHLY SM,Employee E,Grades G,Department D,Designation DG,Location L,
|
|
SalaryMonthlyDetail SMD,CRG CC,SALARYEMPCOSTCENTER SEmpCC,BANKS B,BRANCHES Br,
|
|
CATEGORY cat
|
|
WHERE SM.EMPLOYEEID=E.EMPLOYEEID
|
|
AND SM.GRADEID=G.GRADEID
|
|
AND SM.DEPARTMENTID=D.DEPARTMENTID
|
|
AND E.DESIGNATIONID=DG.DESIGNATIONID
|
|
AND SM.LOCATIONID=L.LOCATIONID
|
|
AND SM.CATEGORYID = cat.CATEGORYID
|
|
AND CC.CRGID=SEmpCC.COSTCENTERID
|
|
AND SM.EMPLOYEEID=SEmpCC.EMPLOYEEID
|
|
AND SM.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID
|
|
AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
AND B.BANKID=Br.BANKID
|
|
AND Br.BRANCHID=SM.BRANCHID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP IN(1,2,8) AND SM.EmployeeID IN(%q)
|
|
ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sSQL);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetEmpPaySlipDeduct(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
#region Old Code
|
|
//oSMonthlys = tc.ExecuteDataSet("SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name 'Designation',"
|
|
// + " D.DESCRIPTION Department,E.BASICSALARY ActualBasic,E.PAYMENTMODE,"
|
|
// + " E.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,"
|
|
// + " SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID"
|
|
// + " FROM SALARYMONTHLY SM,Employee E,Grades G,Department D,Designation DG,"
|
|
// + " SalaryMonthlyDetail SMD"
|
|
// + " WHERE SM.EMPLOYEEID=E.EMPLOYEEID"
|
|
// + " AND SM.GRADEID=G.GRADEID"
|
|
// + " AND SM.DEPARTMENTID=D.DEPARTMENTID"
|
|
// + " AND SM.DESIGNATIONID=DG.DESIGNATIONID"
|
|
// + " AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID"
|
|
// + " AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=3 AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
#endregion
|
|
|
|
#region Latest Old Code
|
|
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(@"SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name Designation,L.Description LName,
|
|
D.DESCRIPTION Department,CC.DESCRIPTION RC ,B.NAME BName,E.BASICSALARY ActualBasic,E.PAYMENTMODE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID
|
|
FROM Employee E Inner join SALARYMONTHLY SM on E.EMPLOYEEID=SM.EMPLOYEEID
|
|
inner join Grades G on sm.GRADEID=G.GRADEID
|
|
Inner join Department D on Sm.DEPARTMENTID =D.DEPARTMENTID
|
|
inner join Designation DG on E.DESIGNATIONID=Dg.DESIGNATIONID
|
|
inner join SalaryMonthlyDetail SMD on sm.SALARYMONTHLYID=smd.SALARYMONTHLYID
|
|
inner join SALARYEMPCOSTCENTER SEmpCC on sm.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID AND SEmpCC.EMPLOYEEID=E.EMPLOYEEID
|
|
inner JOIN CRG cc on SEmpCC.COSTCENTERID=cc.CRGID
|
|
inner join BRANCHES Br on sm.BRANCHID=br.BRANCHID
|
|
inner JOIN BANKS B on Br.BANKID=B.BANKID
|
|
Inner join Location L on Sm.LocationID =L.LocationID
|
|
AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=3 AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetEmpOverAllSummaryGross(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sql = SQLParser.MakeSQL("Select SMD.DESCRIPTION,SUM(SMD.CHANGEDAMOUNT) as Amount ,SMD.ITEMGROUP,SMD.ITEMID,SMD.ITEMCODE"
|
|
+ " from SALARYMONTHLYDETAIL SMD,SALARYMONTHLY SM"
|
|
+ " where SM.EMPLOYEEID in(%q)"
|
|
+ " AND SMD.ITEMGROUP IN(1,2,8)"
|
|
+ " AND SM.SALARYMONTH=%d"
|
|
+ " AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID"
|
|
+ " AND SMD.CHANGEDAMOUNT<>0"
|
|
+ " GROUP by SMD.ITEMID,SMD.ITEMGROUP,SMD.ITEMCODE,SMD.DESCRIPTION order by SMD.ITEMCODE desc", sEmpID, dateTime);
|
|
oSMonthlys = tc.ExecuteDataSet(sql);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetEmpOverAllSummaryDeduct(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
oSMonthlys = tc.ExecuteDataSet("Select SMD.DESCRIPTION,SUM(SMD.CHANGEDAMOUNT) as Amount ,SMD.ITEMGROUP,SMD.ITEMID,SMD.ITEMCODE"
|
|
+ " from SALARYMONTHLYDETAIL SMD,SALARYMONTHLY SM"
|
|
+ " where SM.EMPLOYEEID in(%q)"
|
|
+ " AND SMD.ITEMGROUP IN(3)"
|
|
+ " AND SM.SALARYMONTH=%d"
|
|
+ " AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID"
|
|
+ " AND SMD.CHANGEDAMOUNT<>0"
|
|
+ " GROUP by SMD.ITEMGROUP,SMD.ITEMID,SMD.ITEMCODE,SMD.DESCRIPTION order by SMD.ITEMCODE asc", sEmpID, dateTime);
|
|
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetCasualSalarySheet(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string query1 = SQLParser.MakeSQL(@"select A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DegName, A.GCode,A.SequenceNo,A.ItemID,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from"
|
|
+ "(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,sd.SUPPORTID,"
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,Deg.Name DegName,D.Description DName, G.Code GCode,G.SequenceNo from Grades G,DESIGNATION Deg,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where D.DepartmentID=E.DepartmentID AND G.GradeID= S.GradeID AND Deg.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1,4) AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q) ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DegName,A.SequenceNo,A.ItemID,A.GCode,"
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position order by A.EmployeeNo,A.Position,A.SequenceNo,A.GCode",
|
|
dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetEmpSalarySheetForNonManagement(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string query1 = SQLParser.MakeSQL(@"select A.SalaryMonth,A.EmployeeNo,A.THISMONTHBASIC,A.ItemCode,A.ItemGroup,A.ItemID, A.JOININGDATE,A.CCName, A.Name,A.GName,A.DName,A.GCode, A.SequenceNo, A.Description,A.changedamount
|
|
Amount from(
|
|
select S.SalaryMonth,S.EmployeeID, S.THISMONTHBASIC,E.EmployeeNo, E.JOININGDATE,cc.Code AS CCName,
|
|
E.Name,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo,CONCAT(sd.Description,' Arrear') Description,sd.changedamount, sd.ItemGroup,sd.ItemCode, sd.ItemID,sd.Position
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,EMPCOSTCENTER ecc, CRG cc
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d
|
|
AND E.EMPLOYEEID=ecc.EMPLOYEEID
|
|
AND ecc.COSTCENTERID=cc.CRGID
|
|
AND ecc.CURRENTCC=1
|
|
and Sd.ItemGroup in(8) AND sd.ItemCode not in(-133) AND S.EmployeeID in(%q) AND sd.changedamount<>0
|
|
|
|
UNION
|
|
select S.SalaryMonth, S.EmployeeID, S.THISMONTHBASIC,E.EmployeeNo, E.JOININGDATE,cc.Code AS CCName,
|
|
E.Name, G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode, G.SequenceNo,sd.Description,sd.changedamount, sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Position
|
|
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,EMPCOSTCENTER ecc, CRG cc
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d
|
|
AND E.EMPLOYEEID=ecc.EMPLOYEEID
|
|
AND ecc.COSTCENTERID=cc.CRGID
|
|
AND ecc.CURRENTCC=1
|
|
and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133) AND S.EmployeeID in(%q) AND sd.changedamount<>0
|
|
|
|
Union
|
|
select S.SalaryMonth, S.EmployeeID, S.THISMONTHBASIC,E.EmployeeNo, E.JOININGDATE,cc.Code AS CCName,
|
|
E.Name, G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode, G.SequenceNo,sd.Description,sd.changedamount, sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Position
|
|
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,EMPCOSTCENTER ecc, CRG cc
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d
|
|
AND E.EMPLOYEEID=ecc.EMPLOYEEID
|
|
AND ecc.COSTCENTERID=cc.CRGID
|
|
AND ecc.CURRENTCC=1
|
|
and Sd.ItemGroup in(4) AND sd.ItemCode in(-101) AND S.EmployeeID in(%q) AND sd.changedamount<>0
|
|
|
|
)
|
|
A
|
|
|
|
order by A.SalaryMonth,A.EmployeeNo, A.Position, A.ItemCode,A.ItemID,A.SequenceNo,A.GCode", dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query2 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo,A.THISMONTHBASIC,A.ItemGroup, E.JOININGDATE, A.CCName, E.Name,A.GName,A.GCode,A.DName,'Total Gross' as Description,
|
|
Sum(A.amount) as amount
|
|
from
|
|
(
|
|
select S.EmployeeID,S.THISMONTHBASIC,S.SalaryMonth,Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID,G.Code as GCode,cc.Code AS CCName,
|
|
G.SequenceNo,D.Name as DName
|
|
from SALARYMONTHLY S,Grades G,DESIGNATION D,
|
|
SalaryMonthlyDetail Sd ,EMPCOSTCENTER ecc, CRG cc
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND
|
|
G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND S.SalaryMonth = %d and Sd.ItemGroup IN (1, 8)
|
|
AND S.EmployeeID=ecc.EMPLOYEEID
|
|
AND ecc.COSTCENTERID=cc.CRGID
|
|
AND ecc.CURRENTCC=1
|
|
AND S.EmployeeID IN(%q) AND sd.changedamount<>0
|
|
group by S.SalaryMonth,S.EmployeeID,S.THISMONTHBASIC,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID,cc.Code
|
|
|
|
UNION
|
|
|
|
select S.EmployeeID,S.THISMONTHBASIC,S.SalaryMonth, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID,G.Code as GCode,cc.Code AS CCName,
|
|
G.sequenceNo,D.Name as DName
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd ,EMPCOSTCENTER ecc, CRG cc
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth =%d
|
|
AND S.EmployeeID=ecc.EMPLOYEEID
|
|
AND ecc.COSTCENTERID=cc.CRGID
|
|
AND ecc.CURRENTCC=1
|
|
AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) AND sd.changedamount<>0
|
|
group by S.SalaryMonth,S.EmployeeID,S.THISMONTHBASIC,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID,cc.Code
|
|
|
|
) A, Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo, A.CCName,A.THISMONTHBASIC, E.JOININGDATE, E.Name,A.ItemGroup,A.GName,A.GCode,A.DName
|
|
", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo,A.THISMONTHBASIC, A.Name,A.JoiningDate,A.CCName, A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID,A.ItemGroup
|
|
|
|
from
|
|
(select S.EmployeeID,S.THISMONTHBASIC, E.EmployeeNo, E.Name,E.JoiningDate,cc.Code AS CCName,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,EMPCOSTCENTER ecc, CRG cc
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND E.EMPLOYEEID=ecc.EMPLOYEEID
|
|
AND ecc.COSTCENTERID=cc.CRGID
|
|
AND ecc.CURRENTCC=1
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d
|
|
and Sd.ItemGroup=3
|
|
AND S.EmployeeID IN(%q) AND sd.changedamount<>0
|
|
|
|
UNION
|
|
|
|
select S.EmployeeID,S.THISMONTHBASIC, E.EmployeeNo, E.Name,E.JoiningDate,cc.Code AS CCName,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,EMPCOSTCENTER ecc, CRG cc
|
|
where G.GradeID= S.GradeID
|
|
AND E.EMPLOYEEID=ecc.EMPLOYEEID
|
|
AND ecc.COSTCENTERID=cc.CRGID
|
|
AND ecc.CURRENTCC=1
|
|
AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) AND sd.changedamount<>0
|
|
|
|
|
|
) A group by
|
|
A.EmployeeID,A.THISMONTHBASIC, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.ItemCode, A.ItemID,A.ItemGroup, A.Description,A.Position,A.JoiningDate,A.CCName order by A.EmployeeNo,A.Position,A.SequenceNo,A.GCode
|
|
",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
|
|
string query6 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo,A.THISMONTHBASIC,A.ItemGroup, E.JOININGDATE,A.CCName, E.Name,A.GName,A.GCode,A.DName,
|
|
|
|
'Total Deduction' as Description,
|
|
Sum(A.amount) as amount
|
|
from(
|
|
select S.SalaryMonth,S.EmployeeID,S.THISMONTHBASIC, Sum(sd.changedamount) as Amount,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID,cc.Code AS CCName,
|
|
|
|
G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd,EMPCOSTCENTER ecc, CRG cc
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND
|
|
S.SalaryMonth = %d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND S.EmployeeID=ecc.EMPLOYEEID
|
|
AND ecc.COSTCENTERID=cc.CRGID
|
|
AND ecc.CURRENTCC=1
|
|
and Sd.ItemGroup IN (3) AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,S.THISMONTHBASIC,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name ,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID,cc.Code
|
|
) A,Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo,A.THISMONTHBASIC,A.ItemGroup, E.JOININGDATE,A.CCName, E.Name,A.GName,A.GCode,A.DName
|
|
", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query7 = SQLParser.MakeSQL(@"Select S.SalaryMonth,E.EMPLOYEENO,S.THISMONTHBASIC, Sd.ItemCode,Sd.ItemGroup,Sd.ItemID, E.JOININGDATE,cc.Code AS CCName,E.NAME,G.DESCRIPTION GName,G.Code GCode,
|
|
|
|
G.SequenceNo,D.Name DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount
|
|
|
|
from
|
|
EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd,EMPCOSTCENTER ecc, CRG cc
|
|
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth= %d
|
|
AND E.EMPLOYEEID=ecc.EMPLOYEEID
|
|
AND ecc.COSTCENTERID=cc.CRGID
|
|
AND ecc.CURRENTCC=1
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)
|
|
order by S.SalaryMonth,G.SequenceNo,G.Code,E.EMPLOYEENO", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
|
|
}
|
|
internal static DataSet GetEmpSalarySheetForManagement(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
|
|
{
|
|
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string query1 = SQLParser.MakeSQL(@"select A.SalaryMonth,A.EmployeeNo,A.ItemCode,A.ItemGroup,A.ItemID, A.JOININGDATE, A.Name,A.GName,A.DName,A.GCode,A.SequenceNo, A.Description,A.changedamount
|
|
Amount from(
|
|
select S.SalaryMonth,S.EmployeeID, E.EmployeeNo, E.JOININGDATE,
|
|
E.Name,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo,CONCAT(sd.Description,' Arrear') Description,sd.changedamount, sd.ItemGroup,sd.ItemCode, sd.ItemID,sd.Position
|
|
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d
|
|
and Sd.ItemGroup in(8) AND sd.ItemCode not in(-133) AND S.EmployeeID in(%q) AND sd.changedamount<>0
|
|
UNION
|
|
select S.SalaryMonth, S.EmployeeID, E.EmployeeNo, E.JOININGDATE,
|
|
E.Name, G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode, G.SequenceNo,sd.Description,sd.changedamount, sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Position
|
|
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d
|
|
and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133) AND S.EmployeeID in(%q) AND sd.changedamount<>0
|
|
)
|
|
A
|
|
|
|
order by A.SalaryMonth,A.EmployeeNo, A.Position, A.ItemCode,A.ItemID,A.SequenceNo,A.GCode", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query2 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo, E.JOININGDATE, E.Name,A.GName,A.GCode,A.DName,'Total Gross' as Description,
|
|
Sum(A.amount) as amount
|
|
from
|
|
(
|
|
select S.EmployeeID,S.SalaryMonth,Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID,G.Code as GCode,
|
|
G.SequenceNo,D.Name as DName
|
|
from SALARYMONTHLY S,Grades G,DESIGNATION D,
|
|
SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND
|
|
G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND S.SalaryMonth = %d and Sd.ItemGroup IN (1,8)
|
|
AND S.EmployeeID IN(%q) AND sd.changedamount<>0
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID
|
|
|
|
UNION
|
|
|
|
select S.EmployeeID,S.SalaryMonth, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID,G.Code as GCode,
|
|
G.sequenceNo,D.Name as DName
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) AND sd.changedamount<>0
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID
|
|
|
|
) A, Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo, E.JOININGDATE, E.Name,A.GName,A.GCode,A.DName", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID,A.ItemGroup
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q) AND sd.changedamount<>0
|
|
union
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) AND sd.changedamount<>0
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.ItemCode, A.ItemID,A.ItemGroup, A.Description,A.Position,A.JoiningDate order by A.EmployeeNo,A.Position,A.SequenceNo,A.GCode",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
|
|
string query6 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo,A.ItemGroup, E.JOININGDATE, E.Name,A.GName,A.GCode,A.DName,
|
|
'Total Deduction' as Description,
|
|
Sum(A.amount) as amount
|
|
from(
|
|
select S.SalaryMonth,S.EmployeeID, Sum(sd.changedamount) as Amount,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID,
|
|
G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND
|
|
S.SalaryMonth = %d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
and Sd.ItemGroup IN (3) AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name ,Sd.ItemCode,Sd.ItemGroup,Sd.ItemID
|
|
) A,Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo,A.ItemGroup, E.JOININGDATE, E.Name,A.GName,A.GCode,A.DName", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query7 = SQLParser.MakeSQL(@"Select S.SalaryMonth,E.EMPLOYEENO, Sd.ItemCode,Sd.ItemGroup,Sd.ItemID, E.JOININGDATE,E.NAME,G.DESCRIPTION GName,G.Code GCode,
|
|
G.SequenceNo,D.Name DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount
|
|
from
|
|
EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,SALARYMONTHLYDETAIL
|
|
Sd where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth= %d
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)
|
|
order by S.SalaryMonth,G.SequenceNo,G.Code,E.EMPLOYEENO", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
internal static DataSet GetEmpSalarySheet(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
#region Commented by ANIK
|
|
// string query1 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.GCode,A.JoiningDate,
|
|
// A.Description, SUM(A.changedamount) Amount,A.ItemGroup,A.ItemCode,A.ItemID
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8)
|
|
// AND sd.ItemCode not in(-133)
|
|
// AND S.EmployeeID IN(%q)
|
|
// UNION
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode from Grades G,
|
|
// Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d
|
|
// and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133)
|
|
// AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode,A.ItemGroup,A.ItemCode,A.ItemID,
|
|
// A.ItemCode, A.ItemID, A.Description,A.JoiningDate order by A.EmployeeNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query1);
|
|
#endregion
|
|
|
|
string query1 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.Department, A.DESIGNATION, A.COSTCENTER ,
|
|
A.GName,A.GCode,A.JoiningDate,
|
|
A.Description, SUM(A.changedamount) Amount,A.ItemGroup,A.ItemCode,A.ItemID
|
|
from
|
|
(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd, DEPARTMENT dep, DESIGNATION deg, crg cc, salaryempcostcenter scc
|
|
where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth= %d and Sd.ItemGroup in(8)
|
|
AND sd.ItemCode not in(-133)
|
|
AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND scc.COSTCENTERID = cc.CRGID
|
|
AND scc.SALARYMONTHLYID=s.SALARYMONTHLYID
|
|
|
|
UNION
|
|
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode from Grades G,
|
|
Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd , DEPARTMENT dep, DESIGNATION deg, crg cc, salaryempcostcenter scc
|
|
where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth= %d
|
|
and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133)
|
|
AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND scc.COSTCENTERID = cc.CRGID
|
|
AND scc.SALARYMONTHLYID=s.SALARYMONTHLYID
|
|
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode,A.ItemGroup,A.ItemCode,A.ItemID,
|
|
A.ItemCode, A.ItemID, A.Description,A.JoiningDate,A.Department, A.DESIGNATION,A.COSTCENTER
|
|
order by A.EmployeeNo,A.GCode",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
string queryActualGross = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
E.JoiningDate,A.GName,A.GCode,'Actual Gross' as Description, Sum(A.amount) as amount
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode , S.SALARYMONTHLYID
|
|
from SALARYMONTHLY S,Grades G, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND S.SalaryMonth= %d and Sd.ItemGroup IN (1) AND sd.description!='Bonus Arrear' AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.Code, S.SALARYMONTHLYID
|
|
) A, Employee E ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND A.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND A.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.GCode,E.JoiningDate ,dep.DESCRIPTION,deg.Name,cc.Description",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(queryActualGross);
|
|
|
|
tempdataset.Tables[0].TableName = "ActualGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query2 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
E.JoiningDate,A.GName,A.GCode,'Total Gross' as Description, Sum(A.amount) as amount
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode, S.SALARYMONTHLYID
|
|
from SALARYMONTHLY S,Grades G, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.Code , S.SALARYMONTHLYID
|
|
UNION
|
|
select S.EmployeeID, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode, S.SALARYMONTHLYID
|
|
from GRADES G,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.Code, S.SALARYMONTHLYID
|
|
) A, Employee E ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND A.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND A.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.GCode,E.JoiningDate ,dep.DESCRIPTION,deg.Name,cc.Description",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.ItemGroup,
|
|
// A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup in (3)
|
|
// AND S.EmployeeID IN(%q)
|
|
// Union
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, -sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup = 2
|
|
// AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode, A.ItemGroup,
|
|
// A.ItemCode, A.ItemID, A.Description,A.JoiningDate order by A.EmployeeNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
//string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.Department, A.DESIGNATION,-- A.COSTCENTER,
|
|
// A.JoiningDate,A.GName,A.GCode,A.ItemGroup,
|
|
// A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
// E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg--, SALARYEMPCOSTCENTER empcc, crg cc
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup in (3)
|
|
// AND S.EmployeeID IN(%q)
|
|
// AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
// AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
// --AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND empcc.COSTCENTERID = cc.CRGID
|
|
// --AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
// Union
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
// E.JoiningDate,sd.ItemGroup,0 ItemCode,
|
|
// 0 ItemID, 'LWP' Description, SUM(sd.changedamount) changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg--, SALARYEMPCOSTCENTER empcc, crg cc
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup = 2
|
|
// AND S.EmployeeID IN(%q)
|
|
// AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
// AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
// --AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND empcc.COSTCENTERID = cc.CRGID
|
|
// --AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
// GROUP BY S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,G.DESCRIPTION ,G.Code,dep.DESCRIPTION,deg.Name--,cc.Description
|
|
// ) A
|
|
// group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode, A.ItemGroup,
|
|
// A.ItemCode, A.ItemID, A.Description,A.JoiningDate , A.Department, A.DESIGNATION--,A.COSTCENTER
|
|
// order by A.EmployeeNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.depname Department,A.DName DESIGNATION,A.COSTCENTER, A.JoiningDate,A.GName,A.GCode,A.itemgroup,
|
|
A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,dep.DESCRIPTION depname,cc.Description AS COSTCENTER
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, SALARYEMPCOSTCENTER empcc, crg cc
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND dep.DEPARTMENTID=S.DEPARTMENTID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q)
|
|
union
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName,dep.DESCRIPTION depname,cc.Description AS COSTCENTER
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, SALARYEMPCOSTCENTER empcc, crg cc
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND dep.DEPARTMENTID=S.DEPARTMENTID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q)
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position,A.JoiningDate,A.depname,A.itemgroup,A.COSTCENTER order by A.EmployeeNo,A.Position,A.SequenceNo,A.GCode", dateTime,sEmpID, dateTime,sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query4 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.Department, A.DESIGNATION, A.COSTCENTER,
|
|
A.GName,A.GCode,A.JoiningDate,
|
|
A.Description, SUM(A.changedamount) Amount
|
|
from
|
|
(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
sd.ItemGroup,sd.ItemCode,E.JoiningDate,
|
|
sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg, SALARYEMPCOSTCENTER empcc, crg cc
|
|
where G.GradeID = S.GradeID AND E.employeeID = S.EmployeeID
|
|
AND S.SalaryMonthlyID = Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ITEMCODE = -139
|
|
AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
sd.ItemGroup,sd.ItemCode,E.JoiningDate,
|
|
sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg, SALARYEMPCOSTCENTER empcc, crg cc
|
|
where G.GradeID = S.GradeID AND E.employeeID = S.EmployeeID
|
|
AND S.SalaryMonthlyID = Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ITEMCODE =-139
|
|
AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode,A.JoiningDate,
|
|
A.ItemCode, A.ItemID, A.Description ,A.Department, A.DESIGNATION,A.COSTCENTER
|
|
order by A.GCode,A.EmployeeNo",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query4);
|
|
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query5 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
A.GName,A.GCode, A.Description, Sum(A.amount) as amount
|
|
,E.JoiningDate
|
|
from
|
|
( select S.EmployeeID,Sd.Description, Sum(sd.changedamount) as Amount,
|
|
G.DESCRIPTION as GName,G.Code as GCode, S.SALARYMONTHLYID
|
|
from GRADES G,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth = %d AND G.GRADEID=S.GRADEID
|
|
AND Sd.ITEMCODE in(-135,-133,-140,-141,-142) AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,Sd.Description,G.DESCRIPTION,G.Code, S.SALARYMONTHLYID
|
|
) A, Employee E ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND A.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND A.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.Description,A.GCode,E.JoiningDate ,dep.DESCRIPTION,deg.Name,cc.Description", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query5);
|
|
|
|
tempdataset.Tables[0].TableName = "AttendenceDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query6 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
E.JoiningDate,A.GName,A.GCode, 'Total Deduction' as Description, Sum(A.amount) as amount
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode, S.SALARYMONTHLYID
|
|
from GRADES G,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth= %d AND G.GRADEID=S.GRADEID and Sd.ItemGroup IN (3)
|
|
AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.Code, S.SALARYMONTHLYID
|
|
) A, Employee E ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND A.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND A.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.GCode,E.JoiningDate ,dep.DESCRIPTION,deg.Name,cc.Description
|
|
order by E.EmployeeNo,A.GCode", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query7 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,
|
|
sd.ItemGroup,sd.ItemCode,sd.ItemID,
|
|
'Net Pay' as Description,SD.CHANGEDAMOUNT as Amount
|
|
from EMPLOYEE as E,GRADES as G,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth = %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND E.EMPLOYEEID = S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132)
|
|
AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
order by E.EMPLOYEENO,G.Code", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query8 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,
|
|
sd.ItemGroup,sd.ItemID,sd.ItemCode,
|
|
'CPF' as Description,SD.CHANGEDAMOUNT as Amount
|
|
from EMPLOYEE as E,GRADES as G,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth = %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128)
|
|
AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
order by E.EMPLOYEENO,G.Code ", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query8);
|
|
|
|
tempdataset.Tables[0].TableName = "CPF";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query9 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'CPF' as Description,SD.CHANGEDAMOUNT as Amount
|
|
// from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d
|
|
// AND G.GRADEID=S.GRADEID
|
|
// AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
// AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
// AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128)
|
|
// AND S.EmployeeID IN(%q) order by E.EMPLOYEENO,G.SequenceNo,G.Code ", dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'CPF' as Description,SD.CHANGEDAMOUNT as Amount
|
|
// from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d
|
|
// AND G.GRADEID=S.GRADEID
|
|
// AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
// AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
// AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128) AND S.EmployeeID IN(%q) order by E.EMPLOYEENO,G.SequenceNo,G.Code ", dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "CPF";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetEmpSalarySheetWithoutCostcenter(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
#region Commented by ANIK
|
|
|
|
#endregion
|
|
|
|
string query1 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,
|
|
G.DESCRIPTION as GName,G.Code as GCode,E.JoiningDate,
|
|
A.Description, SUM(A.changedamount) Amount,A.ItemGroup,A.ItemCode,A.ItemID
|
|
from
|
|
(
|
|
select S.EmployeeID, S.GRADEID, S.DEPARTMENTID, S.DESIGNATIONID, sd.ItemGroup, sd.ItemCode,
|
|
sd.ItemID, sd.Description, sd.changedamount
|
|
from SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID = Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup in (8)
|
|
AND sd.ItemCode not in (-133)
|
|
AND S.EmployeeID IN(%q)
|
|
UNION
|
|
select S.EmployeeID, S.GRADEID, S.DEPARTMENTID, S.DESIGNATIONID, sd.ItemGroup, sd.ItemCode,
|
|
sd.ItemID, sd.Description, sd.changedamount from SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID = Sd.SalaryMonthlyID AND S.SalaryMonth = %d
|
|
and Sd.ItemGroup in (1) AND sd.ItemCode not in (-133)
|
|
AND S.EmployeeID IN(%q)
|
|
) A,Grades G,Employee E, DEPARTMENT dep, DESIGNATION deg
|
|
Where G.GradeID = A.GradeID AND E.employeeID = A.EmployeeID
|
|
AND A.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND A.DESIGNATIONID = deg.DESIGNATIONID
|
|
group by E.EmployeeID, E.EmployeeNo, E.Name,G.DESCRIPTION,G.Code,A.ItemGroup,A.ItemCode,A.ItemID,
|
|
A.ItemCode, A.ItemID, A.Description,E.JoiningDate,dep.DESCRIPTION, deg.NAME
|
|
order by E.EmployeeNo,G.Code",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string queryActualGross = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,
|
|
E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode ,'Actual Gross' as Description, Sum(A.amount) as amount
|
|
from
|
|
(select S.EmployeeID, Sum(sd.changedamount) as Amount, S.SALARYMONTHLYID, S.DEPARTMENTID, S.DESIGNATIONID, S.GRADEID
|
|
from SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID = Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth = %d and Sd.ItemGroup IN(1) and sd.description != 'Bonus Arrear' AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID, S.SALARYMONTHLYID, S.DEPARTMENTID, S.DESIGNATIONID, S.GRADEID
|
|
) A, Employee E, DEPARTMENT dep, DESIGNATION deg, Grades G
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND A.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND A.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND G.GRADEID = A.GRADEID
|
|
group by E.EmployeeNo, E.Name,G.DESCRIPTION,G.Code,E.JoiningDate ,dep.DESCRIPTION,deg.Name",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet(queryActualGross);
|
|
|
|
tempdataset.Tables[0].TableName = "ActualGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query2 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,G.DESCRIPTION as GName,G.Code as GCode,--cc.Description AS COSTCENTER,
|
|
E.JoiningDate,'Total Gross' as Description, Sum(A.amount) as amount
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,S.GRADEID, S.SALARYMONTHLYID ,S.DEPARTMENTID,S.DESIGNATIONID
|
|
from SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID, S.SALARYMONTHLYID ,S.GRADEID,S.DEPARTMENTID,S.DESIGNATIONID
|
|
UNION
|
|
select S.EmployeeID, -Sum(sd.changedamount) as Amount,S.GRADEID, S.SALARYMONTHLYID,S.DEPARTMENTID,S.DESIGNATIONID
|
|
from SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID, S.SALARYMONTHLYID,S.GRADEID,S.DEPARTMENTID,S.DESIGNATIONID
|
|
) A, Employee E ,DEPARTMENT dep, DESIGNATION deg,Grades G--, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND A.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND A.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND G.GRADEID=A.GRADEID
|
|
|
|
group by E.EmployeeNo, E.Name,G.DESCRIPTION ,G.Code,E.JoiningDate ,dep.DESCRIPTION,deg.Name--,cc.Description",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.ItemGroup,
|
|
// A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup in (3)
|
|
// AND S.EmployeeID IN(%q)
|
|
// Union
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, -sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup = 2
|
|
// AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode, A.ItemGroup,
|
|
// A.ItemCode, A.ItemID, A.Description,A.JoiningDate order by A.EmployeeNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
//string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.Department, A.DESIGNATION,-- A.COSTCENTER,
|
|
// A.JoiningDate,A.GName,A.GCode,A.ItemGroup,
|
|
// A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
// E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg--, SALARYEMPCOSTCENTER empcc, crg cc
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup in (3)
|
|
// AND S.EmployeeID IN(%q)
|
|
// AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
// AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
// --AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND empcc.COSTCENTERID = cc.CRGID
|
|
// --AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
// Union
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
// E.JoiningDate,sd.ItemGroup,0 ItemCode,
|
|
// 0 ItemID, 'LWP' Description, SUM(sd.changedamount) changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg--, SALARYEMPCOSTCENTER empcc, crg cc
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup = 2
|
|
// AND S.EmployeeID IN(%q)
|
|
// AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
// AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
// --AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND empcc.COSTCENTERID = cc.CRGID
|
|
// --AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
// GROUP BY S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,G.DESCRIPTION ,G.Code,dep.DESCRIPTION,deg.Name--,cc.Description
|
|
// ) A
|
|
// group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode, A.ItemGroup,
|
|
// A.ItemCode, A.ItemID, A.Description,A.JoiningDate , A.Department, A.DESIGNATION--,A.COSTCENTER
|
|
// order by A.EmployeeNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
string query3 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,G.DESCRIPTION as GName,G.Code as GCode,D.Name as DESIGNATION ,dep.DESCRIPTION Department, E.JoiningDate,A.itemgroup,
|
|
A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
from
|
|
(select S.EmployeeID,sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,sd.Position,S.GRADEID,S.DEPARTMENTID,S.DESIGNATIONID, sd.changedamount
|
|
from SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q)
|
|
union
|
|
select S.EmployeeID,sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,sd.Position,S.GRADEID,S.DEPARTMENTID,S.DESIGNATIONID, -sd.changedamount
|
|
from SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q)
|
|
) A,Grades G,DESIGNATION D,Employee E,DEPARTMENT dep
|
|
Where G.GradeID= A.GradeID AND D.DESIGNATIONID=A.DESIGNATIONID AND E.employeeID=A.EmployeeID AND dep.DEPARTMENTID=A.DEPARTMENTID
|
|
group by
|
|
A.EmployeeID, E.EmployeeNo, E.Name,G.DESCRIPTION,G.Code,D.Name,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position,E.JoiningDate,dep.DESCRIPTION,A.itemgroup order by E.EmployeeNo,A.Position,G.Code", dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
//string query4 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,G.DESCRIPTION as GName,G.Code as GCode,A.Description, SUM(A.changedamount) Amount
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, S.GRADEID, S.SALARYMONTHLYID,S.DEPARTMENTID,S.DESIGNATIONID,--cc.Description AS COSTCENTER,
|
|
// sd.ItemGroup,sd.ItemCode,sd.ItemID, sd.Description, sd.changedamount
|
|
// from SALARYMONTHLY S, SalaryMonthlyDetail Sd --, SALARYEMPCOSTCENTER empcc, crg cc
|
|
// where S.SalaryMonthlyID = Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ITEMCODE = -139
|
|
// AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
|
|
// UNION
|
|
// select S.EmployeeID, S.GRADEID, S.SALARYMONTHLYID,S.DEPARTMENTID,S.DESIGNATIONID,--cc.Description AS COSTCENTER,
|
|
// sd.ItemGroup,sd.ItemCode,sd.ItemID, sd.Description, sd.changedamount
|
|
// from SALARYMONTHLY S, SalaryMonthlyDetail Sd--, SALARYEMPCOSTCENTER empcc, crg cc
|
|
// where S.SalaryMonthlyID = Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ITEMCODE =-139
|
|
// AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
|
|
// ) A, Employee E ,DEPARTMENT dep, DESIGNATION deg,Grades G--, crg cc,SALARYEMPCOSTCENTER empcc
|
|
// where A.EmployeeID = E.EmployeeID
|
|
// AND A.DEPARTMENTID = dep.DEPARTMENTID
|
|
// AND A.DESIGNATIONID = deg.DESIGNATIONID
|
|
// AND G.GRADEID=A.GRADEID
|
|
// group by
|
|
// A.DESCRIPTION, E.EmployeeNo, E.Name,G.DESCRIPTION ,G.Code,E.JoiningDate ,dep.DESCRIPTION,deg.Name--,A.COSTCENTER
|
|
// order by G.Code,E.EmployeeNo",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
//tempdataset = tc.ExecuteDataSet(query4);
|
|
|
|
//tempdataset.Tables[0].TableName = "LeaveDays";
|
|
//rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
//string query5 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
// G.DESCRIPTION as GName,G.Code as GCode, A.Description, Sum(A.amount) as amount
|
|
// ,E.JoiningDate
|
|
// from
|
|
// ( select S.EmployeeID,Sd.Description, Sum(sd.changedamount) as Amount,
|
|
// S.SALARYMONTHLYID ,S.DEPARTMENTID,S.DESIGNATIONID,S.GRADEID
|
|
// from SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth = %d
|
|
// AND Sd.ITEMCODE in(-135,-133,-140,-141,-142) AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,Sd.Description, S.SALARYMONTHLYID,S.DEPARTMENTID,S.DESIGNATIONID,S.GRADEID
|
|
// ) A, Employee E ,GRADES G,DEPARTMENT dep, DESIGNATION deg--, crg cc,SALARYEMPCOSTCENTER empcc
|
|
// where A.EmployeeID = E.EmployeeID
|
|
// AND A.DEPARTMENTID = dep.DEPARTMENTID
|
|
// AND A.DESIGNATIONID = deg.DESIGNATIONID
|
|
// And G.GRADEID=A.GRADEID
|
|
// group by E.EmployeeNo, E.Name,G.DESCRIPTION,G.Code, A.Description,E.JoiningDate ,dep.DESCRIPTION,deg.Name--,cc.Description", dateTime, sEmpID);
|
|
|
|
//tempdataset = tc.ExecuteDataSet(query5);
|
|
|
|
//tempdataset.Tables[0].TableName = "AttendenceDays";
|
|
//rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query6 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode, 'Total Deduction' as Description, Sum(A.amount) as amount
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,S.GRADEID, S.SALARYMONTHLYID,S.DEPARTMENTID,S.DESIGNATIONID
|
|
from SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth= %d and Sd.ItemGroup IN (3)
|
|
AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,S.GRADEID, S.SALARYMONTHLYID,S.DEPARTMENTID,S.DESIGNATIONID
|
|
) A, GRADES G,Employee E ,DEPARTMENT dep, DESIGNATION deg--, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND A.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND A.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND G.GRADEID=A.GRADEID
|
|
group by E.EmployeeNo, E.Name,G.DESCRIPTION,G.Code,E.JoiningDate ,dep.DESCRIPTION,deg.Name--,cc.Description
|
|
order by E.EmployeeNo,G.Code", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query7 = SQLParser.MakeSQL(@"Select tab1.EMPLOYEENO,tab1.NAME,tab1.Department,tab1.DESIGNATION,--cc.Description AS COSTCENTER,
|
|
//tab1.JoiningDate,tab1.GName,tab1.GCode,
|
|
//tab1.ItemGroup,tab1.ItemCode,tab1.ItemID,
|
|
//tab1.Description,tab1.Amount - ISNULL(tab2.Amount,0) Amount
|
|
//from
|
|
//(Select E.EMPLOYEENO,E.NAME,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
//E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,
|
|
//sd.ItemGroup,sd.ItemCode,sd.ItemID,
|
|
//'Net Pay' as Description,SD.CHANGEDAMOUNT as Amount
|
|
//from EMPLOYEE as E,GRADES as G,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd ,DEPARTMENT dep, DESIGNATION deg--, crg cc,SALARYEMPCOSTCENTER empcc
|
|
//where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
//AND S.SalaryMonth = %d
|
|
//AND G.GRADEID=S.GRADEID
|
|
//AND E.EMPLOYEEID = S.EMPLOYEEID
|
|
//and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132)
|
|
//AND S.EmployeeID IN(%q)
|
|
//AND S.DEPARTMENTID = dep.DEPARTMENTID
|
|
//AND S.DESIGNATIONID = deg.DESIGNATIONID
|
|
//--AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
//--AND empcc.COSTCENTERID = cc.CRGID
|
|
//--AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
//--AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
//) tab1
|
|
//left join
|
|
|
|
//(Select E.EMPLOYEENO,E.NAME,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
//E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,
|
|
//sd.ItemGroup,sd.ItemCode,sd.ItemID,
|
|
//'Net Pay' as Description,SD.CHANGEDAMOUNT as Amount
|
|
//from EMPLOYEE as E,GRADES as G,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd ,DEPARTMENT dep, DESIGNATION deg--, crg cc,SALARYEMPCOSTCENTER empcc
|
|
//where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
//AND S.SalaryMonth = %d
|
|
//AND G.GRADEID=S.GRADEID
|
|
//AND E.EMPLOYEEID = S.EMPLOYEEID
|
|
//and Sd.ItemGroup IN (1)
|
|
//AND S.EmployeeID IN(%q)
|
|
//AND S.DEPARTMENTID = dep.DEPARTMENTID
|
|
//AND S.DESIGNATIONID = deg.DESIGNATIONID
|
|
//--AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
//--AND empcc.COSTCENTERID = cc.CRGID
|
|
//--AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
//--AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
//) tab2
|
|
//ON tab1.EMPLOYEENO = tab2.EMPLOYEENO
|
|
//order by tab1.EMPLOYEENO,tab1.GCode", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
|
|
|
|
string query7 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,
|
|
sd.ItemGroup,sd.ItemCode,sd.ItemID,
|
|
'Net Pay' as Description,SD.CHANGEDAMOUNT as Amount
|
|
from EMPLOYEE as E,GRADES as G,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd ,DEPARTMENT dep, DESIGNATION deg--, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth = %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND E.EMPLOYEEID = S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132)
|
|
AND S.EmployeeID IN(%q)
|
|
AND S.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND S.DESIGNATIONID = deg.DESIGNATIONID", dateTime, sEmpID);
|
|
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query8 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,
|
|
sd.ItemGroup,sd.ItemID,sd.ItemCode,
|
|
'CPF' as Description,SD.CHANGEDAMOUNT as Amount
|
|
from EMPLOYEE as E,GRADES as G,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd ,DEPARTMENT dep, DESIGNATION deg--, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth = %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128)
|
|
AND S.EmployeeID IN(%q)
|
|
AND S.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND S.DESIGNATIONID = deg.DESIGNATIONID
|
|
--AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
--AND empcc.COSTCENTERID = cc.CRGID
|
|
--AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
--AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
order by E.EMPLOYEENO,G.Code ", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query8);
|
|
|
|
tempdataset.Tables[0].TableName = "CPF";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query9 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'CPF' as Description,SD.CHANGEDAMOUNT as Amount
|
|
// from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d
|
|
// AND G.GRADEID=S.GRADEID
|
|
// AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
// AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
// AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128)
|
|
// AND S.EmployeeID IN(%q) order by E.EMPLOYEENO,G.SequenceNo,G.Code ", dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'CPF' as Description,SD.CHANGEDAMOUNT as Amount
|
|
// from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d
|
|
// AND G.GRADEID=S.GRADEID
|
|
// AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
// AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
// AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128) AND S.EmployeeID IN(%q) order by E.EMPLOYEENO,G.SequenceNo,G.Code ", dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "CPF";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetEmpSalaryDifference(TransactionContext tc, DateTime fromDate, DateTime toDate, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
#region Query1
|
|
string query1 = SQLParser.MakeSQL(@"
|
|
SELECT tab1.EmployeeNo, tab1.Name,tab1.GName,tab1.DName,tab1.GCode,tab1.JoiningDate,tab1.SequenceNo,
|
|
tab1.Description, tab1.Amount - ISNULL(tab2.Amount, 0) Amount, tab1.Serial, tab1.SalaryMonth,tab1.ItemCode, tab1.ItemGroup,tab1.ItemID FROM
|
|
|
|
(select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
A.Description, SUM(A.changedamount) Amount,1 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth,A.ItemCode, A.ItemGroup,A.ItemID
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND sd.ItemCode not in(-133) and s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133) and s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode
|
|
,A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth) tab1
|
|
|
|
LEFT JOIN
|
|
|
|
(select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
A.Description, SUM(A.changedamount) Amount,1 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth,A.ItemCode, A.ItemGroup,A.ItemID
|
|
from
|
|
(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(2) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode
|
|
,A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth) tab2
|
|
ON tab1.EmployeeNo = tab2.EmployeeNo AND tab1.Description = tab2.Description
|
|
|
|
Union
|
|
|
|
SELECT tab1.EmployeeNo, tab1.Name,tab1.GName,tab1.DName,tab1.GCode,tab1.JoiningDate,tab1.SequenceNo,
|
|
tab1.Description, tab1.Amount - ISNULL(tab2.Amount, 0) Amount, tab1.Serial, tab1.SalaryMonth,tab1.ItemCode, tab1.ItemGroup,tab1.ItemID FROM
|
|
|
|
(select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
A.Description, SUM(A.changedamount) Amount,1 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth,A.ItemCode, A.ItemGroup,A.ItemID
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode
|
|
,A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth) tab1
|
|
|
|
LEFT JOIN
|
|
|
|
(select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
A.Description, SUM(A.changedamount) Amount,1 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth,A.ItemCode, A.ItemGroup,A.ItemID
|
|
from
|
|
(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(2) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode
|
|
,A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth) tab2
|
|
ON tab1.EmployeeNo = tab2.EmployeeNo AND tab1.Description = tab2.Description
|
|
|
|
UNION
|
|
|
|
SELECT IsNULL(X.EmployeeNo,Y.EmployeeNo) EmployeeNo, IsNULL(X.Name,Y.Name) Name,IsNULL(X.GName,Y.GName) GName,ISNULL(X.DName,Y.DName) DName,ISNULL(X.GCode,Y.GCode) GCode,ISNULL(X.JoiningDate,Y.JoiningDate) JoiningDate,ISNULL(X.SequenceNo,Y.SequenceNo) SequenceNo,
|
|
ISNULL(X.Description,Y.Description) Description, ISNULL(X.Amount,0)-ISNULL(Y.Amount,0) Amount,3 Serial, 'Diff' SalaryMonth,ISNULL(X.ItemCode,Y.ItemCode) ItemCode, ISNULL(X.ItemGroup,Y.ItemGroup) ItemGroup,ISNULL(X.ItemID,Y.ItemID) ItemID
|
|
FROM
|
|
(
|
|
|
|
SELECT tab1.EmployeeNo, tab1.Name,tab1.GName,tab1.DName,tab1.GCode,tab1.JoiningDate,tab1.SequenceNo,
|
|
tab1.Description, tab1.Amount - ISNULL(tab2.Amount, 0) Amount, tab1.Serial, tab1.SalaryMonth,tab1.ItemCode, tab1.ItemGroup,tab1.ItemID FROM
|
|
|
|
(select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
A.Description, SUM(A.changedamount) Amount,1 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth,A.ItemCode, A.ItemGroup,A.ItemID
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode
|
|
,A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth) tab1
|
|
|
|
LEFT JOIN
|
|
|
|
(select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
A.Description, SUM(A.changedamount) Amount,1 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth,A.ItemCode, A.ItemGroup,A.ItemID
|
|
from
|
|
(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(2) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode
|
|
,A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth) tab2
|
|
ON tab1.EmployeeNo = tab2.EmployeeNo AND tab1.Description = tab2.Description
|
|
|
|
|
|
) X
|
|
FULL OUTER JOIN
|
|
(
|
|
|
|
|
|
SELECT tab1.EmployeeNo, tab1.Name,tab1.GName,tab1.DName,tab1.GCode,tab1.JoiningDate,tab1.SequenceNo,
|
|
tab1.Description, tab1.Amount - ISNULL(tab2.Amount, 0) Amount, tab1.Serial, tab1.SalaryMonth,tab1.ItemCode, tab1.ItemGroup,tab1.ItemID FROM
|
|
|
|
(select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
A.Description, SUM(A.changedamount) Amount,1 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth,A.ItemCode, A.ItemGroup,A.ItemID
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode
|
|
,A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth) tab1
|
|
|
|
LEFT JOIN
|
|
|
|
(select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
A.Description, SUM(A.changedamount) Amount,1 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth,A.ItemCode, A.ItemGroup,A.ItemID
|
|
from
|
|
(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode, S.SalaryMonth,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.Name as DName,G.Code as GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(2) AND sd.ItemCode not in(-133) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode
|
|
,A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth) tab2
|
|
ON tab1.EmployeeNo = tab2.EmployeeNo AND tab1.Description = tab2.Description
|
|
)
|
|
Y
|
|
ON
|
|
|
|
X.EmployeeNo = Y.EmployeeNo and X.Name= Y.Name AND X.GName = Y.GName AND X.DName = Y.DName
|
|
AND X.GCode = Y.GCode AND X.JoiningDate = Y.JoiningDate AND X.SequenceNo = Y.SequenceNo
|
|
AND X.Description = Y.Description AND X.ItemCode = Y.ItemCode AND X.ItemGroup = Y.ItemGroup AND X.ItemID = Y.ItemID
|
|
", fromDate, sEmpID, fromDate, sEmpID, fromDate, sEmpID,
|
|
toDate, sEmpID, toDate, sEmpID, toDate, sEmpID,
|
|
fromDate, sEmpID, fromDate, sEmpID, fromDate, sEmpID,
|
|
toDate, sEmpID, toDate, sEmpID, toDate, sEmpID);
|
|
#endregion
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
#region Query2
|
|
string query2 = SQLParser.MakeSQL(@"
|
|
select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' as Description, Sum(A.amount) as amount, 1 Serial,
|
|
FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName, S.SalaryMonth
|
|
from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name, S.SalaryMonth
|
|
UNION
|
|
select S.EmployeeID, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName, S.SalaryMonth
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name , S.SalaryMonth
|
|
) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate, A.SalaryMonth
|
|
|
|
UNION
|
|
|
|
select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' as Description, Sum(A.amount) as amount, 2 Serial,
|
|
FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName, S.SalaryMonth
|
|
from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name, S.SalaryMonth
|
|
UNION
|
|
select S.EmployeeID, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName, S.SalaryMonth
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name , S.SalaryMonth
|
|
) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate, A.SalaryMonth
|
|
|
|
UNION
|
|
|
|
SELECT IsNULL(X.EmployeeNo,Y.EmployeeNo) EmployeeNo,
|
|
IsNULL(X.Name,Y.Name) Name,
|
|
ISNULL(X.JoiningDate,Y.JoiningDate) JoiningDate,
|
|
IsNULL(X.GName,Y.GName) GName,
|
|
ISNULL(X.GCode,Y.GCode) GCode,
|
|
ISNULL(X.SequenceNo,Y.SequenceNo) SequenceNo,
|
|
ISNULL(X.DName,Y.DName) DName,
|
|
ISNULL(X.Description,Y.Description) Description,
|
|
ISNULL(X.Amount,0)-ISNULL(Y.Amount,0) Amount,3 Serial, 'Diff' SalaryMonth
|
|
from
|
|
(select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' as Description, Sum(A.amount) as amount, A.SalaryMonth
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName, S.SalaryMonth
|
|
from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name, S.SalaryMonth
|
|
UNION
|
|
select S.EmployeeID, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName, S.SalaryMonth
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name , S.SalaryMonth
|
|
) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate, A.SalaryMonth)
|
|
X
|
|
Full Outer Join
|
|
(select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' as Description, Sum(A.amount) as amount, A.SalaryMonth
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName, S.SalaryMonth
|
|
from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name, S.SalaryMonth
|
|
UNION
|
|
select S.EmployeeID, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName, S.SalaryMonth
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name , S.SalaryMonth
|
|
) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate, A.SalaryMonth)
|
|
Y
|
|
ON X.EmployeeNo = Y.EmployeeNo and X.Name= Y.Name AND X.GName = Y.GName
|
|
AND X.GCode = Y.GCode AND X.JoiningDate = Y.JoiningDate
|
|
AND X.SequenceNo = Y.SequenceNo
|
|
|
|
",
|
|
fromDate, sEmpID, fromDate, sEmpID,
|
|
toDate, sEmpID, toDate, sEmpID,
|
|
fromDate, sEmpID, fromDate, sEmpID,
|
|
toDate, sEmpID, toDate, sEmpID);
|
|
#endregion
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
#region Query3
|
|
|
|
string query3 = SQLParser.MakeSQL(@"
|
|
select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount,1 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName , S.SalaryMonth
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
union
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,0 ItemCode,
|
|
0 ItemID, 'LWP' Description,0 Position, SUM(sd.changedamount) changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName, S.SalaryMonth
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
GROUP BY S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,G.DESCRIPTION,G.Code,G.sequenceNo,D.Name, S.SalaryMonth
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth
|
|
|
|
UNION
|
|
|
|
select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount,2 Serial, FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName , S.SalaryMonth
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
union
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,0 ItemCode,
|
|
0 ItemID, 'LWP' Description,0 Position, SUM(sd.changedamount) changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName, S.SalaryMonth
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
GROUP BY S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,G.DESCRIPTION,G.Code,G.sequenceNo,D.Name, S.SalaryMonth
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth
|
|
|
|
UNION
|
|
|
|
SELECT IsNULL(X.EmployeeNo,Y.EmployeeNo) EmployeeNo,
|
|
IsNULL(X.Name,Y.Name) Name,
|
|
ISNULL(X.JoiningDate,Y.JoiningDate) JoiningDate,
|
|
IsNULL(X.GName,Y.GName) GName,
|
|
ISNULL(X.GCode,Y.GCode) GCode,
|
|
ISNULL(X.SequenceNo,Y.SequenceNo) SequenceNo,
|
|
ISNULL(X.DName,Y.DName) DName,
|
|
ISNULL(X.Description,Y.Description) Description,
|
|
ISNULL(X.Amount,0)-ISNULL(Y.Amount,0) Amount,3 Serial, 'Diff' SalaryMonth
|
|
From(select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount, A.SalaryMonth
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName , S.SalaryMonth
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
union
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,0 ItemCode,
|
|
0 ItemID, 'LWP' Description,0 Position, SUM(sd.changedamount) changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName, S.SalaryMonth
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
GROUP BY S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,G.DESCRIPTION,G.Code,G.sequenceNo,D.Name, S.SalaryMonth
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth)
|
|
X
|
|
Full Outer Join
|
|
(
|
|
select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount, A.SalaryMonth
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName , S.SalaryMonth
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
union
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,0 ItemCode,
|
|
0 ItemID, 'LWP' Description,0 Position, SUM(sd.changedamount) changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName, S.SalaryMonth
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
GROUP BY S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,G.DESCRIPTION,G.Code,G.sequenceNo,D.Name, S.SalaryMonth
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.ItemCode, A.ItemGroup,A.ItemID, A.Description,A.Position,A.JoiningDate, A.SalaryMonth
|
|
) Y
|
|
ON X.EmployeeNo = Y.EmployeeNo and X.Name= Y.Name AND X.JoiningDate = Y.JoiningDate
|
|
AND X.GName = Y.GName AND X.GCode = Y.GCode AND X.DName = Y.DName AND X.Description = Y.Description
|
|
AND X.SequenceNo = Y.SequenceNo ",
|
|
fromDate, sEmpID, fromDate, sEmpID,
|
|
toDate, sEmpID, toDate, sEmpID,
|
|
fromDate, sEmpID, fromDate, sEmpID,
|
|
toDate, sEmpID, toDate, sEmpID);
|
|
#endregion
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
#region Query6
|
|
string query6 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Deduction' as Description, Sum(A.amount) as amount,1 Serial , FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName , S.SalaryMonth,Sd.ItemCode, Sd.ItemGroup,Sd.ItemID
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND s.Salarywithheld<>1
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name, S.SalaryMonth,Sd.ItemCode, Sd.ItemGroup,Sd.ItemID
|
|
) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate, A.SalaryMonth
|
|
|
|
UNION
|
|
|
|
select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Deduction' as Description, Sum(A.amount) as amount,2 Serial , FORMAT(A.SalaryMonth, 'MMM yy','en-US') SalaryMonth
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName , S.SalaryMonth,Sd.ItemCode, Sd.ItemGroup,Sd.ItemID
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND s.Salarywithheld<>1
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name, S.SalaryMonth,Sd.ItemCode, Sd.ItemGroup,Sd.ItemID
|
|
) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate, A.SalaryMonth
|
|
|
|
UNION
|
|
|
|
SELECT IsNULL(X.EmployeeNo,Y.EmployeeNo) EmployeeNo,
|
|
IsNULL(X.Name,Y.Name) Name,
|
|
ISNULL(X.JoiningDate,Y.JoiningDate) JoiningDate,
|
|
IsNULL(X.GName,Y.GName) GName,
|
|
ISNULL(X.GCode,Y.GCode) GCode,
|
|
ISNULL(X.SequenceNo,Y.SequenceNo) SequenceNo,
|
|
ISNULL(X.DName,Y.DName) DName,
|
|
ISNULL(X.Description,Y.Description) Description,
|
|
ISNULL(X.Amount,0)-ISNULL(Y.Amount,0) Amount,3 Serial, 'Diff' SalaryMonth
|
|
From
|
|
(
|
|
select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Deduction' as Description, Sum(A.amount) as amount , A.SalaryMonth
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName , S.SalaryMonth,Sd.ItemCode, Sd.ItemGroup,Sd.ItemID
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND s.Salarywithheld<>1
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name, S.SalaryMonth,Sd.ItemCode, Sd.ItemGroup,Sd.ItemID
|
|
) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate, A.SalaryMonth
|
|
) X
|
|
FULL OUTER JOIN
|
|
(
|
|
select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Deduction' as Description, Sum(A.amount) as amount , A.SalaryMonth
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName , S.SalaryMonth,Sd.ItemCode, Sd.ItemGroup,Sd.ItemID
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND s.Salarywithheld<>1
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name, S.SalaryMonth,Sd.ItemCode, Sd.ItemGroup,Sd.ItemID
|
|
) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate, A.SalaryMonth
|
|
) Y
|
|
ON X.EmployeeNo = Y.EmployeeNo and X.Name= Y.Name AND X.GName = Y.GName
|
|
AND X.GCode = Y.GCode AND X.JoiningDate = Y.JoiningDate
|
|
AND X.SequenceNo = Y.SequenceNo ", fromDate, sEmpID,
|
|
toDate, sEmpID,
|
|
fromDate, sEmpID,
|
|
toDate, sEmpID);
|
|
#endregion
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
#region Query7
|
|
string query7 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'Net Pay' as Description,SD.CHANGEDAMOUNT as Amount,1 Serial, FORMAT(S.SalaryMonth, 'MMM yy','en-US') SalaryMonth
|
|
from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
|
|
UNION
|
|
|
|
Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'Net Pay' as Description,SD.CHANGEDAMOUNT as Amount,2 Serial, FORMAT(S.SalaryMonth, 'MMM yy','en-US') SalaryMonth
|
|
from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
|
|
UNION
|
|
|
|
SELECT IsNULL(X.EmployeeNo,Y.EmployeeNo) EmployeeNo,
|
|
IsNULL(X.Name,Y.Name) Name,
|
|
ISNULL(X.JoiningDate,Y.JoiningDate) JoiningDate,
|
|
IsNULL(X.GName,Y.GName) GName,
|
|
ISNULL(X.GCode,Y.GCode) GCode,
|
|
ISNULL(X.SequenceNo,Y.SequenceNo) SequenceNo,
|
|
ISNULL(X.DName,Y.DName) DName,
|
|
ISNULL(X.Description,Y.Description) Description,
|
|
ISNULL(X.Amount,0)-ISNULL(Y.Amount,0) Amount,3 Serial, 'Diff' SalaryMonth
|
|
From
|
|
(
|
|
Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'Net Pay' as Description,SD.CHANGEDAMOUNT as Amount, S.SalaryMonth
|
|
from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
) X
|
|
FULL OUTER JOIN
|
|
(
|
|
Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'Net Pay' as Description,SD.CHANGEDAMOUNT as Amount, S.SalaryMonth
|
|
from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND s.Salarywithheld<>1 AND S.EmployeeID IN(%q)
|
|
) Y
|
|
|
|
ON X.EmployeeNo = Y.EmployeeNo and X.Name= Y.Name AND X.GName = Y.GName
|
|
AND X.GCode = Y.GCode AND X.JoiningDate = Y.JoiningDate
|
|
AND X.SequenceNo = Y.SequenceNo ", fromDate, sEmpID,
|
|
toDate, sEmpID,
|
|
fromDate, sEmpID,
|
|
toDate, sEmpID);
|
|
#endregion
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
// internal static DataSet GetEmpSalarySheet(TransactionContext tc, DateTime dateTime,string sEmpID)
|
|
// {
|
|
// DataSet rootDataset = new DataSet();
|
|
// DataSet tempdataset = new DataSet();
|
|
// try
|
|
// {
|
|
// string query1 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
// A.Description, SUM(A.changedamount) Amount
|
|
// from
|
|
// (select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo
|
|
// from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND sd.ItemCode in(-101,-113) AND sd.ItemID IN (-101,1,2,3,4,5,142) AND S.EmployeeID IN(%q)
|
|
// UNION
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND sd.ItemCode in(-101,-113) AND sd.ItemID IN (-101,1,2,3,4,5,142) AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode,
|
|
// A.ItemCode, A.ItemID, A.Description,A.Position,A.JoiningDate order by A.Position,A.EmployeeNo,A.SequenceNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query1);
|
|
|
|
// tempdataset.Tables[0].TableName = "BasicGrossItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query2 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' Description, Sum(A.amount) amount
|
|
// from
|
|
// ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d AND sd.ItemCode IN (-101,-113) AND sd.ItemID IN (-101,1,2,3,4,5,142) and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// UNION
|
|
// select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
// from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) and sd.ItemCode IN (-101,-113) AND sd.ItemID IN (-101,1,2,3,4,5,142) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// ) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
// group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query2);
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalGross"; //Total Of Basic, House Rent, Medical, Transport, LFA, Medical Interest
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
// A.Description, SUM(A.changedamount) Amount
|
|
// from
|
|
// (select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo
|
|
// from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND sd.ItemCode in(-107) AND sd.ItemID IN (1,2,3,4) AND S.EmployeeID IN(%q)
|
|
// UNION
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND sd.ItemCode in(-107) AND sd.ItemID IN (1,2,3,4) AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode,
|
|
// A.ItemCode, A.ItemID, A.Description,A.Position,A.JoiningDate order by A.Position,A.EmployeeNo,A.SequenceNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query3);
|
|
|
|
// tempdataset.Tables[0].TableName = "BonusItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query4 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Bonus' Description, Sum(A.amount) amount
|
|
// from
|
|
// ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d AND sd.ItemCode IN (-107) AND sd.ItemID IN (1,2,3,4) and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// UNION
|
|
// select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
// from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) and sd.ItemCode IN (-107) AND sd.ItemID IN (1,2,3,4) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// ) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
// group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query4);
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalBonus"; //Total Of CS, CM, Ad Sales, KPI Quarterly Bonus
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// string query5 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
// A.Description, SUM(A.changedamount) Amount
|
|
// from
|
|
// (select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo
|
|
// from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND sd.ItemCode in(-113) AND sd.ItemID IN (9,10,11,12,13,14,15,18) AND S.EmployeeID IN(%q)
|
|
// UNION
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND sd.ItemCode in(-113) AND sd.ItemID IN (9,10,11,12,13,14,15,18) AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode,
|
|
// A.ItemCode, A.ItemID, A.Description,A.Position,A.JoiningDate order by A.Position,A.EmployeeNo,A.SequenceNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query5);
|
|
|
|
// tempdataset.Tables[0].TableName = "AllowanceItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query6 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Allowance' Description, Sum(A.amount) amount
|
|
// from
|
|
// ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d AND sd.ItemCode IN (-113) AND sd.ItemID IN (9,10,11,12,13,14,15,18) and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// UNION
|
|
// select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
// from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) and sd.ItemCode IN (-113) AND sd.ItemID IN (9,10,11,12,13,14,15,18) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// ) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
// group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query6);
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalAllowance"; //Total Of Conv, Additional Expence, Off duty/Extra Hour allowance, GV Holiday payment, Eid Day duty Allowance, Internet Exp, Salary Incentive, Pay in leu of Notice
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query7 = SQLParser.MakeSQL(@"SELECT t1.EmployeeNo, t1.Name, t1.JoiningDate, t1.GName, t1.GCode, t1.SequenceNo,t1.DName, SUM(t1.amount) Amount, t1.Description
|
|
// FROM
|
|
// --TotalGross
|
|
// ( select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Income' Description, Sum(A.amount) amount
|
|
// from
|
|
// ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d AND sd.ItemCode IN (-101,-113) AND sd.ItemID IN (-101,1,2,3,4,5,142) and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// UNION
|
|
// select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
// from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) and sd.ItemCode IN (-101,-113) AND sd.ItemID IN (-101,1,2,3,4,5,142) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// ) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
// group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate
|
|
//
|
|
// UNION ALL
|
|
//
|
|
// --TotalBonus
|
|
// select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Income' Description, Sum(A.amount) amount
|
|
// from
|
|
// ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d AND sd.ItemCode IN (-107) AND sd.ItemID IN (1,2,3,4) and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// UNION
|
|
// select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
// from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) and sd.ItemCode IN (-107) AND sd.ItemID IN (1,2,3,4) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// ) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
// group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate
|
|
//
|
|
// UNION ALL
|
|
// --TotalAllowance
|
|
// select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Income' Description, Sum(A.amount) amount
|
|
// from
|
|
// ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d AND sd.ItemCode IN (-113) AND sd.ItemID IN (9,10,11,12,13,14,15,18) and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// UNION
|
|
// select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
// from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) and sd.ItemCode IN (-113) AND sd.ItemID IN (9,10,11,12,13,14,15,18) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// ) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
// group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate
|
|
// ) t1 GROUP BY t1.EmployeeNo, t1.Name, t1.JoiningDate, t1.GName, t1.GCode, t1.SequenceNo, t1.DName, t1.Description",
|
|
// dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query7);
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalIncome"; //
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query8 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
// A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
// from
|
|
// (select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q)
|
|
// union
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
// from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
// A.ItemCode, A.ItemID, A.Description,A.Position,A.JoiningDate order by A.EmployeeNo,A.Position,A.SequenceNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query8);
|
|
|
|
// tempdataset.Tables[0].TableName = "DeductItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query9 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.JoiningDate,
|
|
// A.Description, SUM(A.changedamount) Amount
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.JoiningDate,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ITEMCODE =-139 AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
// UNION
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.JoiningDate,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ITEMCODE =-139 AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.JoiningDate,
|
|
// A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query9);
|
|
|
|
// tempdataset.Tables[0].TableName = "LeaveDays";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query10 = SQLParser.MakeSQL(@"
|
|
// select E.EmployeeNo, E.Name,A.GName,A.GCode,A.sequenceNo,A.DName, A.Description, Sum(A.amount) amount
|
|
// ,E.JoiningDate
|
|
// from
|
|
// (select S.EmployeeID,Sd.Description, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND Sd.ITEMCODE in(-135,-133,-140,-141,-142) AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,Sd.Description,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.Description,A.GCode,A.DName,E.JoiningDate
|
|
//
|
|
// ", dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query10);
|
|
|
|
// tempdataset.Tables[0].TableName = "AttendenceDays";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query11 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Deduction' Description, Sum(A.amount) amount
|
|
// from
|
|
// ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
// from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q)
|
|
// group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
// ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,E.JoiningDate order by E.EmployeeNo,A.sequenceno,A.GCode", dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query11);
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query12 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount
|
|
// from EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d
|
|
// AND G.GRADEID=S.GRADEID
|
|
// AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
// AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
// and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)
|
|
// order by E.EMPLOYEENO,G.SequenceNo,G.Code ", dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query12);
|
|
|
|
// tempdataset.Tables[0].TableName = "NetPay";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query13 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName ,'CPF' Description,SD.CHANGEDAMOUNT Amount
|
|
// from EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d
|
|
// AND G.GRADEID=S.GRADEID
|
|
// AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
// AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
// AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128) AND S.EmployeeID IN(%q) order by E.EMPLOYEENO,G.SequenceNo,G.Code ", dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query13);
|
|
|
|
// tempdataset.Tables[0].TableName = "CPF";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
// }
|
|
// catch (Exception ex)
|
|
// {
|
|
// throw new Exception(ex.Message);
|
|
// }
|
|
// return rootDataset;
|
|
// }
|
|
|
|
internal static DataSet GetEmpPrevDataForSRecon(TransactionContext tc, DateTime dateTime)
|
|
{
|
|
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.SequenceNo,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from"
|
|
+ "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo"
|
|
+ " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND sd.ItemCode not in(-133) "
|
|
+ " UNION "
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133) "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode,"
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",
|
|
dateTime, dateTime, dateTime);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' Description, Sum(A.amount) amount "
|
|
+ " from"
|
|
+ "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
+ " from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name "
|
|
+ " UNION"
|
|
+ " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName"
|
|
+ " from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name "
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName ", dateTime, dateTime);
|
|
|
|
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from "
|
|
+ "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
+ " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 "
|
|
+ " union"
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName"
|
|
+ " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName, "
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",
|
|
dateTime, dateTime);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from"
|
|
+ " ("
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName"
|
|
+ " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 "
|
|
+ " UNION "
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,"
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime, dateTime);
|
|
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.sequenceNo,A.DName, 'UnAuthorized' Description, Sum(A.amount) amount "
|
|
+ " from"
|
|
+ " ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
+ " from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name"
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName", dateTime);
|
|
|
|
tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Deduction' Description, Sum(A.amount) amount "
|
|
+ " from"
|
|
+ "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
+ " from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2,3) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name"
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName ", dateTime);
|
|
|
|
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet("Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount"
|
|
+ " from EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d"
|
|
+ " AND G.GRADEID=S.GRADEID "
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID "
|
|
+ " AND E.EMPLOYEEID =S.EMPLOYEEID "
|
|
+ " and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132)"
|
|
+ " order by G.SequenceNo,G.Code,E.EMPLOYEENO ", dateTime);
|
|
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
|
|
#region Test Reconcilation For SGS
|
|
|
|
//DataSet rootDataset = new DataSet();
|
|
//DataSet tempdataset = new DataSet();
|
|
//try
|
|
//{
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
// + " A.Description, SUM(A.changedamount) Amount"
|
|
// + " from"
|
|
// + "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8,4) AND SD.ItemID Not IN(13,11,15,16,14)"
|
|
// + " UNION "
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1,4) AND SD.ItemID Not IN(13,11,15,16,14)"
|
|
// + " ) A group by "
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.EmployeeNo",
|
|
// dateTime,dateTime);
|
|
|
|
// tempdataset.Tables[0].TableName = "GrossItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.DName,'Total Gross' Description, Sum(A.amount) amount "
|
|
// + " from"
|
|
// + "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
// + " from SALARYMONTHLY S,Grades G,Department D, SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) and Sd.ItemID Not In(13,11,15,16,14)"
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION "
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
// + " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2) and Sd.ItemID Not In(13,11,15,16,14)"
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION "
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
// + " group by E.EmployeeNo, E.Name,A.GName,A.DName ", dateTime,dateTime);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalGross";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
// + " A.Description, SUM(A.changedamount) Amount"
|
|
// + " from"
|
|
// + "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=8 AND SD.ItemID IN(13,11,15,16,14)"
|
|
// + " union"
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND SD.ItemID IN(13,11,15,16,14)"
|
|
// + " UNION "
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=1 AND SD.ItemID IN(13,11,15,16,14)"
|
|
// + " ) A group by "
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.EmployeeNo",
|
|
// dateTime, dateTime,dateTime);
|
|
|
|
// tempdataset.Tables[0].TableName = "LumSumItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.DName,'Grand Total' Description, Sum(A.amount) amount "
|
|
// + " from"
|
|
// + "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
// + " from SALARYMONTHLY S,Grades G,Department D, SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION "
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
// + " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION "
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
// + " group by E.EmployeeNo, E.Name,A.GName,A.DName ", dateTime,dateTime);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "GrandTotal";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
// + " A.Description, SUM(A.changedamount) Amount"
|
|
// + " from "
|
|
// + "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 "
|
|
// + " union"
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 "
|
|
// //+ " UNION "
|
|
// //+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// //+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount from Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// //+ " where E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=1 "
|
|
// + " ) A group by "
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName, "
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.EmployeeNo",
|
|
// dateTime, dateTime);
|
|
|
|
// tempdataset.Tables[0].TableName = "DeductItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.DName, 'Total Deduction' Description, Sum(A.amount) amount "
|
|
// + " from"
|
|
// + "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
// + " from GRADES G,DEPARTMENT D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (3) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION"
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
// + " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION"
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.DName ", dateTime,dateTime);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,D.DESCRIPTION DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount"
|
|
// + " from EMPLOYEE E,GRADES G,DEPARTMENT D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d"
|
|
// + " AND G.GRADEID=S.GRADEID "
|
|
// + " AND D.DEPARTMENTID=S.DEPARTMENTID "
|
|
// + " AND E.EMPLOYEEID =S.EMPLOYEEID "
|
|
// + " and Sd.ItemGroup IN (5)"
|
|
// + " order by E.EMPLOYEENO ", dateTime);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "NetPay";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
//}
|
|
//catch (Exception ex)
|
|
//{
|
|
// throw new Exception(ex.Message);
|
|
//}
|
|
//return rootDataset;
|
|
#endregion
|
|
}
|
|
|
|
internal static DataSet GetEmpSalarySheetForNovertis(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
|
|
#region Old Code
|
|
//try
|
|
//{
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.SequenceNo,A.ItemGroup,"
|
|
// + " A.Description, A.changedamount Amount"
|
|
// + " from"
|
|
// + "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,"
|
|
// + " D.Name DName,G.Code GCode,G.SequenceNo"
|
|
// + " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
// + " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d and Sd.ItemGroup in(1,2,8,4) "
|
|
// + " AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q) "
|
|
// + " ) A "
|
|
// + " order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "GrossItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' Description, Sum(A.amount) amount "
|
|
// + " from"
|
|
// + "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
// + " from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name "
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName"
|
|
// + " from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name "
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
// + " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalGross";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,"
|
|
// + " A.Description, SUM(A.changedamount) Amount"
|
|
// + " from "
|
|
// + "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
// + " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q) "
|
|
// + " union"
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName"
|
|
// + " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) "
|
|
// + " ) A group by "
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName, "
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "DeductItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,"
|
|
// + " A.Description, SUM(A.changedamount) Amount"
|
|
// + " from"
|
|
// + " ("
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName"
|
|
// + " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) "
|
|
// + " UNION "
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) "
|
|
// + " ) A group by "
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,"
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "LeaveDays";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.sequenceNo,A.DName, 'UnAuthorized' Description, Sum(A.amount) amount "
|
|
// + " from"
|
|
// + " ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
// + " from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name"
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName", dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Deduction' Description, Sum(A.amount) amount "
|
|
// + " from"
|
|
// + "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
// + " from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name"
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName ", dateTime, sEmpID);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// tempdataset = tc.ExecuteDataSet("Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount"
|
|
// + " from EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d"
|
|
// + " AND G.GRADEID=S.GRADEID "
|
|
// + " AND D.DESIGNATIONID=S.DESIGNATIONID "
|
|
// + " AND E.EMPLOYEEID =S.EMPLOYEEID "
|
|
// + " and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)"
|
|
// + " order by G.SequenceNo,G.Code,E.EMPLOYEENO ", dateTime, sEmpID);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "NetPay";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
//}
|
|
//catch (Exception ex)
|
|
//{
|
|
// throw new Exception(ex.Message);
|
|
//}
|
|
#endregion
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.CCName,A.SequenceNo,A.ItemGroup,"
|
|
+ " A.Description, A.changedamount Amount"
|
|
+ " from"
|
|
+ " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,"
|
|
+ " D.Name DName,G.Code GCode,CC.Description CCName,G.SequenceNo"
|
|
+ " from Grades G,CRG CC,DESIGNATION D,Employee E,SALARYEMPCOSTCENTER SEmpCC ,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID"
|
|
+ " AND CC.CRGID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d and Sd.ItemGroup in(1,8) "
|
|
+ " AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q) "
|
|
+ " ) A "
|
|
+ " order by A.ItemGroup,A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.CCName,A.SequenceNo,A.DName,'Total Gross' Description, Sum(A.amount) amount,A.ItemGroup "
|
|
+ " from"
|
|
+ " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName,Sd.ItemGroup "
|
|
+ " from SALARYMONTHLY S,Grades G,CRG CC,DESIGNATION D, SALARYEMPCOSTCENTER SEMPCC,SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID"
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND S.EmployeeID=SEMPCC.EmployeeID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.Description,Sd.ItemGroup "
|
|
+ " UNION"
|
|
+ " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.sequenceNo,D.Name DName,Sd.ItemGroup"
|
|
+ " from GRADES G,CRG CC,DESIGNATION D,SALARYMONTHLY S, SALARYEMPCOSTCENTER SEmpCC,SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.Description,Sd.ItemGroup "
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.CCName,A.ItemGroup ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.CCName,A.ItemGroup,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from "
|
|
+ " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName "
|
|
+ " from Grades G,CRG CC,DESIGNATION D,Employee E,SALARYEMPCOSTCENTER SEmpCC ,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " and Sd.ItemGroup=3 AND S.EmployeeID IN(%q) "
|
|
+ " union"
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.description CCName,G.sequenceNo,D.Name DName"
|
|
+ " from Grades G,CRG CC,DESIGNATION D,Employee E,SALARYEMPCOSTCENTER SEmpCC ,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName, "
|
|
+ " A.ItemCode, A.ItemID, A.ItemGroup,A.Description,A.Position,A.CCName"
|
|
+ " order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.CCName,A.ItemGroup,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from"
|
|
+ " ("
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName"
|
|
+ " from Grades G,DESIGNATION D,CRG CC,Employee E,SALARYEMPCOSTCENTER SEMPCC, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) "
|
|
+ " UNION "
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName "
|
|
+ " from Grades G,DESIGNATION D,CRG CC,Employee E,SALARYEMPCOSTCENTER SEMPCC, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,"
|
|
+ " A.ItemCode, A.ItemID, A.ItemGroup,A.Description,A.Position,A.CCName"
|
|
+ " order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.CCName,A.sequenceNo,A.DName, 'UnAuthorized' Description, Sum(A.amount) amount,A.ItemGroup "
|
|
+ " from"
|
|
+ " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,Sd.ItemGroup,G.Code GCode,CC.Description CCName,"
|
|
+ " G.SequenceNo,D.Name DName "
|
|
+ " from GRADES G,CRG CC,DESIGNATION D,SALARYEMPCOSTCENTER SEMPCC,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND CC.CRGID=SEMPCC.CostCenterID AND S.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.Description,Sd.ItemGroup"
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.CCName,A.ItemGroup", dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.CCName,A.SequenceNo,A.DName, 'Total Deduction' Description, Sum(A.amount) amount,A.ItemGroup "
|
|
+ " from"
|
|
+ " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,CC.description CCName,"
|
|
+ " G.SequenceNo,D.Name DName,Sd.ItemGroup "
|
|
+ " from GRADES G,CRG CC,SALARYEMPCOSTCENTER SEMPCC,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND CC.CRGID=SEMPCC.CostCenterID and S.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID "
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.Description,Sd.ItemGroup"
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.CCName,A.ItemGroup", dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,Sd.ItemGroup,"
|
|
+ " G.SequenceNo,D.Name DName ,CC.Description CCName,'Net Pay' Description,SD.CHANGEDAMOUNT Amount"
|
|
+ " from EMPLOYEE E,GRADES G,CRG CC,DESIGNATION D,SALARYEMPCOSTCENTER SEMPCC,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND CC.CRGID=SEMPCC.CostCenterID and E.EmployeeID=SEMPCC.employeeID"
|
|
+ " AND S.SalaryMonth=%d"
|
|
+ " AND G.GRADEID=S.GRADEID "
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID"
|
|
+ " AND E.EMPLOYEEID =S.EMPLOYEEID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)"
|
|
+ " order by G.SequenceNo,G.Code,E.EMPLOYEENO ", dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetEmpSalaryReconForCurrMonth(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.CCName,A.SequenceNo,A.ItemGroup,"
|
|
+ " A.Description, A.changedamount Amount"
|
|
+ " from"
|
|
+ " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,"
|
|
+ " D.Name DName,G.Code GCode,CC.Description CCName,G.SequenceNo"
|
|
+ " from Grades G,CRG CC,DESIGNATION D,Employee E,SALARYEMPCOSTCENTER SEmpCC ,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID"
|
|
+ " AND CC.CRGID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d and Sd.ItemGroup in(1,8) "
|
|
+ " AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q) "
|
|
+ " ) A "
|
|
+ " order by A.ItemGroup,A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.CCName,A.ItemGroup,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from "
|
|
+ " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName "
|
|
+ " from Grades G,CRG CC,DESIGNATION D,Employee E,SALARYEMPCOSTCENTER SEmpCC ,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " and Sd.ItemGroup=3 AND S.EmployeeID IN(%q) "
|
|
+ " union"
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.description CCName,G.sequenceNo,D.Name DName"
|
|
+ " from Grades G,CRG CC,DESIGNATION D,Employee E,SALARYEMPCOSTCENTER SEmpCC ,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName, "
|
|
+ " A.ItemCode, A.ItemID, A.ItemGroup,A.Description,A.Position,A.CCName"
|
|
+ " order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.CCName,A.ItemGroup,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from"
|
|
+ " ("
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName"
|
|
+ " from Grades G,DESIGNATION D,CRG CC,Employee E,SALARYEMPCOSTCENTER SEMPCC, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) "
|
|
+ " UNION "
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName "
|
|
+ " from Grades G,DESIGNATION D,CRG CC,Employee E,SALARYEMPCOSTCENTER SEMPCC, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,"
|
|
+ " A.ItemCode, A.ItemID, A.ItemGroup,A.Description,A.Position,A.CCName"
|
|
+ " order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.CCName,A.sequenceNo,A.DName, 'UnAuthorized' Description, Sum(A.amount) amount,A.ItemGroup "
|
|
+ " from"
|
|
+ " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,Sd.ItemGroup,G.Code GCode,CC.Description CCName,"
|
|
+ " G.SequenceNo,D.Name DName "
|
|
+ " from GRADES G,CRG CC,DESIGNATION D,SALARYEMPCOSTCENTER SEMPCC,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND CC.CRGID=SEMPCC.CostCenterID AND S.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.Description,Sd.ItemGroup"
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.CCName,A.ItemGroup", dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,Sd.ItemGroup,"
|
|
+ " G.SequenceNo,D.Name DName ,CC.Description CCName,'Net Pay' Description,SD.CHANGEDAMOUNT Amount"
|
|
+ " from EMPLOYEE E,GRADES G,CRG CC,DESIGNATION D,SALARYEMPCOSTCENTER SEMPCC,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND CC.CRGID=SEMPCC.CostCenterID and E.EmployeeID=SEMPCC.employeeID"
|
|
+ " AND S.SalaryMonth=%d"
|
|
+ " AND G.GRADEID=S.GRADEID "
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID"
|
|
+ " AND E.EMPLOYEEID =S.EMPLOYEEID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)"
|
|
+ " order by G.SequenceNo,G.Code,E.EMPLOYEENO ", dateTime, sEmpID);
|
|
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetEmpSalaryReconForNovertis(TransactionContext tc, DateTime dateTime)
|
|
{
|
|
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
|
|
#region Old Code
|
|
//try
|
|
//{
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.SequenceNo,A.ItemGroup,"
|
|
// + " A.Description, A.changedamount Amount"
|
|
// + " from"
|
|
// + "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,"
|
|
// + " D.Name DName,G.Code GCode,G.SequenceNo"
|
|
// + " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
// + " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d and Sd.ItemGroup in(1,2,8,4) "
|
|
// + " AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q) "
|
|
// + " ) A "
|
|
// + " order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "GrossItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' Description, Sum(A.amount) amount "
|
|
// + " from"
|
|
// + "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
// + " from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name "
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName"
|
|
// + " from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name "
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
// + " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalGross";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,"
|
|
// + " A.Description, SUM(A.changedamount) Amount"
|
|
// + " from "
|
|
// + "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
// + " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q) "
|
|
// + " union"
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName"
|
|
// + " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) "
|
|
// + " ) A group by "
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName, "
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "DeductItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,"
|
|
// + " A.Description, SUM(A.changedamount) Amount"
|
|
// + " from"
|
|
// + " ("
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName"
|
|
// + " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) "
|
|
// + " UNION "
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
// + " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) "
|
|
// + " ) A group by "
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,"
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "LeaveDays";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.sequenceNo,A.DName, 'UnAuthorized' Description, Sum(A.amount) amount "
|
|
// + " from"
|
|
// + " ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
// + " from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name"
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName", dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName, 'Total Deduction' Description, Sum(A.amount) amount "
|
|
// + " from"
|
|
// + "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName "
|
|
// + " from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name"
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName ", dateTime, sEmpID);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
// tempdataset = tc.ExecuteDataSet("Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount"
|
|
// + " from EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d"
|
|
// + " AND G.GRADEID=S.GRADEID "
|
|
// + " AND D.DESIGNATIONID=S.DESIGNATIONID "
|
|
// + " AND E.EMPLOYEEID =S.EMPLOYEEID "
|
|
// + " and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)"
|
|
// + " order by G.SequenceNo,G.Code,E.EMPLOYEENO ", dateTime, sEmpID);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "NetPay";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
//}
|
|
//catch (Exception ex)
|
|
//{
|
|
// throw new Exception(ex.Message);
|
|
//}
|
|
#endregion
|
|
try
|
|
{
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.CCName,A.SequenceNo,A.ItemGroup,"
|
|
+ " A.Description, A.changedamount Amount"
|
|
+ " from"
|
|
+ " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,"
|
|
+ " D.Name DName,G.Code GCode,CC.Description CCName,G.SequenceNo"
|
|
+ " from Grades G,CRG CC,DESIGNATION D,Employee E,SALARYEMPCOSTCENTER SEmpCC ,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID"
|
|
+ " AND CC.CRGID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d and Sd.ItemGroup in(1,8) "
|
|
+ " AND sd.ItemCode not in(-133) "
|
|
+ " ) A "
|
|
+ " order by A.ItemGroup,A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
//tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.CCName,A.SequenceNo,A.DName,'Total Gross' Description, Sum(A.amount) amount,A.ItemGroup "
|
|
// + " from"
|
|
// + " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName,Sd.ItemGroup "
|
|
// + " from SALARYMONTHLY S,Grades G,CRG CC,DESIGNATION D, SALARYEMPCOSTCENTER SEMPCC,SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID"
|
|
// + " AND CC.CrgID=SEmpCC.CostCenterID AND S.EmployeeID=SEMPCC.EmployeeID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
// + " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
// + " AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.Description,Sd.ItemGroup "
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.sequenceNo,D.Name DName,Sd.ItemGroup"
|
|
// + " from GRADES G,CRG CC,DESIGNATION D,SALARYMONTHLY S, SALARYEMPCOSTCENTER SEmpCC,SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
// + " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
// + " and Sd.ItemGroup IN (2) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.Description,Sd.ItemGroup "
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
// + " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.CCName,A.ItemGroup ", dateTime,dateTime);
|
|
|
|
|
|
//tempdataset.Tables[0].TableName = "TotalGross";
|
|
//rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.CCName,A.ItemGroup,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from "
|
|
+ " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName "
|
|
+ " from Grades G,CRG CC,DESIGNATION D,Employee E,SALARYEMPCOSTCENTER SEmpCC ,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " and Sd.ItemGroup=3 "
|
|
+ " union"
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.description CCName,G.sequenceNo,D.Name DName"
|
|
+ " from Grades G,CRG CC,DESIGNATION D,Employee E,SALARYEMPCOSTCENTER SEmpCC ,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ItemGroup=2 "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName, "
|
|
+ " A.ItemCode, A.ItemID, A.ItemGroup,A.Description,A.Position,A.CCName"
|
|
+ " order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",
|
|
dateTime, dateTime);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.CCName,A.ItemGroup,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from"
|
|
+ " ("
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName"
|
|
+ " from Grades G,DESIGNATION D,CRG CC,Employee E,SALARYEMPCOSTCENTER SEMPCC, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 "
|
|
+ " UNION "
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,CC.Description CCName,G.SequenceNo,D.Name DName "
|
|
+ " from Grades G,DESIGNATION D,CRG CC,Employee E,SALARYEMPCOSTCENTER SEMPCC, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND CC.CrgID=SEmpCC.CostCenterID AND E.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,"
|
|
+ " A.ItemCode, A.ItemID, A.ItemGroup,A.Description,A.Position,A.CCName"
|
|
+ " order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", dateTime, dateTime);
|
|
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.CCName,A.sequenceNo,A.DName, 'UnAuthorized' Description, Sum(A.amount) amount,A.ItemGroup "
|
|
+ " from"
|
|
+ " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,Sd.ItemGroup,G.Code GCode,CC.Description CCName,"
|
|
+ " G.SequenceNo,D.Name DName "
|
|
+ " from GRADES G,CRG CC,DESIGNATION D,SALARYEMPCOSTCENTER SEMPCC,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND CC.CRGID=SEMPCC.CostCenterID AND S.EmployeeID=SEmpCC.EmployeeID"
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.Description,Sd.ItemGroup"
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.CCName,A.ItemGroup", dateTime);
|
|
|
|
tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
//tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.CCName,A.SequenceNo,A.DName, 'Total Deduction' Description, Sum(A.amount) amount,A.ItemGroup "
|
|
// + " from"
|
|
// + " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,CC.description CCName,"
|
|
// + " G.SequenceNo,D.Name DName,Sd.ItemGroup "
|
|
// + " from GRADES G,CRG CC,SALARYEMPCOSTCENTER SEMPCC,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
// + " AND CC.CRGID=SEMPCC.CostCenterID and S.EmployeeID=SEmpCC.EmployeeID"
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID "
|
|
// + " AND D.DESIGNATIONID=S.DESIGNATIONID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
// + " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
// + " and Sd.ItemGroup IN (2,3) "
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.Description,Sd.ItemGroup"
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
// + " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.CCName,A.ItemGroup", dateTime);
|
|
|
|
|
|
//tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
//rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
tempdataset = tc.ExecuteDataSet("Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,Sd.ItemGroup,"
|
|
+ " G.SequenceNo,D.Name DName ,CC.Description CCName,'Net Pay' Description,SD.CHANGEDAMOUNT Amount"
|
|
+ " from EMPLOYEE E,GRADES G,CRG CC,DESIGNATION D,SALARYEMPCOSTCENTER SEMPCC,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND CC.CRGID=SEMPCC.CostCenterID and E.EmployeeID=SEMPCC.employeeID"
|
|
+ " AND S.SalaryMonth=%d"
|
|
+ " AND G.GRADEID=S.GRADEID "
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID"
|
|
+ " AND E.EMPLOYEEID =S.EMPLOYEEID AND SEmpCC.EmployeeID=S.EmployeeID"
|
|
+ " AND Sd.SALARYMONTHLYID=SEmpCC.SALARYMONTHLYID"
|
|
+ " and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132)"
|
|
+ " order by G.SequenceNo,G.Code,E.EMPLOYEENO ", dateTime);
|
|
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetEmpSalarySheetByCC(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string sSQL = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.AccountNo,A.GName,A.DName,A.GCode,A.CRGDes,A.SequenceNO, A.Description,
|
|
SUM(A.changedamount) Amount from
|
|
(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.AccountNo, sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,
|
|
sd.Position, sd.changedamount, G.DESCRIPTION GName,D.Name DName,G.Code GCode,
|
|
G.SequenceNo,CC.DESCRIPTION CRGDes
|
|
from Grades G,CRG CC,SALARYEMPCOSTCENTER SEMCC ,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND S.EMPLOYEEID=SEMCC.EMPLOYEEID
|
|
AND CC.CRGID=SEMCC.COSTCENTERID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID AND S.SalaryMonth=%d
|
|
and Sd.ItemGroup in(8,4) AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.AccountNo, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName, D.Name DName,G.Code GCode,
|
|
G.SequenceNo,CC.DESCRIPTION CRGDes
|
|
from Grades G,CRG CC,SALARYEMPCOSTCENTER SEMCC,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND S.EMPLOYEEID=SEMCC.EMPLOYEEID
|
|
AND CC.CRGID=SEMCC.COSTCENTERID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d
|
|
and Sd.ItemGroup in(1,4) AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q)
|
|
) A
|
|
group by A.EmployeeID, A.EmployeeNo, A.Name,A.AccountNo,A.GName,A.DName,A.SequenceNo,A.GCode,A.CRGDes,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position
|
|
order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sSQL);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sSQL1 = SQLParser.MakeSQL("select E.EmployeeNo, E.Name,E.AccountNo,A.GName,A.GCode,A.DName,'Total Gross' Description,A.CRGDes,A.SequenceNO, "
|
|
+ " Sum(A.amount) amount "
|
|
+ " from"
|
|
+ " ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName,CC.DESCRIPTION CRGDes "
|
|
+ " from SALARYMONTHLY S,Grades G,CRG CC,SALARYEMPCOSTCENTER SEMCC,DESIGNATION D, SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
+ " AND S.EMPLOYEEID=SEMCC.EMPLOYEEID AND CC.CRGID=SEMCC.COSTCENTERID "
|
|
+ " AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID "
|
|
+ " AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.Name,CC.DESCRIPTION,G.SequenceNo,G.Code "
|
|
+ " UNION"
|
|
+ " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName,CC.DESCRIPTION CRGDes"
|
|
+ " from GRADES G,CRG CC,SALARYEMPCOSTCENTER SEMCC,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.EMPLOYEEID=SEMCC.EMPLOYEEID AND CC.CRGID=SEMCC.COSTCENTERID"
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID "
|
|
+ " AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID"
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.Name,CC.DESCRIPTION,G.SequenceNo,G.Code "
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,E.AccountNo,A.GName,A.DName,A.CRGDes,A.SequenceNo,A.GCode ",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(sSQL1);
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sSQL2 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.AccountNo,A.GName,A.DName,A.CRGDes,A.GCode,A.SequenceNO,
|
|
A.Description, SUM(A.changedamount) Amount from (
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.AccountNo, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,CC.DESCRIPTION CRGDes,
|
|
G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,CRG CC,SALARYEMPCOSTCENTER SEMCC,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND S.EMPLOYEEID=SEMCC.EMPLOYEEID AND CC.CRGID=SEMCC.COSTCENTERID
|
|
AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q)
|
|
union
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.AccountNo, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,CC.DESCRIPTION CRGDes,
|
|
G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,CRG CC,SALARYEMPCOSTCENTER SEMCC ,DESIGNATION D,Employee E, SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND S.EMPLOYEEID=SEMCC.EMPLOYEEID AND CC.CRGID=SEMCC.COSTCENTERID
|
|
AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) ) A
|
|
group by A.EmployeeID, A.EmployeeNo, A.Name,A.AccountNo,A.GName,A.SequenceNo,A.GCode,A.DName,A.CRGDes,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position
|
|
order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo ",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(sSQL2);
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sSQL3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.AccountNo,A.GName,A.GCode,A.DName,A.CRGDes,A.SequenceNo,
|
|
A.Description, SUM(A.changedamount) Amount from (
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.AccountNo, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,CC.DESCRIPTION CRGDes,
|
|
G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,CRG CC,SALARYEMPCOSTCENTER SEMCC,DESIGNATION D,Employee E,
|
|
SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND S.EMPLOYEEID=SEMCC.EMPLOYEEID
|
|
AND CC.CRGID=SEMCC.COSTCENTERID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID AND S.SalaryMonth=%d
|
|
and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.AccountNo, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,CC.DESCRIPTION CRGDes,
|
|
G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,CRG CC,SALARYEMPCOSTCENTER SEMCC,DESIGNATION D,Employee E,
|
|
SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND S.EMPLOYEEID=SEMCC.EMPLOYEEID AND CC.CRGID=SEMCC.COSTCENTERID
|
|
AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID
|
|
AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) ) A
|
|
group by A.EmployeeID, A.EmployeeNo, A.Name,A.AccountNo,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.CRGDes, A.ItemCode, A.ItemID, A.Description,A.Position
|
|
order by A.Position,A.SequenceNo,A.GCode,A.EmployeeNo",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(sSQL3);
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sSQL4 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,E.AccountNo,A.GName,A.GCode,A.DName, 'UnAuthorized' Description,
|
|
A.CRGDes,A.SequenceNo, Sum(A.amount) amount
|
|
from (
|
|
select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,
|
|
CC.DESCRIPTION CRGDes, G.Code GCode,G.SequenceNo,D.Name DName
|
|
from GRADES G,CRG CC,SALARYEMPCOSTCENTER SEMCC,DESIGNATION D,
|
|
SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.EMPLOYEEID=SEMCC.EMPLOYEEID
|
|
AND CC.CRGID=SEMCC.COSTCENTERID AND S.SalaryMonth=%d
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID and Sd.ItemGroup IN (2)
|
|
AND S.EmployeeID IN(%q) group by S.EmployeeID,G.DESCRIPTION,
|
|
G.SequenceNo,G.Code,D.Name,CC.DESCRIPTION ) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
group by E.EmployeeNo, E.Name,E.AccountNo,A.GName,A.SequenceNo,A.GCode,A.DName,A.CRGDes",
|
|
dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(sSQL4);
|
|
tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sSQL5 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,E.AccountNo,A.GName,A.GCode,A.DName, 'Total Deduction' Description,
|
|
A.CRGDes,A.SequenceNo, Sum(A.amount) amount
|
|
from (
|
|
select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,
|
|
CC.DESCRIPTION CRGDes, G.Code GCode,G.SequenceNo,D.Name DName
|
|
from GRADES G,CRG CC,SALARYEMPCOSTCENTER SEMCC,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d
|
|
AND S.EMPLOYEEID=SEMCC.EMPLOYEEID AND CC.CRGID=SEMCC.COSTCENTERID
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID and Sd.ItemGroup IN (2,3)
|
|
AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,CC.DESCRIPTION ) A,
|
|
Employee E where A.EmployeeID = E.EmployeeID
|
|
group by E.EmployeeNo, E.Name,E.AccountNo,A.GName,A.SequenceNo,A.GCode,A.DName,A.CRGDes", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(sSQL5);
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sSQL6 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,E.AccountNo,G.DESCRIPTION GName,G.Code GCode,D.Name DName,
|
|
'Net Pay' Description,CC.DESCRIPTION CRGDes,G.SequenceNo, SD.CHANGEDAMOUNT Amount
|
|
from EMPLOYEE E,GRADES G,CRG CC,SALARYEMPCOSTCENTER SEMCC,DESIGNATION D,
|
|
SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d
|
|
AND S.EMPLOYEEID=SEMCC.EMPLOYEEID AND CC.CRGID=SEMCC.COSTCENTERID
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID AND SD.SALARYMONTHLYID=SEMCC.SALARYMONTHLYID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)
|
|
order by G.SequenceNo,G.Code,E.EMPLOYEENO ", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(sSQL6);
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetExtendedSalarySheet(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
#region old-Code
|
|
//DataSet rootDataset = new DataSet();
|
|
//DataSet tempdataset = new DataSet();
|
|
//try
|
|
//{
|
|
// string sTableName;
|
|
// sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,"
|
|
// + " A.Description, SUM(A.changedamount) Amount"
|
|
// + " from"
|
|
// + " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,C.Description CDescription,"
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName,S.Designation DGName"
|
|
// + " from Grades G,Department D,Employee E,Category C ,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG"
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8,4) AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND C.CategoryID=S.CategoryID AND Sd.ItemID Not In(13,11,15,16,14)"
|
|
// //+ " union"
|
|
// //+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.JOININGDATE,E.DATEOFCONFIRMATION,C.Description CDescription,"
|
|
// //+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName"
|
|
// //+ " from Grades G,Department D,Employee E,Category C, SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG"
|
|
// //+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND C.CategoryID=S.CategoryID AND Sd.ItemID Not In(13,11,15,16,14)"
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,C.Description CDescription,"
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName,S.Designation DGName"
|
|
// + " from Grades G,Department D,Employee E, Category C,SALARYMONTHLY S, SalaryMonthlyDetail Sd ,Designation DG"
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1,4) AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND C.CategoryID=S.CategoryID AND Sd.ItemID Not In(13,11,15,16,14)"
|
|
// + " ) A group by"
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,"
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.EmployeeNo,A.Position", dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "GrossItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.DName,'Total Gross' Description, Sum(A.amount) amount,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription"
|
|
// + " from"
|
|
// + " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from SALARYMONTHLY S,Grades G,Department D, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
// + " AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND S.SalaryMonth=%d AND C.CategoryID=S.CategoryID and Sd.ItemGroup IN (1, 8) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID Not In(13,11,15,16,14)"
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,Dg.NAME,C.Description"
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND C.CategoryID=S.CategoryID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID Not In(13,11,15,16,14)"
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,Dg.NAME,C.Description"
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID"
|
|
// + " group by E.EmployeeNo, E.Name,A.GName,A.DName,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalGross";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,"
|
|
// + " A.Description, SUM(A.changedamount) Amount"
|
|
// + " from"
|
|
// + " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND C.CategoryID=S.CategoryID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=8 AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID In(13,11,15,16,14)"
|
|
// + " union"
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
// + " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND C.CategoryID=S.CategoryID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID In(13,11,15,16,14)"
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,Designation DG,Category C"
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND C.CategoryID=S.CategoryID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=1 AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID In(13,11,15,16,14)"
|
|
// + " ) A group by"
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,"
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.EmployeeNo", dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "LumSumItem";
|
|
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.DName,'Grand Total' Description, Sum(A.amount) amount,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription"
|
|
// + " from"
|
|
// + " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from SALARYMONTHLY S,Grades G,Department D, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
// + " AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND C.CategoryID=S.CategoryID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,Dg.NAME,C.Description"
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND C.CategoryID=S.CategoryID and Sd.ItemGroup IN (2) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,Dg.NAME,C.Description"
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID"
|
|
// + " group by E.EmployeeNo, E.Name,A.GName,A.DName,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
|
|
// tempdataset.Tables[0].TableName = "GrandTotal";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
// + " A.Description, SUM(A.changedamount) Amount,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription"
|
|
// + " from"
|
|
// + " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
// + " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND C.CategoryID=S.CategoryID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
// + " union"
|
|
// + " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
// + " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND C.CategoryID=S.CategoryID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
// + " ) A group by"
|
|
// + " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,"
|
|
// + " A.ItemCode, A.ItemID, A.Description,A.Position order by A.EmployeeNo,A.Position",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "DeductItem";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.DName, 'Total Deduction' Description, Sum(A.amount) amount,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription"
|
|
// + " from"
|
|
// + " (select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from GRADES G,DEPARTMENT D,SALARYMONTHLY S,SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND C.CategoryID=S.CategoryID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (3) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,DG.NAME,C.Description"
|
|
// + " UNION"
|
|
// + " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,C.Description CDescription"
|
|
// + " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
// + " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND C.CategoryID=S.CategoryID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
// + " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,DG.NAME,C.Description"
|
|
// + " ) A, Employee E where A.EmployeeID = E.EmployeeID"
|
|
// + " group by E.EmployeeNo, E.Name,A.GName,A.DName,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "TotalDeduct";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// tempdataset = tc.ExecuteDataSet("select S.EmployeeID, E.EMPLOYEENO,E.NAME,'Net Pay' Description,sd.changedamount Amount,G.DESCRIPTION GName,D.DESCRIPTION DName,DG.NAME DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,C.Description CDescription"
|
|
// + " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Employee E,Designation DG,Category C"
|
|
// + " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
// + " AND S.SalaryMonth=%d"
|
|
// + " AND G.GRADEID=S.GRADEID"
|
|
// + " AND D.DEPARTMENTID=S.DEPARTMENTID"
|
|
// + " AND C.CategoryID=S.CategoryID"
|
|
// + " AND E.EMPLOYEEID=S.EMPLOYEEID"
|
|
// + " AND DG.DESIGNATIONID=S.DESIGNATIONID"
|
|
// + " and Sd.ItemGroup IN (5) AND S.EmployeeID IN(%q)"
|
|
// + " order by E.EMPLOYEENO", dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "NetPay";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
// if (sTableName != "")
|
|
// tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
//}
|
|
//catch (Exception ex)
|
|
//{
|
|
// throw new Exception(ex.Message);
|
|
//}
|
|
#endregion old-Code
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
string sqlGrossItem = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,
|
|
A.Description, SUM(A.changedamount) Amount
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,C.Description as CDescription,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName
|
|
from Grades G,Department D,Employee E,Category C ,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG
|
|
where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q)
|
|
AND C.CategoryID=S.CategoryID AND Sd.ItemID Not In(13,11,15,16,14,19) and ItemCode not in(-102,-103)
|
|
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,C.Description as CDescription,
|
|
sd.ItemID, sd.Description,sd.Position, -sd.changedamount, G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName
|
|
from Grades G,Department D,Employee E,Category C ,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG
|
|
where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup in(2) AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q)
|
|
AND C.CategoryID=S.CategoryID AND Sd.ItemID Not In(13,11,15,16,14,19) and ItemCode not in(-102,-103)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,
|
|
C.Description as CDescription,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName
|
|
from Grades G,Department D,Employee E, Category C,SALARYMONTHLY S, SalaryMonthlyDetail Sd ,Designation DG
|
|
where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND C.CategoryID=S.CategoryID
|
|
AND Sd.ItemID Not In(13,11,15,16,14,19) and ItemCode not in(-102,-103)
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position order by A.EmployeeNo,A.Position", dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sqlGrossItem);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sqlTotalGross = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,A.GName,A.DName,'Total Gross' as Description, Sum(A.amount) as amount,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription
|
|
from
|
|
(select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription
|
|
from SALARYMONTHLY S,Grades G,Department D, SalaryMonthlyDetail Sd,Designation AS DG,Category C
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND S.SalaryMonth=%d AND C.CategoryID=S.CategoryID
|
|
and Sd.ItemGroup IN (1, 8) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID Not In(13,11,15,16,14,19)
|
|
and ItemCode not in(-102,-103)
|
|
group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,Dg.NAME,C.Description
|
|
|
|
UNION
|
|
select S.EmployeeID, - ISNULL(Sum(sd.changedamount), 0 ) as Amount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription
|
|
from SALARYMONTHLY S,Grades G,Department D, SalaryMonthlyDetail Sd,Designation AS DG,Category C
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND S.SalaryMonth=%d AND C.CategoryID=S.CategoryID
|
|
and Sd.ItemGroup IN (2) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID Not In(13,11,15,16,14,19)
|
|
and ItemCode not in(-102,-103)
|
|
group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,Dg.NAME,C.Description
|
|
|
|
UNION
|
|
select S.EmployeeID, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription
|
|
from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation AS DG,Category C
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND C.CategoryID=S.CategoryID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2)
|
|
AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID Not In(13,11,15,16,14,19) and ItemCode not in(-102,-103)
|
|
group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,Dg.NAME,C.Description
|
|
) A, Employee E where A.EmployeeID = E.EmployeeID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.DName,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription ", dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sqlTotalGross);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string SqlOverTime = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,
|
|
A.Description, SUM(A.changedamount) Amount
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,C.Description as CDescription,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName
|
|
from Grades G,Department D,Employee E,Category C ,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG
|
|
where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q)
|
|
AND C.CategoryID=S.CategoryID AND Sd.ItemID Not In(13,11,15,16,14) and ItemCode in(-102,-103)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,
|
|
C.Description as CDescription,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName
|
|
from Grades G,Department D,Employee E, Category C,SALARYMONTHLY S, SalaryMonthlyDetail Sd ,Designation DG
|
|
where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup in(1,4) AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND C.CategoryID=S.CategoryID
|
|
AND Sd.ItemID Not In(13,11,15,16,14) and ItemCode in(-102,-103)
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position order by A.EmployeeNo,A.Position", dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(SqlOverTime);
|
|
|
|
tempdataset.Tables[0].TableName = "OverTime";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sqlTransport = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,
|
|
A.Description, SUM(A.changedamount) Amount
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,C.Description as CDescription,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName
|
|
from Grades G,Department D,Employee E,Category C ,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG
|
|
where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup in(8) AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q)
|
|
AND C.CategoryID=S.CategoryID AND Sd.ItemID In(19) and ItemCode in(-113)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,
|
|
C.Description as CDescription,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName
|
|
from Grades G,Department D,Employee E, Category C,SALARYMONTHLY S, SalaryMonthlyDetail Sd ,Designation DG
|
|
where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup in(1) AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND C.CategoryID=S.CategoryID
|
|
AND Sd.ItemID In(19) and ItemCode in(-113)
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position order by A.EmployeeNo,A.Position", dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sqlTransport);
|
|
|
|
tempdataset.Tables[0].TableName = "Transport";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sqlLumSumItem = SQLParser.MakeSQL("select A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from"
|
|
+ " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription"
|
|
+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND C.CategoryID=S.CategoryID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=8 AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID In(13,11,15,16,14)"
|
|
+ " union"
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription"
|
|
+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND C.CategoryID=S.CategoryID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID In(13,11,15,16,14)"
|
|
+ " UNION"
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription"
|
|
+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,Designation DG,Category C"
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND C.CategoryID=S.CategoryID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=1 AND DG.DESIGNATIONID=E.DESIGNATIONID AND S.EmployeeID IN(%q) AND Sd.ItemID In(13,11,15,16,14)"
|
|
+ " ) A group by"
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,"
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.EmployeeNo", dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sqlLumSumItem);
|
|
|
|
tempdataset.Tables[0].TableName = "LumSumItem";
|
|
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sqlGrandTotal = SQLParser.MakeSQL("select E.EmployeeNo, E.Name,A.GName,A.DName,'Grand Total' as Description, Sum(A.amount) as amount,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription"
|
|
+ " from"
|
|
+ " (select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription"
|
|
+ " from SALARYMONTHLY S,Grades G,Department D, SalaryMonthlyDetail Sd,Designation AS DG,Category C"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
+ " AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND C.CategoryID=S.CategoryID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,Dg.NAME,C.Description"
|
|
+ " UNION"
|
|
+ " select S.EmployeeID, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription"
|
|
+ " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation AS DG,Category C"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND C.CategoryID=S.CategoryID and Sd.ItemGroup IN (2) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,Dg.NAME,C.Description"
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID"
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.DName,A.DGName,E.BIRTHDATE,E.JOININGDATE," +
|
|
"E.DATEOFCONFIRMATION,A.CDescription ", dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sqlGrandTotal);
|
|
|
|
tempdataset.Tables[0].TableName = "GrandTotal";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sqlDeductItem = SQLParser.MakeSQL("select A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
+ " A.Description, SUM(A.changedamount) Amount,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription"
|
|
+ " from"
|
|
+ " (select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription"
|
|
+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND C.CategoryID=S.CategoryID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
//+ " union"
|
|
//+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,"
|
|
//+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription"
|
|
//+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
//+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND C.CategoryID=S.CategoryID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
+ " ) A group by"
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.DGName,A.BIRTHDATE,A.JOININGDATE,A.DATEOFCONFIRMATION,A.CDescription,"
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position order by A.EmployeeNo,A.Position",
|
|
dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sqlDeductItem);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sqlTotalDeduct = SQLParser.MakeSQL("select E.EmployeeNo, E.Name,A.GName,A.DName, 'Total Deduction' as Description, Sum(A.amount) as amount,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription"
|
|
+ " from"
|
|
+ " (select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription"
|
|
+ " from GRADES G,DEPARTMENT D,SALARYMONTHLY S,SalaryMonthlyDetail Sd,Designation DG,Category C"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND C.CategoryID=S.CategoryID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (3) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,DG.NAME,C.Description"
|
|
//+ " UNION"
|
|
//+ " select S.EmployeeID, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,C.Description as CDescription"
|
|
//+ " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Designation AS DG,Category C"
|
|
//+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
//+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND C.CategoryID=S.CategoryID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2) AND DG.DESIGNATIONID=S.DESIGNATIONID AND S.EmployeeID IN(%q)"
|
|
//+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION,DG.NAME,C.Description"
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID"
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.DName,A.DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,A.CDescription", dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sqlTotalDeduct);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalDeduct";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sqlNetPay = SQLParser.MakeSQL("select S.EmployeeID, E.EMPLOYEENO,E.NAME,'Net Pay' as Description,sd.changedamount as Amount,G.DESCRIPTION as GName,D.DESCRIPTION as DName,DG.NAME AS DGName,E.BIRTHDATE,E.JOININGDATE,E.DATEOFCONFIRMATION,C.Description as CDescription"
|
|
+ " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd,Employee E,Designation AS DG,Category C"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
+ " AND S.SalaryMonth=%d"
|
|
+ " AND G.GRADEID=S.GRADEID"
|
|
+ " AND D.DEPARTMENTID=S.DEPARTMENTID"
|
|
+ " AND C.CategoryID=S.CategoryID"
|
|
+ " AND E.EMPLOYEEID=S.EMPLOYEEID"
|
|
+ " AND DG.DESIGNATIONID=S.DESIGNATIONID"
|
|
+ " and Sd.ItemGroup IN (5) AND S.EmployeeID IN(%q)"
|
|
+ " order by E.EMPLOYEENO", dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sqlNetPay);
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetPrvMonthNetSalary(TransactionContext tc, DateTime dateTime, string sEmpID, bool IsNetSum)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
if (IsNetSum)
|
|
{
|
|
oSMonthlys = tc.ExecuteDataSet("Select S.DEPARTMENTID,D.Description,Sum(SD.CHANGEDAMOUNT) Amount"
|
|
+ " from DEPARTMENT D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d"
|
|
+ " AND D.DEPARTMENTID=S.DEPARTMENTID "
|
|
+ " and Sd.ItemGroup IN (5) AND S.EmployeeID IN(%q)"
|
|
+ " group by S.DepartmentID,D.Description", dateTime, sEmpID);
|
|
}
|
|
else
|
|
{
|
|
oSMonthlys = tc.ExecuteDataSet("Select E.EmployeeNo,'Net Pay' Description,SD.CHANGEDAMOUNT Amount"
|
|
+ " from EMPLOYEE E,GRADES G,DEPARTMENT D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d"
|
|
+ " AND G.GRADEID=S.GRADEID "
|
|
+ " AND D.DEPARTMENTID=S.DEPARTMENTID "
|
|
+ " AND E.EMPLOYEEID =S.EMPLOYEEID "
|
|
+ " and Sd.ItemGroup IN (5) AND S.EmployeeID IN(%q)"
|
|
+ " order by E.EMPLOYEENO ", dateTime, sEmpID);
|
|
}
|
|
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetEmpPaySlipIncomeTaxAmount(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
#region Latest Old Code
|
|
oSMonthlys = tc.ExecuteDataSet("SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,SM.Designation 'Designation',L.Description LName,"
|
|
+ " D.DESCRIPTION Department,E.BASICSALARY ActualBasic,E.PAYMENTMODE,"
|
|
+ " SM.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,"
|
|
+ " SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID"
|
|
+ " FROM SALARYMONTHLY SM,Employee E,Grades G,Department D,Designation DG,Location L,"
|
|
+ " SalaryMonthlyDetail SMD"
|
|
+ " WHERE SM.EMPLOYEEID=E.EMPLOYEEID"
|
|
+ " AND SM.GRADEID=G.GRADEID"
|
|
+ " AND SM.DEPARTMENTID=D.DEPARTMENTID"
|
|
+ " AND SM.LocationID=L.LocationID"
|
|
+ " AND SM.DESIGNATIONID=DG.DESIGNATIONID"
|
|
+ " AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID"
|
|
+ " AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=5 AND SMD.ITEMCODE IN(-129,-132) AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position", dateTime, sEmpID);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
#endregion
|
|
|
|
#region Change Old Code
|
|
// oSMonthlys = tc.ExecuteDataSet(@"SELECT E.NAME Name,E.EMPLOYEENO,G.CODE Grade,DG.Name 'Designation',L.Description LName,
|
|
// D.DESCRIPTION Department,E.BASICSALARY ActualBasic,E.PAYMENTMODE,
|
|
// BAH.ACCOUNTNO,SM.SalaryMonth,SMD.DESCRIPTION Description,SMD.ITEMGROUP,
|
|
// SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID
|
|
// FROM SALARYMONTHLY SM,Employee E,Grades G,Department D,Designation DG,Location L,
|
|
// SalaryMonthlyDetail SMD,BANKACCOUNTHISTORY BAH
|
|
// WHERE SM.EMPLOYEEID=E.EMPLOYEEID
|
|
// AND SM.GRADEID=G.GRADEID
|
|
// AND SM.DEPARTMENTID=D.DEPARTMENTID
|
|
// AND SM.LocationID=L.LocationID
|
|
// AND SM.DESIGNATIONID=DG.DESIGNATIONID
|
|
// AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
// AND BAH.CHANGEDATE=(select MAX(ChangeDate) from BANKACCOUNTHISTORY where CHANGEDATE <=%d AND EMPLOYEEID=SM.EMPLOYEEID)
|
|
// and BAH.EMPLOYEEID=SM.EmployeeID
|
|
// AND SM.SalaryMonth=%d AND SMD.ITEMGROUP=5 AND SMD.ITEMCODE IN(-129,-132) AND SM.EmployeeID IN(%q) ORDER BY E.EmployeeNo, Position
|
|
// ", dateTime, dateTime, sEmpID);
|
|
#endregion
|
|
|
|
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetCCWiseSalarySheet(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
DataSet rootDataset = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
#region Latest Old Code
|
|
// oSMonthlys = tc.ExecuteDataSet(@"Select Emp.EmployeeNo,Emp.Name,CC.Code,Dep.Description,Emp.GrossSalary,SMD.ChangedAmount 'PFAmount'
|
|
// from Employee Emp,Department Dep,SalaryMonthly SM,CRG CC,
|
|
// SalaryMonthlyDetail SMD,SalaryEmpCostCenter SEmpCC
|
|
// where Emp.EmployeeID=SM.EmployeeID
|
|
// and Emp.DepartmentID=SM.DepartmentID
|
|
// and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
// and SEmpCC.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
// and Dep.DepartmentID=SM.DepartmentID
|
|
// and CC.CRGID=SEmpCC.CostCenterID
|
|
// and Emp.EmployeeID=SEmpCC.EmployeeID
|
|
// and SM.SalaryMonth=%d
|
|
// and SMD.ItemCode=-128 and SMD.ItemGroup=3 and SM.EmployeeId in(%q)
|
|
// order by CC.Code", dateTime, sEmpID);
|
|
|
|
string sSQL = SQLParser.MakeSQL(@"Select CC.Code,SECC.Percentage,
|
|
Sum((SMD.ChangedAmount * (SECC.Percentage)/100)) GrossAmount
|
|
from Employee Emp,Department Dep,CRG CC,SalaryMonthly SM,
|
|
SalaryMonthlyDetail SMD,SalaryEmpCostCenter SECC
|
|
where Emp.DepartmentID=Dep.DepartmentID
|
|
and Emp.DepartmentID=SM.DepartmentID
|
|
and SM.DepartmentID=Dep.DepartmentID
|
|
and Emp.EmployeeID=SM.EmployeeID
|
|
and SM.EmployeeID=SECC.EmployeeID
|
|
and CC.CrgID=SECC.CostCenterID
|
|
and SECC.SalaryMonthlyID=SM.SalaryMonthlyID
|
|
and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and SM.SalaryMonth=%d and SMD.ItemGroup in(1,8) And SMD.CHANGEDAMOUNT<>0
|
|
and SM.EmployeeID in(%q)
|
|
group by CC.Code,
|
|
SECC.Percentage order by CC.Code", dateTime, sEmpID);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sSQL);
|
|
|
|
oSMonthlys.Tables[0].TableName = "GrossAmount";
|
|
rootDataset.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
|
|
|
|
// string sqlArrear = SQLParser.MakeSQL(@"Select Emp.EmployeeNo,Emp.Name,CC.Code,SECC.Percentage,Dep.Description,SMD.ItemGroup,Sum((SMD.ChangedAmount * (SECC.Percentage)/100)) GrossArrear
|
|
// from Employee Emp,Department Dep,CRG CC,SalaryMonthly SM,SalaryMonthlyDetail SMD,SalaryEmpCostCenter SECC
|
|
// where Emp.DepartmentID=Dep.DepartmentID
|
|
// and Emp.DepartmentID=SM.DepartmentID
|
|
// and SM.DepartmentID=Dep.DepartmentID
|
|
// and Emp.EmployeeID=SM.EmployeeID
|
|
// and SM.EmployeeID=SECC.EmployeeID
|
|
// and CC.CrgID=SECC.CostCenterID
|
|
// and SECC.SalaryMonthlyID=SM.SalaryMonthlyID
|
|
// and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
// and SM.SalaryMonth=%d and SMD.ItemGroup in(8) and SM.EmployeeID in(%q)
|
|
// group by Emp.EmployeeNo,Emp.Name,CC.Code,Dep.Description,SECC.Percentage,SMD.ItemGroup order by Emp.EmployeeNo", dateTime, sEmpID);
|
|
// oSMonthlys = tc.ExecuteDataSet(sqlArrear);
|
|
// oSMonthlys.Tables[0].TableName = "GrossArrear";
|
|
// rootDataset.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
|
|
string sSQL1 = SQLParser.MakeSQL(@"Select CC.Code,sum(SMD.ChangedAmount) PFAmount
|
|
from Employee Emp,Department Dep,SalaryMonthly SM,CRG CC,
|
|
SalaryMonthlyDetail SMD,SalaryEmpCostCenter SEmpCC
|
|
where Emp.EmployeeID=SM.EmployeeID
|
|
and Emp.DepartmentID=SM.DepartmentID
|
|
and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and SEmpCC.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and Dep.DepartmentID=SM.DepartmentID
|
|
and CC.CRGID=SEmpCC.CostCenterID
|
|
and Emp.EmployeeID=SEmpCC.EmployeeID
|
|
and SM.SalaryMonth=%d
|
|
and SMD.ItemCode=-128 and SMD.ItemGroup=3
|
|
and SM.EmployeeId in(%q) Group by CC.Code
|
|
order by CC.Code", dateTime, sEmpID);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sSQL1);
|
|
|
|
oSMonthlys.Tables[0].TableName = "PFAmount";
|
|
rootDataset.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetCCWiseSalarySummary(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
DataSet rootDataset = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
#region Latest Old Code
|
|
// string sSQL = SQLParser.MakeSQL(@"Select CC.CRGID,CC.Code,Sum(Emp.GrossSalary) 'InvolveAmount' ,Sum(SMD.ChangedAmount) 'PFAmount'
|
|
// from Employee Emp,SalaryMonthly SM,CRG CC,
|
|
// SalaryMonthlyDetail SMD,SalaryEmpCostCenter SEmpCC
|
|
// where Emp.EmployeeID=SM.EmployeeID
|
|
// and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
// and SEmpCC.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
// and CC.CRGID=SEmpCC.CostCenterID
|
|
// and Emp.EmployeeID=SEmpCC.EmployeeID
|
|
// and SM.SalaryMonth=%d
|
|
// and SMD.ItemCode=-128 and SMD.ItemGroup=3
|
|
// and SM.EmployeeId in(%q)
|
|
// group by CC.CRGID,CC.Code
|
|
// order by CC.Code
|
|
// ", dateTime, sEmpID);
|
|
// oSMonthlys = tc.ExecuteDataSet(sSQL);
|
|
|
|
|
|
string sSQL = SQLParser.MakeSQL(@"Select CC.Code,SECC.Percentage,SMD.ItemGroup,Sum((SMD.ChangedAmount * (SECC.Percentage)/100)) GrossAmount
|
|
from Employee Emp,Department Dep,CRG CC,SalaryMonthly SM,SalaryMonthlyDetail SMD,SalaryEmpCostCenter SECC
|
|
where Emp.DepartmentID=Dep.DepartmentID
|
|
and Emp.DepartmentID=SM.DepartmentID
|
|
and SM.DepartmentID=Dep.DepartmentID
|
|
and Emp.EmployeeID=SM.EmployeeID
|
|
and SM.EmployeeID=SECC.EmployeeID
|
|
and CC.CrgID=SECC.CostCenterID
|
|
and SECC.SalaryMonthlyID=SM.SalaryMonthlyID
|
|
and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and SM.SalaryMonth=%d and SMD.ItemGroup in(1)
|
|
and Emp.EmployeeID in(%q)
|
|
group by CC.Code,SECC.Percentage,SMD.ItemGroup order by CC.Code", dateTime, sEmpID);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sSQL);
|
|
|
|
oSMonthlys.Tables[0].TableName = "GrossAmount";
|
|
rootDataset.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(@"Select CC.Code,SECC.Percentage,SMD.ItemGroup,Sum((SMD.ChangedAmount * (SECC.Percentage)/100)) GrossAmount
|
|
from Employee Emp,Department Dep,CRG CC,SalaryMonthly SM,SalaryMonthlyDetail SMD,SalaryEmpCostCenter SECC
|
|
where Emp.DepartmentID=Dep.DepartmentID
|
|
and Emp.DepartmentID=SM.DepartmentID
|
|
and SM.DepartmentID=Dep.DepartmentID
|
|
and Emp.EmployeeID=SM.EmployeeID
|
|
and SM.EmployeeID=SECC.EmployeeID
|
|
and CC.CrgID=SECC.CostCenterID
|
|
and SECC.SalaryMonthlyID=SM.SalaryMonthlyID
|
|
and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and SM.SalaryMonth=%d and SMD.ItemGroup in(8)
|
|
and Emp.EmployeeID in(%q)
|
|
group by CC.Code,SECC.Percentage,SMD.ItemGroup order by CC.Code", dateTime, sEmpID);
|
|
|
|
oSMonthlys.Tables[0].TableName = "GrossArrear";
|
|
rootDataset.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
|
|
string sSQL1 = SQLParser.MakeSQL(@"Select CC.Code,SMD.ChangedAmount 'PFAmount'
|
|
from Employee Emp,Department Dep,SalaryMonthly SM,CRG CC,
|
|
SalaryMonthlyDetail SMD,SalaryEmpCostCenter SEmpCC
|
|
where Emp.EmployeeID=SM.EmployeeID
|
|
and Emp.DepartmentID=SM.DepartmentID
|
|
and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and SEmpCC.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and Dep.DepartmentID=SM.DepartmentID
|
|
and CC.CRGID=SEmpCC.CostCenterID
|
|
and Emp.EmployeeID=SEmpCC.EmployeeID
|
|
and SM.SalaryMonth=%d
|
|
and SMD.ItemCode=-128 and SMD.ItemGroup=3 and SM.EmployeeId in(%q)
|
|
order by Emp.EmployeeNo", dateTime, sEmpID);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sSQL1);
|
|
|
|
oSMonthlys.Tables[0].TableName = "PFAmount";
|
|
rootDataset.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetSGSSalarySheet(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
if(sEmpID == "")
|
|
{
|
|
throw new Exception("Salary is not processed");
|
|
}
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string sql = SQLParser.MakeSQL("select A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
+ " A.Description, SUM(A.changedamount) Amount, A.Itemid, A.ItemCode, A.ItemGroup"
|
|
+ " from"
|
|
+ "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8,4) AND S.EmployeeID IN(%q) AND SD.ItemID Not IN(13,11,15,16,14) AND SD.itemcode NOT IN (-139, -102, -103)"
|
|
//+ " union"
|
|
//+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
//+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
//+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
//+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) AND SD.ItemID Not IN(13,11,15,16,14)"
|
|
+ " UNION "
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1,4) AND S.EmployeeID IN(%q) AND SD.ItemID Not IN(13,11,15,16,14) AND SD.itemcode NOT IN (-139, -102, -103)"
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position,A.ItemGroup order by A.Position,A.EmployeeNo",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sql);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
sql = SQLParser.MakeSQL("select E.EmployeeNo, E.Name,A.GName,A.DName,'Total Gross' Description, Sum(A.amount) amount "
|
|
+ " from"
|
|
+ "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
+ " from SALARYMONTHLY S,Grades G,Department D, SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q) and Sd.ItemID Not In(13,11,15,16,14,19) and Sd.ITEMCODE Not In(-102,-103) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION "
|
|
+ " UNION"
|
|
+ " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
+ " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) and Sd.ItemID Not In(13,11,15,16,14,19) and Sd.ITEMCODE Not In(-102,-103) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION "
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.DName ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(sql);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string sqlOverTime = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.DName, A.Description, SUM(A.changedamount) Amount
|
|
from(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName
|
|
from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8,4)
|
|
and ItemCode in(-102,-103) AND S.EmployeeID IN(%q) AND SD.ItemID Not IN(13,11,15,16,14,19)
|
|
UNION select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,D.DESCRIPTION as DName
|
|
from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(1,4)
|
|
and ItemCode in(-102,-103) AND S.EmployeeID IN(%q) AND SD.ItemID Not IN(13,11,15,16,14,19) ) A
|
|
group by A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName, A.ItemCode, A.ItemID, A.Description,A.Position
|
|
order by A.Position,A.EmployeeNo", dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(sqlOverTime);
|
|
|
|
tempdataset.Tables[0].TableName = "OverTime";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from"
|
|
+ "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=8 AND S.EmployeeID IN(%q) AND SD.ItemID IN(13,11,15,16,14)"
|
|
+ " union"
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) AND SD.ItemID IN(13,11,15,16,14)"
|
|
+ " UNION "
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=1 AND S.EmployeeID IN(%q) AND SD.ItemID IN(13,11,15,16,14)"
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.EmployeeNo",
|
|
dateTime, sEmpID, dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "LumSumItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.DName,'Grand Total' Description, Sum(A.amount) amount "
|
|
+ " from"
|
|
+ "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
+ " from SALARYMONTHLY S,Grades G,Department D, SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)"
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION "
|
|
+ " UNION"
|
|
+ " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
+ " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q)"
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION "
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.DName ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "GrandTotal";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select A.EmployeeNo, A.Name,A.GName,A.DName,"
|
|
+ " A.Description, SUM(A.changedamount) Amount"
|
|
+ " from "
|
|
+ "(select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q) "
|
|
+ " union"
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,D.DESCRIPTION DName"
|
|
+ " from Grades G,Department D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID AND D.DepartmentID=E.DepartmentID AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) "
|
|
//+ " UNION "
|
|
//+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, "
|
|
//+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount from Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
//+ " where E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=1 "
|
|
+ " ) A group by "
|
|
+ " A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName, "
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.EmployeeNo",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("select E.EmployeeNo, E.Name,A.GName,A.DName, 'Total Deduction' Description, Sum(A.amount) amount "
|
|
+ " from"
|
|
+ "( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
+ " from GRADES G,DEPARTMENT D,SALARYMONTHLY S,SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (3) AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION"
|
|
+ " UNION"
|
|
+ " select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,D.DESCRIPTION DName "
|
|
+ " from GRADES G,DEPARTMENT D,SALARYMONTHLY S, SalaryMonthlyDetail Sd where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID AND D.DEPARTMENTID=S.DEPARTMENTID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,D.DESCRIPTION"
|
|
+ " ) A, Employee E where A.EmployeeID = E.EmployeeID group by E.EmployeeNo, E.Name,A.GName,A.DName ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
tempdataset = tc.ExecuteDataSet("Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,D.DESCRIPTION DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount"
|
|
+ " from EMPLOYEE E,GRADES G,DEPARTMENT D,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d"
|
|
+ " AND G.GRADEID=S.GRADEID "
|
|
+ " AND D.DEPARTMENTID=S.DEPARTMENTID "
|
|
+ " AND E.EMPLOYEEID =S.EMPLOYEEID "
|
|
+ " and Sd.ItemGroup IN (5) AND S.EmployeeID IN(%q)"
|
|
+ " order by E.EMPLOYEENO ", dateTime, sEmpID);
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetEmpSSSummaryByDept(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
//oSMonthlys = tc.ExecuteDataSet("SELECT SM.DEPARTMENTID,Dep.Description,Count(Distinct SM.EMPLOYEEID) TEmp,"
|
|
// + " Basic=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " HR=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " MED=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " Conv=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " Arre=Sum(CASE WHEN (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5) THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " OT=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-103 AND SMD.ITEMID=1 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " REMO=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=6 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " LVENCA=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=10 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " OTH=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=8 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " INCTAX=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-129 AND SMD.ITEMID=-129 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " PF=Sum(CASE WHEN SMD.ITEMGROUP =3 AND SMD.ITEMCODE=-128 AND SMD.ITEMID=-128 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " LOANADV=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-118 AND SMD.ITEMID=2 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " WPAY=Sum(CASE WHEN (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5) THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
// + " OTHER=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-115 AND SMD.ITEMID=9 THEN SMD.CHANGEDAMOUNT ELSE 0 END)"
|
|
// + " FROM SALARYMONTHLY SM "
|
|
// + " INNER JOIN SALARYMONTHLYDETAIL SMD"
|
|
// + " ON SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID "
|
|
// + " AND SM.SalaryMonth=%d"
|
|
// + " AND SM.EMPLOYEEID in(%q)"
|
|
// + " Inner Join Department Dep"
|
|
// + " On Dep.DEPARTMENTID=SM.DEPARTMENTID"
|
|
// + " GROUP by SM.DEPARTMENTID,Dep.Description", dateTime, sEmpID);
|
|
|
|
string sql =
|
|
SQLParser.MakeSQL("SELECT SM.DEPARTMENTID,Dep.Description,Count(Distinct SM.EMPLOYEEID) TEmp,"
|
|
+
|
|
" Basic=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" HR=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" MED=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" Conv=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" Arre=Sum(CASE WHEN (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5) THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" OT=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-103 AND SMD.ITEMID = 1 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" REMO=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=6 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" LVENCA=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=10 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" OTH=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=8 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" INCTAX=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-129 AND SMD.ITEMID=-129 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" PF=Sum(CASE WHEN SMD.ITEMGROUP =3 AND SMD.ITEMCODE=-128 AND SMD.ITEMID=-128 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" LOANADV=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-118 AND SMD.ITEMID=2 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" WPAY=Sum(CASE WHEN (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5) THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" OTHER=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-115 AND SMD.ITEMID=9 THEN SMD.CHANGEDAMOUNT ELSE 0 END)"
|
|
+ " FROM SALARYMONTHLY SM "
|
|
+ " INNER JOIN SALARYMONTHLYDETAIL SMD"
|
|
+ " ON SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID "
|
|
+ " AND SM.SalaryMonth=%d"
|
|
+ " AND SM.EMPLOYEEID in(%q)"
|
|
+ " Inner Join Department Dep"
|
|
+ " On Dep.DEPARTMENTID=SM.DEPARTMENTID"
|
|
+ " GROUP by SM.DEPARTMENTID,Dep.Description",
|
|
dateTime,
|
|
sEmpID);
|
|
|
|
|
|
oSMonthlys = tc.ExecuteDataSet("SELECT SM.DEPARTMENTID,Dep.Description,Count(Distinct SM.EMPLOYEEID) TEmp,"
|
|
+ " Basic=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " HR=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " MED=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " Conv=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " Arre=Sum(CASE WHEN (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5) THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " OT=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-103 AND SMD.ITEMID = 1 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " REMO=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=6 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " LVENCA=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=10 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " OTH=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=8 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " INCTAX=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-129 AND SMD.ITEMID=-129 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " PF=Sum(CASE WHEN SMD.ITEMGROUP =3 AND SMD.ITEMCODE=-128 AND SMD.ITEMID=-128 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " LOANADV=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-118 AND SMD.ITEMID=2 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " WPAY=Sum(CASE WHEN (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5) THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+ " OTHER=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-115 AND SMD.ITEMID=9 THEN SMD.CHANGEDAMOUNT ELSE 0 END)"
|
|
+ " FROM SALARYMONTHLY SM "
|
|
+ " INNER JOIN SALARYMONTHLYDETAIL SMD"
|
|
+ " ON SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID "
|
|
+ " AND SM.SalaryMonth=%d"
|
|
+ " AND SM.EMPLOYEEID in(%q)"
|
|
+ " Inner Join Department Dep"
|
|
+ " On Dep.DEPARTMENTID=SM.DEPARTMENTID"
|
|
+ " GROUP by SM.DEPARTMENTID,Dep.Description", dateTime, sEmpID);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static IDataReader Get(TransactionContext tc, int nEmpID, DateTime dateTime)
|
|
{
|
|
return tc.ExecuteReader("SELECT * FROM SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth=%d", nEmpID, dateTime);
|
|
}
|
|
|
|
internal static DataSet GetEmpSalaryReconciliationSummary(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
DataSet RootDataSet = new DataSet();
|
|
string sSQL = string.Empty;
|
|
string sSQLDeduct = string.Empty;
|
|
try
|
|
{
|
|
sSQL = SQLParser.MakeSQL(@"
|
|
Select A.DESCRIPTION,SUM(A.CHANGEDAMOUNT) as Amount,A.ITEMID,A.ITEMCODE from
|
|
(Select sm.EmployeeID, SMD.DESCRIPTION,SMD.CHANGEDAMOUNT,SMD.ITEMID,SMD.ITEMCODE from SALARYMONTHLYDETAIL SMD,SALARYMONTHLY SM
|
|
where SM.EMPLOYEEID in(%q) AND SMD.ITEMGROUP IN(1,8) AND SM.SALARYMONTH=%d AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
AND SMD.CHANGEDAMOUNT<>0 and sm.Salarywithheld<>1
|
|
Union
|
|
Select sm.EmployeeID, SMD.DESCRIPTION,-SMD.CHANGEDAMOUNT ,SMD.ITEMID,SMD.ITEMCODE from SALARYMONTHLYDETAIL SMD,SALARYMONTHLY SM
|
|
where SM.EMPLOYEEID in(%q) AND SMD.ITEMGROUP IN(2) AND SM.SALARYMONTH=%d AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
AND SMD.CHANGEDAMOUNT<>0 and sm.Salarywithheld<>1)A
|
|
GROUP by A.ITEMID,A.ITEMCODE,A.DESCRIPTION order by A.ITEMCODE desc", sEmpID, dateTime, sEmpID, dateTime);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sSQL);
|
|
oSMonthlys.Tables[0].TableName = "GrossItem";
|
|
RootDataSet.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
|
|
sSQLDeduct = SQLParser.MakeSQL("Select SMD.DESCRIPTION,SUM(SMD.CHANGEDAMOUNT) as Amount,SMD.ITEMID,SMD.ITEMCODE"
|
|
+ " from SALARYMONTHLYDETAIL SMD,SALARYMONTHLY SM"
|
|
+ " where SM.EMPLOYEEID in(%q)"
|
|
+ " AND SMD.ITEMGROUP IN(3)"
|
|
+ " AND SM.SALARYMONTH=%d"
|
|
+ " AND SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID"
|
|
+ " AND SMD.CHANGEDAMOUNT<>0 and sm.Salarywithheld<>1"
|
|
+ " GROUP by SMD.ITEMID,SMD.ITEMCODE,SMD.DESCRIPTION"
|
|
+ " order by SMD.ITEMCODE asc", sEmpID, dateTime);
|
|
oSMonthlys = tc.ExecuteDataSet(sSQLDeduct);
|
|
oSMonthlys.Tables[0].TableName = "TotalDeduction";
|
|
RootDataSet.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return RootDataSet;
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region Delete function
|
|
|
|
internal static void Delete(TransactionContext tc, int nID)
|
|
{
|
|
tc.ExecuteNonQuery("DELETE FROM SalaryMonthlyDetail WHERE SalaryMonthlyID=%n", nID);
|
|
tc.ExecuteNonQuery("DELETE FROM SalaryEmpCostCenter WHERE SalaryMonthlyID=%n", nID);
|
|
tc.ExecuteNonQuery("DELETE FROM SalaryMonthly WHERE SalaryMonthlyID=%n", nID);
|
|
}
|
|
|
|
internal static void DeleteSalaryDetail(TransactionContext tc, int nID)
|
|
{
|
|
tc.ExecuteNonQuery("DELETE FROM SalaryMonthlyDetail WHERE SalaryMonthlyID=%n", nID);
|
|
}
|
|
|
|
internal static void DeleteSalaryEmpCC(TransactionContext tc, int nID)
|
|
{
|
|
tc.ExecuteNonQuery("DELETE FROM SalaryEmpCostCenter WHERE SalaryMonthlyID=%n", nID);
|
|
}
|
|
|
|
#endregion
|
|
|
|
internal static DataSet GetEmpSalarySheet(TransactionContext tc, DateTime dateTime, DateTime dateTime2, string sEmpID)
|
|
{
|
|
if (dateTime > dateTime2)
|
|
{
|
|
DateTime temp = dateTime2;
|
|
dateTime2 = dateTime;
|
|
dateTime = temp;
|
|
}
|
|
String errStr = string.Empty;
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string query1 = SQLParser
|
|
.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
A.Description,A.Dept ,SUM(A.changedamount) Amount
|
|
from
|
|
(
|
|
select
|
|
S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,G.DESCRIPTION GName,
|
|
D.Name DName,G.Code GCode,G.SequenceNo,dep.DESCRIPTION Dept,
|
|
Sum(sd.changedamount) changedamount
|
|
from
|
|
Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S
|
|
, SalaryMonthlyDetail Sd,Department dep
|
|
where G.GradeID= E.GradeID
|
|
AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND S.SalaryMonth between %d and %d
|
|
AND S.EmployeeID IN(%q)
|
|
and Sd.ItemGroup in(8) AND sd.ItemCode not in(-133)
|
|
GROUP BY
|
|
S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,G.DESCRIPTION,D.Name,G.Code,G.SequenceNo,dep.DESCRIPTION
|
|
UNION
|
|
select
|
|
S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,
|
|
G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo,
|
|
dep.DESCRIPTION Dept, Sum(sd.changedamount) changedamount
|
|
from
|
|
Grades G,DESIGNATION D,Employee E,
|
|
SALARYMONTHLY S, SalaryMonthlyDetail Sd,Department dep
|
|
where
|
|
G.GradeID= E.GradeID
|
|
AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND S.SalaryMonth between %d and %d
|
|
AND S.EmployeeID IN(%q)
|
|
and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133)
|
|
GROUP BY
|
|
S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,G.DESCRIPTION,D.Name,G.Code,G.SequenceNo,dep.DESCRIPTION
|
|
) A
|
|
group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position,A.JoiningDate,A.Dept
|
|
order by
|
|
A.Position,A.EmployeeNo,A.SequenceNo,A.GCode",
|
|
dateTime, dateTime2, sEmpID, dateTime, dateTime2, sEmpID);
|
|
|
|
errStr = "Error Executing [GrossItem]";
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
tc.End();
|
|
tc = TransactionContext.Begin();
|
|
|
|
string query2 = SQLParser
|
|
.MakeSQL(@"select
|
|
A.EmployeeNo, A.Name,A.JoiningDate,A.Description,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Dept,Sum(A.Amount) amount
|
|
from
|
|
(
|
|
select
|
|
E.EmployeeNo, E.Name,E.JoiningDate,'Total Gross' Description,G.DESCRIPTION GName,
|
|
G.Code GCode,G.SequenceNo,D.Name DName,dep.DESCRIPTION Dept,Sum(sd.changedamount) Amount
|
|
from
|
|
SALARYMONTHLY S,Grades G,DESIGNATION D,SalaryMonthlyDetail Sd,
|
|
Employee E, Department dep
|
|
where
|
|
S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=E.GRADEID
|
|
AND E.EmployeeID = S.EmployeeID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND S.SalaryMonth between %d and %d
|
|
AND S.EmployeeID IN(%q)
|
|
and Sd.ItemGroup IN (1, 8)
|
|
group by
|
|
E.EmployeeNo, E.Name,E.JoiningDate,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,dep.DESCRIPTION
|
|
UNION
|
|
select
|
|
E.EmployeeNo, E.Name,E.JoiningDate,'Total Gross' Description,G.DESCRIPTION GName,
|
|
G.Code GCode,G.SequenceNo,D.Name DName,dep.DESCRIPTION Dept,-Sum(sd.changedamount) Amount
|
|
from
|
|
SALARYMONTHLY S,Grades G,DESIGNATION D,SalaryMonthlyDetail Sd,
|
|
Employee E, Department dep
|
|
where
|
|
S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=E.GRADEID
|
|
AND E.EmployeeID = S.EmployeeID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND S.SalaryMonth between %d and %d
|
|
AND S.EmployeeID IN(%q)
|
|
and Sd.ItemGroup IN (2)
|
|
group by
|
|
E.EmployeeNo, E.Name,E.JoiningDate,G.DESCRIPTION,G.SequenceNo
|
|
,G.Code,D.Name,dep.DESCRIPTION
|
|
) A
|
|
group by
|
|
A.EmployeeNo, A.Name,A.JoiningDate,A.Description,A.GName,A.GCode
|
|
,A.SequenceNo,A.DName,A.Dept",
|
|
dateTime, dateTime2, sEmpID, dateTime, dateTime2, sEmpID);
|
|
errStr = "Error Executing [TotalGross]";
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
tc.End();
|
|
tc = TransactionContext.Begin();
|
|
|
|
string query3 = SQLParser
|
|
.MakeSQL(@"select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID,A.Dept
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, SUM(sd.changedamount) changedamount,G.DESCRIPTION GName,
|
|
G.Code GCode,G.SequenceNo,D.Name DName,dep.DESCRIPTION Dept
|
|
from Grades G,DESIGNATION D,Employee E,Department dep,
|
|
SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND S.SalaryMonth between %d and %d
|
|
AND S.EmployeeID IN(%q)
|
|
and Sd.ItemGroup=3
|
|
Group By
|
|
S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,G.DESCRIPTION,
|
|
G.Code,G.SequenceNo,D.Name,dep.DESCRIPTION
|
|
union
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, -SUM(sd.changedamount) changedamount,G.DESCRIPTION GName,
|
|
G.Code GCode,G.sequenceNo,D.Name DName,dep.DESCRIPTION Dept
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
,Department dep
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND S.SalaryMonth between %d and %d
|
|
AND S.EmployeeID IN(%q)
|
|
and Sd.ItemGroup=2
|
|
Group By
|
|
S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,G.DESCRIPTION,
|
|
G.Code,G.SequenceNo,D.Name,dep.DESCRIPTION
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position,A.JoiningDate,A.Dept
|
|
order by A.EmployeeNo,A.Position,A.SequenceNo,A.GCode",
|
|
dateTime, dateTime2, sEmpID, dateTime, dateTime2, sEmpID);
|
|
|
|
errStr = "Error Executing [DeductItem]";
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
tc.End();
|
|
tc = TransactionContext.Begin();
|
|
|
|
string query4 = SQLParser
|
|
.MakeSQL(@"select A.EmployeeNo,A.JoiningDate, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.Dept,
|
|
A.Description, SUM(A.changedamount) Amount
|
|
from(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, Sum(sd.changedamount) changedamount,G.DESCRIPTION GName,
|
|
G.Code GCode,G.SequenceNo,D.Name DName,dep.DESCRIPTION Dept
|
|
from
|
|
Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S,Department dep
|
|
,SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND S.SalaryMonth between %d and %d
|
|
AND S.EmployeeID IN(%q)
|
|
and Sd.ITEMCODE =-133
|
|
Group By
|
|
S.EmployeeID, E.EmployeeNo,E.JoiningDate, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,G.DESCRIPTION,
|
|
G.Code,G.SequenceNo,D.Name,dep.DESCRIPTION
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, Sum(sd.changedamount) changedamount,G.DESCRIPTION GName,
|
|
G.Code GCode,G.SequenceNo,D.Name DName,dep.DESCRIPTION Dept
|
|
from Grades G,DESIGNATION D,Employee E,
|
|
SALARYMONTHLY S, SalaryMonthlyDetail Sd ,Department dep
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
and Sd.ITEMCODE =-133
|
|
AND S.SalaryMonth between %d and %d
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND S.EmployeeID IN(%q)
|
|
Group By
|
|
S.EmployeeID, E.EmployeeNo,E.JoiningDate, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,G.DESCRIPTION,
|
|
G.Code,G.SequenceNo,D.Name,dep.DESCRIPTION
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo,A.JoiningDate, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.Dept,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position order by A.Position,A.SequenceNo,
|
|
A.GCode,A.EmployeeNo", dateTime, dateTime2, sEmpID, dateTime, dateTime2, sEmpID);
|
|
|
|
errStr = "Error Executing [LeaveDays]";
|
|
tempdataset = tc.ExecuteDataSet(query4);
|
|
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
tc.End();
|
|
tc = TransactionContext.Begin();
|
|
|
|
string query5 = SQLParser
|
|
.MakeSQL(@"select
|
|
E.EmployeeNo, E.Name,E.JoiningDate,G.DESCRIPTION GName,G.Code GCode,
|
|
G.SequenceNo,D.Name DName ,dep.DESCRIPTION Dept,'UnAuthorized' Description,
|
|
Sum(sd.changedamount) Amount
|
|
from
|
|
GRADES G,DESIGNATION D,SALARYMONTHLY S
|
|
,SalaryMonthlyDetail Sd,Employee E,Department dep
|
|
where
|
|
S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=E.GRADEID
|
|
AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND S.EmployeeID = E.EmployeeID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND Sd.ItemGroup IN (2)
|
|
AND S.SalaryMonth between %d and %d
|
|
AND S.EmployeeID IN(%q)
|
|
group by
|
|
E.EmployeeNo, E.Name,E.JoiningDate,G.DESCRIPTION
|
|
,G.SequenceNo,G.Code,D.Name,dep.DESCRIPTION", dateTime, dateTime2, sEmpID);
|
|
|
|
errStr = "Error Executing [UnAuthorized]";
|
|
tempdataset = tc.ExecuteDataSet(query5);
|
|
|
|
tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
tc.End();
|
|
tc = TransactionContext.Begin();
|
|
|
|
string query6 = SQLParser
|
|
.MakeSQL(@"select E.EmployeeNo, E.Name,E.JoiningDate,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
dep.DESCRIPTION Dept,'Total Deduction' Description, Sum(A.amount) amount
|
|
from
|
|
(select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,
|
|
G.Code GCode,G.SequenceNo,D.Name DName
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2,3)
|
|
AND S.SalaryMonth between %d And %d
|
|
AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
) A, Employee E,Department dep
|
|
where
|
|
A.EmployeeID = E.EmployeeID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,
|
|
A.DName,E.JoiningDate,dep.DESCRIPTION
|
|
order by E.EmployeeNo,A.sequenceno,A.GCode", dateTime, dateTime2, sEmpID);
|
|
|
|
errStr = "Error Executing [TotalDeduction]";
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
tc.End();
|
|
tc = TransactionContext.Begin();
|
|
|
|
string query7 = SQLParser
|
|
.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION GName,G.Code GCode,dep.DESCRIPTION Dept,
|
|
G.SequenceNo,D.Name DName ,'Net Pay' Description,SUM(SD.CHANGEDAMOUNT) Amount
|
|
from EMPLOYEE E,GRADES G,DESIGNATION D,Department dep,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth between %d and %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
and Sd.ItemGroup IN (5)
|
|
AND Sd.ItemCode IN(-132)
|
|
AND S.EmployeeID IN(%q)
|
|
Group By
|
|
E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION,G.Code,dep.DESCRIPTION,
|
|
G.SequenceNo,D.Name
|
|
order by E.EMPLOYEENO,G.SequenceNo,G.Code ", dateTime, dateTime2, sEmpID);
|
|
|
|
errStr = "Error Executing [NetPay]";
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
|
|
|
|
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
tc.End();
|
|
tc = TransactionContext.Begin();
|
|
|
|
string query8 = SQLParser
|
|
.MakeSQL(@"Select
|
|
E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION GName,dep.DESCRIPTION Dept,
|
|
G.Code GCode,G.SequenceNo,D.Name DName ,'CPF' Description,
|
|
SUM(SD.CHANGEDAMOUNT) Amount
|
|
from
|
|
EMPLOYEE E,GRADES G,DESIGNATION D,
|
|
Department dep,SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd
|
|
where
|
|
S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth between %d and %d
|
|
AND S.EmployeeID IN(%q)
|
|
AND G.GRADEID=E.GRADEID
|
|
AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128)
|
|
GROUP BY
|
|
E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION,
|
|
dep.DESCRIPTION,G.Code,G.SequenceNo,D.Name
|
|
order by E.EMPLOYEENO,G.SequenceNo,G.Code ",
|
|
dateTime, dateTime2, sEmpID);
|
|
errStr = "Error Executing [CPF]";
|
|
tempdataset = tc.ExecuteDataSet(query8);
|
|
|
|
tempdataset.Tables[0].TableName = "CPF";
|
|
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
tc.End();
|
|
tc = TransactionContext.Begin();
|
|
|
|
string sBonus = SQLParser
|
|
.MakeSQL(@"Select
|
|
E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION GName,dep.DESCRIPTION Dept,
|
|
G.Code GCode,G.SequenceNo,D.Name DName,b.Name Description,
|
|
Sum(bpd.BonusAmount) Amount
|
|
from
|
|
EMPLOYEE E,GRADES G,DESIGNATION D,Department dep,SALARYMONTHLY S,
|
|
BONUSPROCESSDETAIL bpd,Bonus b
|
|
where S.SalaryMonth between %d AND %d
|
|
AND bpd.DisburseDate BETWEEN %d AND %d
|
|
AND S.EmployeeID IN(%q)
|
|
AND G.GRADEID=E.GRADEID
|
|
AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
AND bpd.EmployeeID = E.EmployeeID
|
|
AND bpd.BonusID = b.BonusID
|
|
AND E.DepartmentID = dep.DEPARTMENTID
|
|
Group BY E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION,
|
|
G.Code,G.SequenceNo,D.Name,b.Name,dep.DESCRIPTION
|
|
order by E.EMPLOYEENO,G.SequenceNo,G.Code",
|
|
dateTime, dateTime2, dateTime, dateTime2, sEmpID);
|
|
|
|
errStr = "Error Executing [Bonus]";
|
|
tempdataset = tc.ExecuteDataSet(sBonus);
|
|
|
|
tempdataset.Tables[0].TableName = "Bonus";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
|
|
// tc.End();
|
|
// tc = TransactionContext.Begin();
|
|
|
|
// string sPerformanceBonus = SQLParser
|
|
// .MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.JoiningDate,A.SequenceNo,
|
|
// A.Description, SUM(A.changedamount) Amount
|
|
// from
|
|
// (select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,
|
|
// D.Name DName,G.Code GCode,G.SequenceNo
|
|
// from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID
|
|
// AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth between %d and %d
|
|
// AND S.EmployeeID IN(%q)
|
|
// and Sd.ItemGroup IN (1, 8) and ITEMID in (4) AND ITEMCODE in(-113)
|
|
// UNION
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,
|
|
// D.Name DName,G.Code GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E,
|
|
// SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND
|
|
// S.SalaryMonth between %d and %d
|
|
// AND S.EmployeeID IN(%q)
|
|
// and Sd.ItemGroup IN (2) AND ITEMID in (4) AND ITEMCODE in(-113)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode,
|
|
// A.ItemCode, A.ItemID, A.Description,A.Position,A.JoiningDate order by A.Position,
|
|
// A.EmployeeNo,A.SequenceNo,A.GCode",
|
|
// dateTime,dateTime2, sEmpID, dateTime,dateTime2, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(sPerformanceBonus);
|
|
|
|
// tempdataset.Tables[0].TableName = "PerformanceBonus";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
throw new Exception(errStr);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static double GetAmountOnDateDiffForOverTime(TransactionContext tc, int employeeId, DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode, EnumSalaryItemCode itemCode, int itemId, int payrollTypeID)
|
|
{
|
|
|
|
string sql = SQLParser.MakeSQL(@"SELECT SUM(ChangedAmount) FROM SalaryMonthlyDetail WHERE"
|
|
+
|
|
" ItemGroup=%n AND ItemCode=%n AND itemId in (select Termid From Term) AND SalaryMonthlyID IN ( SELECT SalaryMonthlyID FROM"
|
|
+
|
|
" SalaryMonthly WHERE EmployeeID=%n AND SalaryMonth>=%d AND SalaryMonth<=%d AND WithNoDetail=%b and PayrollTypeID=%n) "
|
|
, groupCode, itemCode, employeeId, fromDate, toDate, false,
|
|
payrollTypeID);
|
|
object amount2 = tc.ExecuteScalar(sql);
|
|
if (amount2 == DBNull.Value)
|
|
return 0;
|
|
else return Convert.ToDouble(amount2);
|
|
}
|
|
|
|
internal static DataSet GetLastPayDate(TransactionContext tc, int empid)
|
|
{
|
|
DataSet lastPayDate = new DataSet();
|
|
try
|
|
{
|
|
lastPayDate = tc.ExecuteDataSet("select MAX(salarymonth) from SALARYMONTHLY where EMPLOYEEID=%n", empid);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return lastPayDate;
|
|
}
|
|
|
|
internal static DataSet GetEmpSSSummaryByDeptNew(TransactionContext tc, string str, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string sql =
|
|
SQLParser.MakeSQL("SELECT SM.DEPARTMENTID,Dep.Description,Count(Distinct SM.EMPLOYEEID) TEmp,"
|
|
+
|
|
" Basic=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" HR=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" MED=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" Conv=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" Arre=Sum(CASE WHEN (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4) OR (SMD.ITEMGROUP=8 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5) THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" OT=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-103 AND SMD.ITEMID in" + str + " THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" REMO=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=6 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" LVENCA=Sum(CASE WHEN SMD.ITEMGROUP=1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=10 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" OTH=Sum(CASE WHEN SMD.ITEMGROUP =1 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=8 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" INCTAX=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-129 AND SMD.ITEMID=-129 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" PF=Sum(CASE WHEN SMD.ITEMGROUP =3 AND SMD.ITEMCODE=-128 AND SMD.ITEMID=-128 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" LOANADV=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-118 AND SMD.ITEMID=2 THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" WPAY=Sum(CASE WHEN (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-101 AND SMD.ITEMID=-101) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=3) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=4) OR (SMD.ITEMGROUP=2 AND SMD.ITEMCODE=-113 AND SMD.ITEMID=5) THEN SMD.CHANGEDAMOUNT ELSE 0 END),"
|
|
+
|
|
" OTHER=Sum(CASE WHEN SMD.ITEMGROUP=3 AND SMD.ITEMCODE=-115 AND SMD.ITEMID=9 THEN SMD.CHANGEDAMOUNT ELSE 0 END)"
|
|
+ " FROM SALARYMONTHLY SM "
|
|
+ " INNER JOIN SALARYMONTHLYDETAIL SMD"
|
|
+ " ON SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID "
|
|
+ " AND SM.SalaryMonth=%d"
|
|
+ " AND SM.EMPLOYEEID in(%q)"
|
|
+ " Inner Join Department Dep"
|
|
+ " On Dep.DEPARTMENTID=SM.DEPARTMENTID"
|
|
+ " GROUP by SM.DEPARTMENTID,Dep.Description",
|
|
dateTime,
|
|
sEmpID);
|
|
oSMonthlys = tc.ExecuteDataSet(sql);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetSalaryStracture(TransactionContext tc, string SempIds)
|
|
{
|
|
string sTableName;
|
|
SempIds = IDHelper.GetIDs(tc, SempIds, out sTableName);
|
|
|
|
string sql = SQLParser.MakeSQL(@"
|
|
select Emp.EmployeeID,Emp.EmployeeNo EmpID,Emp.Name Name,
|
|
(select dg.Name From Designation Dg Where Dg.DesignationID = Emp.DesignationId) Designation,
|
|
(select Ct.Description from Category Ct Where Ct.CategoryId = Emp.CategoryId) EmploymentCategory,
|
|
EmploymentStatus =
|
|
CASE Emp.Status
|
|
When 1 then 'Live'
|
|
When 2 then 'Discontinued'
|
|
When 3 then 'Secondy'
|
|
When 4 then 'Suspend'
|
|
When 5 then 'Withheld'
|
|
When 6 then 'Waitingforjoin'
|
|
When 7 then 'Didnotjoin'
|
|
When 8 then 'Dismissed'
|
|
When 9 then 'Resigned'
|
|
When 10 then 'Retired'
|
|
When 11 then 'OnDeputation'
|
|
When 12 then 'Deceased'
|
|
When 13 then 'OnService'
|
|
END,
|
|
(select Grd.Description From Grades Grd Where Grd.GradeId = Emp.GradeID) Grade,
|
|
emp.JoiningDate joinningDate,
|
|
Gender =
|
|
CASE Emp.Gender
|
|
When 0 THEN 'None'
|
|
When 1 THEN 'Male'
|
|
When 2 THEN 'Female'
|
|
When 3 THEN 'Both'
|
|
END,
|
|
Emp.BirthDate DOB,
|
|
(
|
|
select Crg.Description From Crg where Crg.CrgId in (Select EmpCostCenter.CostCenterId from EmpCostCenter
|
|
Where EmpCostCenter.CurrentCC = 1 And EmpCostCenter.EmployeeId = Emp.EmployeeId
|
|
)
|
|
) CostCenter,
|
|
|
|
(select dpt.Description from Department Dpt Where Dpt.DepartmentId = Emp.DepartmentId) Department,
|
|
(select Loc.Description From Location Loc Where Loc.LocationId = Emp.LocationId) PostingPlace,
|
|
Emp.BasicSalary BasicSalary,Emp.DepartmentID DepartmentID
|
|
From Employee Emp Where Emp.EmployeeId in (%q)", SempIds);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
return tc.ExecuteDataSet(sql);
|
|
}
|
|
|
|
internal static DataSet GetEmpSalarySheetByYear(TransactionContext tc, DateTime dSalaryMonth, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
|
|
DateTime fdy = Global.DateFunctions.FirstDateOfYear(dSalaryMonth);
|
|
DateTime ldy = Global.DateFunctions.LastDateOfYear(dSalaryMonth);
|
|
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string query1 = SQLParser.MakeSQL(@"select A.SalaryMonth,A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.SequenceNo, A.Description,SUM(A.changedamount)
|
|
Amount from(
|
|
select S.EmployeeID, E.EmployeeNo,S.SalaryMonth, E.Name, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,
|
|
G.Code GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E,
|
|
SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d and Sd.ItemGroup in (8)
|
|
AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q)
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo,S.SalaryMonth,
|
|
E.Name, sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,sd.Position, sd.changedamount,
|
|
G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d
|
|
and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133) AND S.EmployeeID in(%q)
|
|
)
|
|
A
|
|
group by A.SalaryMonth,A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode, A.ItemCode, A.ItemID,
|
|
A.Description,A.Position
|
|
order by A.SalaryMonth,A.EmployeeNo,A.Position,A.SequenceNo,A.GCode", fdy, ldy, sEmpID, fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query2 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' Description,
|
|
Sum(A.amount) amount
|
|
from
|
|
(
|
|
select S.EmployeeID,S.SalaryMonth,Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,
|
|
G.SequenceNo,D.Name DName
|
|
from SALARYMONTHLY S,Grades G,DESIGNATION D,
|
|
SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND
|
|
G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND S.SalaryMonth between %d and %d and Sd.ItemGroup IN (1, 8)
|
|
AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
|
|
UNION
|
|
|
|
select S.EmployeeID,S.SalaryMonth, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,
|
|
G.sequenceNo,D.Name DName
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
|
|
) A, Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName", fdy, ldy, sEmpID, fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query3 = SQLParser.MakeSQL(@"select A.SalaryMonth,A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount
|
|
from
|
|
(
|
|
select S.SalaryMonth,S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,
|
|
G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S,
|
|
SalaryMonthlyDetail Sd where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth between %d and %d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q)
|
|
union
|
|
select
|
|
S.SalaryMonth,S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,
|
|
-sd.changedamount changedamount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
from
|
|
Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth
|
|
between %d and %d and Sd.ItemGroup=2
|
|
AND S.EmployeeID IN(%q)
|
|
) A
|
|
group by A.SalaryMonth,A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,
|
|
A.GCode,A.DName, A.ItemCode, A.ItemID, A.Description,A.Position
|
|
order by A.SalaryMonth,A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", fdy, ldy, sEmpID, fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
string query4 = SQLParser.MakeSQL(@"select A.SalaryMonth,A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount
|
|
from
|
|
(
|
|
select S.SalaryMonth,S.EmployeeID, E.EmployeeNo, E.Name,
|
|
sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,sd.Position, sd.changedamount,
|
|
G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d and Sd.ITEMCODE =-133
|
|
AND S.EmployeeID IN(%q)
|
|
|
|
UNION
|
|
|
|
select S.SalaryMonth,S.EmployeeID, E.EmployeeNo, E.Name,
|
|
sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,sd.Position,
|
|
sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName from
|
|
Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth between %d and %d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q)
|
|
)
|
|
A
|
|
group by A.SalaryMonth,A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.ItemCode, A.ItemID, A.Description,A.Position
|
|
order by A.SalaryMonth,A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", fdy, ldy, sEmpID, fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query4);
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query5 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.GCode,A.sequenceNo,A.DName,
|
|
'UnAuthorized' Description, Sum(A.amount) amount
|
|
from
|
|
(
|
|
select S.SalaryMonth,S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,
|
|
G.SequenceNo,D.Name DName from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
) A,Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo,E.Name,A.GName,A.SequenceNo,A.GCode,A.DName", fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query5);
|
|
tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query6 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
'Total Deduction' Description,
|
|
Sum(A.amount) amount
|
|
from(
|
|
select S.SalaryMonth,S.EmployeeID, Sum(sd.changedamount) Amount,
|
|
G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND
|
|
S.SalaryMonth between %d and %d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
) A,Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName", fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query7 = SQLParser.MakeSQL(@"Select S.SalaryMonth,E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,
|
|
G.SequenceNo,D.Name DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount
|
|
from
|
|
EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,SALARYMONTHLYDETAIL
|
|
Sd where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)
|
|
order by S.SalaryMonth,G.SequenceNo,G.Code,E.EMPLOYEENO", fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetEmpStartDateAndEndDate(TransactionContext tc, DateTime fstDate, DateTime endDate, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
|
|
/*DateTime fdy = Global.DateFunctions.PayrollFirstDateOfMonth(fstDate);
|
|
DateTime ldy = Global.DateFunctions.PayrollLastDateOfMonth(endDate);*/
|
|
DateTime fdy = new DateTime();
|
|
DateTime ldy = new DateTime();
|
|
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string query1 = SQLParser.MakeSQL(@"select A.SalaryMonth,A.EmployeeNo, A.Name,A.GName,A.DName,A.GCode,A.SequenceNo, A.Description,SUM(A.changedamount)
|
|
Amount from(
|
|
select S.EmployeeID, E.EmployeeNo,S.SalaryMonth, E.Name, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,D.Name DName,
|
|
G.Code GCode,G.SequenceNo from Grades G,DESIGNATION D,Employee E,
|
|
SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d and Sd.ItemGroup in (8)
|
|
AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q)
|
|
|
|
UNION
|
|
|
|
select S.EmployeeID, E.EmployeeNo,S.SalaryMonth,
|
|
E.Name, sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,sd.Position, sd.changedamount,
|
|
G.DESCRIPTION GName,D.Name DName,G.Code GCode,G.SequenceNo
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d
|
|
and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133) AND S.EmployeeID in(%q)
|
|
)
|
|
A
|
|
group by A.SalaryMonth,A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.DName,A.SequenceNo,A.GCode, A.ItemCode, A.ItemID,
|
|
A.Description,A.Position
|
|
order by A.SalaryMonth,A.EmployeeNo,A.Position,A.SequenceNo,A.GCode", fdy, ldy, sEmpID, fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query2 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName,'Total Gross' Description,
|
|
Sum(A.amount) amount
|
|
from
|
|
(
|
|
select S.EmployeeID,S.SalaryMonth,Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,
|
|
G.SequenceNo,D.Name DName
|
|
from SALARYMONTHLY S,Grades G,DESIGNATION D,
|
|
SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND
|
|
G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
AND S.SalaryMonth between %d and %d and Sd.ItemGroup IN (1, 8)
|
|
AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
|
|
UNION
|
|
|
|
select S.EmployeeID,S.SalaryMonth, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,
|
|
G.sequenceNo,D.Name DName
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
|
|
) A, Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName", fdy, ldy, sEmpID, fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query3 = SQLParser.MakeSQL(@"select A.SalaryMonth,A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount
|
|
from
|
|
(
|
|
select S.SalaryMonth,S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,
|
|
G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S,
|
|
SalaryMonthlyDetail Sd where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth between %d and %d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q)
|
|
union
|
|
select
|
|
S.SalaryMonth,S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position,
|
|
-sd.changedamount changedamount,G.DESCRIPTION GName,G.Code GCode,G.sequenceNo,D.Name DName
|
|
from
|
|
Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth
|
|
between %d and %d and Sd.ItemGroup=2
|
|
AND S.EmployeeID IN(%q)
|
|
) A
|
|
group by A.SalaryMonth,A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,
|
|
A.GCode,A.DName, A.ItemCode, A.ItemID, A.Description,A.Position
|
|
order by A.SalaryMonth,A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", fdy, ldy, sEmpID, fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
|
|
string query4 = SQLParser.MakeSQL(@"select A.SalaryMonth,A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
A.Description, SUM(A.changedamount) Amount
|
|
from
|
|
(
|
|
select S.SalaryMonth,S.EmployeeID, E.EmployeeNo, E.Name,
|
|
sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,sd.Position, sd.changedamount,
|
|
G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d and Sd.ITEMCODE =-133
|
|
AND S.EmployeeID IN(%q)
|
|
|
|
UNION
|
|
|
|
select S.SalaryMonth,S.EmployeeID, E.EmployeeNo, E.Name,
|
|
sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,sd.Position,
|
|
sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName from
|
|
Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth between %d and %d and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q)
|
|
)
|
|
A
|
|
group by A.SalaryMonth,A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.ItemCode, A.ItemID, A.Description,A.Position
|
|
order by A.SalaryMonth,A.Position,A.SequenceNo,A.GCode,A.EmployeeNo", fdy, ldy, sEmpID, fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query4);
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query5 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.GCode,A.sequenceNo,A.DName,
|
|
'UnAuthorized' Description, Sum(A.amount) amount
|
|
from
|
|
(
|
|
select S.SalaryMonth,S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,
|
|
G.SequenceNo,D.Name DName from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d AND G.GRADEID=S.GRADEID
|
|
AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
) A,Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo,E.Name,A.GName,A.SequenceNo,A.GCode,A.DName", fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query5);
|
|
tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query6 = SQLParser.MakeSQL(@"select A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName,
|
|
'Total Deduction' Description,
|
|
Sum(A.amount) amount
|
|
from(
|
|
select S.SalaryMonth,S.EmployeeID, Sum(sd.changedamount) Amount,
|
|
G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName
|
|
from GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND
|
|
S.SalaryMonth between %d and %d AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q)
|
|
group by S.SalaryMonth,S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name
|
|
) A,Employee E
|
|
where A.EmployeeID = E.EmployeeID
|
|
group by A.SalaryMonth,E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName", fdy, ldy, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
string query7 = SQLParser.MakeSQL(@"Select S.SalaryMonth,E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,
|
|
G.SequenceNo,D.Name DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount
|
|
from
|
|
EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,SALARYMONTHLYDETAIL
|
|
Sd where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth between %d and %d
|
|
AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132) AND S.EmployeeID IN(%q)
|
|
order by S.SalaryMonth,G.SequenceNo,G.Code,E.EMPLOYEENO", fdy, ldy, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
internal static DataSet GetPFForLetterRequest(TransactionContext tc, int empID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
try
|
|
{
|
|
//string query1 = SQLParser.MakeSQL(@"select top 1 * from LOANSCHEDULE where EmployeeID=1068 and PAYMENTDATE is null
|
|
// empID, empID);
|
|
string query1 = SQLParser.MakeSQL(@"; With cte as (
|
|
SELECT employeeID, Max(salaryMonth) salaryMonth from SALARYMONTHLY where employeeID=%n group by EMPLOYEEID
|
|
)
|
|
SELECT E.NAME Name,E.EMPLOYEENO,E.EMPLOYEEID,E.JOININGDATE,
|
|
SM.ACCOUNTNO,SM.SalaryMonth, SMD.ITEMGROUP,SMD.DESCRIPTION,
|
|
SMD.CHANGEDAMOUNT,SMD.ItemCode,SMD.ItemID,E.TINNO
|
|
FROM Employee E Inner join SALARYMONTHLY SM on E.EMPLOYEEID=SM.EMPLOYEEID
|
|
inner join SalaryMonthlyDetail SMD on sm.SALARYMONTHLYID=smd.SALARYMONTHLYID
|
|
Inner Join cte On cte.EMPLOYEEID=sm.EMPLOYEEID and sm.SALARYMONTH=cte.salaryMonth
|
|
Where SMD.ITEMGROUP=3 AND SM.EmployeeID IN(%n) AND SMD.DESCRIPTION='PF Loan'",
|
|
empID, empID);
|
|
|
|
rootDataset = tc.ExecuteDataSet(query1);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
internal static IDataReader GetDetail(TransactionContext tc, DateTime startDate, DateTime endDate, int payrollTypeID)
|
|
{
|
|
string sql = SQLParser.MakeSQL(@"SELECT SD.* FROM SalaryMonthlyDetail SD, SalaryMonthly SM WHERE "
|
|
+ " (SM.SalaryMonth between %d AND %d) AND SD.SalaryMonthlyID = SM.SalaryMonthlyID and payrollTypeID=%n Order by SM.SalaryMonthlyID, SD.Position ", startDate, endDate, payrollTypeID);
|
|
return tc.ExecuteReader(sql);
|
|
}
|
|
|
|
internal static IDataReader GetDetail(TransactionContext tc, int nEmpID, DateTime startDate, DateTime endDate, int payrollTypeID)
|
|
{
|
|
//string sql = SQLParser.MakeSQL(@"SELECT SD.* FROM SalaryMonthlyDetail SD, SalaryMonthly SM WHERE "
|
|
// + " (SM.SalaryMonth between %d AND %d) AND SD.SalaryMonthlyID = SM.SalaryMonthlyID Order by SM.SalaryMonthlyID, SD.Position ", startDate, endDate);
|
|
|
|
string sql = SQLParser.MakeSQL(@"Select * from SalaryMonthlyDetail where SalaryMonthlyID IN(
|
|
SELECT SalaryMonthlyID FROM SalaryMonthly where (SalaryMonth between %d And %d) and (payrolltypeid = %n) and EmployeeID=%n) ", startDate, endDate, payrollTypeID, nEmpID);
|
|
|
|
return tc.ExecuteReader(sql);
|
|
}
|
|
|
|
internal static IDataReader Get(TransactionContext tc, DateTime startDate, DateTime endDate, int payrollTypeID)
|
|
{
|
|
string sql = SQLParser.MakeSQL(@"SELECT * FROM SalaryMonthly where (SalaryMonth between %d And %d) and (payrolltypeid = %n) and salarywithheld<>1", startDate, endDate, payrollTypeID);
|
|
return tc.ExecuteReader(sql);
|
|
}
|
|
|
|
internal static IDataReader Get(TransactionContext tc, int nEmpID, DateTime startDate, DateTime endDate, int payrollTypeID)
|
|
{
|
|
//string sql = SQLParser.MakeSQL(@"SELECT * FROM SalaryMonthly where (SalaryMonth between %d And %d) and (payrolltypeid = %n)", startDate, endDate, SystemInformation.CurrentSysInfo.PayrollTypeID);
|
|
string sql = SQLParser.MakeSQL(@"SELECT * FROM SalaryMonthly where (SalaryMonth between %d And %d) and (payrolltypeid = %n) and EmployeeID=%n", startDate, endDate, payrollTypeID, nEmpID);
|
|
return tc.ExecuteReader(sql);
|
|
}
|
|
|
|
internal static DataSet GetEmpSalarySheetForIDLC(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string query1 = SQLParser.MakeSQL(@"select A.EmployeeNo,A.CIFNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.Description,
|
|
SUM(A.changedamount) Amount,A.Department,A.Branch,A.DEPARTMENTID
|
|
from ( select S.EmployeeID,E.GLOBALID CIFNo, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,
|
|
G.SequenceNo,D.Name DName , DE.DESCRIPTION Department,L.DESCRIPTION Branch,DE.DEPARTMENTID
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,DEPARTMENT DE,
|
|
LOCATION L
|
|
where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND L.LOCATIONID=S.LOCATIONID
|
|
AND S.SalaryMonth=%d and Sd.ItemGroup=8 AND sd.ItemCode not in(-133)
|
|
and DE.DEPARTMENTID=S.DEPARTMENTID AND S.EmployeeID IN(%q)
|
|
union
|
|
select S.EmployeeID,E.GLOBALID CIFNo, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, sd.ItemID,
|
|
sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION GName, G.Code GCode,
|
|
G.sequenceNo,D.Name DName,DE.DESCRIPTION Department,L.DESCRIPTION Branch,DE.DEPARTMENTID
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,DEPARTMENT DE,
|
|
LOCATION L where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID
|
|
AND E.employeeID=S.EmployeeID AND DE.DEPARTMENTID=S.DEPARTMENTID AND L.LOCATIONID=S.LOCATIONID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d
|
|
and Sd.ItemGroup in (1)AND sd.ItemCode not in(-133) AND S.EmployeeID IN(%q) ) A
|
|
group by A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode, A.DName,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position ,A.Department,A.Branch,A.DEPARTMENTID,
|
|
A.CIFNo order by A.Position,A.SequenceNo ,A.EmployeeNo,A.GCode
|
|
", dateTime, sEmpID, dateTime, sEmpID);//
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query2 = SQLParser.MakeSQL("select E.EmployeeNo,E.GLOBALID CIFNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName,DE.DESCRIPTION Department,"
|
|
+ " 'Total Gross' Description, Sum(A.amount) amount,L.DESCRIPTION Branch,DE.DEPARTMENTID "
|
|
+ " from( select S.EmployeeID, "
|
|
+ " Sum(sd.changedamount) Amount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,"
|
|
+ " D.Name DName from SALARYMONTHLY S,Grades G,DESIGNATION D, SalaryMonthlyDetail Sd "
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND G.GRADEID=S.GRADEID "
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID AND S.SalaryMonth=%d "
|
|
+ " and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q) group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name"
|
|
+ " UNION select S.EmployeeID, -Sum(sd.changedamount) Amount,G.DESCRIPTION GName,"
|
|
+ " G.Code GCode,G.sequenceNo,D.Name DName from GRADES G,DESIGNATION D,SALARYMONTHLY S,"
|
|
+ " SalaryMonthlyDetail Sd where S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID "
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID and Sd.ItemGroup IN (2)"
|
|
+ " AND S.EmployeeID IN(%q) "
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name ) A, Employee E,"
|
|
+ " DEPARTMENT DE,LOCATION L where A.EmployeeID = E.EmployeeID AND E.DEPARTMENTID=DE.DEPARTMENTID"
|
|
+ " AND E.LOCATIONID=L.LOCATIONID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,E.GLOBALID ,"
|
|
+ " A.GCode,A.DName ,DE.DESCRIPTION,L.DESCRIPTION,DE.DEPARTMENTID ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query3 = SQLParser.MakeSQL("select A.EmployeeNo,A.CIFNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.Description, "
|
|
+ " SUM(A.changedamount) Amount,A.Department,A.Branch,A.DEPARTMENTID "
|
|
+ " from ("
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name,E.GLOBALID CIFNo, "
|
|
+ " sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,sd.Position, "
|
|
+ " sd.changedamount,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName ,"
|
|
+ " DE.DESCRIPTION Department,L.DESCRIPTION Branch,DE.DEPARTMENTID"
|
|
|
|
+ " from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,DEPARTMENT DE,"
|
|
+ " LOCATION L "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID "
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d and Sd.ItemGroup=3 "
|
|
+ " AND L.LOCATIONID=S.LOCATIONID and DE.DEPARTMENTID=S.DEPARTMENTID"
|
|
+ " AND S.EmployeeID IN(%q) "
|
|
+ " union "
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,E.GLOBALID CIFNo, "
|
|
+ " sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION GName,"
|
|
+ " G.Code GCode,G.sequenceNo,D.Name DName,DE.DESCRIPTION Department,L.DESCRIPTION Branch,DE.DEPARTMENTID "
|
|
+ " from Grades G,DESIGNATION D,Employee E, "
|
|
+ " SALARYMONTHLY S, SalaryMonthlyDetail Sd,DEPARTMENT DE,LOCATION L "
|
|
+ " where G.GradeID= E.GradeID "
|
|
+ " AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID "
|
|
+ " AND DE.DEPARTMENTID=S.DEPARTMENTID AND L.LOCATIONID=S.LOCATIONID "
|
|
+ " AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d"
|
|
+ " and Sd.ItemGroup=2 AND S.EmployeeID IN(%q) "
|
|
+ " ) A "
|
|
+ " group by A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.CIFNo,"
|
|
+ " A.DName, A.ItemCode, A.ItemID, A.Description,A.Position ,A.Department,A.Branch,A.DEPARTMENTID "
|
|
+ " order by A.EmployeeNo,A.Position,A.SequenceNo,A.GCode", dateTime, sEmpID, dateTime, sEmpID);
|
|
//+ " ", dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query4 = SQLParser.MakeSQL("select A.EmployeeNo, A.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.Department,"
|
|
+ " A.Description, SUM(A.changedamount) Amount,A.Branch,A.DEPARTMENTID,A.CIFNo "
|
|
+ " from "
|
|
+ " ( select S.EmployeeID,E.GLOBALID CIFNo,"
|
|
+ " E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode, sd.ItemID, sd.Description,"
|
|
+ " sd.Position, sd.changedamount,G.DESCRIPTION GName,G.Code GCode,DE.DEPARTMENTID,"
|
|
+ " G.SequenceNo,D.Name DName,DE.DESCRIPTION Department,L.DESCRIPTION Branch "
|
|
+ " from Grades G,DESIGNATION D,Employee E,DEPARTMENT DE,LOCATION L,"
|
|
+ " SALARYMONTHLY S, SalaryMonthlyDetail Sd "
|
|
+ " where G.GradeID= E.GradeID "
|
|
+ " AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID"
|
|
+ " AND E.DEPARTMENTID=DE.DEPARTMENTID AND E.LOCATIONID = L.LOCATIONID "
|
|
+ " AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d"
|
|
+ " and Sd.ITEMCODE =-133 AND S.EmployeeID IN(%q) "
|
|
+ " UNION "
|
|
+ " select S.EmployeeID, E.EmployeeNo, E.Name, sd.ItemGroup,sd.ItemCode,"
|
|
+ " sd.ItemID, sd.Description,sd.Position, sd.changedamount,E.GLOBALID CIFNo,"
|
|
+ " G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,D.Name DName,"
|
|
+ " DE.DEPARTMENTID,DE.DESCRIPTION Department,L.DESCRIPTION Branch "
|
|
+ " from "
|
|
+ " Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd,"
|
|
+ " DEPARTMENT DE,LOCATION L "
|
|
+ " where G.GradeID= E.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID"
|
|
+ " AND E.DEPARTMENTID=DE.DEPARTMENTID AND E.LOCATIONID = L.LOCATIONID"
|
|
+ " AND E.employeeID=S.EmployeeID AND S.SalaryMonthlyID=Sd.SalaryMonthlyID"
|
|
+ " AND S.SalaryMonth=%d and Sd.ITEMCODE =-133 "
|
|
+ " AND S.EmployeeID IN(%q) ) A"
|
|
+ " group by A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,"
|
|
+ " A.ItemCode, A.ItemID, A.Description,A.Position,A.Department,A.Branch,A.DEPARTMENTID"
|
|
+ " ,A.CIFNo order by A.CIFNo,A.SequenceNo,A.Position,A.GCode,A.EmployeeNo", dateTime, sEmpID, dateTime, sEmpID);
|
|
//
|
|
tempdataset = tc.ExecuteDataSet(query4);
|
|
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query5 = SQLParser.MakeSQL("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.sequenceNo,A.DName,A.Department,"
|
|
+ " 'UnAuthorized' Description, Sum(A.amount) amount,A.Branch,A.DEPARTMENTID, "
|
|
+ " E.GLOBALID CIFNo from "
|
|
+ " ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,"
|
|
+ " G.Code GCode,G.SequenceNo,D.Name DName,DE.DEPARTMENTID"
|
|
+ " ,DE.DESCRIPTION Department,L.DESCRIPTION Branch "
|
|
+ " from DEPARTMENT DE,LOCATION L,"
|
|
+ " GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d"
|
|
+ " AND S.DEPARTMENTID=DE.DEPARTMENTID AND S.LOCATIONID = L.LOCATIONID"
|
|
+ " AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID "
|
|
+ " and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q)"
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,DE.DESCRIPTION,"
|
|
+ " L.DESCRIPTION,DE.DEPARTMENTID) A, Employee E"
|
|
+ " where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName,A.Department,"
|
|
+ " A.Branch,A.DEPARTMENTID,E.GLOBALID", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query5);
|
|
|
|
tempdataset.Tables[0].TableName = "UnAuthorized";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query6 = SQLParser.MakeSQL("select E.EmployeeNo, E.Name,A.GName,A.GCode,A.SequenceNo,A.DName,A.Department,"
|
|
+ " 'Total Deduction' Description, Sum(A.amount) amount,A.Branch,A.DEPARTMENTID "
|
|
+ " ,E.GLOBALID CIFNo from"
|
|
+ " ( select S.EmployeeID, Sum(sd.changedamount) Amount,G.DESCRIPTION GName,"
|
|
+ " G.Code GCode,G.SequenceNo,D.Name DName,DE.DEPARTMENTID,"
|
|
+ " DE.DESCRIPTION Department,L.DESCRIPTION Branch "
|
|
+ " from DEPARTMENT DE,LOCATION L,"
|
|
+ " GRADES G,DESIGNATION D,SALARYMONTHLY S,SalaryMonthlyDetail Sd"
|
|
+ " where S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d"
|
|
+ " AND S.DEPARTMENTID=DE.DEPARTMENTID AND S.LOCATIONID = L.LOCATIONID"
|
|
+ " AND G.GRADEID=S.GRADEID AND D.DESIGNATIONID=S.DESIGNATIONID "
|
|
+ " and Sd.ItemGroup IN (2,3) AND S.EmployeeID IN(%q)"
|
|
+ " group by S.EmployeeID,G.DESCRIPTION,G.SequenceNo,G.Code,D.Name,DE.DESCRIPTION,"
|
|
+ " L.DESCRIPTION,DE.DEPARTMENTID ) A, Employee E "
|
|
+ " where A.EmployeeID = E.EmployeeID "
|
|
+ " group by E.EmployeeNo, E.Name,A.GName,A.SequenceNo,A.GCode,A.DName ,A.Department,"
|
|
+ " A.Branch,A.DEPARTMENTID,E.GLOBALID", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query7 = SQLParser.MakeSQL("Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,"
|
|
+ " G.SequenceNo,D.Name DName ,'Net Pay' Description,SD.CHANGEDAMOUNT Amount,"
|
|
+ " DE.DESCRIPTION Department,L.DESCRIPTION Branch,DE.DEPARTMENTID"
|
|
+ " ,E.GLOBALID CIFNo from "
|
|
+ " EMPLOYEE E,GRADES G,DESIGNATION D,SALARYMONTHLY S,DEPARTMENT DE,LOCATION L,"
|
|
+ " SALARYMONTHLYDETAIL Sd where S.SalaryMonthlyID=Sd.SalaryMonthlyID "
|
|
+ " AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID "
|
|
+ " AND E.DEPARTMENTID=DE.DEPARTMENTID AND E.LOCATIONID = L.LOCATIONID"
|
|
+ " AND D.DESIGNATIONID=S.DESIGNATIONID AND E.EMPLOYEEID =S.EMPLOYEEID"
|
|
+ " and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132)"
|
|
+ " AND S.EmployeeID IN(%q) "
|
|
+ " order by E.GLOBALID,G.SequenceNo ,G.Code,E.EMPLOYEENO ", dateTime, sEmpID);//
|
|
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
// string query8 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,G.DESCRIPTION GName,G.Code GCode,G.SequenceNo,
|
|
// D.Name DName ,'CPF' Description,SD.CHANGEDAMOUNT Amount,
|
|
// DE.DESCRIPTION Department,L.DESCRIPTION Branch,DE.DEPARTMENTID
|
|
// ,E.GLOBALID CIFNo from EMPLOYEE E,GRADES G,DESIGNATION D,
|
|
// SALARYMONTHLY S,SALARYMONTHLYDETAIL Sd,DEPARTMENT DE,LOCATION L
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d
|
|
// AND E.DEPARTMENTID=DE.DEPARTMENTID AND E.LOCATIONID = L.LOCATIONID
|
|
// AND G.GRADEID=S.GRADEID
|
|
// AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
// AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
// AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128)
|
|
// AND S.EmployeeID IN(%q) order by E.GLOBALID,E.EMPLOYEENO
|
|
// ,G.SequenceNo,G.Code", dateTime, sEmpID);//
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query8);
|
|
|
|
// tempdataset.Tables[0].TableName = "CPF";
|
|
//rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
|
|
internal static DataSet GetNewCCWiseSalarySummary(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
#region Latest Old Code
|
|
string sSQL = SQLParser.MakeSQL(@"select C.CRGID CCID,C.DESCRIPTION CostCenter,
|
|
sum(SMD.CHANGEDAMOUNT)as NetAmount
|
|
from SALARYMONTHLY SM
|
|
inner join SALARYEMPCOSTCENTER SC on SM.EMPLOYEEID=SC.EMPLOYEEID
|
|
inner join CRG C on SC.COSTCENTERID = C.CRGID
|
|
inner join SALARYMONTHLYDETAIL SMD on SM.SALARYMONTHLYID=SMD.SALARYMONTHLYID
|
|
where SM.SalaryMonth = %d and SC.EMPLOYEEID in(%q)
|
|
and SMD.ITEMCODE=-132 And SMD.ITEMGROUP=5 And SMD.ITEMID=-132
|
|
group by C.CRGID,C.DESCRIPTION", dateTime, sEmpID);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sSQL);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetOnRange(TransactionContext tc, string sEmpID, DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode, EnumSalaryItemCode itemCode)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string sql = SQLParser.MakeSQL(@"SELECT SM.EmployeeID,SM.SALARYMONTH, SD.* FROM SalaryMonthlyDetail SD, SalaryMonthly SM WHERE
|
|
(SM.SalaryMonth between %d AND %d) AND SM.EmployeeID IN(%q) AND SD.SalaryMonthlyID = SM.SalaryMonthlyID AND ITEMGROUP=%n and itemCode=%n
|
|
and sd.changedamount !=0 Order by SD.Position ", fromDate, toDate, sEmpID, (int)groupCode, (int)itemCode);
|
|
oSMonthlys = tc.ExecuteDataSet(sql);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetOnRange(TransactionContext tc, string sEmpID, DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode, EnumSalaryItemCode itemCode, int itemId)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string sql = SQLParser.MakeSQL(@"SELECT SM.EmployeeID,SM.SALARYMONTH, SD.* FROM SalaryMonthlyDetail SD, SalaryMonthly SM WHERE
|
|
(SM.SalaryMonth between %d AND %d) AND SM.EmployeeID IN(%q) AND SD.SalaryMonthlyID = SM.SalaryMonthlyID AND ITEMGROUP=%n and itemCode=%n AND itemId=%n
|
|
and sd.changedamount !=0 Order by SD.Position ", fromDate, toDate, sEmpID, (int)groupCode, (int)itemCode, itemId);
|
|
oSMonthlys = tc.ExecuteDataSet(sql);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataSet GetOTHourByReverseCal(TransactionContext tc, string sEmpID, DateTime fromDate, DateTime toDate, EnumSalaryGroup groupCode, EnumSalaryItemCode itemCode, int itemId)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string sql = SQLParser.MakeSQL(@"SELECT SM.EmployeeID,SM.SALARYMONTH, round(((sd.changedamount/2) * 208)/sm.THISMONTHBASIC,2) changedamount FROM SalaryMonthlyDetail SD, SalaryMonthly SM WHERE
|
|
(SM.SalaryMonth between %d AND %d) AND SM.EmployeeID IN(%q) AND SD.SalaryMonthlyID = SM.SalaryMonthlyID AND ITEMGROUP=1 and itemCode=-103 AND Itemid=1
|
|
and sd.changedamount !=0 Order by SD.Position ", fromDate, toDate, sEmpID, (int)groupCode, (int)itemCode, itemId);
|
|
oSMonthlys = tc.ExecuteDataSet(sql);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
internal static DataTable GetNetAmount(TransactionContext tc, DateTime salaryMonth, int payrolltypeid)
|
|
{
|
|
DataTable oSMonthlys = new DataTable();
|
|
try
|
|
{
|
|
|
|
string sql = SQLParser.MakeSQL(@"select count(s.employeeid) Headcount, sum( sd.CHANGEDAMOUNT) CurrentMonth,
|
|
(select sum( sd.CHANGEDAMOUNT) from salarymonthly s, SALARYMONTHLYDETAIL sd where s.SALARYMONTHLYID = sd.SALARYMONTHLYID
|
|
and s.payrollTypeid =%n and itemcode= -132 and itemid =-132 and s.SALARYMONTH = %d) PrviousMonth
|
|
from salarymonthly s, SALARYMONTHLYDETAIL sd where s.SALARYMONTHLYID = sd.SALARYMONTHLYID
|
|
and s.payrollTypeid =%n and itemcode= -132 and itemid =-132 and s.SALARYMONTH = %d ",
|
|
payrolltypeid, GlobalFunctions.LastDateOfMonth( salaryMonth.AddMonths(-1)), payrolltypeid, salaryMonth);
|
|
oSMonthlys = tc.ExecuteDataTable(sql);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
internal static DataTable GetWithheldData(TransactionContext tc, DateTime salaryMonth, int payrolltypeid)
|
|
{
|
|
DataTable oSMonthlys = new DataTable();
|
|
try
|
|
{
|
|
|
|
string sql = SQLParser.MakeSQL(@"SELECT s.SALARYMONTHLYID,s.PaymentDate,s.ChequeNo,s.Remarks, s.SALARYMONTH,s.EMPLOYEEID,e.Employeeno,e.Name, d.description Department,dg.Name Designation, sd.CHANGEDAMOUNT NetPay FROM SALARYMONTHLYDETAIL sd,SALARYMONTHLY s, Employee e,Department d, Designation dg
|
|
WHERE s.employeeid=e.employeeid and s.salarywithheld=1 and s.SALARYMONTHLYID=sd.SALARYMONTHLYID and e.departmentID=d.DepartmentID and dg.designationID=e.designationid AND s.Paymentdate is null AND s.SALARYMONTH=%d AND s.PayrollTypeid=%n AND sd.ITEMCODE=-132 AND sd.ITEMID=-132 ",
|
|
salaryMonth, payrolltypeid);
|
|
oSMonthlys = tc.ExecuteDataTable(sql);
|
|
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
internal static IDataReader GetHead(TransactionContext tc, int index, DateTime salaryMonth)
|
|
{
|
|
string sSQL = "";
|
|
if (index == 0)
|
|
{
|
|
sSQL = SQLParser.MakeSQL("select * from SALARYMONTHLYDETAIL Sd,SALARYMONTHLY S where"
|
|
+ " S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d"
|
|
+ " AND Sd.ItemGroup IN (1, 8)", salaryMonth);
|
|
}
|
|
else
|
|
{
|
|
sSQL = SQLParser.MakeSQL("select * from SALARYMONTHLYDETAIL Sd,SALARYMONTHLY S where"
|
|
+ " S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d"
|
|
+ " AND Sd.ITEMGROUP in(2,3)", salaryMonth);
|
|
}
|
|
return tc.ExecuteReader(sSQL);
|
|
}
|
|
|
|
internal static IDataReader GetByItemCode(TransactionContext tc, int payrolltypeid, string itemCodeIn, DateTime salaryMonth)
|
|
{
|
|
string sSQL = "";
|
|
|
|
sSQL = SQLParser.MakeSQL("select SD.EmployeeID, S.DetailID, S.SALARYMONTHLYID, S.ITEMID, S.SUPPORTID, S.POSITION, "
|
|
+ " S.CALCULATEDAMOUNT, S.CHANGEDAMOUNT, S.ITEMCODE, S.ITEMGROUP from SALARYMONTHLYDETAIL S,SALARYMONTHLY SD where"
|
|
+ " S.SalaryMonthlyID=SD.SalaryMonthlyID AND SD.SalaryMonth=%d AND PayrollTypeID=%n"
|
|
+ " AND S.ItemCode IN (%q)", salaryMonth, payrolltypeid, itemCodeIn);
|
|
|
|
|
|
return tc.ExecuteReader(sSQL);
|
|
}
|
|
|
|
internal static IDataReader Get(TransactionContext tc, string sEmpID, DateTime fromdate, DateTime toDate)
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
|
|
string Ssql = SQLParser.MakeSQL("SELECT * FROM SalaryMonthly WHERE EmployeeID in(%q) AND SALARYMONTH between %d and %d order by EmployeeID", sEmpID, fromdate, toDate);
|
|
IDataReader dr = tc.ExecuteReader(Ssql);
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
return dr;
|
|
|
|
}
|
|
|
|
internal static DataSet GetCCWiseSalarySheetDetail(TransactionContext tc, DateTime dSMonthDate, string sEmpID)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
DataSet rootDataset = new DataSet();
|
|
try
|
|
{
|
|
string sTableName;
|
|
sEmpID = IDHelper.GetIDs(tc, sEmpID, out sTableName);
|
|
#region Latest Old Code
|
|
string Sql = SQLParser.MakeSQL(@"Select Emp.EmployeeNo,Emp.Name,CC.Code,Dep.Description,
|
|
sum(SMD.ChangedAmount * (SEmpCC.Percentage)/100) GrossAmount
|
|
from Employee Emp,Department Dep,SalaryMonthly SM,CRG CC,
|
|
SalaryMonthlyDetail SMD,SalaryEmpCostCenter SEmpCC
|
|
where Emp.EmployeeID=SM.EmployeeID
|
|
and Emp.DepartmentID=SM.DepartmentID
|
|
and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and SEmpCC.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and Dep.DepartmentID=SM.DepartmentID
|
|
and CC.CRGID=SEmpCC.CostCenterID
|
|
and Emp.EmployeeID=SEmpCC.EmployeeID
|
|
and SM.SalaryMonth=%d
|
|
and SMD.ItemGroup=1 and SM.EmployeeId in(%q)
|
|
group by Emp.EmployeeNo,Emp.Name,CC.Code,Dep.Description,SEmpCC.Percentage
|
|
order by Emp.EmployeeNo", dSMonthDate, sEmpID);
|
|
oSMonthlys = tc.ExecuteDataSet(Sql);
|
|
|
|
oSMonthlys.Tables[0].TableName = "GrossAmount";
|
|
rootDataset.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
|
|
|
|
string sqlArrear = SQLParser.MakeSQL(@"Select Emp.EmployeeNo,Emp.Name,CC.Code,SECC.Percentage,Dep.Description,
|
|
SMD.ItemGroup,Sum((SMD.ChangedAmount * (SECC.Percentage)/100)) GrossArrear
|
|
from Employee Emp,Department Dep,CRG CC,SalaryMonthly SM,
|
|
SalaryMonthlyDetail SMD,SalaryEmpCostCenter SECC
|
|
where Emp.DepartmentID=Dep.DepartmentID
|
|
and Emp.DepartmentID=SM.DepartmentID
|
|
and SM.DepartmentID=Dep.DepartmentID
|
|
and Emp.EmployeeID=SM.EmployeeID
|
|
and SM.EmployeeID=SECC.EmployeeID
|
|
and CC.CrgID=SECC.CostCenterID
|
|
and SECC.SalaryMonthlyID=SM.SalaryMonthlyID
|
|
and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and SM.SalaryMonth=%d and SMD.ItemGroup in(8) and SM.EmployeeID in(%q)
|
|
group by Emp.EmployeeNo,Emp.Name,CC.Code,Dep.Description,SECC.Percentage,
|
|
SMD.ItemGroup order by Emp.EmployeeNo", dSMonthDate, sEmpID);
|
|
oSMonthlys = tc.ExecuteDataSet(sqlArrear);
|
|
oSMonthlys.Tables[0].TableName = "GrossArrear";
|
|
rootDataset.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
|
|
string sSQL1 = SQLParser.MakeSQL(@"Select Emp.EmployeeNo,Emp.Name,CC.Code,Dep.Description,
|
|
sum(SMD.ChangedAmount * (SEmpCC.Percentage)/100) PFAmount
|
|
from Employee Emp,Department Dep,SalaryMonthly SM,CRG CC,
|
|
SalaryMonthlyDetail SMD,SalaryEmpCostCenter SEmpCC
|
|
where Emp.EmployeeID=SM.EmployeeID
|
|
and Emp.DepartmentID=SM.DepartmentID
|
|
and SM.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and SEmpCC.SalaryMonthlyID=SMD.SalaryMonthlyID
|
|
and Dep.DepartmentID=SM.DepartmentID
|
|
and CC.CRGID=SEmpCC.CostCenterID
|
|
and Emp.EmployeeID=SEmpCC.EmployeeID
|
|
and SM.SalaryMonth=%d
|
|
and SMD.ItemCode=-128 and SMD.ItemGroup=3 and SM.EmployeeId in(%q)
|
|
group by Emp.EmployeeNo,Emp.Name,CC.Code,Dep.Description,SEmpCC.Percentage
|
|
order by Emp.EmployeeNo", dSMonthDate, sEmpID);
|
|
|
|
oSMonthlys = tc.ExecuteDataSet(sSQL1);
|
|
|
|
oSMonthlys.Tables[0].TableName = "PFAmount";
|
|
rootDataset.Tables.Add(oSMonthlys.Tables[0].Copy());
|
|
if (sTableName != "")
|
|
tc.ExecuteNonQuery("Drop TAble %q", sTableName);
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
internal static DataSet CostCenterCount(TransactionContext tc, DateTime dSMonthDate)
|
|
{
|
|
DataSet oSMonthlys = new DataSet();
|
|
try
|
|
{
|
|
#region Latest Old Code
|
|
string Sql = SQLParser.MakeSQL(@"select distinct costcenterid from salaryempcostcenter smd where salarymonthlyid in(select salarymonthlyid from salarymonthly where salarymonth='30 sep 2013')", dSMonthDate);
|
|
oSMonthlys = tc.ExecuteDataSet(Sql);
|
|
|
|
#endregion
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return oSMonthlys;
|
|
}
|
|
|
|
|
|
|
|
internal static DataSet GetLTAData(TransactionContext tc, int EmpID)
|
|
{
|
|
string sql = SQLParser.MakeSQL(@"select a.* from EmpLTA a,Employee e Where a.EmployeeNo=e.EMPLOYEENO AND e.EMPLOYEEID=%n ORDER BY salaryMonth", EmpID);
|
|
return tc.ExecuteDataSet(sql);
|
|
}
|
|
|
|
internal static DataSet GetEmpSalarySheetWithoutCostCenterOT(TransactionContext tc, DateTime dateTime, string sEmpID)
|
|
{
|
|
DataSet rootDataset = new DataSet();
|
|
DataSet tempdataset = new DataSet();
|
|
try
|
|
{
|
|
#region Commented by ANIK
|
|
// string query1 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.GName,A.GCode,A.JoiningDate,
|
|
// A.Description, SUM(A.changedamount) Amount,A.ItemGroup,A.ItemCode,A.ItemID
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup in(8)
|
|
// AND sd.ItemCode not in(-133)
|
|
// AND S.EmployeeID IN(%q)
|
|
// UNION
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode from Grades G,
|
|
// Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d
|
|
// and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133)
|
|
// AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode,A.ItemGroup,A.ItemCode,A.ItemID,
|
|
// A.ItemCode, A.ItemID, A.Description,A.JoiningDate order by A.EmployeeNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(query1);
|
|
#endregion
|
|
|
|
string query1 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.Department, A.DESIGNATION,
|
|
A.GName,A.GCode,A.JoiningDate,
|
|
A.Description, AVG(A.changedamount) Amount,A.ItemGroup,A.ItemCode,A.ItemID
|
|
from
|
|
(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd, DEPARTMENT dep, DESIGNATION deg, crg cc, salaryempcostcenter scc
|
|
where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth= %d and Sd.ItemGroup in(8)
|
|
AND sd.ItemCode not in(-133)
|
|
AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND scc.COSTCENTERID = cc.CRGID
|
|
AND scc.SALARYMONTHLYID=s.SALARYMONTHLYID
|
|
|
|
UNION
|
|
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
E.JoiningDate, sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode from Grades G,
|
|
Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd , DEPARTMENT dep, DESIGNATION deg, crg cc, salaryempcostcenter scc
|
|
where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth= %d
|
|
and Sd.ItemGroup in(1) AND sd.ItemCode not in(-133)
|
|
AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND scc.COSTCENTERID = cc.CRGID
|
|
AND scc.SALARYMONTHLYID=s.SALARYMONTHLYID
|
|
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode,A.ItemGroup,A.ItemCode,A.ItemID,
|
|
A.ItemCode, A.ItemID, A.Description,A.JoiningDate,A.Department, A.DESIGNATION
|
|
order by A.EmployeeNo,A.GCode",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query1);
|
|
|
|
tempdataset.Tables[0].TableName = "GrossItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
string queryActualGross = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,
|
|
E.JoiningDate,A.GName,A.GCode,'Actual Gross' as Description, Avg(A.amount) as amount
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode , S.SALARYMONTHLYID
|
|
from SALARYMONTHLY S,Grades G, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND S.SalaryMonth= %d and Sd.ItemGroup IN (1) AND sd.description!='Bonus Arrear' AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.Code, S.SALARYMONTHLYID
|
|
) A, Employee E ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND A.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND A.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.GCode,E.JoiningDate ,dep.DESCRIPTION,deg.Name",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(queryActualGross);
|
|
|
|
tempdataset.Tables[0].TableName = "ActualGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query2 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,
|
|
E.JoiningDate,A.GName,A.GCode,'Total Gross' as Description, Avg(A.amount) as amount
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode, S.SALARYMONTHLYID
|
|
from SALARYMONTHLY S,Grades G, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND G.GRADEID=S.GRADEID AND S.SalaryMonth=%d and Sd.ItemGroup IN (1, 8) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.Code , S.SALARYMONTHLYID
|
|
UNION
|
|
select S.EmployeeID, -Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode, S.SALARYMONTHLYID
|
|
from GRADES G,SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth=%d AND G.GRADEID=S.GRADEID and Sd.ItemGroup IN (2) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.Code, S.SALARYMONTHLYID
|
|
) A, Employee E ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND A.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND A.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.GCode,E.JoiningDate ,dep.DESCRIPTION,deg.Name",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query2);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalGross";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.JoiningDate,A.GName,A.GCode,A.ItemGroup,
|
|
// A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup in (3)
|
|
// AND S.EmployeeID IN(%q)
|
|
// Union
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, -sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup = 2
|
|
// AND S.EmployeeID IN(%q)
|
|
// ) A group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode, A.ItemGroup,
|
|
// A.ItemCode, A.ItemID, A.Description,A.JoiningDate order by A.EmployeeNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
//string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.Department, A.DESIGNATION,
|
|
// A.JoiningDate,A.GName,A.GCode,A.ItemGroup,
|
|
// A.Description, SUM(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
// from
|
|
// (
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
// E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
// sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg--, SALARYEMPCOSTCENTER empcc, crg cc
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup in (3)
|
|
// AND S.EmployeeID IN(%q)
|
|
// AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
// AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
// --AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND empcc.COSTCENTERID = cc.CRGID
|
|
// --AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
// Union
|
|
// select S.EmployeeID, E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,--cc.Description AS COSTCENTER,
|
|
// E.JoiningDate,sd.ItemGroup,0 ItemCode,
|
|
// 0 ItemID, 'LWP' Description, SUM(sd.changedamount) changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
// from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg--, SALARYEMPCOSTCENTER empcc, crg cc
|
|
// where G.GradeID= S.GradeID AND E.employeeID=S.EmployeeID
|
|
// AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ItemGroup = 2
|
|
// AND S.EmployeeID IN(%q)
|
|
// AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
// AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
// --AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND empcc.COSTCENTERID = cc.CRGID
|
|
// --AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
// --AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
// GROUP BY S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,G.DESCRIPTION ,G.Code,dep.DESCRIPTION,deg.Name--,cc.Description
|
|
// ) A
|
|
// group by
|
|
// A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode, A.ItemGroup,
|
|
// A.ItemCode, A.ItemID, A.Description,A.JoiningDate , A.Department, A.DESIGNATION--
|
|
// order by A.EmployeeNo,A.GCode",
|
|
// dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
string query3 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.depname Department,A.DName DESIGNATION, A.JoiningDate,A.GName,A.GCode,A.itemgroup,
|
|
A.Description, avg(A.changedamount) Amount,A.ItemCode,A.ItemID
|
|
from
|
|
(select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,dep.DESCRIPTION depname,cc.Description AS COSTCENTER
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, SALARYEMPCOSTCENTER empcc, crg cc
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND dep.DEPARTMENTID=S.DEPARTMENTID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=3 AND S.EmployeeID IN(%q)
|
|
union
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,E.JoiningDate,sd.ItemGroup,sd.ItemCode,
|
|
sd.ItemID, sd.Description,sd.Position, -sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode,G.sequenceNo,D.Name as DName,dep.DESCRIPTION depname,cc.Description AS COSTCENTER
|
|
from Grades G,DESIGNATION D,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, SALARYEMPCOSTCENTER empcc, crg cc
|
|
where G.GradeID= S.GradeID AND D.DESIGNATIONID=E.DESIGNATIONID AND E.employeeID=S.EmployeeID AND dep.DEPARTMENTID=S.DEPARTMENTID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
AND S.SalaryMonthlyID=Sd.SalaryMonthlyID AND S.SalaryMonth=%d and Sd.ItemGroup=2 AND S.EmployeeID IN(%q)
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.SequenceNo,A.GCode,A.DName,
|
|
A.ItemCode, A.ItemID, A.Description,A.Position,A.JoiningDate,A.depname,A.itemgroup order by A.EmployeeNo,A.Position,A.SequenceNo,A.GCode", dateTime, sEmpID, dateTime, sEmpID);
|
|
tempdataset = tc.ExecuteDataSet(query3);
|
|
|
|
tempdataset.Tables[0].TableName = "DeductItem";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query4 = SQLParser.MakeSQL(@"select A.EmployeeNo, A.Name,A.Department, A.DESIGNATION,
|
|
A.GName,A.GCode,A.JoiningDate,
|
|
A.Description, avg(A.changedamount) Amount
|
|
from
|
|
(
|
|
select S.EmployeeID, E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
sd.ItemGroup,sd.ItemCode,E.JoiningDate,
|
|
sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg, SALARYEMPCOSTCENTER empcc, crg cc
|
|
where G.GradeID = S.GradeID AND E.employeeID = S.EmployeeID
|
|
AND S.SalaryMonthlyID = Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ITEMCODE = -139
|
|
AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
UNION
|
|
select S.EmployeeID, E.EmployeeNo, E.Name, dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
sd.ItemGroup,sd.ItemCode,E.JoiningDate,
|
|
sd.ItemID, sd.Description, sd.changedamount,G.DESCRIPTION as GName,G.Code as GCode
|
|
from Grades G,Employee E, SALARYMONTHLY S, SalaryMonthlyDetail Sd ,DEPARTMENT dep, DESIGNATION deg, SALARYEMPCOSTCENTER empcc, crg cc
|
|
where G.GradeID = S.GradeID AND E.employeeID = S.EmployeeID
|
|
AND S.SalaryMonthlyID = Sd.SalaryMonthlyID AND S.SalaryMonth = %d and Sd.ITEMCODE =-139
|
|
AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
) A group by
|
|
A.EmployeeID, A.EmployeeNo, A.Name,A.GName,A.GCode,A.JoiningDate,
|
|
A.ItemCode, A.ItemID, A.Description ,A.Department, A.DESIGNATION
|
|
order by A.GCode,A.EmployeeNo",
|
|
dateTime, sEmpID, dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query4);
|
|
|
|
tempdataset.Tables[0].TableName = "LeaveDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query5 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,cc.Description AS COSTCENTER,
|
|
A.GName,A.GCode, A.Description, avg(A.amount) as amount
|
|
,E.JoiningDate
|
|
from
|
|
( select S.EmployeeID,Sd.Description, Sum(sd.changedamount) as Amount,
|
|
G.DESCRIPTION as GName,G.Code as GCode, S.SALARYMONTHLYID
|
|
from GRADES G,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth = %d AND G.GRADEID=S.GRADEID
|
|
AND Sd.ITEMCODE in(-135,-133,-140,-141,-142) AND Sd.ItemGroup IN (4) AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,Sd.Description,G.DESCRIPTION,G.Code, S.SALARYMONTHLYID
|
|
) A, Employee E ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND A.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND A.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.Description,A.GCode,E.JoiningDate ,dep.DESCRIPTION,deg.Name,cc.Description", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query5);
|
|
|
|
tempdataset.Tables[0].TableName = "AttendenceDays";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query6 = SQLParser.MakeSQL(@"select E.EmployeeNo, E.Name,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,
|
|
E.JoiningDate,A.GName,A.GCode, 'Total Deduction' as Description, avg(A.amount) as amount
|
|
from
|
|
( select S.EmployeeID, Sum(sd.changedamount) as Amount,G.DESCRIPTION as GName,G.Code as GCode, S.SALARYMONTHLYID
|
|
from GRADES G,SALARYMONTHLY S,SalaryMonthlyDetail Sd
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth= %d AND G.GRADEID=S.GRADEID and Sd.ItemGroup IN (3)
|
|
AND S.EmployeeID IN(%q)
|
|
group by S.EmployeeID,G.DESCRIPTION,G.Code, S.SALARYMONTHLYID
|
|
) A, Employee E ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where A.EmployeeID = E.EmployeeID
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND A.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND A.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
group by E.EmployeeNo, E.Name,A.GName,A.GCode,E.JoiningDate ,dep.DESCRIPTION,deg.Name
|
|
order by E.EmployeeNo,A.GCode", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query6);
|
|
|
|
tempdataset.Tables[0].TableName = "TotalDeduction";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query7 = SQLParser.MakeSQL(@"Select distinct E.EMPLOYEENO,E.NAME,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,
|
|
E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,
|
|
sd.ItemGroup,sd.ItemCode,sd.ItemID,
|
|
'Net Pay' as Description,SD.CHANGEDAMOUNT as Amount
|
|
from EMPLOYEE as E,GRADES as G,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth = %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND E.EMPLOYEEID = S.EMPLOYEEID
|
|
and Sd.ItemGroup IN (5) AND Sd.ItemCode IN(-132)
|
|
AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
order by E.EMPLOYEENO,G.Code", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query7);
|
|
|
|
tempdataset.Tables[0].TableName = "NetPay";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
string query8 = SQLParser.MakeSQL(@"Select distinct E.EMPLOYEENO,E.NAME,dep.DESCRIPTION AS Department,deg.Name AS DESIGNATION,
|
|
E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,
|
|
sd.ItemGroup,sd.ItemID,sd.ItemCode,
|
|
'CPF' as Description,SD.CHANGEDAMOUNT as Amount
|
|
from EMPLOYEE as E,GRADES as G,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd ,DEPARTMENT dep, DESIGNATION deg, crg cc,SALARYEMPCOSTCENTER empcc
|
|
where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
AND S.SalaryMonth = %d
|
|
AND G.GRADEID=S.GRADEID
|
|
AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128)
|
|
AND S.EmployeeID IN(%q)
|
|
AND E.DEPARTMENTID = dep.DEPARTMENTID
|
|
AND E.DESIGNATIONID = deg.DESIGNATIONID
|
|
AND E.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND empcc.COSTCENTERID = cc.CRGID
|
|
AND S.EMPLOYEEID = empcc.EMPLOYEEID
|
|
AND S.SALARYMONTHLYID = empcc.SALARYMONTHLYID
|
|
order by E.EMPLOYEENO,G.Code ", dateTime, sEmpID);
|
|
|
|
tempdataset = tc.ExecuteDataSet(query8);
|
|
|
|
tempdataset.Tables[0].TableName = "CPF";
|
|
rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
|
|
// string query9 = SQLParser.MakeSQL(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'CPF' as Description,SD.CHANGEDAMOUNT as Amount
|
|
// from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d
|
|
// AND G.GRADEID=S.GRADEID
|
|
// AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
// AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
// AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128)
|
|
// AND S.EmployeeID IN(%q) order by E.EMPLOYEENO,G.SequenceNo,G.Code ", dateTime, sEmpID);
|
|
|
|
// tempdataset = tc.ExecuteDataSet(@"Select E.EMPLOYEENO,E.NAME,E.JoiningDate,G.DESCRIPTION as GName,G.Code as GCode,G.SequenceNo,D.Name as DName ,'CPF' as Description,SD.CHANGEDAMOUNT as Amount
|
|
// from EMPLOYEE as E,GRADES as G,DESIGNATION D,SALARYMONTHLY as S,SALARYMONTHLYDETAIL as Sd
|
|
// where S.SalaryMonthlyID=Sd.SalaryMonthlyID
|
|
// AND S.SalaryMonth=%d
|
|
// AND G.GRADEID=S.GRADEID
|
|
// AND D.DESIGNATIONID=S.DESIGNATIONID
|
|
// AND E.EMPLOYEEID =S.EMPLOYEEID
|
|
// AND Sd.ItemGroup IN (3) AND Sd.ItemCode IN(-128) AND S.EmployeeID IN(%q) order by E.EMPLOYEENO,G.SequenceNo,G.Code ", dateTime, sEmpID);
|
|
|
|
// tempdataset.Tables[0].TableName = "CPF";
|
|
// rootDataset.Tables.Add(tempdataset.Tables[0].Copy());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
throw new Exception(ex.Message);
|
|
}
|
|
return rootDataset;
|
|
}
|
|
internal static DataSet GetCCWiseOPISummary(TransactionContext tc, DateTime dSMonthDate, int nID)
|
|
{
|
|
string sql = string.Empty;
|
|
sql = SQLParser.MakeSQL(@"SELECT cc.DESCRIPTION cc,oi.Name Item, sum(oitem.ChangeNetAmount) amount
|
|
FROM OPIProcess op, opiprocessdetail opd,OPIProcessDetailItem oitem,employee emp,crg cc, empcostcenter empcc,opiitem oi
|
|
WHERE op.OPIProcessID=opd.OPIProcessID
|
|
AND opd.OPIProcessDetailID=oitem.OPIProcessDetailID
|
|
AND opd.EmployeeID=emp.EMPLOYEEID
|
|
AND cc.CRGID=empcc.COSTCENTERID
|
|
AND empcc.currentcc=1
|
|
AND empcc.EMPLOYEEID=emp.EMPLOYEEID
|
|
AND oitem.OPIItemID=oi.OpiItemID
|
|
AND op.OPIMonth=%d AND oi.OpiItemID=%n
|
|
GROUP BY cc.DESCRIPTION ,oi.Name", dSMonthDate, nID);
|
|
return tc.ExecuteDataSet(sql);
|
|
}
|
|
internal static DataSet GetCCWiseOPI(TransactionContext tc, DateTime dSMonthDate, int nID)
|
|
{
|
|
string sql = string.Empty;
|
|
sql = SQLParser.MakeSQL(@"SELECT cc.DESCRIPTION cc,emp.EMPLOYEENO EmpNo, emp.NAME EmpName, emp.ACCOUNTNO, oi.Name Item, oitem.ChangeNetAmount amount
|
|
FROM OPIProcess op, opiprocessdetail opd,OPIProcessDetailItem oitem,employee emp,crg cc, opiitem oi,
|
|
Salarymonthly sm,salaryempcostcenter scc
|
|
WHERE op.OPIProcessID=opd.OPIProcessID
|
|
AND opd.OPIProcessDetailID=oitem.OPIProcessDetailID
|
|
AND opd.EmployeeID=emp.EMPLOYEEID
|
|
AND emp.EmployeeID=sm.EMPLOYEEID
|
|
AND sm.SALARYMONTHLYID=scc.SALARYMONTHLYID
|
|
AND sm.SalaryMonth=op.OPIMonth
|
|
AND cc.CRGID=scc.COSTCENTERID
|
|
AND oitem.OPIItemID=oi.OpiItemID
|
|
AND op.OPIMonth=%d AND oi.OpiItemID=%n", dSMonthDate, nID);
|
|
return tc.ExecuteDataSet(sql);
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
}
|